Around 10 Outreachy applicants have joined the Slack channel so far, so hopefully they’ll all start contributing to the project soon.
- Feed Queries
- All Stories
- Search
- Feed Search
- Transactions
- Transaction Logs
Oct 9 2025
Most of the applicants are still getting familiar with the codebase. It’s quite large, so it might take a few more days or at least this week before they start contributing (opening PRs.)
Aug 29 2025
Week 13: August 25 - August 29
Aug 25 2025
Week 12: August 18 - August 22
Aug 18 2025
Week 11: August 11 - August 15
Aug 11 2025
Week 10: August 4 - August 8
Aug 4 2025
Weekly Internship Report
Jul 26 2025
Week 8: July 21 – July 25
Jul 21 2025
Weekly Internship Report
Jul 14 2025
Overview of Tasks Completed:
Jul 7 2025
Week 5: June 30 – July 4
Jun 29 2025
Week 4: June 23 – June 27
Jun 20 2025
Week 3: June 16 – June 20
Overview of Tasks Completed:
Jun 16 2025
Week 2: June 9 - June 13
Overview of Tasks Completed:
Jun 6 2025
Week 1: June 2 - June 6
Overview of Tasks Completed:
- PR #6342 Minor Chore: Remove N+1 Query From Download Single Question Results CSV
- Completed and refactored PR #6329 Locally to improve performance of survey results data loading, reducing page load time significantly.
- Finalized PR #6343, optimizing Survey#course_for by eliminating N+1 queries and improving code clarity.
- Investigated slow points in several controllers (e.g., CampaignController, RevisionFeedback)
May 11 2025
Thank you so much! @Gopavasanth
Apr 14 2025
May 1 2024
Apr 2 2024
Mar 24 2024
Thank you for the feedback @Ederporto . I had question regarding the bar-chart-race is it necessary that we have to use bar-chart-race 0.1.0 or can we use bar-chart-race 0.2.0 since 0.2.0 has some bug fixes like ValueError: Image size of 27822028x436 pixels is too large.
Mar 15 2024
In T358412#9633926, @Aixvik wrote:In T358412#9633201, @MahimaSinghal wrote:In T358412#9633199, @Aixvik wrote:In T358412#9633197, @MahimaSinghal wrote:In T358412#9633189, @Aixvik wrote:In T358412#9633183, @MahimaSinghal wrote:In T358412#9633179, @Aixvik wrote:In T358412#9633100, @MahimaSinghal wrote:In T358412#9632678, @Aixvik wrote:Not able to generate video from the data frame? What might the reason be? As we have 7k+ columns and it's taking time can we generate a bar chart race video of only a few columns as an example?
And I read in the documentation that we should have 'ffmpeg' installed on our device as I am working on web paws Jupyter notebook and not locally do I also have to install 'ffmpeg'?Download latest FFmpeg static build.
exist = !which ffmpeg
if not exist:!curl https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz -o ffmpeg.tar.xz \ && tar -xf ffmpeg.tar.xz && rm ffmpeg.tar.xz ffmdir = !find . -iname ffmpeg-*-static path = %env PATH path = path + ':' + ffmdir[0] %env PATH $path!which ffmpeg
Add this code to your notebook , and you will be good to go.Getting same error again.
Can you share the exact error, What are the errors you are getting Exactly?
KeyError Traceback (most recent call last)
File /srv/paws/lib/python3.10/site-packages/PIL/Image.py:2416, in Image.save(self, fp, format, **params)2415 try:-> 2416 format = EXTENSION[ext]
2417 except KeyError as e:KeyError: '.mp4'
The above exception was the direct cause of the following exception:
ValueError Traceback (most recent call last)
File /srv/paws/lib/python3.10/site-packages/bar_chart_race/_make_chart.py:435, in _BarChartRace.make_animation(self)434 else:--> 435 ret_val = anim.save(self.filename, fps=self.fps, writer=self.writer)
436 except Exception as e:File /srv/paws/lib/python3.10/site-packages/matplotlib/animation.py:1089, in Animation.save(self, filename, writer, fps, dpi, codec, bitrate, extra_args, metadata, extra_anim, savefig_kwargs, progress_callback)
1086 # canvas._is_saving = True makes the draw_event animation-starting 1087 # callback a no-op; canvas.manager = None prevents resizing the GUI 1088 # widget (both are likewise done in savefig()).-> 1089 with writer.saving(self._fig, filename, dpi), \
1090 cbook._setattr_cm(self._fig.canvas, _is_saving=True, manager=None): 1091 for anim in all_anim:File /usr/lib/python3.10/contextlib.py:142, in _GeneratorContextManager.exit(self, typ, value, traceback)
141 try:--> 142 next(self.gen)
143 except StopIteration:File /srv/paws/lib/python3.10/site-packages/matplotlib/animation.py:245, in AbstractMovieWriter.saving(self, fig, outfile, dpi, *args, **kwargs)
244 finally:--> 245 self.finish()
File /srv/paws/lib/python3.10/site-packages/matplotlib/animation.py:515, in PillowWriter.finish(self)
514 def finish(self):--> 515 self._frames[0].save(
516 self.outfile, save_all=True, append_images=self._frames[1:], 517 duration=int(1000 / self.fps), loop=0)File /srv/paws/lib/python3.10/site-packages/PIL/Image.py:2419, in Image.save(self, fp, format, **params)
2418 msg = f"unknown file extension: {ext}"-> 2419 raise ValueError(msg) from e
2421 if format.upper() not in SAVE:ValueError: unknown file extension: .mp4
During handling of the above exception, another exception occurred:
Exception Traceback (most recent call last)
Cell In[8], line 114 bcr.bar_chart_race( 5 df=df, 6 filename='AnalysisVideo.mp4', 7 title='Bar Chart Race', 8 writer='matplotlib' 9 ) 10 return 'AnalysisVideo.mp4'---> 11 video = dataframe_to_race_chart(first_20)
12 Video(video, embed=True)Cell In[8], line 4, in dataframe_to_race_chart(df)
3 def dataframe_to_race_chart(df):----> 4 bcr.bar_chart_race(
5 df=df, 6 filename='AnalysisVideo.mp4', 7 title='Bar Chart Race', 8 writer='matplotlib' 9 ) 10 return 'AnalysisVideo.mp4'File /srv/paws/lib/python3.10/site-packages/bar_chart_race/_make_chart.py:783, in bar_chart_race(df, filename, orientation, sort, n_bars, fixed_order, fixed_max, steps_per_period, period_length, interpolate_period, label_bars, bar_size, period_label, period_fmt, period_summary_func, perpendicular_bar_func, figsize, cmap, title, title_size, bar_label_size, tick_label_size, shared_fontdict, scale, writer, fig, dpi, bar_kwargs, filter_column_colors)
461 ''' 462 Create an animated bar chart race using matplotlib. Data must be in 463 'wide' format where each row represents a single time period and each (...) 776 These sizes are relative to plt.rcParams['font.size']. 777 ''' 778 bcr = _BarChartRace(df, filename, orientation, sort, n_bars, fixed_order, fixed_max, 779 steps_per_period, period_length, interpolate_period, label_bars, bar_size, 780 period_label, period_fmt, period_summary_func, perpendicular_bar_func, 781 figsize, cmap, title, title_size, bar_label_size, tick_label_size, 782 shared_fontdict, scale, writer, fig, dpi, bar_kwargs, filter_column_colors)--> 783 return bcr.make_animation()
File /srv/paws/lib/python3.10/site-packages/bar_chart_race/_make_chart.py:446, in _BarChartRace.make_animation(self)
444 else: 445 message = str(e)--> 446 raise Exception(message)
447 finally: 448 plt.rcParams = self.orig_rcParamsException: You do not have ffmpeg installed on your machine. Download
ffmpeg from here: https://www.ffmpeg.org/download.html. Matplotlib's original error message below: unknown file extension: .mp4What output do you get after running this code, specific to this code block:
If the code I provided would have executed correctly, then you should have a folder named ffmpeg in your home folder.
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed100 39.4M 100 39.4M 0 0 144M 0 --:--:-- --:--:-- --:--:-- 145M
env: PATH=/srv/paws/pwb:/srv/paws/bin:/srv/paws:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/srv/openrefine:/srv/julia/bin:./ffmpeg-6.1-amd64-static
./ffmpeg-6.1-amd64-static/ffmpegI got this.
So this implies, you must be having a folder named ffmpeg-6.1-amd64-static in your home folder.
{F42634524}I am only able to find ffmpeg-6.1.1 folder and I added its path to environment variable still not able to get the video. Can you please guide me step by step of installing ffmpeg again? I installed it from this link:
https://www.ffmpeg.org/download.html
Then extracted it and i got files on my laptop and then moved them to Local Disc C and then finally went to ffmpeg-6.1.1 copied its path added to environment variable right? Anything else we had to do?
Mar 14 2024
In T358412#9629431, @DevJames1 wrote:In T358412#9629412, @MahimaSinghal wrote:In T358412#9629375, @Mitumoni_kalita wrote:
I have tried implementing bar-chart-race locally on my machine as well as also tried on PAWS as one of the applicant advised above , but unable to play the video. Can anyone here help me with this issue and rectify my error?
@EderportoYou will have to return the video from the function, and then when you will call the function, video will display.
Videos don't need to be returned, with the function bcr.bar_chart_race(…), the video is created automatically in the current directory
In T358412#9629390, @DevJames1 wrote:In T358412#9629375, @Mitumoni_kalita wrote:
I have tried implementing bar-chart-race locally on my machine as well as also tried on PAWS as one of the applicant advised above , but unable to play the video. Can anyone here help me with this issue and rectify my error?
@EderportoWhen you play video what is the error. Does it play but shows gibberish?
Can you provide more info
Mar 9 2024
In T358412#9617662, @ElvisGicharu wrote:In T358412#9614248, @Abishek_Das wrote:Hello everyone, I am also an Outreachy applicant for 2024.
Today, I discovered the message on Phabricator; however, I initially assumed that all discussions were taking place in the Zulip channel. Consequently, I didn't check the Phabricator comments section.
To keep it concise, I'd like to address how to make FFmpeg work on the PAWS Jupyter Notebook for the task "Create a tool for informative infographics from structured information from Wikimedia projects - Task A."
The reason FFmpeg isn't functioning on the PAWS Jupyter Notebook is that we need to download and add FFmpeg Static Builds from (https://johnvansickle.com/ffmpeg/) to the same folder where we have the code.
Here's a step-by-step guide (So, you don't have to go through the trouble of downloading from https://johnvansickle.com/ffmpeg/):
Note: Before you do the step mentioned in point (a), make sure all the steps, i.e., b, c, d, and e, are done first.
a) I've attached code that you can add to your Jupyter Notebook cell (Same notebook where you have your code to generate the bar chart race). Run this code to resolve the FFmpeg issue.
# Download a static FFmpeg build and add it to PATH. %run 'util/load-ffmpeg.ipynb' print('Done!')b) Prior to running the code mentioned in point (a), add/upload the "util" folder to your PAWS. I've included the folder below.
util.zip864 BDownload
(You, have to unzip it after downloading)c) The purpose of the "util" folder is to automatically add the FFmpeg Static Build File (which is a folder) to your PAWS when you run the provided code mentioned in point (a).
d) Ensure that the filename in bcr.bar_chart_race() has a ".mp4" extension.
e) After completing these steps, you can run your respective code, which is the code for generating the bar chart race.
Note:
a) You might encounter a warning / Error (Which again doesn't appear when I run my code locally and only sometimes appears on my PAWS Jupyter Notebook), as shown in the attached screenshot. However, this is not an issue, as the video file will be generated in the PAWS folder after running your code. You can then download the bar chart race video and watch the video(as shown the screenshot below).
b) If your code works correctly locally, it should generally (90%-99% of the time) work on the PAWS online Jupyter Notebook.
c) The warning or error screenshot I provided may or may not appear (Which happens to me only on PAWS), so be mindful of that.
d) Ensure that the filename in bcr.bar_chart_race() has a ".mp4" extension, as the ".html" filename won't appear on PAWS. But, Again, the .html works locally.
e) Why the .html doesn't appear on PAWS, I have no idea about it, and I have still not looked for a solution related to .html since the .mp4 file is generated on PAWS without any issue.
f) All the things I have mentioned on how to solve the issue related to FFmpeg were taken from various documentation like Matplotlib 3.8.3 documentation and, of course, my favorite stack overflow (So, thanks to the Devs on Stack Overflow).
Thanks for this



