Welcome to another installment of DZone's .NET Fireside Chats. Today we're sitting down with Bill Evjen who, along with Scott Hanselman and Devin Rader, wrote Wrox' Professional ASP.NET series. The current edition, Professional ASP.NET 3.5 SP1 Edition in C# and VB, is now available. Wrox/Wiley have also made chapter 1 of the book available to download as a PDF. Check it out here.
DZone - What do you do in your role at Thomson Reuters?
Bill Evjen - I am the Global Head of Architecture for Thomson Reuters, Lipper (www.lipperweb.com). Thomson Reuters (www.thomsonreuters.com) is the world’s leading provider of information for professionals. I work in the Markets division, which is focused on providing news and financial information. In addition to architecture, I also lead development for all our new initiatives on the new product platform we have. Our applications run the spectrum from ASP.NET applications to Windows Smart Client applications. The latest release we had was for our smart client application, Lipper for Investment Management. This release was a major release that allowed our customers to create model portfolios and allow people to integrate more of our data with products such as Excel.
DZone - Tell us a little about your experience with ASP.NET.
Bill - My experience is quite focused on Microsoft –based web applications. I really joined into the Microsoft scene for web development with classic Active Server Page 2.0 (ASP) and followed that release right to version 3.0. After that, I wanted to do a lot more with ASP than it was allowing me, and I started to lean a bit to PHP. However, once ASP.NET 1.0 was released, that was all laid to the side. ASP.NET was one of the most revolutionary things ever introduced in the web development world and has changed the approach developers bring to their web applications fundamentally. Moving from an interpreted style of application to a full-fledged object-oriented application has made the entire web world more rich and able than it ever was prior to this. ASP.NET is still the quickest path in many regards to getting an application out the door and into end user’s hands. With the introduction of Ajax enabled applications, and now the move to Silverlight – we are at the beginnings of our next revolution. I, myself, have been riding these revolutionary waves and building applications for everything from non-profits to financial applications that are out to change the finance world.
DZone - What was your motivation for writing the Professional ASP.NET books?
Bill - I consider myself a journalist of the technology world. I was a journalism major in college and have loved writing my entire life. I remember a professor telling me that the best approach is to write about things that interest you and things you know. Writing about technology is something I do for fun (believe it or not) and I have produced more than 20 books on .NET over the last seven years because of this love. The focus on ASP.NET is because that is one of my favorite topics to write about. ASP.NET has a lot of excitement around it. I remember back to my past where I was trying to teach myself web development and really depended upon books to teach me this technology and in turn, the technology changed my life for my job situation and general job satisfaction. I know that there are others now that are in the same position I was in many years ago. When I write these computer books, I am really trying to help people enter this field and build the best applications they can. In turn, this helps them, their families, their companies and more.
DZone - What are your thoughts on the new ASP.NET MVC framework?
Bill - This is a question that there definitely will be some people that disagree with my comments. I think ASP.NET MVC has its place, but it won’t take over the mainstream of how ASP.NET development is done. You definitely can see the excitement behind it in the community as some of the most outspoken ASP.NET proponents out there in the community are in many cases MVC advocates. Though, for me, MVC is an approach to development that must be taken holistically with your solutions. It is a style of development that is considered more “pure” and a style of development that allows you as an architect or developer to take more control over everything that is happening. With that said, many enterprise developers are also out there and their jobs are also about producing. When you choose MVC as your basis, you are already choosing a model that requires more coding than otherwise and means that you are choosing a less productive path than otherwise (not that this is a bad thing, but you have to make these choices).
DZone - How should developers choose between WebForms and MVC when planning a new ASP.NET application?
Bill - I build applications for the enterprise space and my teams are developers of all levels, from beginners to more advanced individuals. I am also a believer in not re-inventing the wheel and finding quick solutions from third-party vendors such as control companies, components, and more. I make these choices because it is my job to produce. I need to deliver software and I do take risk by having more dependencies on these black boxes. This lends me to stick with WebForms and I predict that much of the enterprise industry will continue to follow this same path. There will be MVC applications and they do give you that more fine-grained control over your situations. This is quite powerful, but changing your model also needs to be related to your objectives.
DZone - What are some of the major new features available in ASP.NET 3.5 SP1?
Bill - Forget about service packs that are only bug fixes, right? This release of ASP.NET 3.5 is jam packed with new features and should be a required update for your applications. Along with Visual Studio 2008 SP1, you will find new capabilities including the ADO.NET Entity Framework, ASP.NET Dynamic Data, and ADO.NET Data Services.
Using the ADO.NET Entity Framework, you will find that is somewhat similar to working with LINQ to SQL. The purpose of the ADO.NET Entity Framework is to allow you to create an Entity Data Model (EDM) that will make it easy for you to map the object-oriented objects that you create along with how these objects are represented in the database.
ASP.NET Dynamic Data enables you to easily create a reporting and data entry application from a database in just a couple of minutes. One great feature of the architecture of ASP.NET Dynamic Data is that it is based on working with templates in the dynamic generation of pages for the site. As a developer working with this system, you are able to use the system “as-is” or even take pieces of it and incorporate its abilities in any of your pre-existing ASP.NET applications.
ADO.NET Data Services enable you to create a Restful service interface against your database. Using ADO.NET Data Services, you can provide the capability to use the URL of the request as a command-driven URI along with HTTP verbs to direct the server on how you want to deal with the underlying data.
Some things my group took immediate advantage of with this release of ASP.NET, was in the Ajax space. We are big Ajax users and the ability to quickly and easily make use of improvements to performance using script combining as well as using the back history capabilities were quick wins with us.
How cool is all that?
DZone - Outside of MVC, what are some of the changes of note coming up in ASP.NET 4.0?
Bill - To me, as an ASP.NET developer, one of the more exciting changes for this release is not for just ASP.NET itself, but for the development tool ASP.NET developers use – Visual Studio. This release VS2010, will be built in WPF and will dramatically change for us developers. The limitless possibilities in moving the development tool to WPF is now amazing and this is one area I would expect some dramatic improvements to our workflows in development over time.
Again, this will be big release of new features for ASP.NET (which makes writing books tough – how big can this framework get?). From being able to control your control IDs, dramatic and new improvements to client-side ASP.NET AJAX, to the inclusion of the ASP.NET AJAX Toolkit, and new ways to filter and query data with LINQ – the big question is why anyone would use something other than ASP.NET for their web application development. It is simply an amazing product.
DZone - Do you have a wish list of features for future ASP.NET releases?
Bill - I have to say that the ASP.NET team is consistently releasing new features that simply amaze me. For me, it is mostly about making our workflows within Visual Studio simpler than ever. Difficulties in development can easily be obfuscated, but at the same time, completely accessible and modifiable by more advanced developers. From building custom controls, to building client-side aspects of your applications in Ajax – much of this can be made simpler with Visual Studio.
DZone - Do you highlight any best practices in the book?
Bill - Probably the thing I work to promote in the book is for people to take simplicity seriously. I see a lot of code from people all the time, and in many regards, it is overly complex. I don’t need people that try to impress via these means, but instead the focus should be on the simplest of models that are the most performant.
I also try to help people think beyond the code and how ASP.NET interacts with everything around it – from the end user’s browser and client machine, to IIS, to the web server, and more. It is so important for ASP.NET developers to understand the full lifecycle of their applications.
DZone - Who should buy your book?
Bill - This book is for people that want to learn ASP.NET in great detail. It is for people whose job it is to produce and make meaningful impacts with their applications.
DZone - Do you have any new writing projects on the horizon?
Bill - I’ll never stop writing. Currently, I am writing the next edition of this book – titled ‘Professional ASP.NET 4.0’ as well as the next edition of a C# book, ‘Professional C# 2010’.