Mozilla Developer Day Bangalore, 27th February 2010

Mozilla along with Mahiti organised a Mozilla Developer Day at NIMS, Bangalore at JRD Tata Auditorium. For people who want to know about the event via tweets please check the hashtag #mozdevday on Twitter

Introduction

As per the schedule, the event was supposed to kick-start at 9:30AM in the morning. After getting up in the morning and beating all the traffic as travelling 33KMs, I finally reached NIAS Campus at 11AM. After getting the badges, feedback-form and other delegate stuff, I went inside the auditorium to see what’s cooking inside.

Web Standards

Speaker: Arun Ranganathan

When I entered Arun was speaking on Web Standards. I think I missed the drum-beat part of his presentation as I was late. Abhishek Mishra and Rohan Prabhu had reached at 10AM itself and were a part of the audience from the very beginning.

Arun gave us a presentation on

  • Geolocation based services for pictures.
  • Font-face support in Firefox and other HTML5 based controls.
  • API for drag-and-drop
  • 2D support in Firefox. He showed us a Mario kind of game made using Canvas.
  • 3D support in Firefox using WebGL
  • Accelerometer support for Firefox. He showed a game which we can play by tilting our devices (Mobile/Laptop)
  • Video support in Firefox using HTML5

Arun even showed us how powerful video tag is on Firefox. We can embed a text inside a video, or even a video inside a video. Don’t believe? Have a look at the page where Arun pointed us to visit

Web.Next

Speaker: Seth Bindernagel

Seth is the localisation Director at Mozilla. He was speaking on what we can expect next from Firefox. His presentation covered mainly:

  • Out of Process Plugins
  • Improved cold startup time
  • Personas
  • Extension Manager
  • Weave

Seth discussed a bit on how Flash crashed are a big headache for the web. The next Firefox will have these plugins running as separate processes, so that the crash effects can be isolated.

For people who actually want to see how Flash crashes on the browser and how easy it is to make Flash go bonkers, just visit this site http://flashcrash.dempsky.org/

Seth also gave a lot of time on Weave and how useful it can be for a person to sync his preferences on the cloud. For privacy fanatics, he explicitly stated that all the data is encrypted at client side and then sent on the Mozilla servers. People can even run their own Weave servers.

Mozilla Labs

Speaker: Ragavan Srinivasan

Ragavan came on the stage to  present Mozilla Labs and what all they develop apart from the browser. The products which come out of the lab are Weave, Bespin and Jetpack.

Broken Sites

Speaker: Arun Ranganathan

If you visit MS Ramiah Institute of Technology’s Student Information System or FYJC’s site using a non-IE browser, then you can experience the over-smartness of the super intellectual web-masters behind the site. FYJC takes the situation to extreme levels.

Arun explained how we are supposed to report these broken sites using Firefox itself or using Mozilla Bugzilla. When using bugzilla, the explanation needed to be very exhaustive. He even asked us to tag such reports with “India” so that Arun can personally hunt down such sites.

Hack Session

Speaker: Arun Ranganathan

Arun recorded a video using a camera. Then he transferred it to his MacBook which was in MP4 format. He created a small page using HTML5 video element and opened it in Firefox,Safari and Chrome. The video which was recorded showed up properly in Chrome and Safari and not in Firefox. This was posed as a question. Many hands went up, with the first answer being the correct one. Yes. Firefox wants the web to be free and doesn’t want to license proprietary codecs for the web.

The million dollar question remains – How to convert H.264 videos to open format. Arun introduced us to a Firefox Addon named Firefogg. This converts the video to ogg which can be now played using Firefox and Chrome. Safari doesn’t want to support ogg.

I know I made no reference to Mahiti’s speech and Praneesh’s too. The post would be just too long.

Finally I would like to thank Mahiti and CIS-India for organising the event, providing free WiFi and arranging Lunch, tea and T-shirts and badges.

Directi Hackfest – 31st January, 2010

Ever since I learnt how to use git, there has been an urge from within to share my code, look at others and collaborate and develop something useful which everyone else can use. For me, usability is as important as functionality. Both are as equal as the other in general cases.

