REVIEW: Moving to VB.NET [aPress]

By Peter A. Bromberg, Ph.D.

Peter Bromberg  

Any VB jockey who's been around for more than a couple of years knows who Dan Appelman is. And of course, if you've ever been to a Microsoft Tech-Ed or Professional Developer's Conference, you also know what he looks like - he's the tall, lanky geeky guy who looks like he stays up 23 hours a day figuring out new ways to do cool stuff.

I've learned a lot from reading Dan's books on the Win32 API and reading his articles. His Desaware controls and tools are prized by advanced developers. And his somewhat irreverant writing style is, well - shall we say "unique"? Appelman of course, with his guru counterpart Gary Cornell, is one of the founders of aPress. In my opinion, these guys have built a marvelous high - quality technical book publishing house in just a few short years - something that is extremely difficult to do in today's competitive climate for even the best-capitalized entrepreneurs.

And that's why I was so excited to get my hands on this book. Mind you, I'm a VB programmer (I wrote my first code in Applesoft BASIC) but for the last year and a half almost all of the new studying I"ve done has been to master C#. I looked at VB.NET and I looked at C#, and I made a decision. And now guess what? My company's getting heavy into .NET (that's good!!) - and the directive came down that they want us to all use VB.NET (uh-oh, not so good..). Maybe its because they think VB programmers will have an easier time migrating and maintaining code? Who knows - I'm happy just to be able to write and test production code against the .NET platform. I just hope they don't ask me to do any operator overloading or create any cool XML Documentation for my classes. What I did find out was that my studying of C# made it much easier to understand VB.NET. I also learned that VB.NET is actually a full-fledged first class object - oriented member of the .NET family.

I stayed up very late and pored over this book the first night at home. Then I brought it to work and went through it again. Then I took it home and got out my yellow highlighter and started going through it again. This is a very different book. Dan's not going to show you how to write Winforms, or any of the stuff the other 25 VB.NET books do. What Dan does instead is show you all the things you did that were BAD. Then he shows you why when you start using .NET, they will still be BAD, and he explains in great detail exactly why they are bad. He does this in a most instructive, detailed and entertaining way.

Appelman talks about adoption strategies, concepts of COM and the Common Language Runtime, inheritance, memory management, threading and much more. There's plenty of code in this book and it's probably more instructive than most of the sample code you've ever seen about .NET, because the approach is completely different, yet very digestible and valid.

For example, take this sage quote: "If you must port code, using the Upgrade Wizard as a first step is probably a necessity. However, as I stated in Part One of this book, I believe it will not make economic sense to port code in most cases. VB.NET is best used for new code development."

Dan, I couldn't agree more! And his explanation of how bugs can creep in and exponentially affect total cost of ownership in the development cycle is outstanding. It should be required reading for every developer - and their manager!

I can't say enough good things about this book. It's thorough, it's empowering, its complete. If you are looking for a book about how to write VB.NET programs and use Winforms and ASP.NET and so on, this is probably not the best choice. But if you really want to feed your brain with a master VB mechanic taking you under the hood and explaining in detail the inner workings of why things are the way they are, then Moving to VB.NET by Dan Appelman is a one-of-a-kind that you simply won't find anywher else.

The only thing I didn't like about this book is that Appelman gets carried away with footnotes. He often uses the footnote improperly in the literary sense as a device to inject his opinions and afterthoughts, or to plug one of his other books, or whatever. Only a few of the footnotes are really worthwhile and the result is a kind of "boy who cried wolf" syndrome where your eyes are constantly shifting to the bottom of the page wondering if what you're about to read is really worth losing your place.

But that's a minor issue. Moving to VB.NET by Dan Appelman (560pp) published by aPress, is tremendous. Highly Recommended!



Peter Bromberg is an independent consultant specializing in distributed .NET solutions Inc. in Orlando and a co-developer of the developer website. He can be reached at