Guest Opinion

Where Did All The Developers Go?

If programmers are leaving VB and aren't going to C#, where are they going?

Google Trends is a curious tool. It displays the relative popularity of search terms over time. Recently, a group of developers on a software-developers forum noted that over the past five years, searches for VB.NET have been declining to the point where they are now below those for C#.

This, of course, means nothing. For one thing, Visual Basic programmers use more than one search term (VB, VB.NET, Visual Basic), while C# programmers use only C#, so total VB searches, while trending downward, are probably still well above C#. Besides, the whole VB versus C# discussion is tiresome -- the framework is where the real excitement is. If C# use is growing at the expense of VB.NET, who cares?


Except that it isn't growing. The real surprise in the trend line was that C# searches have been flat for years. This prompts the question: If programmers are leaving VB and aren't going to C#, where are they going? Could it be that they're abandoning Microsoft technologies?

I checked the trend lines for other programming languages and platforms, including PHP, Perl, Java, JavaScript, and Flash programming. I discovered that C#, by holding flat, is doing well because every other "traditional" language is trending downward.

Why would this be? Perhaps developers are using Live.com instead of Google? I'd accept that if it were just the Microsoft languages, but LAMP programmers leaving Google for Live.com? I don't think so. Something real is happening.

Does use of language names as search terms correspond to the popularity of a language? After all, experienced developers don't often search for language names -- we're much better at refining our searches. People use language names as search terms when they're curious about them or when they're just starting out. They use them to find introductory articles and tutorials. So we're most likely looking at a specific population; new developers and those who are switching languages. Could the declining trend lines be indicating an overall drop in interest in computer programming? Could it indicate a movement away from traditional programming to newer platforms?

It's probably both. Statistics from the U.S. Department of Education and National Science Board concur: Enrollment and degrees granted in computer science programs have been dropping recently. This year many colleges (including top-tier programs such as MIT, Rutgers, and Berkeley) report lower enrollment. Carnegie Mellon, one of the top computer science schools in the country, had only 2,000 applicants for its computer science department, down from 3,200 in 2001.

Google Trends is little more than a curiosity, a signpost to reality. The surge of people who entered programming in the '80s is drifting away. Fewer people are entering the field. The software development world has fragmented, with programmers being drawn from mainstream-development platforms to new technologies such as iPhone and Facebook application development (both of which are trending upward).

There's another reality to be found on Google Trends. It also lists the regions, cities, and languages where a search term is most popular. Keeping in mind that language terms are most popular with beginners and those learning a new language, it's interesting to note that the top three regions for C# are India, South Africa, and Israel (the United States is No. 10), that the seven top cities are in India and China, and that the No. 1search language is Chinese. Indeed, similar region and language trends apply across every language and dev platform I checked.

Where have all the coders gone? Now we know. But perhaps the better question is: Where are the new coders going to come from? That's something you can help answer, by teaching your kids to code and by volunteering to help introduce or teach programming in your local schools and community colleges. And if you aren't part of creating the answer, don't complain if you don't like the answer you get.

Reader Comments:

Wed, Aug 19, 2009 Joel "Jaykul" Bennett http://HuddledMasses.org

No offense, but this is a story which is about on the level of quality I'd expect from, say, TechCrunch. The developers haven't gone anywhere. It's everyone ELSE that has COME to Google. All numbers are relative to total traffic. http://www.google.com/intl/en/trends/about.html#10 So yeah, geeks make up a smaller percentage of Google users in 2009 than they did in 2004. Surprised?

Wed, Aug 19, 2009 Greg Florida

It seems to me this follows the economic trend. With companies I work for having less and less to spend, they are jumping technologies less. This directly translates to programmers staying put in the languages they are currently trained in. Additionally, with the maturity and market stability of many languages today I don't see that there is as much drive to spuriously change languages. When languages were more limited in their usability it simply made more sense.

Tue, Aug 18, 2009 Jeffrey Roy Seattle. WA

I'm in the camp that doesn't care about the language. .NET gets me the hits I need and I translate. I've converted C# to VB and vice-versa as necessary. I'm intrigued that people find MSDN's search results to be relevant. They are great for a specific method--sometimes--but are largely useless for larger contexts or real-world examples.

Tue, Aug 18, 2009 Dan Michigan

The lunacy and drivel in these "religious" debates over one language vs. another is so entertaining.

Tue, Aug 18, 2009 WBALTHROP

In 9 years of working with and teaching vb.net I use the MSDN site daily 99% of the time. Failing to find what I need there I'll go to google as a last resort. But that rarely happens, mayby once a month, or less.

Fri, Jul 17, 2009 JS

