Google Summer of Code: First Evaluation

Abhishek Sansanwal
Coding Blocks
Published in
6 min readJul 1, 2019

Oh, hey there!

Look, I made it through the first evaluation! 🤩

Cool, isn’t it?

Yeah, it is pretty relaxing. I was actually kind of scared a little bit because I couldn’t complete all the tasks that we planned for the first phase because of some communication issues, but I did start Cast Integration which was actually planned to be done in the second phase.

P.S. If you haven’t yet read my first blog “How I got selected in GSoC’19?”, I highly suggest that you read it. Nothing too important, but you’d get a fair idea about me, my project and the organisation that I’m working with. (And I will get one more clap or two! :P)

So.. how was the first period of GSoC?

Good! It was actually not bad at all. So before the Coding Period began, I and my mentors at Amahi made a plan for the first month, things that we would achieve and set weekly targets.

In case you’re wondering, Marton is my really cool project-mate from UK. Oh, dude, he did a wonderful job on redesigning the complete UI of Amahi! 🔥

After finalizing the plan, it was time to get right into coding!

May 27 to June 3:

I started working on the video player. It was actually already built, what I had to do was add more features like subtitles, audio tracks etc. I had not previously worked on anything related to media players, so it was totally new to me and I had to spend a lot of time just figuring out how to fetch the subtitles from a video file. Long story short, I couldn’t find a way so I made a menu for those (that took a lot of work, yes!) and skipped to building the music player! 😝

June 3 to June 10:

Music player was also pretty much built already, I had to add features like shuffle, repeat and display the metadata. But I didn’t have much idea about it either, but thanks to my coding skills (thanks to Coding Blocks! 😊), I was able to implement all that was needed by a little bit of research and a lot of bit of thinking (& coding :P).

On 3rd June I gave a talk on Cast at Google I/O Extended’19, New Delhi which was organised at Coding Blocks, Pitampura. It was a wonderful event, and I’m sure that the research that I did on Cast to perfect my talk will help me a lot in the next phase of GSoC! 🚀

June 10 to June 24:

So, I just realized that maybe I’m not mentioning the correct and exact timelines of when I did what I did. Well, I’m trying to write the best of what I remember, so yeah (as if there’s a way for you to catch my lies 😜). But thinking about the recent days, I remember that I sent in a pull request of the music player work that I did and then I started working on the subtitles and audio tracks work that I had skipped before. This time, my mind was super confident after having pulled the music player task and so perhaps that’s how I figured out exactly how the subtitles and audio tracks feature was to be implemented. So I worked on that and voila, I did it!

That’s all?

Pretty much yes, but no!

After finishing the work on the audio player and the video player, subtitles came in with some surprises, which was.. there are actually three types of subtitles out of which my implementation handled only two! 😬

I was scared now, not because it broke something or I was running out of time, but because of what happened 2–3 days later. I did a foolish mistake of testing the work that I did on the external subtitles (yeah, that’s the one!) with local files instead of using remote files that were on the server. I was happy with my work until I realized that I had wasted a lot of time of mine and my mentor’s in testing something that was actually destined to not work.

We did a lot of research, but we couldn’t find a way around external subtitles. Had we used AVPlayer instead of VLCPlayer in the first place, things would’ve been easy. But of course, we had strong points to choose VLCPlayer over AVPlayer and we still do!

But you didn’t complete the tasks though

Yeah, that’s right. I did not!

From 20th June to 24th June, I did have time to work on the Recent Files feature that was left but I didn’t know how. I talked to my mentors about it, but we couldn’t find a suitable time to have a proper discussion on it and also we decided that we should first complete the subtitles work.

Cool.. but we still couldn’t find a way! 🙄

Now it was time to wind up everything, clean up the code and keep a record of everything that was done. I thought that it was okay that we couldn’t implement the Recent Files feature because it was just a matter of subtitles haunting us and us not getting time to discuss it through.

But I desperately wanted to move the project ahead, so I started working on Cast Integration right away! I figured that if I worked on it now, I could save time in the second phase to implement the Recent Files feature. And that’s exactly what I did, I added the Cast button, worked on device discovery, integrated the mini-controller and expanded controller and updated my mentors on it.

First Evaluation

So I received this email saying that the first evaluation was open, and we had to complete it by the specified date and time.

First evaluation was basically a survey where we had to answer questions about our GSoC experience so far and the progress on our proposed project. Mentors had to give their evaluation of the students and how well they had worked, and whether or not they should pass or fail the student in the first evaluation.

I filled the evaluation, made suggestions and then crossed my fingers and sat on my couchy-couch and fell asleep! 😴

Check your inbox: Results!

Yay! 😍

I just received this email a few hours back. And then right away, I messaged Marton saying that we should now plan the next period of GSoC.

So currently we’re planning the work, setting weekly targets and taking actions on our mentor’s feedback on the work that we did in the first phase. We will continue working on the project from July 1. Until then, a good good weekend to us and a good great weekend to you.

At last, thank you so much for reading the article. If you have any doubts, feel free to ask in the comments 💬 , do make some noise 👏 and share the article with anyone that it might benefit!

Connect with me on Instagram, Facebook, Twitter, LinkedIn.

Bye! 👋

--

--

Abhishek Sansanwal
Coding Blocks

Founder & CEO, Verved | TEDx Speaker | GSOC’19, Amahi | Author, BPB Publications | International Award Winner: Top 50 Tech Leaders [Intercon, Dubai]