Teach Yourself ASP.NET in 24 Hours? Not if you want to learn C#

Say you are trying to get started with ASP.NET, and C# has you curious. You see Sams' new book on the shelf...and you move on, because you read Lamont Adams' review.

Let me start out by saying that I'm not a big fan of the Teach yourself series of books and its clones. Certainly this series has its place; these books usually do impart a basic understanding of the subject they cover with a minimum time investment on the part of the reader. Unfortunately, they also tend to gloss over important details for the sake of brevity. Having delivered that disclaimer, I can now express my opinion that Teach Yourself ASP.NET in 24 Hours (Joe Martin and Brett Thompson, Sams MS Publishing, 2002, 456 pages) is just another entry in a long list of similar books aimed at "newbies" that emphasizes breadth over depth in their topics.

Figure A
Teach Yourself ASP.NET in 24 Hours

Where's the C#?
Microsoft says C# was designed specifically for Web applications. It is, in fact, the default language used by Visual Studio.NET for ASP.NET projects. It's odd then, that this book is completely devoid of C# code—although in its defense, it never really claims to have any. The only mention of C# in the text comes on page 7, where it is erroneously referred to as "C#.NET" and introduced as a "simple C++-derived language" that seeks to balance the "high productivity of Visual Basic" with "the raw power of C++."

The reason given for this omission is that most people using ASP.NET will have experience using ASP and VBScript, so the authors chose to concentrate on Visual Basic.NET at the expense of other .NET languages. That's all well and good, but the rest of the book seems just a little too basic to hold the attention of existing ASP developers looking to make the plunge. These developers are likely to be more interested in C# than in VB.NET anyway, so the complete lack of C# is puzzling to me.

Another problem I have with Teach Yourself ASP.NET is that there is no resource CD included with the book, and it isn’t made clear that code is available for download from the Web. That fact is mentioned only on the back cover, making it easy to assume (like I initially did) that SAMS expects readers to type in all the code examples by hand if they want to follow along with the text.

It can't be all bad, right?
The authors, Joe Martin and Brett Thompson, both appear to be eminently qualified, with Web, ASP, IIS, Visual Basic, COM+, and C++ development in their collective credit list. The single-language examples are clear and easily understood. Martin and Thompson go out of their way to explain new topics where they can, and their lessons seem to follow a natural progression of complexity.

Although the authors focus on VB.NET code and give C# short shrift, the VB.NET code they include makes little use of .NET's VB6 compatibility libraries. That has two effects: It makes the reader learn about .NET's new class libraries, and it makes translating the examples into other languages easier, should you want to do so.

The book follows the standard pattern of the Teach Yourself series: 24 lessons in 24 chapters. The lessons run from a minimum of 14 pages to a maximum of 32 pages (for the Web Forms Server Controls lesson in Chapter 7). Martin and Thompson cover the following topics:
  • Working with Internet Information Server (IIS) to create and administer a new Web site
  • Visual Basic.NET basic syntax and structures
  • ASP.NET page syntax, basic architecture, and file structure
  • Security in ASP.NET applications, including SSL certificates, Windows authentication, and Passports
  • Using Web Forms to create a user interface and perform validation
  • Debugging applications using traces and the .NET SDK debugger
  • Basic data manipulation and database access using SQL and ADO.NET
  • Use of Web Services in an ASP.NET application

The step-by-step IIS lesson is easy to follow, walking you through the process of setting up a new Web site on the Web server. Although there's not a lot of detail or explanation for some things, the authors do touch on basic file structure practices, virtual directories, and permissions. Having the setup instructions is nice since working with IIS can be confusing, intimidating, and frustrating, even to seasoned developers.

The Web Services lesson, at 20 pages, provides reasonable coverage of the topic. You'll get an introduction to the concepts behind Web Services, as well as an explanation of how to build and access a Web Service using ASP.NET.

This book obviously isn't for everyone. If you need a tour from the ground up or help getting IIS running—or you really aren't interested in C#—then Teach Yourself ASP.NET in 24 Hours may be worth a look. Although it is cheap enough to fit into almost anyone's budget, remember that technical books are like everything else: You get what you pay for. You could certainly do better than this title with a slightly larger investment.

What do you recommend?
Do you have a recommended resource for learning ASP.NET? What suggestions do you have for your fellow members who want to learn the .NET languages? Send us an e-mail with your thoughts and suggestions.