The future of education

May 26th, 2007

Yesterday, I had an opportunity to observe firsthand what I believe to be the future of education.

I had accompanied my daughter and her class of fifth graders on a day long field trip to the Chabot Space & Science center. The kids had a fairly packed agenda, but the centerpiece of attention was a 2 1/2 hour session titled “Mars Mission”. The “Mars Mission” turned out to be a simulated exercise set in the year 2076 where the kids had to land a spacecraft on Mars and do a crew exchange (get a fresh crew to man the Mars control center and get the current crew back to Earth).

A few days before going on the trip, the kids had all applied for various jobs on the mission (Navigator, Data Specialist, Communications Specialist, Medical Specialist, Isolation Specialist, etc) and had all received some preliminary training related to their assigned jobs.  They had also been split into two teams (one team going into Mars and the other leaving Mars).

When they got to the center, they were all taken to a briefing room and given instructions about the mission. Then each team got into a separate room – the kids going into Mars were put in the Spacecraft room and the kids leaving Mars were in the Mars Control room. Each room was fully equipped with specialized stations for each of the teams. They had keyboards/monitors, headsets, robots, control panels, etc – very realistic (BTW, the whole thing ran on a network of Macs which explains why nothing crashed …). For the first hour, they worked through the drill of landing a spacecraft on Mars and for the second hour, the kids switched rooms/roles and worked on getting the spacecraft off Mars. Throughout, kids sitting in the control room gave instructions while the kids in the spacecraft carried them out. They worked as a team while focusing on individual assignments. There were lots of emergency drills (to be expected of course) which the kids had to work through.  All in all, it the kids were put into a lifelike setting and asked to go through a set of practical exercises which taught them lots of valuable lessons.

In a global economy that is going to increasingly value creativity and need team skills for execution, I believe that this exercise was invaluable for the kids. If only they could do much more of this type of activity instead of continuing to plod on with antiquated methods of education …

AJAX/RIA : No Clear Choice

May 21st, 2007

It seems pretty clear that AJAX/RIA as a concept is here to stay.

It represents the next natural step in the evolution of application architecture. We started with a thin client talking to a single server in the Mainframe era. We then moved to a thick client talking to a single server in the Client-Server era. With the advent of the web, we had a universal thin client (the browser) that could talk to multiple servers. Now, with AJAX/RIA, we are moving towards having thick clients hosted within a universal framework that can talk to multiple servers.

Now, if only we could all agree on what the universal framework is going to be :-)

There are really three major camps I can see:

  •  Just the modern day browser – thick clients all use JavaScript/XHTML/CSS
  • Browser augmented with Adobe’s Apollo runtime – thick clients can use JavaScript/XHTML/CSS or use MXML/ActionScript/CSS
  • Browser augmented with Microsoft’s Silverlight runtime – thick clients can use JavaScript/XHTML/CSS or use XAML/CLR/CSS

At first glance, it seems like JavaScript/XHTML/CSS would be a logical choice for anyone implementing a thick client because it is the lowest common denominator. However, there are strong motivations to use Apollo or Silverlight – the current browser is not a great environment for hosting thick clients. Security is probably the biggest hole.  Now the confusion sets in – one essentially has to bet on either Adobe or Microsoft. Be nice if there was some consensus built on how the browser as a platform needs to evolve to support running thick clients instead of having everyone pick sides …

Genius at work

May 20th, 2007

I highly recommend checking this video out. It is about Akrit Jaswal, a twelve year old Indian boy who routinely performs surgery based on knowledge acquired from reading reams of medical books and journals!

I’m sure everyone has read historical anecdotes about geniuses and the troubles they undergo through to get their message through. What is fascinating is that we now have a live example of such a story unfolding amongst us. From the video it is clear that Akrit is really confident and knows what the heck he wants to do and the establishment does not know how to deal with him; so it decides to undermine his confidence and slow him down. I think that simply sucks!

I think in this Web 2.0 world that we live in, we have a really unique opportunity to collectively support Akrit in his quest. Stay tuned for more details. If you would like to be involved, please drop me a comment.

