Vous êtes sur la page 1sur 6

Author name: Justin Angel

Twitter: @JustinAngel
Short-bio: Justin Angel worked for Microsoft building Silverlight, Nokia as the Principal
Engineer for Windows Phone development, and at Apple as the lead windows phone developer
for Beats Music.

The collapse of the .net ecosystem


The golden age of the Microsoft developer ecosystem is behind us and so could be your
career. The Microsoft developer ecosystem is experiencing plummeting employment
opportunities and declining community interest. You might have felt it for yourself and now
we have numbers to prove it. Sure, youll always be able to find a job working in C# (like you
would with COBOL), but youll miss out on customer reach and risk falling behind the
technology curve. Im here to convince you to seriously consider retooling your career in
another technology. Lets get us started by reviewing some publicly available statistics.

Plummeting Employment Statistics

Sinking Developer Interest

Indeed.com job site aggregates job ads


from all over the internet including
LinkedIn, GlassDoor, Dice, CyberCoders,
Monster and many other job sites. The
number of job ads on Indeed.com is a
strong indication of the overall
employment trends for each technology.
Indeed.com generously share the
employment trends theyre seeing and the
job graph for C# is truly disconcerting:

The TIOBE developer interest index rates


programming languages based on the
number of professional engineers worldwide, courses offered, third party vendors
and search engines statistics. Its
consistently tracking C# as a top
programming language for over decade.
During the last five years we can see a
sharp decline in C# developer interest.

The graph above shows an approximate


60% reduction in C# jobs since the golden
days of 2010. The number of C# jobs today
is back to 2006 levels. What does that
mean for you the next time youre looking
for a new job?

TIOBE developer index has C# developer


interest down approximately 60% down
back to 2006-2008 levels. The first time I
heard this number I was flabbergasted.
What do other developers knew that I
didnt?

Microsofts developer ecosystem fails to


supply employment to its developers.
Thats a critical deathblow to any
professional developer ecosystem.

Example: Google trends down by


50%
We can see an example of waning
developer interest by looking at Google

search trends. Google search volume for C#


is down approximately 50% since 2009.

2010 and lost approximately 40%-60% of


adoption since then.
Independently each one of these
phenomena might be explained away by
reviewing the methodology used to compile
each of these indices, selecting them and
checking for various sampling errors. But
collectively these numbers should make
you think.

Personally I use google to help find answers


to technical questions all the time, so its
worrying to see theres a lot less people
doing just that. C# search volume being
down approximately 50% is a great
example of what information gets folded
into the TIOBE developer interest index we
previously looked at.

Definitely ask yourselves if Im wrong


because I could be. But also ask yourselves
What if Justins right? What if the .net
ecosystem is in freefall? What does that
mean for me for my career? If the .net
ecosystem is really collapsing what actions
should I take?

Open source contributors are leaving

Why is this happening to .net?

OpenHub.net aggregates information from


multiple open source hosting sites
including Codeplex, SourceForge and
others. They report that the number of
developers contributing to C# open source
projects is down by approximately 40%
since 2010.

Only a detailed historical analysis can


really explain the processes and causes
involved here. I cant provide that, but I
can venture a few educated guesses of my
own:

Many .net developers use open source


projects to improve their productivity.
What do you think it means if the very
people who build those projects are
leaving the ecosystem?

Are these statistics really


meaningful?
Theres an undeniable downward trend
shown across all data sources weve
reviewed: The .net ecosystem boomed in

1) The reach of Microsofts developer


ecosystem has declined in the past five
years due to the rise of non-Microsoft web
frameworks and mobile platforms. Android
and iOS control 90% of the world wide
smartphone market and .net developers
arent first class citizens on those
platforms.
2) Its hard to make long term investments
when Microsofts ever revolving door of
new technologies continuously makes
previous codebases obsolete. That climate
makes both businesses and developers
afraid to invest resources in potentially
defunct technologies.
Remember when
WinForms was replaced by WPF? Only to be
replaced by Silverlight? Then by Windows
Phone apps? Which were replaced by
Universal apps? Or what about how Web
Services were replaced by WCF only to be
replaced by Web API?
3) A lack of emphasis from Microsoft itself
on .net development didnt help either.

Looking at Microsofts Azure documentation


we can see .Net on equal footing with
Node.js, Java, PHP, Python and Ruby. It
feels to me like Microsoft have just given
up on .net development.
4) The .Net Framework has become
fragmented and stagnated. Weve seen
forks of the .net Base Class Library to
Silverlight, Windows Phone, Windows Store
apps and Xamarin each with their own
unique flavor. While at the same time
nothing interesting seems to be going on
with the classic .net framework. With the
exception of Roslyn whats really new and
interesting about .net vNext?

Are there going to be .net projects in


the future?
Absolutely. The entire .net ecosystem
wont disappear any time soon. There are
always going to be maintenance projects
for existing .net codebases. There are even
going to be new greenfield projects
where .net has a unique lock-in advantage
(such as using WPF for desktop app
development). Additionally, Microsoft itself
will continue funding development for
partner apps on new platforms.

What should developers learn to


future-proof their career? Whats hot
today?
Go learn something youre passionate
about. If you think theres a chance I could
be right, you owe it to yourself to keep
relevant and explore whats out there.
If youre into client-side web development
t h e r e s a h u g e b o o m i n H T M L 5
technologies and Javascript skills have
never been in more demand. For serverside web development Ruby and Python are
still going strong and Node.js is picking up
serious steam.

If you think Mobile is here to stay then you


owe it to yourself to buy an iPhone or
Android and see which platform you
personally like the most. Android
development is done in Java; iOS
development can be done in Swift.
Developing for either platform is an easy
switch for .net developers.
If you consider yourself proficient in SQL
Server or Oracle, go ahead and experiment
with MongoDB or Redis. Theyre fine
examples of data storage technologies that
are becoming very popular.
There are also potential outliers like going
into Big Data and learning Hadoop, or
consider making a career switch to DevOps
and pick up skills in Puppet or Chef.

Put your money where your mouth is!


Ive spent the last dozen years in the .net
ecosystem and even helped to build it
while working at Microsoft and Nokia. Well,
Ive just accepted a full-time position as an
android developer. Over the last few
months Ive been learning Java, reading
the Android source code and figured out
how to use IntelliJ productively. For the
foreseeable future, Im taking a break from
professional .net development.
The numbers Ive shared with you in this
article were a major reason why I first
considered joining another ecosystem. Its
my sincere hope youll consider doing the
same.
Sincerely,
-- Justin Angel

Figures