What Do Others Think About .NET 4.0?

Mike Ormond (Microsoft Evangelist)
What am I excited about? There’s a truckload of productivity enhancements in VS2010, like snippets for Visual Web Developer. At last, snippets for ASP.NET, HTML, and JavaScript! Reference highlighting and generating types from usage are two other productivity enhancements I’m looking forward to, as well as the Intellisense enhancements (I no longer need to remember the exact member name and the improved JavaScript support is awesome).

I dabble in Office development from time to time and have a tendency toward C#, so I’m really pleased to see the language embrace the likes of optional and named parameters as well as the new dynamic type, which will make COM interop that much easier. Office development in C# is going to be a dream from now on!

From a web perspective, I love the new features in Web Forms. Many of them are small, but they are crucially important enhancements to the platform, as well as the new kid on the block: ASP.NET MVC. Choice is always good, and ASP.NET now offers two great choices. Add into the mix the Microsoft Ajax enhancements such as client-side templates/databinding and jQuery integration, and you have a killer web application platform. And of course there’s the Web Deployment Tool and web.config transforms that allow you to automatically ready and package your applications for deployment.”

Eric Nelson (Microsoft Evangelist)
For me .NET 4.0 represents a turning point in how we will develop database applications in the future. With .NET 4.0 we get a great Object Relational Mapping (ORM) technology in the ADO.NET Entity Framework 4.0, which will significantly simplify the effort involved to work with RDBMS from .NET applications. I have been really impressed with how the product team listened to feedback from the community on the initial release of the Entity Framework and went on to deliver significant new functionality in version 4.

Craig Murphy (MVP and developer community organizer)
Every so often the computing sector goes through a paradigm shift. Programmers have gone through many such shifts, many of which are the result of a change in design techniques or in some cases changes in the way we think. The leap from procedural programming to object-oriented programming is an example of a paradigm shift. More recently, with functional programming becoming part of the mainstream Visual Studio product, programmers are offered another shift.

Advances in hardware has meant that even entry-level laptops are now being supplied with dual and multicore processors. This leap in hardware technology has positive implications for programmers. It also means another shift in the way programmers think about their applications; more so, it affects application design. Working with a single CPU in a multi-threaded fashion is no longer the challenge: working with a single CPU with 2 or more cores, each capable of performing a unit of work, is the new challenge. Writing applications that are capable of targeting the specific cores on a CPU presents programmers with the challenges associated with deadlocks, race conditions, scalability, lockout, and determinism. On the upside, applications that share their workload over manycore become more responsive and are more efficient.

The Parallel Extensions and understanding manycore are other paradigm shifts for programmers. However, it’s a shift that doesn’t just affect programmers: the deep-reaching positive effects extend into application performance and user experience. A well-designed application that takes advantage of manycore may even result in your end user’s computer feeling more responsive: it’s a win-win situation. Visual Studio and .NET 4.0 offer programmers a solid framework for building .NET applications that target manycore. As far back as late 2007, Microsoft has been providing programmers with their Parallel Extensions, offering support for Parallel LINQ (PLINQ) and task parallelism via the Task Parallel Library. Programmers need to understand .NET 4.0; this book will give them an excellent understanding of how to use VS2010 to take advantage of the .NET 4.0 feature set, including the Parallel Extensions.

Phil Whinstanley (ASP.NET MVP and author)
ASP.NET 4.0 has the benefit of hindsight. With the integration of both the Web Forms and MVC rendering engines, developers are free to express themselves as they choose while still benefiting from the underlying ASP.NET Platform. To support developers in the building of rich powerful ASP.NET applications, VS2010 has streamlined its approach and is focusing on those areas that matter to developers. Speed, efficiency and ease of use.

Dave Sussman (MVP and author)
One of the things I love most about .NET and Visual Studio is the teams themselves and their openness to the community. Sure, they keep certain things hidden and have private betas, but much of what they do is public and open to comment, which makes the product improve in ways that we, the developers, need it to.

Much of the talk is about MVC, a great platform that has brought in new users, but I’m excited by the changes to Web Forms, MVC’s mature elder brother. Web Forms are still supported and still being actively developed, and although the changes aren’t as radical as MVC, they are far reaching. Many ASP.NET controls in .NET 4.0 now emit clean HTML (the Menu being a great example), and along with the control of client IDs, we have a far better platform for building Ajax based sites. Couple that with features such as the client templates and support for jQuery, and the platform is re-energized; I'm loving the thought of building Web Form sites without having to jump though so many hoops to produce standards compliant HTML that can be easily styled with CSS.