Getting rid of junk mail

May 18th, 2007

A friend recently told me about a for-fee service offered by GreenDimes to get rid of junk mail. GreenDimes charges $36 a year and promises to get rid of junk mail and plant a tree each month.

Did a bit of digging around and discovered what seem to be a couple of relatively simple and low cost steps that promise to do the trick as well:

  • The Direct Marketing Association appears to offer consumers a service for a $1 fee that prevents mail from DMA members for a period of 5 years.
  • The major credit reporting agencies have a site for consumers to stop receiving credit card offers (we seem to get about one every day on the average).

I tried to figure out what additional features were offered by the GreenDimes service – they appear to hint at covering a proprietary list of junk mail sources in addition to the ones above and also seem to offer a level of customization in terms of being able to receive certain types of junk mail if desired. For now, I think I’m going to stick to the cheaper DIY method and see how well it works before I fork out more money …

SOA based on WS-* is fundamentally flawed

May 17th, 2007

All this while, I used to think SOA based on WS-* (see W3C and OASIS) would likely not scale because of the complexity involved in understanding and using the WS-* specs. Now I’m firmly convinced that SOA based on WS-* will never scale because the entire philosophy and thinking that is driving it is fundamentally flawed. Let me explain.

The idea behind SOA as a concept is loose-coupling, i.e. about a large body of applications that co-operate with each other to produce more powerful super-applications. If you look at the thinking driving SOA based on WS-*, it is all about tight-coupling, i.e. about a large body of applications that are extremely well co-ordinated to produce more powerful super-applications. Co-ordination instead of co-operation – therein lies the flawed thinking.

Co-operation is a notion that can be made to work on a large scale with few guiding principles/standards (the web is a wonderful example; others are the movie industry using DVDs, printer industry using letter size paper, etc). It is not easy to achieve, but it is feasible. Co-operation allows for individuality while enabling a shared goal to be achieved.

On the other hand, co-ordination on a large scale is practically impossible to achieve (an army like the US army, the New York Philharmonic Orchestra are some examples of co-ordination). Co-ordination demands extreme discipline and control. Individuals do not matter, only the common goal does.

Everything about SOA based on WS-* tries to achieve co-ordination (the specs themselves and all the grand talk about ESBs, governance, lifecycle management, meta data repositories, etc).

Co-ordination is extremely appealing because it promises ultimate efficiency. This is probably why enterprises are taken in by the SOA based on WS-* sell. With enough time, when it becomes apparent that they’re chasing a fallacy, people will come to their senses and do something much simpler to achieve co-operation that may be messy and not so efficient, but it sure as hell will work.

New and improved Yahoo Maps

May 17th, 2007

Played around with the new and improved Yahoo Maps and must say it is very slick. Yahoo has done a very nice job of integrating local data with their maps – unlike Google Maps where you have to first search for businesses to have them show up on the map (this search typically produces a lot of garbage), Yahoo has a nice browse feature which lets you get to the popular businesses really quickly (and the data quality is very good). Performance also seems quite good – I even switched to satellite mode and the transition happened fairly quick.

I guess the next round of map wars is officially underway – be fun to see how Google responds :-)

Why JSON beats XML

May 15th, 2007

Last summer I had the opportunity to implement a library that serialized Java objects to JSON strings and de-serialized JSON strings to Java objects. I know I should have used one of the umpteen existing libraries – but hey, I was suffering a temporary bout of NIH :-)

When doing this work, I realized how JSON has really hit upon the sweet spot of data interchange. There are really only two data structures that matter for any sort of data interchange between applications – arrays and hash maps (I’m including any arbitrary combination of the two – for e.g. a hash map of arrays of hash maps). By focusing on these two cases alone and providing a very compact representation, JSON has really nailed the problem of simple and efficient data interchange between applications.

Wasn’t XML supposed to solve this problem ? Well, XML is neither simple nor efficient from a data interchange perspective.