I'm a VB.Net programmer and I never search by VB.Net, although often I'll search by .Net. With online tools like Developer Fusion (http://www.developerfusion.com/tools/convert/csharp-to-vb/), I can convert C# to VB.Net. Since most of the code samples are in C#, I don't need to learn C# when I can copy and paste C# code, click a button and translate it to VB.Net and then copy it back out to the IDE. Roundtrip is 15 seconds, so why learn a language that doesn't meet the way your mind thinks?

Fri, Jul 17, 2009 Ross Bay Area, California

Some of us went to ASM after the great confidence massacre of '02. After .NET was revealed and proved to be nothing more than a clunky, over-sized virtual machine, I swore off most Microsoft technologies. I always felt like programs should have been getting smaller & faster, not bigger and slower.

Wed, Jul 1, 2009 John Kansas City

There are severl points presented here that I have issues with. First, you don't have to be college educated to be a programmer... Why don't you tell that to the financial sector... It's pure math! Secondly, how many of you on the board even know how to write a linked list, doubly linked list, queue, merge sort, binary tree, or other datastructures? They are the underlying foundation of software in general. And finally, those that say Microsoft is constantly changing their technologies... Yes, of course they are... What does research and development mean in the first place... Does any one here know the difference between Von Neumann oriented languages and a functional language? For those of you that do I apologize, but it still takes a skilled working to create a solid architecture, knowledge of design patterns, software engineering practices, and math... It's more than using just the provided API... It's called innovation!!!!!

Sat, Jun 6, 2009

maybe 5% to 15% of my language searches contain C#. I mostly search for framework artifacts such as 'ScrollViewer class'. works fine, no need to prepend c#

Thu, May 7, 2009 Atallah MN

Maybe it should be named VB# instead of VB.Net

Wed, Mar 18, 2009

I'm on the Advisory Board for a college and they dropped their programming classes from the IT curriculum. They are concentrating more on Systems Admin and Networking. So there you go. I don't mind because it puts someone like me more in demand. $$$

Mon, Feb 23, 2009 rasmasyean

I think the shipping of programming jobs off shore is real. And that may account for the C# interest in other countries. One of the key aspects of .NET in general is that it abstracts the computer science part of programming really well. Hence, you no longer need to be as good in math or understand electronics and digital technologies as much as before. But if you DO know these things, it will make you better able to use classical languages like C and even C++ Java, and sometimes Assembler! But face it…there is only so many requirements for DLLs and lower level stuff. Most of the programming has shifted to the high level arena and this is where Microsoft helped enable workers with less skills to fill these jobs. It’s just like manufacturing. Most things are made by machines. The human just becomes the technician. Are programmers still the “super geeky guy in high school who aces all exams”? No, a lot of them are just technicians. Old timers who worked on automobiles were “Engineers”. Now it’s done by “Mechanics”. All you have to do is use the proper tool (like Visual Studio) and you can bypass years of training to accomplish the same job.

Sat, Feb 21, 2009 stevej

1. I take issue with your assertion that more experienced programmers avoid 'perl', 'C#', etc. in search terms. These are pretty good disambiguators alongside whatever it is you're looking for.

2. Are devs getting their answers now from IRC, twitter, StackOverflow, etc.? Social trumps search maybe?

Fri, Feb 20, 2009 Gian Young Australia

Many loyal VB'rs have rebelled at being forcibly led down the .NET path and moved to PowerBasic SDK and other alternatives.

Wed, Feb 18, 2009 Ashwin Jayamohan

How about the following factors:
Better MSDN subscription searches on the developer's box
More focussed portals at MS for language questions
Examples listed in framework documentation
Greater structure definition in organizations narrow down the focus of each developer
Recession leads to less innovative development on-site and delegates more to offshore resources

Wed, Feb 18, 2009

My daughter made a perfect score on the language portion of the college entrance exams. She is very computer literate. I would never encourage her to enter a profession where h1-b visas were created to hold down the salery first and replace developers second. It is like encouraging her to be a maid or some other undervalued profession.

I use the C# language but my searches never include "C#". They are far more specific.

Wed, Feb 18, 2009 Steve

While the article makes valid points, one has to ask: what if you're a domestic US VB or C# or other type of programmer and find your job skills quickly being shipped overseas?

Don't complain that we're losing expertise when the business model driving most US business is to dump skilled workers here for cheaper skilled workers there. While I'm left flipping burgers or collecting unemployment, my interest in searching on VB or C# or any other technically-related topic is secondary to how I'm going to pay my bills and the mortgage.

To paraphrase a long-dead famous playwright, "The fault, my friend, lies not in our stars, but in ourselves."

Tue, Feb 17, 2009 RL Chicago

Another possible explanation is that C# developers don't filter their searches with "C#" keyword. As a C# developer, knowing that most ".net" search results will give C# examples, OR examples that can be easily rendered to VB.NET, I rarely use "C#" as a search criteria, but MOSTLY get the results I need.

RL

Tue, Feb 17, 2009 Gene

vb.Net < C#.

Could be but perhaps more searches are done in C# than vb.Net because it is more difficult to learn.

I've been programming in various languages for 27 years and can definitely say C# was more difficult to learn than vb.Net.

Personally, I prefer Edlin and MSDos batch files.

Tue, Feb 17, 2009

Why would anyone in the US want to learn programming, when the programming jobs keep being shipped offshore?

Tue, Feb 17, 2009 Rick Iowa

I'm a DBA, and what I'm witnessing is that the company I'm in is not developeing much at all in these technologies. Our best most experienced developers now have fancy titles and don't write code. It's mind-boggling.

Tue, Feb 17, 2009 Craig

Maybe 100,000 developers out of work has that much impact...?

Mon, Feb 16, 2009 D French Ireland

Maybe as the IDE is better since 2008 IDE, less people are running into problems?

E.g. same amount of users less searches to see why the stupid IDE has messed up.

Fri, Feb 13, 2009 VBer

Maybe they're like me and never found anything good about .NET. I've been a C++/VB Classic programmer for years and it's tough to find articles online anymore that cater to these languages. So I figure things out myself or look through my old code.

I really do think there's less interest these days in programming and I think it relates to .NET and Microsoft's refusal to support languages like Classic VB that people like myself have so much invested in. I don't think you'll see PHP or Java losing support anytime soon. Choose Microsoft and you've chosen a timeline. I have no interest in developing a .NET application knowing that the mighty Microsoft will no doubt shift its focus to some new programming ideology in the future, thereby abandoning all the .NET folks.

Instead, when I move away from C++ and VB, I'll invest my time and knowledge into a language that won't be solely controlled by one company, but one that can and will continue to grow as its userbase does.

Mon, Feb 9, 2009 Patrick Milwaukee

Python or another open source or even Iphone because of free.

Mon, Feb 9, 2009 fsilber Memphis

Well, before we start worrying about where we will get new coders, I would ask whether we've worked through the backlog of old coders who lost their jobs during the various recent recessions.

Mon, Feb 9, 2009 Nicolas Crovatti Paris, France

Hi Daniel, great article.

How about offline documentation ? I mean programmers are switch to IDE on a purpose : having everything bundled in one single application. That includes inline help and code completion. I think the answer to "Where Did All The Developers Go?" may be : They are still here, they learned and mastered their respective programming languages, their efficiency is powered by smart IDE and finally they surely learned to go straight to the informations source on specialized websites instead of searching google first.

My 2 cents,
Nicolas.

PS. You comment box is not user friendly.

Sun, Feb 8, 2009 Woody G

Just because college enrollment is down doesn't mean that there are going to be less programmers. I am a highly successful programmer who has never spent a single day in college.

I think your research proves that more and more young people are realizing that going to college for programming does not give you the real-world skills required to start a programming job, as technology (fueled by the omnipresence of the internet) simply moves too fast to be taught in a classroom.

Thu, Feb 5, 2009 Gene Wirchenko Kamloops, BC, Canada

1) When I search for on-line data on a routine, I often include the language. however, if the name is distinct, I may well leave it off. 2) Languages with good documentation are not as likely to have searches done.

