I won’t say yet again that it has been too long because it really was. I’ll try to keep my blog updated weekly concerning a program I’m doing with Google this summer. It’s called the Google Summer of Code (GSoC). Basically, it’s meant for students to be able to contribute on an open source project with a community listed for the summer while being able to make a few bucks for the summer ($5500 USD).
Why am I doing this? Well, first, I want to expand on the knowledge I currently have. Being in computer science and software engineering, we can never stay in the same place for too long, we got to keep moving forward. By now, you should know that my background is in .NET. I completed three internships in .NET. Something that you may not know is that I completed the GSoC program last year. I had to help the Mono Project to update their code analysis and refactoring library which was using FxCop at the time. Being that I had experience with the Roslyn API, which is a compiler platform, enabling users to develop rich code analysis rules and code refactorings for .NET languages (C# & VB.NET). So last summer, what I had to do was to either find old code analysis rules done with FxCop and refactor them using Roslyn and also add a code fix provider matching that rule or implement new ideas that the project owners had in mind. A code fix provider is basically a fix to the “bad code” that was picked up by the code analyzer. For those interested to get to know more about the project or even use the library as an extension to their .NET solution, please take a look there.
Working on that project was a great opportunity as it lead me to my first remote job. Well actually, this is not a job, it’s considered as a student activity. We don’t have a steady wage. There are different phases and if the student passes a phase, he/she gets paid and is allowed to continue working on the project he/she was assigned. So basically, yeah, my first remote job experience. At first, it was difficult to be able to set time aside and focus on working on my project by own at my home or in coffee-house. After a while, it kicked in and I think I did pretty great since I was able to finish my work !
For this summer, I’m completely outside my comfort zone. I have to work with C++ in a Linux Ubuntu environment in order to develop a Telepathy Connection Manager for the Ring protocol. Basically, Telepathy is a real-time communication framework used by clients for instant messaging or video chats. Working with Telepathy and D-BUS, an Inter-process communication system,will be able to communicate with both phones and computers to enable two-way communication.
Right now, I have to do my proof of concept showing that we, at Savoir Faire Linux, are able to communicate by sending text messages back and forth. From that point, it’ll be easier to work on video chat which is far more complex!