Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
Microsoft Books Media Software Book Reviews

Build a Program Now 281

Graeme Williams writes "My experience with Visual Studio was several years ago, and limited to a support role. My only serious programming experience was more than twenty years ago, so I'm the kind of hobbyist programmer that Visual Basic 2005 Express and this book is aimed at. Microsoft Visual Basic 2005 Express Edition: Build a Program Now! doesn't attempt to teach you programming in general or Visual Basic in particular. It's focused on introducing the features of the Express Edition of Visual Basic 2005. I think this focus serves the book and the reader very well." Read on for the rest of Graeme's review.
Microsoft Visual Basic 2005 Express Edition: Build a Program Now!
author Patrice Pelland
pages xi + 209
publisher Microsoft Press
rating 9
reviewer Graeme Williams
ISBN 0-7356-2213-2
summary An excellent introduction to Microsoft's new Visual Basic 2005 Express programming system

At the moment, the book is only available in PDF form as a free download from Microsoft when you register Visual Basic 2005 Express. According to Barnes & Noble, it will also be available as a paperback some time this month. The paperback will include a CD with both Visual Basic 2005 Express and SQL Server 2005 Express. This review is based on the PDF.

The PDF is an inconvenient form for an ebook. It's protected so that you can't create your own bookmarks, and Microsoft doesn't provide any, and there are no clickable links -- in the table of contents, for example. There's a menu item for find, but the text doesn't seemed to be stored as text, so find doesn't actually find anything.

The book starts off with brief descriptions of .NET, object-oriented programming and the new features in Visual Basic 2005 Express. I guess it makes sense as a general introduction, and you can skip it if you like. It's certainly not a thorough explanation of object-oriented programming, but it's enough to let someone know that there's more to learn.

The next chapter leads you through installing the software. This is of doubtful value, since it basically advises you to stay with the defaults, which you almost certainly could have done on your own. If you have a problem, the book points you to some online resources, but that's all. I had a problem because my 'My Documents' folder is on a server, and this was enough to break the default security settings. The installation offers to install SQL Server 2005 Express, but neither the installation nor the book tells you that this will leave SQL Server running all the time.

Once the software is installed, you can start programming. The examples in the book are great. Starting with a simple console application to add two numbers might seem silly, but it makes sense in Visual Basic 2005 because you can't just start typing – you have to start somewhere in particular, and you need to know how to do that. Following that, you build a Windows application to add two numbers, a web browser, a database application, and an application that retrieves data from a web service. Each example builds nicely on the one before, and they're functional enough to be useful in their own right.

As important as the examples is what you learn along the way about the tools that make up the Visual Basic 2005 system. The book shows how simple it is to use the built-in components in Visual Basic 2005 to add features and functions to your application including forms, buttons, menus, toolbars, a splash screen, an about box, web services and database connections. This is where the book really shines. It shows you very clearly how to take advantage of the time (and work) saving features of the system.

The book is pretty good at explaining how to design a form. Form design was just awful in previous versions of Visual Basic, but the book clearly explains the new features that make it a little easier. The system is still not perfect – you can't automatically create three equally spaced textboxes (input fields), for example – but that's not the fault of this book.

The book also does a good job explaining the mechanics of starting a project, building applications and libraries, debugging, and "publishing" your application. "Publishing" is what Microsoft calls the process of turning your completed program into an installer which anyone can run to install your program. There's also an excellent introduction to database tables and how to create and use them within the system.

The graphic design in the book could be better. Each step in the instructions is indicated by a large numbered green bullet, which works well when there are only a few steps on a page, but you can easily get lost when one page has ten bullets and five tables. Also, you spend a considerable amount of time setting object properties. The value for each property is shown in a table, but sometimes a single table will include more than one object and sometimes it won't, which can be confusing. Finally, the screenshots aren't very clear. These may seem like quibbles, but an introductory book has a responsibility to be as clear as possible, and then some.

As you work through the examples in the book, you can really feel yourself gaining momentum. The flip-side of this is that as you go through the book, you get less and less explanation for larger and larger chunks of code. The largest single piece of code is 56 lines long. In context, it's presented clearly enough that it's still easy to digest. One way of measuring the success of an introductory book like this is whether it gives you the confidence to keep going on your own, and I think this book does just that.

