Ideas are Cheap - Build your mobile
It’s that time of the year when proto.in fever spreads. And the ideaworm has got to me.
Inspired by Vijay Anand’s “Ideas To Toss” series, I thought why not start my own occasional series as well? I’m calling it the “Ideas are Cheap” series. The name is a take on the common proverb “Ideas are Cheap. Execution is Everything.”
So here’s the idea for today:
Can we have a business where the users can customize the hardware that goes into their phone?
This is not a new idea. We are just applying Dell’s business model to mobile phones. If Dell can do it for desktops and laptops, why can’t it be done for mobile phones?
The customization can range from how much memory you want, whether you need a camera or not, etc. to choosing the color and the type of body (candybar or flip or other form factors) and so on.
The range of customization possible depends on the capabilities and costs involved in the assembly process. For example, users may be able to customize the phone by having a name for a special button called ‘Mom’ (or ‘Dad’ or ‘Son’ and so on) that is hotwired to call you. You can gift this to your corresponding loved ones. The advantage is it becomes a wonderful ‘personal’ phone and becomes easy-to-use for technophobic people.
The implementation will be challenging. For one, desktops and laptops can be assembled because of the plug-and-play IBM PC architecture as well as because the operating system easily adjusts to changes in the hardware. AFAIK, mobile phones are not built that way as of today and requires some configuration in the software based on which hardware features are present and which are not (please correct me if I am wrong). Making the software easily adaptable will be a major feature.
The other interesting part is to build a factory that facilitates this. It is very hard to build a supply-chain system for such a factory.
The good part is that the technology could be built on top of OpenMoko - after all, this is the kind of ideas that FIC (the sponsors of the OpenMoko project) had in mind in creating a mostly-open-hardware and open-source-software mobile computing project.
Personalization is one of the buzzwords that is supposed to make the big moolah for companies these days, and allowing people to customize a device that they carry around all day definitely has potential.
End credits: This idea was part of a random discussion between Ramjee and myself.
On a different tangent, there are lots of ideas waiting to happen in the software. For example, it’s not only Apple that can do an App Store for their phone, this can be done for this platform too. Of course, we’ll have to start off a holy war of choosing that one linux distro…
Perhaps similar ideas can be done on top of the Asus EEE PC as well?
Why students and open source?
Two days before the BMS College Information Science Department Fest called “Genesis 2007″, I received an email from a couple of students asking me to talk about “introduction to open source”. Apparently, they were frantically looking for a speaker. Since I’m not the right person for this, I agreed to come only if they didn’t find someone else… and I ended up going there on Friday.
The talk was supposed to be an introduction for a day-long session on Open Source Hacking which was organized by few enthu students trying to get other students interested.
I started making the presentation on the midnight before Friday, so I didn’t have a very polished presentation, but I had something reasonable. The title of the talk was “How to make money from coding (or Why Open Source)”. That should get their attention.
15 minutes before the talk, there were 2 students in the hall. I wanted to start the talk on time and decided to start without much crowd anyway. My sore throat was troubling me and I was coughing every two minutes. Anyway, I started off with a funny anecdote. It flopped. Oh boy.
Then, I decided they’re not warmed up yet, and recovered quickly. 15 minutes later, the 225 seater hall was full. Phew.
An hour later, they were still all there, they were asking lots of questions and they seemed genuinely interested. I hope the students do take FOSS software seriously, if not for the freedom and open source aspects, at least for their own career aspects which I detailed out in the talk. (And I’m sure once they’re hooked, they will later “get” the freedom and open source aspects.)
Why do I say that? Well, it comes down to the first question in the Q&A session - “How to get into Yahoo!?”, and I replied “Well, do you want to know how I got into Yahoo!?”. A unanimous yes. I told them the MySQL story, the Python story and few other tidbits. Now, they’re really listening. I pointed out that I didn’t have any special skills, just the knowledge of these two open source software got me the job at Y!, and it saved me from a service industry job (no offense meant, just a personal preference).
Next question: “Any regrets in college life?”. It caused a flashback in my mind on Atul’s words : “There are two times you innovate in your life - one is when you are a student, the other is when you retire.” Back then, I didn’t believe him. Now, I do. So, I told them “I haven’t yet regretted not scoring well in college. This is the only ‘free time’ you have, so use it well.” I got lot of smirks and “oh, please, we have so much to study” looks. I said “Two years later, I’ll see how many of you come back and tell me I’m wrong.”
Then, after the session ended, a few electrical students said they wanted to get into the software industry and don’t know where to start. I told them that some of the best programmers I’ve known are from a mechanical background, so that’s okay. You should prove your skills, that’s all, your background shouldn’t matter, although it may be difficult to get your first job because you’re not a computer science student. Then, a telecom student. I was happy about this guy because he said he wanted to remain in the telecom domain but learn coding really well, I said that’s a very good decision he’s taken and told him to see open source projects such as Asterisk and OpenMoko. He said “I’m in my final year, just 8 months to go, am I too late?” I said “8 months is a really long time, you’re not late, you just have to start now.” (8 months is a long time when you think about it, but it seems to fly away so soon).
After that, students headed towards the computer lab where I gave a crash course in using subversion. I had to get back to work, so I didn’t stay for the rest of the day, but I heard there was a “good response” from the students.
In the end, I don’t know if anyone was inspired about FOSS or not, but I did see that few students absorbed the fact that knowledge and projects are going to get them good jobs, not just marks (of course, you do have to have a decent score), and working on FOSS projects is one way to achieve that.
P.S. If you’ve read this far, and you’re interested in learning how to contribute to open source software, then you’re in luck, because the foss.in community event is coming up soon. You can start right now by reading Atul’s latest post on foss.in.
Update : A related must-read article is “How to Get a Job Like Mine” by Aaron Swartz.
All your machines are belong to us
I have a Windows laptop and a Linux desktop at office, and I had this problem of interoperating between the two machines. That’s when I installed a neat utility called Synergy. Now, I can copy some text to the clipboard in the laptop and paste it to my browser running on the desktop.
Then, I discovered yet another nifty feature - when I move my mouse cursor beyond the left edge of the desktop screen, the mouse moves to the laptop (you can configure this for any edge). What’s useful is that I can fully use the mouse and the keyboard and do almost anything (yes, alt-tab works) on the laptop, and remember, all this from the keyboard connected to the desktop.
What a thoughtful piece of software.
Tip of the hat to Vikram for telling me about this software.
Update: For those who didn’t get it, the title was alluding to the phrase “All your base are belong to us”.
Evolution of Adobe Flex : now open source
That’s right, the Flex SDK is going to be licensed under the Mozilla Public License - this means the compiler, debugger, the huge libraries - it’s all going to be open source when Flex 3 “Moxie” is going to be released.
This news was not so surprising to me because I’ve heard there have been lots and lots of discussions before on how to make Flex “open”. You have to keep in mind that a big company like Adobe is making transition from being a fully closed company to being more open - from the introduction of Adobe Labs to getting more open culture infused from Macromedia, to donating the ActionScript3 VM as open source to Mozilla, and now Flex. You can clearly see how this evolution is happening. Even the PDF format is going from a de-facto standard to a de-jure standard by the ISO organization.
Coming back to Flex, just some time ago I had noted how open Flex is, even source-open but not “open source”, we’re now taking the next big step and making even the code free. Awesome stuff.
I personally still think there’s one issue that needs to be addressed. There are two parts to the story - the production and consumption, which is, the creation and the playback. The creation part is now not just open but open source! Why not make the playback part open? If we can allow anyone to create a player that plays SWF formats, that would be great. Of course, if we make the Flash Player itself open source, that would be mind-blowing, but I think the minimum that should be done is to allow other SWF players in the market. Not that anybody can beat Flash Player (it’s very very hard)…
The news is still sinking in (it was announced just an hour ago, as of this writing). So, more coverage here:
foss.in 2006
The past 3 days of foss.in/2006 have been very interesting. As Gopal said, this conference is in the hallways. I’ve seen/had a fair share of amazing conversations from watching a passionate debate of companies “exploiting” people by getting them to work on their open source product vs how is it exploiting if it is voluntary (Aaron Seigo did the defending :)) to conversations about generator expressions in Python to Java being GPLed to how the ambitious KDE 4 reminds me of Vista (although the KDE community has proved itself time and again before), to Ubuntu Dapper vs Edgy (Edgy has been causing some problems for me). Regarding the talks themselves, lot has been written and clicked already.
The most I got out of this conference was seeing the passion again. The love of programming. The love of helping others. The feeling of being part of a community. The smile on the face of a coder when he comes to know that software he wrote is helping a poverty-stricken country modernize itself. Most of all, the first point again, the love of creating something. I had forgotten that feeling.
code4bill or code2share?
If you have read the article in today’s Times of India on “The Battle for Bangalore” (page 16, bottom left corner), please do read the full article in the UK Sunday Times. The Times of India story is one-sided and leaves out a vital part of the original article.
(via Praveen)
Kaun Banega KDE Hacker
KDE India has been launched. The Dot has the story.
Linux Can!
Watch the Linux Can! video (I took yesterday night) now!
I just can’t get that tune out of my head …
Update : The video is now available on Google Video.
foss.in day 4
Yesterday was such a long and awesome day.
The day started with me missing Taj’s talk on Entropy and I’m still kicking myself for that one. I attended Gora’s talk on IndLinux efforts and I got to know about the various efforts in localization and translations going on.
Then, Alan Cox spoke on Modern Linux Device Drivers. There was so much information that he was doling out that I didn’t quite follow, but I did get the gist and understood that kernel stuff ain’t that much of a voodoo as I thought it would be. It simply requires a lot more discipline and awareness of how design impacts performance.
Then, it was Welte’s turn to talk how he reverse-engineered Motorola’s EZX linux phones to allow a full free software stack to be used on the phone. It was interesting to note the various steps he takes, including using an oscilloscope to find out which probes and points actually work! I didn’t stay for the whole talk because the amount of jargon involved was simply beyond me.
Next, I was listening to Volker on the Munich City’s transition to free software. Interestingly, in the city’s evaluation, they found the proprietary solutions to be cheaper than the free software contract quotes (we are talking a difference of 10 million or more!) but they took many more considerations such as long-term costs, support, localization, etc. and finally OpenOffice+Linux got lot more points and was finally chosen by the Munich city. The last-minute offers by MS which include cuts of 7 million dollars, etc. were not considered by Munich.
After that, we were in an Advanced Python BoF with Taj, Siddharth, and many others. With Sid being present, the talk veered off in various directions and that’s a good thing. Sid was talking about how to have some feedback values put in generators and Taj gave an example of how such a problem is faced in producer-consumer setup when they are using python generators. Taj said there’s a relevant PEP that’s out there but with no consensus yet on what’s going to be done about it. There was much more discussed including decorators, metaclasses, and Ruby too (no, we didn’t bash it).
foss.in day 3
Today, the keynote address was by Andrew Cowie on Inside|Outside, and it was a brilliant talk. Cowie is a very animated and fun person. The talk was about how people are on the inside or outside of the community and what it takes to cross over. He gave various examples, including himself on how he had to step in to take care of java-gnome because the original author vanished from the scene. He also explained we need to be pragmatic and show a united front. For example, he was particularly appreciative of Hari Krishnan’s posters and why it shouldn’t matter whether he used a proprietary software such as Corel Draw. Actually, Hari needed some vector drawing ability which was not available in any of the open source tools. The people who bitched about using a non-open source software would better have spent their time fixing the actual problem. Similarly, he slammed the “GNU/” thingy issue raised everytime in a conference and people actually cheered him! I liked the way he stressed “No one can tell you no” … Cowie has put up the talk slides online.
Then, I attended Till Adam’s talk on Kolab and got to know how a German ministry funded Kolab 1 and subsequently how Kolab 2 has become a real viable alternative to the Exchange/Outlook combination. The technical bits were interesting, like how Kolab just reuses Cyrus-imapd for everything and treats all the information as just imap mails, including memos and calendars, etc. Since Cyrus-imapd is very scalable and kolabd is a lightweight daemon, Till said that many deployments of Kolab had scaled really well.
Then, I caught the last few minutes of Dr. George Easaw talking about Moodle. He was very enthusiastic about Moodle and is using this course management system in their college.
The FOSS in Agriculture : OSCAR talk was very interesting. OSCAR stands for Open Source Simple Computer for Agriculture in Rural Areas and has been sponsored by the French Institute of Pondicherry. OSCAR has a database of plants and images of the different parts of the plant. Once a farmer selects how the plant looks like, the list of species that match it are shown, and the correct species can be selected. In the species page, many details are present such as the names in local languages, whether it is a weed or a plant, whether it is good or bad, etc. They have developed this software in conjunction with teams in the field coordinating with farmers. Apparently, they want the software to reach a certain stage of completion and then open source it, which would likely be around March of next year.
Then, Sai Sreekanth spoke about FOSS in primary education. He presented his experience with schools in Kuppam and how freely available software made a difference to the learning of the children. Interestingly, he said that training and English were not the barriers - just having a computer running with all the software loaded were enough and the kids really learn to explore on their own. He demonstrated a few software that were very useful and the audience were quite fascinated by the breadth and depth of the software such as Tux Math Scrabble, Celestia, Anagramarama, edu.kde and many more. There is a whole lot of software out there available for school education that need to be taken advantage of, especially in hinterland areas where good teachers are rare and there are budget constraints. For example, if a school can’t afford a real chemistry laboratory, then ChemConnection is an amazing piece of software where you can mix and match chemicals and see the result of the reactions. Sai pointed to many more resources such as iosn.net, ofset.org, pratham.org and Edubuntu.
Next, I attended Kalyan’s talk on Web Application Security. He made revelations on how insecure sites can be and how easy it could be to circumvent the “128-bit SSL encryption high-security” stuff and do nasty things. All you need is 10 min to look around the HTML code. In fact, he demonstrated how we can easily get DVD players from Rediff Shopping or Indiatimes Shopping by changing the price from say 2999 to just 2 rupees in the HTML code and then clicking submit… Don’t try this at home, kids. His stress was that cryptography gave a false sense of security, it was easy to bypass the security. What is most needed is common sense and strict input validation is one of the best ways to be secure.
Then, I attended the Foss in Education : A Panel Discussion. Yes, it’s a recurring theme in the discussions I attended today. Many points were discussed but Atul came in and set the discussion straight explaining the difference of FOSS in education and FOSS as education and why we need to differentiate between the two. The former is using FOSS as tools for education whereas the latter means FOSS becomes syllabus. Obviously, I think the former is a better idea. There were professors and students participating in the discussion actively. Gopi Garge was chaperoning the discussion and summarizing the points regularly.
Unfortunately, attending these sessions meant missing Kaustubh’s podcasting talk and Mrinal’s FOSS Studio talk as well.
Finally, I last attended the KDE Development Workshop by Taj and Till.
Outside, people had gathered in groups and were all discussing away. You could just feel the ideas and discussions and opinions whooshing by.
Update : Philip has put up his notes on why foss in education makes sense.
foss.in day 2
Today morning, the first session was a Linux Kernel roadmap by Jonathan Corbet. Although I’ve never been a kernel-level guy, the talk was interesting and he clearly explained how features have been added and improved over the various versions, and how the development process has improved and become more “professional.”
Then, it was my turn to talk and I talked about TurboGears. The talk went pretty good and it was well-attended which made me quite happy even though I had some tough competition, heh.
I did make two mistakes. First was that I got worried about the time I had to finish the talk, and second, I concentrated too much on the slides. Whenever I have presented well (which has been most of the time, thankfully), I tend to leave slides as guidance for the audience, and have my thoughts free-flowing enough to be coherent and entertaining. Well, I don’t think I’ll be making these mistakes again. However, I did get good feedback about the talk from various people, and a good number of questions after the talk, which is always a good sign. For those who couldn’t attend, my TurboGears slides are online.
And one more thing … my book’s website byteofpython.info is now running on TurboGears! This is only the second public website ever running TurboGears after diggdot.us.
Then, I attended Gopal_V’s talk on programming in the Mozilla platform. He gave a very detailed approach to creating Mozilla applications and how to go about things. I must get the slides from him later, but it shouldn’t be a problem grabbing hold of him since he works in the same floor as me at Y! His slides are online.
I was on my way to the OpenLaszlo talk, but took a peak in the Ruby on Rails tutorial. Does Ruby on Rails really need the . Update: The new RoR migrations feature is simply brilliant. Thanks to Mark Ramm for the tip.CREATE TABLE SQL statements to be written by hand? …. I think I prefer the SQLObject approach of having all the database-schema in one place as simple Python classes instead of having separate database creation and database manipulation (ActiveRecord) parts.
Other than that, Rails looked cool. The directory structure created by rails as well as the test-driven nature was good.
Then, I got into the OpenLaszlo talk by Nirav Mehta. I had seen the OpenLaszlo demos before and used to follow Oliver Steele’s blog, but I never got around to writing anything with it. Nirav kept the audience engaged and showed off some eye candy stuff that OpenLaszlo provides from images to animation. Somebody in the audience asked him to put audio as well, but unfortunately, he didn’t have any mp3s.
Then, my friends and myself headed to the food court and then went around the FOSS Expo section. The Sun Microsystems booth was the best one and they showcased real open source projects such as Belenix (the OpenSolaris LiveCD) and NetBeans. I got a demo of OpenSolaris’ DTrace functionality and it was pretty impressive.
Sadly, the other stalls like the Google and Yahoo! booths didn’t showcase any open source projects at all! When Google has open sourced many projects and Yahoo! has contributed open source stuff such as the Alternative PHP Cache, why can’t they show it off and demonstrate they too are part of the community (and invite people to join the company), which I thought was the point behind the stalls…
Then, I saw Pramode in the Phoenix stall and it seems people are showing interest in Phoenix which was good to hear. Nearby, Anush and Tejas were in the Python stall and trying to entice people to talk about Python, heh.
Soon, we were back in the Intel hall for Jaya Kumar’s talk on GPL and non-GPL code interaction in the Linux kernel. He stressed that binary-only kernel driver modules are not a good idea and his explanation was pretty simple - it screws users on other architectures and users using different distro-compiler-etc. combinations. Another point is that they are not respecting the people who wrote the Linux kernel. He quoted Linus Torvalds saying it has to be a two-way street, if somebody wants to write something using the Linux kernel, they have to contribute back as well. Jaya Kumar was over-shooting his time slot but he had a lot of interesting examples and incidents to talk about. I think he had more than 100 (sic) slides in his presentation. Outside the hall, Jaya Kumar and Harald Welte were mobbed and they had a good time interacting with others.
Then, I attended the “FOSS in Education” BoF. Philip, Manish and Praveen were also there. The discussion involved quite a number of issues and Praveen has added a nice page in the FCI wiki regarding the discussion. The focus was mainly in creating awareness, and getting students interested, at the high school level. The emphasis shouldn’t be in simply using open source but stressing the points on why open source is good for everybody, and how the community is the core strength.
Phew. As you can gather, it was a long day but an exciting, educative and interesting one.
I was looking at planet.foss.in and hoping to look for any insights from the many talks that I missed today (there are 6 tracks running in parallel!), but it seems very few people write such long posts as dumb me!









