Starting ASP.NET web development in 2013, which technologies do you need to know?
Posted: (EET/GMT+2)
Recently, a company that has done Windows desktop software development for over 15 years contacted me asking, what should they know to move their desktop skills to the web, and more accurately, to ASP.NET. The reason they haven't moved to web is in their industry: heavy material production doesn't necessarily change their technologies to the latest buzzwords.
Now then, which are the code technologies – or rather, the technology stack – they need to become accustomed to? For the year 2013, this is my list:
- TCP/IP, including IPv6
- HTTP, SSL/TLS
- Windows Server, Active Directory and IIS web server
- Clustering and/or load balancing, depending on the size of the solution
- Basic Windows security and NTFS permissions
- Azure cloud platform, if this is your target host
- SQL Server and SQL
- ADO.NET, Entity Framework and LINQ
- JSON and XML
- Microsoft .NET and either C# or VB.NET (perhaps F# if need be)
- ASP.NET, including MVC
- Web API, OData and OAuth
- HTML5, CSS3 and JavaScript
- jQuery and jQuery UI
- Tooling: Visual Studio 2012, Expression Web, some testing and debugging tools, etc.
- Suitable graphics applications (like Adobe Photoshop and/or Illustrator).
As you can see, the list is pretty long, but also that it changes as time goes by. For instance, the latest and greatest technology in machine-to-machine communications only a couple years ago was the SOAP/WSDL/UDDI combo, but today, this is replaced with lighter technologies.
What would you add to this list and why? Let me know what your experiences have been!