In Visual Studio itself the most exciting new feature is the potential that WPF brings. Using WPF for the code surface not only allows a UI refresh to make it look better, but opens up wonderful possibilities for tools to enhance the code editing experience. I think what we have now is just the tip of the iceberg in terms of what’s possible for editing support.

Matt Lacey (Devevening.co.uk organizer)
I meet lots of developers, and most of them don’t have lots of time to learn new things or even an inclination to do so. For that reason I’m always excited to see features that need minimal training or explanation. Named and optional parameters are two such features. They’re easy to explain and understand. Plus, they can allow for a dramatic reduction in the amount of code needed for some tasks.

Needing less code to perform a task should lead to fewer bugs and more time to test and implement new features. Everyone wins! The other feature I’m really excited to see is ASP.NET MVC. It’s important for two reasons. Firstly, it’s raising questions about the importance of having testable code. In turn this will lead to more developers using testing tools and techniques to improve their code. Secondly, it’s causing developers to ask why it’s needed and what’s wrong with ASP.NET Web Forms. One key difference with ASP.NET MVC is that it’s much harder to develop without having an understanding of HTTP. Whether using MVC or WebForms, having more web developers with a better understanding of HTTP can only be a good thing.

Alex Mackey (Author of this book and MVP)
For me the best changes in this release are the simple ones that will be utilized every day. I’m talking about changes such as the new String.IsNullOrWhiteSpace() or Enum.TryParse(). As a web developer myself, the ASP.NET changes fix some long-term annoyances, and the integration of jQuery is a smart move. I don’t have to do much multithreaded work, but I really like the new Task model and find it much more intuitive to work with. Changes that make your applications run quicker without you having to do anything are always welcome, so am glad of the GC and threadpool enhancements in this release. I also really like the direction the security model is moving in, as I found the previous system overly complex. Perhaps one of the biggest surprises for me was how good Entity Framework now is, but I’m going to stop here as I have the rest of the book to tell you about all the great new features.

Future Trends
A big risk for software developers is learning and backing technologies that will quickly become obsolete. Of course, no one can know for certain what the future holds (no matter how much they claim to), but I think it can be useful to look at current recruitment trends when deciding on which areas to concentrate. I spoke to Jonathan Keen, head of search practice at a UK recruitment agency, Cognitive Group (cognitive-group.co.uk), about trends he was seeing in .net development. Keen shared the following:

• Generally, companies are cutting back on new projects, so we are seeing less development roles.

• The most popular and highest paid skills in London at the time of writing (October 2009) are Sharepoint, Dynamics AX, and Dynamics CRM.

• There are many roles focusing on integration with existing applications such as Sharepoint and Dynamics suite.

• More competition for job roles places increasing importance on distinguishing yourself. Prove your passion for development. Get out there to conferences, user groups, and blogs.

• C#, ASP.NET, SQL Server remain core skills companies seek.

• There is some interest in “Agile” skills and SCRUM but less in TDD.

• Increasingly, WCF and WPF skills are expected on a developer's resume.

• Many public sector projects are still using .NET 1.1.

• There is an emphasis on web over desktop programming.

• Silverlight and MVC are not yet in demand (note many developers I spoke to disagreed and felt Silverlight is the current hot area – author).

• MVC has been used as hook to attract developers.

• Technologies such as BizTalk have decreased drastically in popularity.

My Own Subjective Opinion
WPF certainly seems to be a growth area. The highest .NET contract rates appear to be for Silverlight currently. My own subjective experience of the job market has shown ASP.NET remains popular, and jQuery is becoming a must-have skill. It will be interesting to see if ASP.NET MVC becomes mainstream, although I suspect many companies have too much investment in ASP.NET now, and that ASP.NET MVC will be too big a change in thinking for many developers. The new parallelization functionality is interesting, but I suspect will not be utilized or needed in the majority of line of business applications. Developers skilled in threading and parallelization should always be able to command high salaries, so it will defiantly be worth looking into.

Source of Information : Apress Introducing dot NET 4.0 with Visual Studio 2010


Subscribe to Developer Techno ?
Enter your email address:

Delivered by FeedBurner