Rewind

Long back I once asked Abhishek Mishra (ideamonk) if we could meet up and organise a small hackfest. The aim was to let know each other’s project, meet new people, learn new things etc etc. One in these *etc* was to complete our unfinished projects due to lack of time, motivation or even know-how of some of the aspect of a technology. Long back Abhishek and Yuvraj Pandian T (YuviPanda) have collaborated on a project named PyMos which was to generate Mosaic for any image. It was written in Python and works like a charm. Give it a try.

Since me and ideamonk live in Bangalore, having a hacking session being physically present would be better than working online. Abhishek liked the idea and tweeted whether anyone is willing to give us space for this event which has wifi. He instantly got a reply from The Chef of CodeChef and there we had a space in the Directi office. Thanks to all the kewl cool people at Directi with “Hacker Mentality” for supporting us.

Agenda

Abhishek invited his friends for this session and two of them turned up – Ishaan Chattopadhyaya and Rohan Prabhu. Naresh from Directi was waiting for us. When we came in, there wasn’t any plan on what needs to be done, as we expected to work out on a common interest field. Ishaan had to speak on Location Based Search and me on CodeIgniter (PHP Framework). Abhishek had some projects like sahanapy and creating a GUI over apt-offline.

Talks

Till this time I had a feeling that we won’t be working much today since I didn’t knew anyone apart from Abhishek. To learn more, we first had small talks so that we can know each other and their interest of fields. Ishaan talked on Location based search which includes geographical searches like Google Maps. It wasn’t a very exhaustive one, but a pretty nice explanation of what all complexity lies beneath the hood.

At this time, we were total 4 people – me, Abhishek. Rohan, Ishaan and Naresh(Directi)

Then I went to speak on CodeIgniter which is a Framework of PHP. As opposed to what I said earlier, it actually doesn’t look like a framework, since it does not have many of functionality which make a F/W. This is what I explained – why it has only the things which we want, awesome documentation and a dead simple setup. It is just a set of classes which relive you from messing with  lower level functionality. Since it is very simple, there is hardly any overhead with speed. You get only the basic boring things and complicated and interesting things are left to you.

Code

Abhishek showed us apt-offline which is an utility for getting updates, upgrades and packages on a Debian based box which does not have internet connection. The system on which these updates,upgrades and  package download is done can also be windows. Typical situation is you have a very slow or no internet at home, but blazing fast net at workplace. You would be tempted to use office net to download the packages and update your local index, install updates and install packages.

This utility was created by Ritesh Raj Sarraf long back and was just a command line based application. Abhishek had tried it and it works flawlessly. All which was missing was a GUI over it. It first looked like an easy task. Use Qt Designer and drag-drop every control and here we go. This way of development had a big flaw. The GUI developed is no better than the CLI since the clueless non-techies wont understand words like “apt-offline set”, “apt-offline get” etc etc. Even it took me a minute or two to actually get what all these mean.

Rohan can be called a Qt geek. The guy knows each and every class and it’s properties and event etc etc. This made us even more interested since he is always at disposal to help us and teach us more. By this it was pretty late and we were wondering if could do something worthy at that time. Then we decided to work only on UI as of now, make small changes in the core class to accommodate the GUI which is otherwise hard-coded. We had to dive in the code to get better knowledge of how apt-offline works as there is hardly any documentation apart from one written by Ritesh himself.

Conclusion

I don’t have much idea of Qt and this was a good learning curve. I agree that this hackfest didn’t pay off well as we expected. Most of the time we spent in discussing data structures, algorithms, Qt, git etc etc. which was again as usual – AWESOME.

My personal expectations from such sessions is to create some useful software and not just YAXX (Yet Another XX). Functionality, Usability, Accessibility and Documentation – all matters equally. I would also like to slowly slowly move on more tougher and promising things like kernel and filesystem level coding.

Winding up, this is just a start and I have great expectations from these sessions. I would like to again thank the Directi guys and the other people who were supposed to come but were not able to turn up due to their personal commitments.