Mon, Feb 2, 2009 Skippy Atlanta, GA

I'm not aware of a University that uses a VB dialect for it's Computer Science courses. Most college educated developers cut their teeth on C, C++ and Java. The top universities (e.g. MIT) are proponents of opensource technologies and most students and professors are using Apple hardware so referencing University enrollments as a reason for the decline of VB dialects is meaningless.

What you might consider is the culture of universities and the stigma against Microsoft Technologies there.

Additionally you might note that PHP has gained a lot of disdain that VB once had as a pickup language for weekend developers who learn to program out of necessity and not as a profession.

Perhaps the type of developer who was apt to pickup VB in the past is not turning to something like PHP to develop solutions. After all LAMP webhosting can be had for a song these days and all the development tools are free.

Mon, Feb 2, 2009 Skippy Atlanta, GA

>>After all, experienced developers don't often search for language names we're much better at refining our searches.

Wow, that's a slap in the face. I use language names all the time when searching for answers and I've been doing it for over 10 years. I would think most people do use a language qualifier. A VB.NET developer might be confused when moving to C# or any other type strict language where explicit casting is required. A PHP developer learning Python might be surprised to find it void of the myriad of native functions.

In fact, I would go so far to say that if you're not using language qualifiers in your search queries then you're probably not a very good programmers and are more likely to roll your own versions of features native to the language you're programming in because you didn't know they existed.

Add Your Comments Now:

Your Name:(optional)
Your Email:(optional)
Your Location:(optional)
Comment:
Please type the letters/numbers you see above