But what if you're new to programming? If you're an absolute beginner, this book won't teach you how to program in Visual Basic. For example, the book never mentions structures or recursion. You can't do any serious programming just with what you'll learn about programming from this book, but that's not its purpose. The instructions in this book ARE clear enough that you'll be able to follow along, but if you want to get the most out of this book you'll have to spend some extra time working through the examples and with learning the language, even if it's only via the online help.

On the other hand, I don't think you can know so much that this book won't be very useful. Microsoft in its wisdom changes terminology regularly (toolbar is now toolstrip??) and there are many new features in this version of Visual Basic, so it's a good idea to hire a guide.

Depending on your level of experience, you may need other resources to learn everything you want to about programming in Visual Basic 2005, but this is a great place to start."

You can purchase Microsoft Visual Basic 2005 Express Edition: Build a Program Now! from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
This discussion has been archived. No new comments can be posted.

Build a Program Now

Comments Filter:
  • It's not bad (Score:3, Interesting)

    by bwd ( 936324 ) on Monday December 05, 2005 @02:51PM (#14186827) Homepage
    Although severely crippled when compared to the enterprise edition, Microsoft's express edition of their Visual Studio products are actually decent. You can get basic programs coded in Express without a lot of the overhead (or features) of the professional editions.
    • What is VB for ?
      Is it for beginners ? If so then well done - people who don't understand the essentials of coding can now knock out their dodgy apps at a faster rate.

      Is it for experienced developers ? Only Joking.

      Is it for everyone across the board ?
      No! You have to go out of your way to develop a serious app in VB because the abstractions that make it attractive to the uninitiated are a bugger to get round.

      OK, in honesty, I don't like IDEs, debuggers or any of that stuff, but if you want it simple then the
      • Not for experienced developers? VB.net is just another language that compiles down to MSIL, so you can do anything that C# does. Although I'm not too big a fan of the syntax, this language can do a ton. And how can you not like debuggers? They can save you a lot of time, and accomplish things that tracing never can. The new version of VB.net even lets you edit code while debugging (just like the old versions of VB)...how's that for cool?
    • Re:It's not bad (Score:4, Interesting)

      by EvilMonkeySlayer ( 826044 ) on Monday December 05, 2005 @03:31PM (#14187196) Journal
      It's severely crippled when compared to the standard edition dude.

      For example, no crystal reports, you can only connect to a sql 2005 mdf file for a database. (No connecting via odbc or ole)

      That said...

      The express editions (and free until november 2006) are pretty good if you're wanting to do general programming (non-sql/db) stuff.

      However, let me advertise something i've used in the past Sharpdevelop [icsharpcode.net] which can create programs written in VB.NET, C# and C++ (requires MS Visual Studio 2003 C++ Toolkit).
      Version 1.0 only has a database viewer type thing, version 2.0 [sharpdevelop.net] (which is still a work in progress.. classed as alpha I think) is apparently at some point going to have a proper database explorer akin to VS 2005 where you can drag and drop db fields etc into a program you're creating.
      • Re:It's not bad (Score:3, Informative)

        by adolfojp ( 730818 )

        For example, no crystal reports, you can only connect to a sql 2005 mdf file for a database. (No connecting via odbc or ole)

        The database issue is true only if you intend to use the wizards or designers to do your database binding, which, in any case is not a good thing to do. You can connect, as with any other piece of software, to any database that you want using inline ADO.NET or much better yet with a data abstraction layer.

        About Crystal Reports... have you tried using the SharpReport library that co

  • hmm.. (Score:5, Insightful)

    by naelurec ( 552384 ) on Monday December 05, 2005 @02:53PM (#14186846) Homepage
    Book Title: Microsoft Visual Basic 2005 Express Edition: Build a Program Now!
    From Review: If you're an absolute beginner, this book won't teach you how to program in Visual Basic.

  • by SpooForBrains ( 771537 ) on Monday December 05, 2005 @02:53PM (#14186850)
    I had high expectations when I read this book, and I'm pleased to say that I was more than satisfied. My Visual Studio "Hello World" program ROCKS!
  • Could be worse (Score:3, Insightful)

    by ezweave ( 584517 ) on Monday December 05, 2005 @03:01PM (#14186903) Homepage

    Everyone has to learn somewhere, although if you are serious, VisualBasic is not the place to start. In my experience, the typical VisualBasic developer is just that. A good developer needs to understand concepts outside of the frame of wizards and such. Probably one of the biggest flaws in VisualStudio in general. MS loves wizards.

    • Re:Could be worse (Score:3, Insightful)

      by pilkul ( 667659 )
      You'd be right if this was VB6, but VB.NET is basically C# with different syntax. There's no reason why you couldn't learn proper programming with it.
      • And different semantics. VB.NET creates objects everywhere! You can control this some in C# but in VB every little thing creates boatloads of objects. You actually have to be really careful in VB. Unfortunately many people are not and usually VB is used in the hands of unskilled developers. It's really, really easy to write garbage in VB than it is in C#.

        All in all, I think C# should be wasy enough for unskilled developers (read, MIS majors, etc) to use daily. The benefits include a better compile, ev
    • Re:Could be worse (Score:3, Insightful)

      by Malc ( 1751 )
      I'll not argue with you about what it takes to make a good developer. But what hobbyist programmers, like say the author of the story? It strikes me that they have different needs and interests.
    • Re:Could be worse (Score:5, Interesting)

      by CastrTroy ( 595695 ) on Monday December 05, 2005 @03:09PM (#14186989) Homepage
      If you're just starting out programming, you probably shouldn't even be using anything as complex as Visual Studio, any edition. At most you should be using something that has code highlighting, and maybe some code completion. A full fledged IDE is not a good tool for teaching programming. Mind you, eventually people should learn how to use and IDE, but only after they actually know how to program. I find that this is where a lot of courses lack. They either get you using the IDE from the start, and you don't learn anything, or they never teach you about the IDE, and therefore you don't know how to use really useful features such as the debugger.
    • Re:Could be worse (Score:3, Insightful)

      by Swamii ( 594522 )
      Not all wizards are bad. When machines do things for us, there's the benefit that the machine will do it the same way time, whereas human coding is error prone and different every time. Intellisense (auto-complete) is one such "wizard" feature I love about IDEs, and I've found VS's auto-complete to be superior to several other IDEs I've tried. Other wizards such as Eclipse's "Add a class" wizard and Visual Studio 2005's properties & settings UI are examples of useful wizards that save time and are tedio
      • I think you're not clear on the term "wizard." A wizard is an interview. It consists of a dialog box with multiple pages where you only answer 1-2 questions per page and then click the "Next" button, until you get to the last page and click "Finish."

        At least one of the examples you cited clearly doesn't fit the definition. I think only the ultimate die-hard coders would argue that Intellisense is a bad thing, but it's certainly not a wizard.
    • Re:Could be worse (Score:5, Interesting)

      by Lumpy ( 12016 ) on Monday December 05, 2005 @03:16PM (#14187056) Homepage
      buit they have fixed that recently. VB.net is NOTHING like Vb of yesteryore. they got tired of all the bitching about how VB is not a real language so they convoluted it into a bastardized C++,C# mess.

      Honestly most VB dev's I know still have a copy of VB6 around to do the stuff they need running in a hurry... you can not program anything fast in VB.net Even printing is a major PITA compared to the old VB6 days.

      Many are abandoning it for other RAD languages. Python for example it's better cross platform and with the right setup your GUI looks good across platforms as well as able to compile to a single EXE.

      • Re:Could be worse (Score:3, Insightful)

        by amliebsch ( 724858 )
        so they convoluted it into a bastardized C++,C# mess.

        Huh? It is almost exactly the same as C#, but with different syntax. I don't get what's so hard about printing, either. Create a PrintDocument class, add graphics elements to its Graphics(GDI+) class. What's a PITA about that?

    • Wizards are not necessarily evil. Why should a programmer have to go through all the syntactically redundant crap every time they want to create a class? It doesn't make you a better programmer to learn how to type "class foo { public: foo(); virtual ~foo(); };" all the time, it just makes you a more experienced typist.

      If you were using a framework in the pre-.NET days (such as the old MFC stuff) the wizards would generate a lot of the required macro code and skeleton classes for you. Since the underly

      • Re:Could be worse (Score:3, Insightful)

        by LWATCDR ( 28044 )
        "If you were using a framework in the pre-.NET days (such as the old MFC stuff) the wizards would generate a lot of the required macro code and skeleton classes for you. Since the underlying framework itself was so hideous, there didn't seem to be a real need for everyone to understand what the wizards generated then either."
        I think you said it all right there. The Wizards in VS allowed MFC to flourish. IT was a nightmare and if you have a lot of MFC code you are stuck with it until you port it all to the n
        • Good point.

          I learned something related earlier this year that was kind of a "duh!" moment for me. If you're going to have generated code, then the "source" for the generator is what you need to save, as far as source control goes. Save it off as a first-class source module.

          What that gives you is the ability to re-generate the generated code in the future. It's even portable, assuming someone can put together a translator to generate the new output from the old source. But you can't do much of that w

    • This is a book not about programming, but about getting things done quickly. VB is by far and away, the best programming language/tool I've ever seen to do this. It's simply not necessary to learn the ins and outs of trees, arrays, pointers, etc. if you need a quick and dirty program to get something done. Kinda' like you don't need to know the ins and outs of a modern combustion engine if you just want to change your oil. Personally, I can't count the number of times that I needed to get something done
  • by Trolling4Columbine ( 679367 ) on Monday December 05, 2005 @03:01PM (#14186915)
    Saying "serious programming" in the same sentence as "Visual Basic" makes the Baby Jeebus cry.
  • by segedunum ( 883035 ) on Monday December 05, 2005 @03:02PM (#14186932)
    Afterall, I'm not going to be around to maintain it or be responsible for its crappiness.
  • by ATeamMrT ( 935933 ) on Monday December 05, 2005 @03:08PM (#14186974)
    Back in the 80's, my first language was basic on an Apple II+. It was a very easy language to learn, every line of code was numbered, and everything was logical. Line 10 would run before line 20, and so on. For those who have never seen it before, a very simple password protection program might be:

    10 Home
    20 Print "What is the password: "
    30 Get A$
    40 If A$ = "b" then goto 70
    50 Print "Wrong!"
    60 Goto 20
    70 Print "Right"
    80 End

    Now compare that kind of linear logic to a Java program with classes and { () and all that jazz. I remember when starting Java, thinking why do I need 3 different classes imported just to do a simple hello world? VB was no different, they had forms where you needed to drag and drop control boxes, and the like. Very little is straight forward, where a user/programmer could figure out the logic without a teacher/tutor.

    I wonder how much more difficult the learning curve is? Maybe the programs will be better, and the programmers more skilled, but there was an element of fun in a language that is so simple a 7 year old can write his own code. Compare that to my college level Java class, which started 28 strong, and ended with only 16 students for the final exam.

    What happened to a computer language that is intuitive and very easy, that anybody can learn?

    • A little... (Score:5, Insightful)

      by everphilski ( 877346 ) on Monday December 05, 2005 @03:24PM (#14187133) Journal
      What happened to a computer language that is intuitive and very easy, that anybody can learn?

      Security mostly. Scope is huge. Being able to define things that only exist within the curly braces is a blessing. Namespaces. Classes. Inheritance. All of that stuff that makes development such a joy. I'm not a computer scientist, I'm an aerospace engineer but I do simulation programming and all of these developments in object-oriented programming make my life so much easier. It is harder then when I was a kid and wrote my first programs in QBASIC, but man I'd much rather dig into a book and have to scratch my head a little learning C++ than go back to the old days...

    • Ruby, Perl, Python?

      Sure basic was easy, but it was very...basic.
    • As far as learning goes, there are still toy languages available for people to cut their teeth on.

      For serious programs, however, simply things like binary trees and linked lists can be all but impossible to create with old BASIC-style languages. A complete lack of pointers and references makes it very difficult to write reusable code, and even trivial changes can require modifications to the code in a large number of places.

      Traditionally trivial code now has more overhead than it once did, but complex code
    • Actually, if you just want to get in an write some code quickly, back in the early 90's, QuickBASIC was the way to go. You didn't need to worry about line numbers, and it was structured.

      I find VB6 is also a quick way for a beginner if they wanted to jump from console applications to GUI development. However, for the hobby programmer to jump from anything non-object oriented to VB.NET is going to be a huge jump.

      At work we've used VB6 extensively to write front-end GUI's for our systems, where the mission c
      • I'll probably get flogged for saying this, but for front-end apps that might need to be developed quickly I'd recommend Delphi. I used to look at Delphi as the bastard child of Pascal, but after taking a uni software development course where they stated on the first day that we'd be using Delphi I got hooked.. It can actually be very useful for when you know what you want since there's not a lot of "unnecessary" code just to get things up and running.


    • 30 Get A$

      So when did it become Get, let alone accept lower case?

      In my day it was:
      30 INPUT A$

      and that's all there was to it.

    • What kind of moderators would moderate this as insightful and not the (hopefully) intentional funny or flaimbait??? This mod system is getting bizarre.
    • What happened to a computer language that is intuitive and very easy, that anybody can learn?

      You can download from IBM [ibm.com] a personal version of UniVerse, which is an extended relational database environment that uses a version of BASIC as the primary programming language.
    • /** Sorry bout the formatting.. Slashdot whitespace filter's fault ***/
      package slashdot;
      import java.io.BufferedReader;
      import java.io.IOException;
      import java.io.InputStreamReader;
      public class DorkTest { public static void main(String argv[]) throws IOException {
      System.out.println("What is the Password?");
      InputStreamReader reader = new InputStreamReader(System.in);
      BufferedReader read=new BufferedReader(reader);
      String a=read.readLine();
      if ("b".equals(a)) { System.out.println("Right!"); }
      else { System
      • /** Oh duh.. My apple II basic skills are rusty! Version 2.0 will ask the question over and over again
        till you get it right.
        Sorry bout the formatting.. Slashdot whitespace filter's fault ***/
        package slashdot;
        import java.io.BufferedReader;
        import java.io.IOException;
        import java.io.InputStreamReader;
        public class DorkTest { public static void main(String argv[]) throws IOException {
        while (true) {
    • What happened to a computer language that is intuitive and very easy, that anybody can learn?

      QBasic [qbasic.com] still runs on every version of Windows.

    • by Jaime2 ( 824950 ) on Monday December 05, 2005 @09:34PM (#14190338)
      Writing code that works is only a small part of the battle. You have to write code that works, is readable, maintainable, reuseable, and extensible. By the time you describe (through the programming language) what the program should do, what interface it should expose to the outside world, what interface should be exposed only to the project, and what should be held internally, also deal with a robust error managent system that works for attended application as well as service programs, possibly deal with packaging issues, security, and information scope and lifetime -- you're so-called simple program isn't so simple any more. Any code that ignores a significant number of the issues listed above is toy code and not suitable for any production environment.

      So, if you want to write crap, a 1970's language is just fine. Feel free to write hobby code in GWBASIC. We won't stop you. Heck, many of us will have a great time helping you. But, truely simple applications don't exist in the professional arena. Modern languages aren't designed to tackle issue that were solved 30 years ago.

      My OO programming students usually gasp when I tell them that there is no application that can be written with an Object Oriented language that cannot be written with an old-fashioned language. The whole point of OO programming isn't to do better things, it's to do the same things we did 30 years ago, only do them better. It's all about the process.

      BTW, line numbers weren't invented to make the program easier to read. They were invented because many systems didn't have a text editor. The best way to insert a line between 30 and 40 was simply to make a new line 35. Going up a few lines and inserting simply wasn't an option.
  • An IT manager from WAMU who had been to MS campus to work his strategies to migrate to .NET told me that he was asked by MS's PM to migrate his applications to VC#. Though MS will continue to support VB but are softly asking managers to move towards VC#.

    I don't know a lot about VB but MS seriously is in deep shit with VC especially the language syntax in 2005. Not many liked it. They also didn't support STL.NET which majority of the folks wanted. Is this something new?
    • It really doesn't matter what IT managers like after they have bought into Microsoft platform lock-in. If Microsoft says "migrate to VC#", they will migrate to VC# if they want any support (and they do, that's why they bought into Microsoft platform lock-in). Issue closed.
    • Problem with STL.NET is that their STL implementation isn't done in-house, it belongs to another company called Dinkumware. Dinkumware are quite busy hacking away at the TR1 improvements right now, and having to do STL.NET alongside that would've just slowed down everything.
  • Next quarter. At the community college (don't laugh) I'm going to it's a prerequisite to take Java. WHY? I have no clue. Maybe the Java Prof doesn't want to have to explain what a method is. I don't know. But I am going to have to go through an entire 3 months of this.

    I am upset, because I allready know a lot of programming concepts, even if I'm not fluent in any particular language (I know a smidgen of Perl). I'd rather just jump right into Java, but I can't. (or, you know, C++. They don't even
    • I at least KNOW that VB isn't exactly the best language on the planet. And knowing is half the battle!

      How do you KNOW if you haven't had any exposure to it yet? Forget the moaning masses at /. and make up your own mind. I started with C, then C++, Java (and others I don't care much for, Cobol, Lisp, etc) then VB6 and now VB.Net. Professionally. Day in, day out. Guess what, it's not that bad.
      • capitalizing "KNOW" was supposed to emphesis that I pay attention to general programming culture, not that I actually have a lot of factual knowledge about VB or any other language. And regardless of merits or lack thereof, it's at least a very unpopular language amongst the unix inclined. I didn't mean act like I actually know much about VB, or any other language except Perl and Ruby, except that VB is fairly automated and windows-centric. Although that's more an effect of the development program, not t
    • And knowing is half the battle! Any help on keeping the mind clear of the crud and pulling any useful info from the class?

      Go there to learn fundamental concepts of programming. Learn things like debugging, algorithms, encapsulation, threading etc... These will naturally transfer to any language. Go with a positive attitude, even if it is "just VB" or you won't learn anything.
    • Your a CS major... (Score:2, Interesting)

      by everphilski ( 877346 )
      ...not a (insert-language-here) programmer. Get that through your head. (the sooner, the better) A good CS major should be able to pick up any language because the concepts are mostly the same.

    • Poor kid having to sit through three months of Visual Basic (it's easy, not torturous). At least during high school you are being taught Java and VB. The same can't be said for thousands of other people... take for granted what you're being taught, please.
      • Programming? High School? That's hilarious!

        My high school had 150 students. Let me put it this way: The head of our computer "department", and I swear to God I'm not making this up, did not know HTML. He knew Microsoft Office and basic computer hardware, these were the only qualifications nessicary at my school. Computer Hardware, "Computer Applications"(Office), and Keyboarding were the only computer classes taught in my high school.

        I graduated in two thousand and freaking one. We were in the s
    • Most likely because there was a large donation from MS.
  • Finding VB Express (Score:5, Informative)

    by hotspotbloc ( 767418 ) on Monday December 05, 2005 @03:10PM (#14187003) Homepage Journal
    It seems VB Express (http://msdn.microsoft.com/vstudio/express/vb/defa ult.aspx [microsoft.com]) is a free (445M) download.

    VB Express (.img file)
    http://go.microsoft.com/fwlink/?linkid=54764 [microsoft.com]

    VB Express (.iso file)
    http://go.microsoft.com/fwlink/?linkid=57033 [microsoft.com]

    • As a correction, it is only free until November 2006.

      Also, VC# Express 2005, VJ# Express 2005 and VC++ Express 2005 are available until November 2006 too.
    • VC Express is a free download too... but getting VC Express to install correctly and compile a simple app is another story. Seems you have to download and install Visual Studio, then VC Express... almost a 1GB of downloads so far and you're not done yet! You also have to downlaod and install the MSDN libraries because VC Express does not include the standard Windows header files like windows.h!!! Screw that. I went back good 'ol lcc: http://www.cs.virginia.edu/~lcc-win32/ [virginia.edu]
  • by RandoX ( 828285 ) on Monday December 05, 2005 @03:13PM (#14187023)
    Serious question. If you need to build a quick, simple, gui app for an end user (in a Windows environment), what's better? You can do a lot of useful stuff with a couple minutes worth of code.
    • by MosesJones ( 55544 ) on Monday December 05, 2005 @03:18PM (#14187077) Homepage
      Heading for Karma hell on this one but...

      I've used VS 2005, and I have to say that its poor at doing this sort of thing in comparison with a decent Java IDE these days. MS has lost a lot of its "ease of use" in this area (decent layout managers for instance) that it used to pride itself on.

      I'll burn some Karma... but then I'm probably one of the few who has actually tested this stuff out.
      • "(decent layout managers for instance)"

        I'm confused on that one. VB5-6 had a very intuitive (click and drag) layout builder. .Net added anchoring and splitters (making resizing simple as can be).

        Last time I worked with Java(1.4 about 1-2 years ago) I had strong urges to poke my eyes out while dealing with layout managers and the whole cardinal direction crap. It was a nightmare. A buddy from that class built a VS imitation layout manager builder for his final project. It was an app that would allow you to c
    • I'm going to go ahead and say, "whatever you're most familiar with me." For me personally it happens to be C#, but there are definitely things about it I don't like.
    • I honestly don't know why companies like MS spend so much time trying to make programs easier to write. The initial building of the application is less then 10% of the lifecycle of the application and it makes no sense to try to make it faster to BUILD the application. They should instead concentrate on making it easier to maintain, debug, update, install, document, and deploy the application.

      That's where Eclipse and the rest of the java stack beats the .NET stack hands down. Unit testing, build systems, xd
      • You're talking about something completely different than what this book is about. There are plenty of useful programs in which "maintain, debug, update, install, document, and deploy the application." are all irrelevant. I needed a program to help one of my managers figure out fractional hours on timesheets. I fired up VB and wrote one in less than 5 minutes that let me manager put in hours in lots of different formats, press a button, and it would display the answer. I didn't want or need something tha
        • Are you telling me that the application you wrote will never be debugged, or maintained in the future. That it needs no testing or documentation? That it will never be deployed anywhere?

          If so what you wrote was not an application, it was a script.
          • Debugged? No. It's simple, and it works. Maintain? There's nothing to maintain. It's a self-contained .exe. Testing? Yeah, I fired it up, typed in some numbers, and it returned the correct result. Tested. Deployed? Yeah, I emailed her a copy of it. No, it's not a script, unless you've seen a script with a GUI, which I never have. It's a very simple app, and if not for VB, it would not have been worth making. That's my point. VB was the right tool for this job (and many others), and often is.
            • There is no such thing as a self contained EXE for VB. It seems that your bosses computer had the proper runtimes already installed.

              Oh one more thing. VB is never the right tool. It was merely the tool you knew how to use. In this case Delphi was probably the right too.
    • Visual Basic, obviously. Not having touched VB for almost ten years, and breaking VB 2005 open just last week for a mini-project, it was the simplest thing in terms of GUI development. I had no trouble getting going. It just does not get any more simple than VB. I've tried Java, too cumbersome. PowerBuilder is close. But VB, well, it's just deserving of an applause in this sense.
    • I'd say Python and Tk if there was an IDE to compare with the Eclipse/pydev combination for Windows.
      • Python is not really a VB.NET replacement if you need, like, or are used to adanced code completion. It is one of the great few valid arguments that remains for using a statically typed language like VB.NET, C# or Java versus a dinamically typed one like Python or Ruby.

        VB.NET programmers don't need to memorize every overloaded method available in every class of any framework. They are reminded as they go.

  • Microsoft Visual Basic 2005 Express Edition: Build a Program Now! doesn't attempt to teach you programming in general or Visual Basic in particular.

    And so if you read this book you will get a microscopic and highly specialized view of programming in VB, minus all that unnecessary fluff like learning logic, pseudocoding, and documentation. Then you too can move to Redmond, get a good-paying job, and help create the newest set of flaws for IE, Office, Outlook and all other products in the ever-expanding Mic

  • by grasshoppa ( 657393 ) <skennedy@AAAtpno ... inus threevowels> on Monday December 05, 2005 @03:16PM (#14187048) Homepage
    Why not just start with QT and BAM! Instantly portable app ( well, not instant. I'm sure there are considerations you have to keep in mind if you want portable, but it's easier at least )?

    I do light programming, nothing professional, so maybe I'm just not in on the loop on this one.
    • well, not instant

      That's probably why it's not a main candidate for a beginner's book. It's harder to get running on a newbie machine (which probably has Windows) and a key "plus" (portability) is both too far off in the future for the newbie to reeeeeeeaaaallly care about at that point AND that key plus (portability) is not exactly as advertised.

      Not an argument as to merit of the environment, mind you.

    • Ditto. Qt is now Free Software for Windows (as well as for all other major platforms), and Qt Designer kicks Visual Studio's butt from all across the playground. The only thing it's missing is a visual debugger, but "light" programmers rarely need that.
  • Sequel (Score:5, Funny)

    by Anonymous Coward on Monday December 05, 2005 @03:32PM (#14187211)
    I eagerly await future books in the series such as:

    Visual Studio 2005: Laying the Groundwork for Future Exploitation
    Visual Studio 2005: A Catalyst for System Compromise
    Visual Studio 2005: Pseudo-Security; It Makes You Feel Better
    Visual Studio 2005: Allowing Users to Do Things You Never Intended

  • Bill Gates should give the author a complemenary XBox 360 for contributions to better use of VBE 2005.
  • Well... (Score:5, Insightful)

    by TheSkepticalOptimist ( 898384 ) on Monday December 05, 2005 @03:38PM (#14187275)
    Teaching a person how to create an application WITHOUT programming skills is edging on insanity. Its like teaching a person how to gut the fish, without learning how to get the fish in the first place.

    I found that an uncle of mine going through a VB course focused on this kind of approach, learning how to write an application without learning how to program. The problem is, anytime he came across a programming problem he had to solve, he phoned me up and asked me how the code should look. Without understanding the fundamentals of conditional statements, loops, and functions, few can really start to develop a useable application.

    The fact is, if you want to do anything NOT mentioned in the book (i.e. anything the examples don't cover), your out of luck, because you will not have learned the necessary skills to find out how to do more then what the book mentions.

    I would think this books sounds best for those familiar with programming, but NOT with the VB.Net 2005, for instance, those that are wondering what that new ToolStrip object does. It's designed as a refresher for those looking to understand what new features are and how to use them.

    In any regard, VB is a good tool to be able to develop an application with MINIMAL programming skills, but I would be hard pressed to find someone actually wanting to design an application without some desire to understand how to do some basic programming. Anyone earning a paycheck by writing application swithout understanding how to program should seriously consider the morality of cashing his paycheck.
  • by LouSir ( 681838 ) on Monday December 05, 2005 @03:54PM (#14187421)
    What's wrong with VB or VB Express ? What's wrong with coding as a hobby and using these tools ?
    Did you read the article where he says he's a hobbyist ? Why do you all need to rag on him, the book and program ?
    In architechture schools you learn to build houses with cardboard first to understand the concepts, then you get to work with concrete.
    Are you all so insecure about your jobs that you wouldn't encourage others to learn to write programs ? I don't see any other ideas from this audience, just hostility.
    • Welcome to slashdot LouSir. Please remember that trolling about anything that comes from the Redmond Giant will make you cool.

    • Well, as a former VB user (don't flame me Slashdotters, I have redeemed myself by learning C, C++, and Java), VB itself isn't half bad. Need a GUI for an application? With Visual Basic, you are done in just ten minutes or so. Need to access a database? Just drag the control, change some variables, type some minimal code, and you're done. Visual Basic allows you to make simple programs very quickly. Now, Visual Basic becomes impractical for larger, more complex projects (such as high-end video games, o

      • I don't dismiss the idea that there are language snobs, but part of the disdain for VB comes not from people developing quick-and-dirty applications in it but from people asked to maintain massive applications that started out as quick-and-dirty.

        Part of the problem may be that VB enables people with not a lot of experience at program design in any language to generate these quick-and-dirty applications that morph into critical applications in some business that some person then has to maintain. I guess t

    • What's wrong with coding as a hobby and using these tools ?

      The fact that your "hobby" attatches more strings to your life than other people's "jobs"? Until you've made the *jump* from MS to an Open Source platform, you have no idea. You're like somebody who's lived in a little box all their lives and doesn't believe in the sky. Once you can look far back on your MS days, you'll wonder if there's that much difference between "programming" in Visual Basic and huffing glue. Sure, it's a hobby, and you're hu

  • If yur looking to whip up a quick application and have any idea as to how Java or VB works (even driven programming), you might as well d/l the free trial RealBasic suite and use that. Yes, you need to purchase a license to instantiate a DB connection, but skip VB for when you want cross platform and dont want to insist on a JRE to run your program. /didnt read article //abandoned VB at v6 ///RB is not 100% stable to develop on windows, but good on linux/mac
    • RB (Realbasic [realbasic.com]) is pretty sweet. One of the best parts is that you can code on GNU/Linux [realsoftware.com], MS Windows or Mac OS X and in one shot compile to GNU/Linux, MS Windows and Mac OS (carbon and/or classic). Plus they're giving away a six month time bomb (could be extended) but still a full version of RB Personal (no mysql support but still supports sqlite, cross compiles only run for a week as a demo) for GNU/Linux [realsoftware.com]. The Mac and MS Windows "demo" version time bombs any compiled apps (unlike the GNU/Linux version).


  • by kbielefe ( 606566 ) <karl...bielefeldt+slashdot@@@gmail...com> on Monday December 05, 2005 @04:57PM (#14188039)
    Visual Basic is the fastest way I know to make a program that looks good, but doesn't work.

Each new user of a new system uncovers a new class of bugs. -- Kernighan