It’s been quite a long time since I’ve written any new Silverlight code. Reduced solely to its core suite of technologies, Silverlight is certainly still as cool as it was two years ago. I am probably not alone, though, in claiming that I see less and less interest in Silverlight as time goes by.
Assimilate or Perish
There are other reasons why people began to drift away from Silverlight, of course. Microsoft, too, didn’t help matters. Microsoft has a lot of means by which it interacts with people and companies using its products in interesting ways: The MVP program, TAP programs, early-access programs, Insider Programs, Metro (not the UI framework) programs, and I’m probably forgetting at least six others. The companies and people that participate in these programs gain the ability to influence products but also a huge head start at building knowledge which is a nice competitive advantage. If your company decides to use a new feature of SQL Server, would you rather hire a consultant who’s been influencing the product under an NDA for a year, or someone who just got access at the same time you did? For this reason, there’s a very large community of people and companies for whom it pays big to align with Microsoft, lock step.
An investment in Silverlight may not quite seem like it belongs in the same category as, say, betting your business on SQL Server, but there are some additional factors. As I am fond of saying, when you choose a technology platform, you are also choosing the community behind that platform. If something like Silverlight is perceived as being on its way out, will you attract career-conscious engineers to work with you by espousing it? If you depend on your relationship with a giant vendor like Microsoft and they are shifting their direction in a particular area, hadn’t you better shift as well or risk losing their attention and good will?
Is that my cheese over there?
My programming career has seen me through BASIC and Pascal, through Solaris, Windows NT, and Mac OS X, through C# and PERL and, SQL. I never considered myself a “Silverlight guy” but rather a lifelong polyglot and ever-learning student. My public identity, though, was very much tied to things like Silverlight. This is, in great part, responsible for my “dropping off the grid” for the latter part of 2012. True, I was also growing weary of the type of sessions user groups and code camps seem to want, but more on that later.
While the technical merits of Silverlight remain true, the marketplace of ideas seems to have moved past it. In fact, if I had to explain why I think a technology gets adopted, I think I’d say something like this:
Many of these aspects are related yet distinct. Marketing can include things like Hype (Everyone is on GitHub and StackExchange writing Python now!) Mandates may mean something like forcing developers to learn Objective-C to take advantage of the Opportunity represented by the iOS marketplace.
The small glimpse of the obsolescence that comes with betting on the wrong horse left me in a funk for a while. I went into maintenance mode and didn’t innovate much for quite a while as I cast about looking for where I would invest my energies next. More on that later too, but I believe I’ve found a basket of things to start talking about. While for a while it seemed there was nothing in Microsoft DevDiv with so much momentum as Silverlight, life goes on. Software is still eating the world. It’s a great time to be a software developer, adapt and carry on.
I’m having as much fun as I ever have.