I think 2012 has been rather uneventful in terms of software development trends. For the most part, the trends were continuations of things that were happening in 2011.
Windows 8, developer mindshare, and HTML5
The wildcard in 2012 was the release of Windows 8 and to a lesser extent Windows Server 2012 and Office 2013. I was really curious to see how Microsoft would handle these releases, and I think Microsoft dropped the ball. The real-world Windows 8 users I've spoken with are universally disappointed by the release. (I am not going to address each of the mistakes made around Windows 8, because I think most TechRepublic readers are already aware of them.)
Maybe Windows 9 will be a hit, and perhaps Windows 8 will sell much better than it feels like at the moment. Even if Windows 8 isn't a monster hit like Windows 7, it will still move enough units to justify writing apps for it. Unfortunately, it is not exactly a hop, skip, and a jump to go from a traditional Windows application to a Windows 8 app.
However, when you look at developer mindshare, the result has been stunning. The trend over the last few years had been towards Web apps, but in the TechRepublic polls I ran this year, Windows 8 development is barely moving the interest meter in comparison to HTML5 and related Web technologies. While I think this outlook may be missing the boat that even a sluggish Windows 8 launch represents, I understand and respect it. There is only so much time to learn new technologies, and if it is a choice between the proven winner of HTML5 and the question mark of Windows 8, I can see why HTML5 is grabbing the lion's share of attention from developers.
I think the world is slowly sliding away from Windows desktop applications outside of specialized niches. Unless things change, Windows will achieve a COBOL-like status, where certain applications are so dependent upon it that it will always linger, but "greenfield" applications will likely be done on other systems. And that's fine. Does this mean folks should abandon the Windows ship? Of course not. It means that developers have a lot of options. Five or six years ago, I wrote TechRepublic articles in which I stated that the Web wasn't ready in a number of ways and many readers agreed. I think the situation has changed quite a bit, and the Web is definitely up to snuff. If you hold onto current beliefs indefinitely in this industry, you are on the guaranteed path to obsolescence.
My professional and personal updates
This was a monstrously big year for me. My freelance consulting work had grown to the point where I made the decision to go into consulting full time, specializing in OutSystems' Agile Platform. And not too long after that, one of my clients asked me to join them full time and build and lead a team of developers working with Agile Platform. I have been very busy, especially these last few weeks as we are paying off a large amount of technical debt. At the same time, I am doing exactly what I have wanted to do for a long time professionally. It is not an easy road, and I would not recommend it to many people, but I am finding it rewarding and enjoyable on many levels.
I am continuing my writing with TechRepublic, and I always glad to have the expert help of my editor, Mary Weilage, as well as the rest of the TechRepublic staff. While I have had to significantly dial back my writing duties since landing my current position, I will continue to try my best to share what I've learned in the trenches with you folks each week.
The rest of my "real world life" has been good. My son started kindergarten this year, and he's quickly learning to read and write. My daughter has developed a real personality that seems to take on some of my worst traits and my wife's best traits (I don't quite know how that happened). I am very grateful that throughout the stress of first striking out on my own and then being put in a position of responsibility, my family has supported me.
So... farewell 2012, and hello 2013!
J.JaKeep your engineering skills up to date by signing up for TechRepublic's free Software Engineer newsletter, delivered each Tuesday.
Justin James is an OutSystems MVP, architect, and developer with expertise in SaaS applications and enterprise applications.