Riding the trend curve
Last year, there was a reported 30 million download request for Eclipse. That's a lot of downloads! Of course, you need to be careful when looking at the numbers. By downloading each release, and using each milestone version, I made up many of those downloads. :-)
What is more interesting then the number of downloads of any specific product or technology, is the popularity of the technology. Is a technology on its way in, is it on its way out, what is the future of any specific technology. It would be nice to know prior to buying a book on the subject. What is the next big thing is a question of almost all developers, especially when first starting their careers.
From Webster-online: meme - an idea, behavior, style, or usage that spreads from person to person within a culture. Memetics is a field of study, which postulates that the meme is the basic unit of cultural evolution. Examples of memes include melodies, icons, fashion statements and phrases.
Taking meme a step further is Memegraph, which attempts to create a histogram based on keywords appearing on Internet sites. By mining the web to determine the popularity of a technology and then graphing the technology to determine trends, one can identify areas of quick growth for job or investment opportunities, as well as identifying areas to avoid.
Broward Horne attempts to create memegraph using a product he calls meme miner. You can learn more about meme miner at http://realmeme.com/miner
We are already aware of some trends in Java, such as EJB's usage heading to the basement, and inversely Hibernate's dramatic increase in popularity, as seen in the following charts: EJB graph database graph
Other trends are predictable. For instance, a manager tried to get me interested in PERL in the late 90's. After a week with the language, I knew it was not for me. I could not imagine writing a huge multi-layer, highly componentized, and easily maintainable application in PERL. As web applications became bigger and more complex, it was unavoidable that PERL would decline:
The meme miner has a limitation due to its use of a single source, dejanews.com. If meme mining became a major player in decision-making, things could occur that would skew results. Activities like astroturfing could become common place.
For obvious reasons, I would hate to see this tool in the hands of a manager. Furthermore, as this type of technology becomes more readily available and people start to follow the trends, memegraph will start to influence the results.
It seems everyday we slip away from the age of reason to the age of chaos. IMO following trends is a mistake. Technology limitations and the rise of better solutions predetermined the fate of EJB and PERL. (However, EJB may see a rebirth with EJB 3.0). Being involved in the community, and understanding technology concepts and restrictions, should play the primary factor in decision-making. An example of this is demonstrated with my experience with Eclipse. I had received the link to Eclipse from a Bruce Eckel newsletter back in December of 2001. I download the IDE soon afterwards. After months of getting my head around perspectives and SWT, I finally understood where IBM was going. It was clear with the release of Eclipse 2.0 that the IDE market had reached its conclusion. (However, 3 years later people are still arguing about IDE's). I continued to review and talk to others about IntelliJ and Netbeans, (and IMO IntelliJ is the best of the bunch). However based on Broward's work, the future seems predetermined for both IntelliJ and Netbeans.
Is Memegraph a developers blessing, or an opening of Pandora's box?