Schema introduces serious complexity when using XML for representing data while not serving any really useful purpose as far as I can see. Most of the issues with dealing with data from foreign sources have to do with interpreting the semantics of the data. Schema only helps with hints about the structure of the data; this is marginally useful and definitely not worth the huge effort involved in defining Schema. Only in the rare case where a certain structure is very widely accepted and used does Schema even begin to make sense.

Now, one could argue for using XML without Schema and I am willing to bet good money that most of the use of XML in the real world is without Schema. But in this case, the other failing of XML – that of efficiency creeps in. XML is too verbose because it was designed to be very general.

JSON has another huge advantage – besides its origins in JavaScript, it has a natural affinity with dynamic languages like PHP, Ruby and Python. Arrays and hash maps are very widely used in programs written in these languages – therefore dealing with foreign data (de-serialized from JSON strings) is no different than dealing with local data. No specially convoluted and over-engineered APIs to learn or use. XML, try and beat that :-)

The business of funny

May 14th, 2007

Met brothers Sandeep and Rajiv at a social occasion the other day – they are the brains behind EffinFunny, a web site that offers professionally created video clips from up and coming as well as established comedians. While the site and content are really cool (I highly recommend you check it out for yourself), what is very interesting is how the company is aiming to change the business of stand-up comedy. I think it is another great example of what Web 2.0 is really all about.

EffinFunny uses professional resources to videotape comic performances at live shows they organize once a month (currently in L.A. only). The company then applies a rigorous editorial process to distill the best content from these performances and releases this content on its site. Anyone who wants to is able to try out at their shows – there is no pre-qualification.

What EffinFunny is doing is creating an open and efficient marketplace for comic talent. Folks visiting their site get high quality content from the best up and coming comedians – they don’t have to sift through digital garbage like they need to at sites like YouTube. The up and coming comedians get to show off their wares without really worrying about issues unrelated to their core competence like making slick videos. Anyone looking to hire/use new comic talent gets to see the comics in action and compare them with their peers in a cost and time effective manner. All in all, Web 2.0 at its best.

28 tons a year

May 13th, 2007

Did some math using the EPA’s Carbon Emissions calculator today. Looks like our household generates about 28 tons of Carbon a year. Here’s the breakdown:

  • Our cars – 10 tons
  • Electricity/gas for our home – 17.5 tons
  • Waste – 0.5 tons

A real eye opener for me.

Its pretty safe to assume that households in third world countries generate nowhere close to this much. I was thinking of my own childhood growing up in India. We did have a car, but it was used mainly for leisure trips and driven nowhere near as much as my family does now. We did not have central air conditioning or heating systems in any of the homes we lived in (we lived in some extreme climes where we could definitely have used these). We used ceiling/table fans for cooling ourselves and blankets/sweaters to warm ourselves. We did not generate even a 100th of the waste my family generates today. We simply did not consume as many goods with elaborate packaging and we did not throw away anything until it had served every ounce of its life. Could I get my family to change so we start living that sort of a simpler lifestyle ? Probably not. But could we do something to reduce our emissions ? I think so – there’s a number of very simple suggestions available here which we are going to try.

I recommend anyone reading this do the math for themselves and look for ways to conserve.

Patents serve middlemen, not inventors

May 10th, 2007

I ran into this article today arguing why Patents are a wonderful thing because they reward inventors in a big way and spur more innovation.

I could not disagree more with the author.

Patents reward a whole industry of middlemen way more than the inventors who create them.

Only in rare cases do inventors make big gains. This happens when they have/acquire the business skills needed to translate their invention into commercial success. Someone like Larry Page (quoted in the article) would fall in this category.

The common case is that the inventor receives a small if any reward for his/her invention and the maximum benefit goes to corporate managers, investors and/or lawyers (of course, if it is worth anything in the first place). If the invention is a commercial success, investors and managers reap the rewards. If the invention is used to sue, lawyers reap the rewards.

Inventors are typically driven by passion, the passion to create. On the other hand, Patents are driven by greed, nothing but greed.