Introduction

Whenever I am discussing the merits of the .NET platform with my professional colleagues, I am called on to defend my choice of this platform. And while I find myself repeating the truisms that all Microsoft developers have realized (it makes me more productive, more built-in features, web services are a cinch…etc.),

Forever evolving language, Forever evolving runtime

WCF, WPF, Windows Workflow, Silverlight, StreamInsight, Azure…They’re not just acronyms. They’re full-fledged technologies that let you do something better than before. In addition to new technologies. Microsoft seems to be continually adding new features to the c# language. While C# 2.0 lured you with generics and nullable types , 3.0 was a huge improvement with LINQ, object initializers, lambda expressions and query expressions. Just when you are getting the hang of 3.0, out comes 4.0 – tempting you with dynamic types and more. The point is – one is never bored.

A never ending plethora of Microsoft products

When I need a break from application architecture, I step into SQL Server world and update my skills in that area. Some of my colleagues do the same with Sharepoint. Or BizTalk Server. Or CRM Dynamics. Or WPF or Silverlight. The point is that – every time I look, there are a lot of new, shiny toys to play with. It doesn’t take much to brush up one’s skill set as long as one has the computing power and some spare time. Code samples, template projects even full-length video tutorials are all a click away.

Yes – the java language evolves as well. And new features (to the runtime) are added periodically.

The Cloud and The Future

As a .NET architect, I had been itching to work on Windows Azure. As luck would have it, I got a call out of the blue for a troubleshooting assignment that involved Azure. I duly informed the customer that I was completely new to Azure – and would be learning alongside the troubleshooting. They said they were learning too – and that was perfectly ok. Again, with Microsoft pushing out new platforms and technologies every year, the demand for qualified consultants is ever present. All you need is a ‘can do’ attitude and a passion for the platform. The passion comes easily once you actually start playing with the tools and learning all the possibilities. I still remember being blown away with the capabilities of WCF – Microsoft’s rich rich web services offering. Things one couldn’t dream of doing in SOA land were, all of a sudden, a reality.

  • Needed to maintain sessions in your web service?  Check.
  • Need to put security around your SOAP messages? Check.
  • How about just making a service call, forgetting about it – and having the service responding back when it completed? Callbacks within WCF services?  Check.  

Summary

It’s not that these cannot be accomplished in LAMP or Java land. Having done over 8 years of enterprise java development, I know what it takes to build the same functionality in J2EE. A lot more time. A lot more frustration. Leveraging tons of third-party, open source libraries – which translates to poor, sketchy support.  For me, I prefer to have a single vendor providing the various plumbing components – it makes my life as a developer a lot easier.

About the Author

A Microsoft Architect, Anuj Varma has been fortunate to be a .NET architect on some large initiatives across Texas. These include  Fortune 50 WCF and ASP.NET applications, SQL Server migrations, Azure applications and working with several startups that have adopted Microsoft technologies.

Anuj holds professional certifications in Google Cloud, AWS as well as certifications in Docker and App Performance Tools such as New Relic. He specializes in Cloud Security, Data Encryption and Container Technologies.

Initial Consultation

Anuj Varma – who has written posts on Anuj Varma, Hands-On Technology Architect, Clean Air Activist.