Category Archives: india

Guy Kawasaki’s latest post points out a very interesting manifesto by Matt May (author of “The elegant solution”, which is going right away in my amazon wishlist), called Mind of the Innovator: Taming the Traps of Traditional Thinking.

In my modest experience, software development is one of the areas where traditional, conventional thinking is most dangerous and leads to failure (I believe this could be one of the factors driving India’s success in software development: I’ve been dealing with this in this old post of mine).

The 19-pages manifesto is dense of precious advises and considerations everyone who ever wrote a line of code cannot disagree with. Read it if you get the chance to.

This Vinnie Mirchandani’s post lets me know of a recent two-part interview by Jason Pontin @ MIT Technology Review, with C++ inventor Bjarne Stroustrup. It’s very interesting as he discusses what’s wrong with most software code nowadays.

He makes some excellent points, going straight into the old time-to-market problem (here it is a post I wrote few months ago about it):

“[...] looking at “average” pieces of code can make me cry. [...] People reward developers who deliver software that is cheap, buggy, and first. That’s because people want fancy new gadgets now. [...] Significant improvements are needed, and they can only come gradually. They must come on a broad front; no single change is sufficient. [...]“.

It’s no mistery though that outsourcing is changing the way software is designed and coded, putting the software process in a new, geographically-distributed dimension: this might lead to a rise of interest in formal methods in software engineering, to reduce cultural mismatches and leave no room for ambiguities. An awesome - pdf – article by ETH’s Bertrand Mayer @ IEEE Computer (January 2006, pp. 121-124) deals with the new reality of offshore outsourcing and the revolution in the industry.

A better education of software professionals is needed too, Stroustrup says. To this end, Michael Stal’s latest post about teaching architects is very interesting too.

Stroustrup talked about performance and hardware-software relationship too:

“Software developers have neutralized the astounding performance of modern computer hardware by adding layer upon layer of overelaborate [software] abstractions. We seem to have hit the limits of linear speedup for hardware, but in many cases, we could win a couple of orders of magnitude back from the software.

The problem is not so easy to address, though: abstraction is an essential strategy to address complex problems, no doubt about it, and challenges to tackle in software development are getting harder and harder (Manfred Broy, “The ‘Grand Challenge’ in Informatics: engineering software-intensive systems” IEEE Computer, October 2006, pp. 72-80).

Thus, a lots of dimensions of variation improvement are out there, and the optimal trade off is still to be found; or maybe we shouldn’t be looking for a trade off at all, which is Stroustrup’s own point of view: a bit strong perhaps but…does it mean he’s wrong?

Have you ever noticed the difference between listening to something and visualizing it? If you haven’t – yet I doubt – I hope you will after you read this post.

I was playing around with Google Trends, and I couldn’t resist typing in some tech-related words. Well, as quite easily predictable, it was quite hard for me to spot tech buzz’s not leading to an all-eastern top five in cities. India, China, Singapore, Indonesia. That’s it. Full stop.

J2EE TrendsJ2ME TrendsSymbian Trendsweb2.0

I reported just some sample charts, but results are essentially the same for most of best known tech-related words. To see some of US or european cities pop out in the top five you’d have to type in quite young technologies or (better) emerging buzzwords. Examples? Look at web 2.0 trends (last chart on the right; here you can find a map of Web 2.0 startups), or type “Ruby on Rails” and look by yourself.

Ok, no big surprise. Yet it leads me to think about where the industry is going to go in the very next years.

I’m reading Federico Rampini’s latest book, “L’impero di Cindia” (China’s and India’s empire), and its first chapter is entirely about India and technology, depicted as well-known by anybody who has got a good knowledge of the software industry.

It’s a hungry and dynamic set of open-minded people, eager to learn in west’s leading universities and even more to get back home and work for their own country. It’s an extremely young population, 70% below 35 years old (I believe Italy is quite close to the opposite situation: 35% of people below 70 years old :P ). It’s world’s most ancient democracy, and as Professor Soumitra Nandy (head of the Indian Institute of Technology) points out:

“To be creative in software there’s a need for thought openness, independent minds. [...] You have to be free to succeed in such a job. China has got a dictatorial regime; japanese people are not used to bring into question elderly people’s ideas. Our democracy and freedom tradition are strong points.”

Although these facts may seem well known and quite understood, I reckon they’re highly underrated (wow, is that an oxymoron!?) nowadays. The scenario might get clearer if we think India’s rise is very late if compared to the Chinese one.

“People ask me what about India vs. China, but I ask them what about India plus China?” (Bill Gates)

Software companies keep investing in research and development in India, and that’s exactly what they’re supposed to do. Anyway, if west – universities, companies and, of course, governments – does not start immediately to feel much more the competitive rush, I believe we are going to face tough times as engineers.

“Stay hungry, stay foolish.” (Steve Jobs’ Stanford commencement speech, 2005)

[Disclaimer: Google Trends is still in an early stage of development, results may be not accurate. I used them simply as a visual starting point for the discussion.]

I’m so happy to hear that the Italian team won the first prize for software design @ Imagine Cup 2006! Congratulations guys!

I already blogged about Imagine Cup and the Italian team’s project in this post, where you will find a couple of links and information about the competition and some other projects too.
The team of Giorgio Sardo, Massimo Paternoster, Silvia Perrone and Andrea Sossich from the Polytechnic of Turin, Italy were awarded a cash prize of $25,000 for its effort.

[UPDATE: I'm glad Giorgio Sardo commented this post; you can find more info about the "HelloWorld" project at this url: http://www.giorgiosardo.com/HelloWorld]

The second prize went to the Brazilian team, while the Norvegian team won the third prize. India got the third prize in the interface design category.

Looks like Italy is winning a lots of competitions this year…hope this trend goes always better. :P However, just wanted to renew my best congratulations and wishes to my countrymen. ;) Bravi ragazzi!

Read more:

[UPDATE: All categories first 3 places here and here]

Imagine Cup 2006 final sessions are taking part in India, Somasegar says in this post. Presented projects aim to enable us lead healthier lives. I’m particularly interested in the software design category of the competition, and I just discovered the Italian team: Even .ctor :D .

The cool thing about them (and other teams too) is the diversity of their technical background, which is – no great news though :) – by far the best key to look at a problem from different perspectives.

They describe their project, Hello World, as follows:

Hello World was created to improve the relationship between medic and patient, supplying the doctor with important information often left out by the patient, whether because he is not able to report them or he doesn’t consider them significant.

However, a lot of interesting projects are out there; I loved particularly the Indian team’s one, SONIQUE, aiming to help blind people using technology “like never before”, and the team from the Netherlands too; these guys are presenting “Health Desk”, an AI-based system exploiting natural language processing to separate serious requests from lesser ones, and reducing general pratictioners’ load.

These are anyway just a small fraction of all presented projects, some of them are actually brilliant. Good luck guys. ;)

[FOLLOW-UP: Italian team wins first prize @ Imagine Cup 2006]