BLOG

.NET Is Not A Language

03 June 2009 by Stuart Cam

A response to this article.

First of all, .NET is not a language, it is a framework built on the common language runtime. When .NET was released almost 9 years ago it supported several languages including C# and VB.NET. It now supports many more. Any assertion that .NET is a single language is totally incorrect.

.NET is a large and diverse ecosystem which keeps growing with every release. It's now practically impossible to be an expert in every aspect of the framework, web development using web forms is simply a small galaxy in a very large universe.

If we applied the argument put forward by Greg to construction we'd have the HVAC guys doing structural assessments and the electricians installing carpets. After all, they are all in the construction business, why can't they do everything? I for one wouldn't like to spend money on an apartment in that building!

If only it were as easy as opening Photoshop, slicing a few elements and constructing an HTML and CSS representation. The good old days of web development; lots of outline-glow graphics on black backgrounds, table layouts, static text and little or no meaningful interactivity beyond the URL in the address bar changing. The days when FrontPage made everybody's mum a web designer.

The complexity in building a modern website (or Web 2.0 for the buzzworders out there) is increasing exponentially as consumer expectations grow. Search, SEO, scalability, performance, caching issues, interactivity, cross browser and device compatibility, JavaScript degradation, different encodings, localisation, W3C compliance, DDA compliance... the list goes on and on. Anything more complex than a brochure-ware site requires a broad range of software and web development skills. The developers who can manage all of those complexities and get the project completed on their own are simply not on the open market, their employers realise their value and avoid giving them reasons to leave.

With all of this increase in complexity features like Intellisense are essential. The .NET framework is massive. Why make life difficult by having to remember namespacing trivia? Besides which, the physical act of writing code should be the least of your concerns.

Greg believes that the blame is with the banks and urges us to agree.

Well, I've thought about it and I completely disagree. Maintenance of a software project accounts for around 60% of the total money and effort spent. Robert Glass knows this, that's why it's Fact: 41. Couple that with the bank wanting to remain competitive and I can only envisage a demand for developers, not a mass firing and flooding of the market.

Web development, above and beyond brochure-ware sites, is just plain difficult. It relies on a solid team with diverse skill sets all working together towards a well defined goal. This is a difficult thing to achieve in any business. The role of management is to remove obstacles, identify problems early and to keep the team functioning as best as possible. You need only a small number of architects (the generalists) working on maintaining the technical vision and laying the groundwork but the rest of the work can, and should, be delegated to specialists.

The very best developers, I would argue the generalists, will never have trouble finding work and the chances are they'll be the ones interviewing you. Get that wrong and you'll fill the team with poor and mediocre developers and encounter many more problems.

Unfortunately, finding great developers is not even a problem money can fix.

Tags: , , , ,

Categories: .NET | General | Web


© Codebrain 2017. All Rights Reserved. Registered in England: 07744920. VAT: GB 119 4078 13