Monday, February 18, 2008

Google code

If you don't already know, I have been working on a little software project, that lets you publish images to Flickr and Picasa. What is different about it is, it works as a plugin in image editing software like Gimp and Inkscape; and now it also works on Nokia's internet tablets. Yesterday I released v0.5 of it.

But this post is not about my project, it's about its hosting site. I have done open source projects before on other hosting sites - xenen on Sourceforge, faint on Maemo garage - but I found their web interfaces very ... awkward. They look pre-historic compared to today's web 2.0 interfaces (Note: this is just about UI, SourceForge deserves lot more credit for what it has achieved beyond UI). So when I came to know about Google code I was extremely happy. When I came to know about it (that was already after 1 year it had lanched), the UI was still very simple. It didn't have all the features SourceForge had. But I had a gut feeling that it will have the finest features in the future to come, only because it is Google.

And I was right. One of the very useful they have recently added is source code browsing. Their previous code browsing was as plain as firefox's file:// browser. But I had a feeling that Google will be putting an extremely well SVN browsing interface that matches their style. And they did. Browse my project's source code here and see it for yourself. The browsing of entire source files, their older revisions and the diffs - everything is just how it should be. It just makes open source project development lot of fun. Thanks to Google code team for this new feature.

I have some good things to say about Google codesearch as well, but I will save it for next post.

Thursday, February 14, 2008

Gr8 commercial

I always enjoy watching commercials that are genuinely thoughtful. I saw this one today on TV and just loved it.

The prime goal of a commercial is to capture the viewer's attention. These days ad-campaigns achieve this by showing something bizzare at the beginning of the commercial, however irrelevant that is with respect to the actual product. Then they do some lame spins on words (Comcast commercials) or some equally stupid things to justify themselves. Rarely seen are the commercials that show some innovation. Generally a good ad should start with a surprising, interesting scene and all the way should keep the viewer wondering about its subject. It is at the end where it differs from other mediocre commercials. It has to reveal the actual product in such a manner that it just fits the concept. It only helps to have a subtle climax.

This ad is an excellent example.


Friday, February 08, 2008

OSiM USA 2008, see you there

I just registered for OSiM USA 2008 for 11-12 March in San Francisco.

It looks very promising conference for whoever interested in Open Source in Mobile technologies. Here is the agenda for the 2-day conference.

Among the speakers there are some big names in Mobile world - Ari Jaaksi, Director of Open Source Operations, Nokia; Sean Moss-Pultz, Founder, OpenMoko; among others. Also there will be talks on many interesting topics including,
  • Android (by Dan Morill Google Developer Programs),
  • WiMAX and Open Source (by Brian Coughlin, Manager, 4G Product Development, Sprint Nextel),
  • Panel discussion on "Raising Venture Funding for Open Source: The Investor Perspective" (Ira Kalina, Partner, Drinker Biddle & Reath; Patrick Walsh, Manager, Open Source Incubator Program, Intel Capital; Jai Das, Partner, SAP Ventures
  • Panels discussion on "Taking Web 2.0 Technology to the Mobile Device" (speakers from ARM, Openwave, Sun)
  • And many other talks on legal, technical, enterprise aspects of Mobile and Open source
Besides all these I am excited to meet the crowd that is interested in Open Source projects for the evolving mobile platform.

If you are attending, drop me a line, we should meet up.

Saturday, January 19, 2008

OpenMoko, Android and a great hacking post

I was exploring the OpenMoko phone (Neo 1973) after I read about it in Dec'07 Linux Journal issue. It holds great promise. I might buy it as my next cell phone. Most of my gadget shopping research focuses on the versatility of the hardware. In other words, how many different ways can I use and reuse the hardware. This is essential because after few months I get bored of the software installed on that gadget. After buying Nokia n770, I have decided always to buy such "open" gadgets in future. So I was researching OpenMoko from that perspective. And OpenMoko as it turns out, is the most "Open" a gadget can be - as far as software stack is concerned (I am not interested in Hardware openness anyway).

Nokia tablets have some part of their software stack as proprietary components. So one cannot totally write an entirely new operating environment easily. (There are some projects happening in that direction though - e.g. Mamona) But OpenMoko has completely open stack from the beginning. I believe OpenMoko uses a GTK based environment by default. But now that Trolltech has opened Qtopia under GPL, there are Qtopia images available to run on OpenMoko. However I wanted to see if OpenMoko can run yet another upcoming mobile environment - android. So I did some googling. That brings us to the excellent post I mention in the title.

Although its conclusion is disappointing, it gives deep insight into the mobile phone software stack. Check it out here. The conclusion is, Neo1973's processor architecture (ARMv4) is slightly older than what android project binaries are compiled against (ARMv5). That's why one cannot use OpenMoko's Neo1973 as an actual phone that runs Android - at least not in the current state (as most of you know there is no actual phone that yet runs Google's Android platform, it will come sometime in later part of 2008). Benno (the author of above post) has gone to the extent of emulating unsupported instructions (something I would never have dared to do) just to get android working somehow on the Neo1973.

Once in a while you come across a post/article that fulfills your tech appetite to the fullest. It explores the matter to the darkest technical depths (to which you may not be able dive yourself), but you understand totally what is being said. This gives you a vicarious experience that satisfies your thirst for technology and inspires you to continue on your quest. I believe authors of such articles are true hackers (and I am not alone).

Tuesday, January 08, 2008

two great videos

Today I saw two amazing videos reported on slashdot.

The first video is about a french radio operator who makes his own vacuum tubes. This 17-min video is a magic show for a geek. It shows a rare phenomenon when engineering meets craftsmanship. I have always had tough time getting success in hardware projects, so I turned into a software guy over time. That's why I started envying this guy, because there is hardly anything that a software guy can show in a video that will demonstrate the abstractions he visualizes and expresses in his programs.

That's when I saw this second video that shows an analysis of the assembly code that explains the IGMP buffer overflow in Windows kernel. I didn't understand a lot of it, but I liked the way this video helps one visualize the molecular structure of a software program, what we otherwise call assembly code.


Enjoy!