DevCity.NET -
Book Review- "Visual Basic 2005 Express: Now Playing"
Ged Mead

Ged Mead (XTab) is a Microsoft Visual Basic MVP who has been working on computer software and design for more than 25 years. His journey has taken him through many different facets of IT. These include training as a Systems Analyst, working in a mainframe software development environment, creating financial management systems and a short time spent on military laptop systems in the days when it took two strong men to carry a 'mobile' system.

Based in an idyllic lochside location in the West of Scotland, he is currently involved in an ever-widening range of VB.NET, WPF and Silverlight development projects. Now working in a consultancy environment, his passion however still remains helping students and professional developers to take advantage of the ever increasing range of sophisticated tools available to them.

Ged is a regular contributor to forums on vbCity and authors articles for DevCity. He is a moderator on VBCity and the MSDN Tech Forums and spends a lot of time answering technical questions there and in several other VB forum sites. Senior Editor for DevCity.NET, vbCity Developer Community Leader and Admin, and DevCity.NET Newsletter Editor. He has written and continues to tutor a number of free online courses for VB.NET developers.

by Ged Mead
Published on 5/14/2006

 If you are a complete newcomer to programming, you should seriously consider getting a copy of this book.  It never loses sight of the fact that beginners don’t always “get it” first time, every time and it uses non-technical explanations and good learning reinforcement techniques to show you the skills in the easiest, least complicated way possible.

    In the Preface to the book, author Wallace Wang sets out his philosophy:

“This book is dedicated to everyone who didn’t have the “right” education, test scores or job skills, but wound up succeeding at their chosen goal anyway.   If you want to learn or do anything in your life, such as learn to program a computer, go ahead and do it and don’t let anyone ever tell you otherwise.”


Book Contents

The book is divided into five parts. 

Part I: Learning the VB Express User Interface
Chapter 1: Making your first program
Chapter 2: Understanding the VB user interface
Chapter 3: Working with projects
Chapter 4: Designing a user interface
Chapter 5: Using the Code window
Chapter 6: Getting help (repairing VB)

Part II: Designing a User Interface
Chapter 7: Understanding Controls and Properties
Chapter 8: Using the Appearance Properties
Chapter 9: Using the Layout and Behavior Properties
Chapter 10: Designing Windows

Part III: Getting and Displaying Data on a User Interface
Chapter 11: Writing Event Procedures
Chapter 12: Getting Commands through Buttons, Menus, and ToolStrips
Chapter 13: Offering Choices with Radio Buttons and Check Boxes
Chapter 14: Accepting and Displaying Data in Text Boxes and Labels
Chapter 15: Accepting a Range of Numeric Values
Chapter 16: Using Layout Controls
Chapter 17: Displaying Dialog Boxes

Part IV: Writing BASIC Code
Chapter 18: Variables and Constants
Chapter 19: Decision making (If-then, Case)
Chapter 20: Loops
Chapter 21: Data structures
Chapter 22: String manipulation and mathematical operators
Chapter 23: Subprograms (general procedures and functions)
Chapter 24: Object-oriented programming
Chapter 25: Error handling
Chapter 26: Debugging (comments)

Part V: Enhancing Your Visual Basic Programs
Chapter 27: Enhancing your user interface
Chapter 28: Connecting to a database
Chapter 29: Displaying Pictures and Video
Chapter 30: Playing Sounds

  There are two CDs bundled with the book.   One contains the Express Edition of Vb2005, the other contains:
Sample VB programs
Graphics demo
Sound demo
Saving, opening file demo
Database demo
RoboDemo movie tutorials for learning VB user interface

Writing Style

   Each chapter in this book contains enough detail to take you a step further up the learning curve, but without overwhelming you with too much information.
Technical jargon is kept to an absolute minimum and author never loses touch with his target audience.   He
is also quite realistic, as in the Chapter on getting help, for instance:
“One way is to browse through the Help Contents, which you can use to explore and stumble across useful
nuggets of information …”

   Plain English throughout, e.g. “Click to make the Dialog Box go away” and includes helpful asides, “Notice that Visual Basic displays a syntax prompt to show you the proper way to use the MsgBox command.”, etc.

   Topics that are not always very clearly covered in other books, get the Wally Wang treatment.  Particularly good, for example, is the explanation of the various debugging options and how to use them:

Step Into, Step Over, Step Out, Watch and Breakpoints.

   His sense of humour also shines through in the content of many of the screenshot examples.   When you’re struggling to grasp a topic, it’s nice to be made to smile now and then!

   Particularly good in my opinion is the way that beginners are encouraged to create mini-programs right from the start.   The harder to digest (and potentially less stimulating) technical topics are fed in once the reader has achieved some practical success.

Movies and Demos
   There is at least one Flash movie on one of the accompanying CDs for each chapter (several in some of
them), each of which shows you a step by step hands-on demonstration of a technique explained in the book.     These are perfect for reinforcing techniques or clearing up any misunderstandings that might otherwise cause the reader problems.

   Every chapter also contains one or more code samples, and again these are available on the CD.    All those that I tested out worked perfectly as advertised. 

    The only downside is that, as this book is aimed at complete beginners, the unwary might get caught out if they take the “What’s On CD1?” guide notes too literally :  “You can load and run the sample Visual Basic programs directly from the CD, but if you want to modify them you’ll need to save them off the CD and onto your hard drive.”

   Because of the Read Only access of CD based data and the way that the VB IDE runs, you will in fact need to port any of the sample projects from CD to hard drive in order for it to run at all.  It’s not a big issue, but is the kind of thing that can confuse and frustrate beginners.      That being said, the content of the printed code samples, the CD based demo projects and the Flash movies overall is excellent.



Pros and Cons - Summary


   This book is clearly written in plain English and is perfect for its target audience.  
   The range of printed samples, demonstration projects and Flash movies is comprehensive and useful.   The illustrations and figures are clear, with detailed call outs and additional notes where necessary.

   It delivers what it promises in the Preface – if you aspire to be a programmer in Visual Basic 2005, this book will be a huge help to you in achieving that goal.


   In common with most technical books these days, this one has a few typos.   While none of them are catastrophic, I always think it’s even more important for a beginners’ book to try and avoid them, because the content is difficult enough for the audience to master; any additional confusion caused by typos is an unnecessary hardship.

   Some that stood out for me were:

Page 17:  Figure 1-7 Should show how to access the ToolBox, but shows the “Getting Started” screen in the IDE.
Page 38:  Figure 2-14 Should show the Code Window Tab, but shows the Design Window Tab.
Page 237: Assigning a date to a Date variable.  This will only work for a system set to US time format.  It would be useful to include a note for non-US readers, otherwise they may not understand why the code shown throws an exception.

   The author tells me that these are all to be included in  an Errata page which is currently being set up on the NoStarch web site.   

Neutrals (Actually, it's another Pro)

      There are several generalisations in the book along the lines of “You have two choices :- ….” or “There are three kinds of ….”, and so on.     At first I found myself  muttering “That’s not right; there’s also ….”, or “Yeah, but what about ….?” until I realised that these weren’t errors of omission, but was an intentional part of the teaching technique being used throughout this book.  

   Too often, authors seem to be afraid of leaving anything out in case knowledgeable readers think they don’t know that there are six different ways of doing something; the result can be a comprehensive but totally confusing avalanche of information.      By picking a suitable path for beginners and sticking to it, the author makes it much easier for them to find their way through the early stages of learning VB.   Time enough later for them to spin off into all the various options that await them at intermediate and advanced levels; for now it’s just the right amount of information! 


    Knuckle down for a few days with this book, read the detailed and understandable explanations, try out the code samples in the book and on the CD, run the Flash movies for additional help.     Do that conscientiously and I can almost guarantee that you will come out the other end with a good grasp of the fundamentals of VB2005 on which you can build further.

   This is a clearly written, well structured book that will be very useful to you if you are a newcomer to programming in general or to Visual Basic in particular.   It won’t be your last book on the subject, but it is an excellent starter manual and will certainly take you a fair way down the road of VB knowledge.

   A complete chapter (Chapter 12) in PDF format, the code sample for that chapter, plus one of the four Flash Movies from that chapter are included here and available for download.

  I have no hesitation in recommending this book to beginners.