Forgot your password?
Programming Books Media Book Reviews IT Technology

QBASIC Programming for Dummies 630

Posted by timothy
from the truth-in-nomenclature dept.
HeavyJay writes "When I purchased QBASIC Programming for Dummies, I expected a clear, concise tutorial on how to construct programs in QBASIC. I'm new to the world of programming, and, having had luck with the Dummies series before, thought this the best place to start off. How very wrong I was." Read on for more; readers with recommendations for better (newer?) QBASIC books are encouraged to contribute.
QBASIC Programming for Dummies
author Douglas Hergert
pages 399
publisher IDG Books Worldwide, Inc
rating 5 out of 10
reviewer HeavyJay
ISBN 1568840934
summary "The Fun and Easy Way to Learn QBasic Programming."

I've read countless books and online tutorials on QBASIC, C++, PHP, and other various languages. I'm sure all you wise programmers can tell me the first sample program that comes to mind with any language, can't you? The classic 'Hello, world!' example. This easy app starts off would-be programmers with a level of confidence and understanding. To my surprise, Douglas Hergert decided not to use the ever-popular example program. So, you might be wondering, what did he use in it's place? A four-page-long currency converter.

This was Mistake #1.

The book started off making me feel stupider than I actually am. This oftentimes discourages readers from pursuing, and the book takes to the shelf, perhaps never to be picked up again. I've noticed that the best way to capture a reader's attention (and explain the most) is to start off with PRINT, INPUT, IF...THEN and GOTO. Then move on to loops, and get technical from there. It best prepares the reader for everything in store, rather than making them feel like idiots. The book didn't do this at all. It started off making in such a way that anyone without experience would be completely lost. IF...THEN doesn't even come in until the eleventh chapter, despite being one of the most important tools in the language!

So, what good can I say about the book? Not much, except that it came with some practical applications. This brings up another grievance I have with it, that being the lack of an accompanying disc. I feel every book on programming with long examples ought to come with a disc containing all example programs, so that the reader can tweak and observe them as he sees fit, without typing in five pages of code. The best way to learn is often by example, and discouraging lazy people doesn't help the learning process along.

Alas, the book does contain some humour, as it's other brothers and sisters from IDG often do. With chapter titles such as Text, Lies, and Videotape and How to Manage Arguments and Influence People, a book can't be completely bad.

Although I suggest beginners steer clear of this book, it can be useful to experienced programmers (supposing they don't think QBASIC a waste of time). It goes deeply into data structures, arrays, and databases. There are many helpful features, but it's definitely not a book to learn from.

You can purchase the QBASIC Programming for Dummies from 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.

QBASIC Programming for Dummies

Comments Filter:
  • QBASIC ?? (Score:2, Interesting)

    by makapuf (412290) on Friday June 13, 2003 @12:32PM (#6191729)
    Why, I mean, why ?

    if it's in a corporate world, flee while it's time
    else, why not use python as a first language ? or, Java ?

    I mean, you could learn something simple, like, LISP ?
  • QBasic (Score:2, Interesting)

    by nogoodmonkey (614350) on Friday June 13, 2003 @12:32PM (#6191732)
    We are reading book reviews from books written in 1994 now?

    I never understood why they did away with line numbers in QBasic. Seemed like a very big part of GWBasic.
  • go ahead and laugh (Score:5, Interesting)

    by cr@ckwhore (165454) on Friday June 13, 2003 @12:33PM (#6191742) Homepage
    Go ahead and laugh, but I work for a company that still writes/maintains qbasic software and sells it to unsuspecting clients for $50,000 bucks a pop. I think we need a "software purchasing for dummies" book.

  • What is next (Score:5, Interesting)

    by Fizzlewhiff (256410) <jeffshannon@h o t m a> on Friday June 13, 2003 @12:34PM (#6191754) Homepage
    A review for MS-DOS 5.0? QBasic hasn't been included with Microsoft operating systems since they stopped selling DOS if I am not mistaken.
  • by Kevin Stevens (227724) <.kevstev. .at.> on Friday June 13, 2003 @12:51PM (#6191968)
    "This brings up another grievance I have with it, that being the lack of an accompanying disc. I feel every book on programming with long examples out to come with a disc containing all example programs, so that the reader can tweak and observe them as he sees fit, without typing in five pages of code. The best way to learn is often by example, and discouraging lazy people doesn't help the learning process along." Not having a disk forces you to type the programs in. Even in autotype drool mood, you pick up alot more than copying and pasting code and running it. Lazy people wont learn programming by copying and pasting code. They are the type that will read individual words without comprehending their meaning and 'finish' the book, and say they 'know' programming while absorbing mebbe 1% of the material. At least if they have to sit there and type the code, they might pick up something, and when they inevitably make mistakes in copying it, have to figure out how to fix it, which is a forced interactive process that gets the wheels spinning. In a more advanced type book, like a data structures or design pattern type book you can get away with code on a disc, but in a beginner book I do not think it is appropriate.
  • by Kernel Corndog (155153) on Friday June 13, 2003 @12:55PM (#6192016)
    From SICP:

    It is practically impossible to teach good programming style to students that have had prior exposure to BASIC : as potential programmers they are mentally mutilated beyond hope of regeneration. [E.W. Dijkstra]
  • WTF? (Score:5, Interesting)

    by evilquaker (35963) on Friday June 13, 2003 @12:55PM (#6192018)
    HeavyJay writes:
    I'm new to the world of programming...

    and the review (also written by HeavyJay) says:
    I've read countless books and online tutorials on QBASIC, C++, PHP, and other various languages.

    So WTF... you've read countless books on QBASIC, yet you claim to be new to the world of programming and therefore need to read "QBASIC for Dummies"? Something doesn't make sense here...

  • by term8or (576787) on Friday June 13, 2003 @01:06PM (#6192146)
    Personally, I would go with delphi or with Java as a first language. (Delphi has all the structure of Pascal, but you can actually use it to do stuff... IMHO Java is not as good a language as delphi for learning, but is *almost* as good, and better paid.)

    I would leave anything with Basic in the title, C, C++, or Perl to later. i would leave Visual Basic to never (I'm using it at the moment, and i'm looking for another job, Just to get awat from VB6).
  • by blowhole (155935) on Friday June 13, 2003 @01:28PM (#6192434)
    That help file was so awesome it brings tears to my eyes just reminiscing about it. I learned to program in QBASIC at eleven thanks to that help file.

    The fact that this is possible makes QBASIC the obvious choice for self-taught beginning programmers. But in any other environment, Java is by far a better starting place for newbies.
  • Re:Redundant??? (Score:2, Interesting)

    by dickens (31040) on Friday June 13, 2003 @01:41PM (#6192616) Homepage
    You got to start with a keyboard ? And a CRT ?

    I started with Basic on mark-sense cards processed on some HP system that I only saw once.

    The compile-edit loop was one week. Our stacks only ran on friday evening. This was 1972 in West Vancouver, BC.

    It was a big step up in '72 (in Massachusetts) to basic on a PDP-8 and a teletype with paper tape storage.

    And I was in heaven in '73 with some Wang box that had all the basic commands bound to keys. So command-P gave you "print" wow.

    But I didn't start the "real programming" until '78 with Basic+ on RSTS/E and a PDP 11/45.

    Pascal came later, and I saw the light. But I never really became a C programmer, alas, and now am a perl & php guy.

  • Get 4.5 (Score:4, Interesting)

    by Forkenhoppen (16574) on Friday June 13, 2003 @02:09PM (#6192900)
    If you get QuickBasic 4.5, it comes with a reference book. This book kicks mucho ass. Any other book on QBasic or QuickBasic is simply redundant, because that reference book had anything and everything you ever needed or wanted to know about the language.

    And it's a good read. I remember a track meet I went to in elementary school, where I spent at least half the time reading that book..

    Incidentally, QuickBasic 4.5 has amazing online documentation. Anything and everything about the language is documented in there. Very useful.

    If I were you, I'd go looking around for a used copy of QuickBasic 4.5, and make sure you get the ref manual with it. It's definitely a worthwhile investment, for someone who's just learning, and for anyone who wants to actually do something with QuickBasic.

    For those of you who are wondering "why the heck would he choose qbasic," let me just say this in qbasic's defense. It really is still the best language out there for the average beginning programmer. QBasic's included with all the early Microsoft OSes, so it's on all the old hand-me-downs from yesterday. And it's fun.

    I'll always have a soft spot in my heart for QB. I've used Borland Pascal, which was amazing, but flawed in it's graphics. (BGI was a pain in the ass; everybody wrote their own graphics lib instead.) By comparison, QB's elegant..

    SCREEN 13
    CIRCLE 100, 100, 50, 3 ..was so much closer to the metal.

    Ah, QB.. *sigh*... You were the perfect language, at the time..
  • by antis0c (133550) on Friday June 13, 2003 @02:41PM (#6193296)
    QBASIC was my very first introduction into programming. So long ago, I was on my 286 with MSDOS 5. Couldn't do a whole lot with my computer, it was purchased like so many computers with the intent by my parents to type homework for school, and a hidden agenda to play games for myself.

    Of course, I wasn't playing a whole lot of cool games on my 286 with a 10 meg harddrive, and 1 meg of RAM. So I just played around with MSDOS, tried to figure out how it worked, how programs worked. I started just editing .exe files, wondering what the hell all that garbage meant. For the longest time I thought that there was some actual logic to t he garbage I could interprete and use. After a few weeks though, I learned about source code, compiling, etc. I started playing with QBASIC, but the bundled one with MSDOS 5 would only run the applications, not compile them to native bytecode. Wasn't long, I nabbed a copy of QuickBasic from a friend, and I was compiling little role playing games and other applications.

    I took a Pascal class in 9th grade, and quickly found my calling. Not 2 weeks into the class I was learning how to write x86 assembly using the asm { } calls in Pascal, and inline() code as well. I had cool text fading effects and smooth scrolling, etc. And no, I wasn't learning it from the teacher, they were still on println, I was learning a good bit on my own. Turbo Pascal 7 had a pretty decent help system. I used Pascal quite a bit, especially in the BBS scene, as it was the programming language of choice for BBS software and doors, Telegard, Renegade, Iniquity, Oblivion/2, TriBBS, all written in Pascal. By this time I had moved from MSDOS 5 to OS/2 Warp 3. I was running a telnet BBS software using some of dink's software to create the TCPIP->Fossil emulation. Those were fun times, before the dot coms were stealing money from investors and before we had big government enacting foolish laws.

    I then came across Linux. It was a 1.x version, one of the early Red Hat distributions. Just like today, it was crap. I quickly picked up the SAMs (or maybe QUE) Slackware book that had a CD of the distro on it. I found myself a platform I could start learning C on. Once I got into Linux, a whole new world opened. C, shell scripting, Perl, eventually PHP, I started into Java, and so on and so forth. And the learning never stops. Good times, good times.. Now I have to worry if something I program will be used by terrorists and I'm going to end up in jail for "aiding" terrorists, facilitating the spread of MP3s, or other Copyrighted programs. I miss those days.
  • Re:Redundant??? (Score:1, Interesting)

    by Anonymous Coward on Friday June 13, 2003 @03:09PM (#6193616)
    Your school is certainly a pretty sorry excuse for an educational establishment. Shit, we had BASIC computers at my school back in the early 80's. Sure not one per pupil, and you had to read the manual first, but still.

    As for the primary poster. I spent six months reading a BASIC programming book before my computer even arrived. I suggest that you can a) learn a lot about how something works be reading books cover to cover without even seeing a piece of hardware [you see the full picture], b) actually typing something in where it has to go into your brain and then get typed out causes you to actually think. Loading and running something off a disc or tape doesn't really achieve this.

  • Re:Redundant??? (Score:3, Interesting)

    by quasi_steller (539538) <Benjamin.Cutler@ ... .com minus berry> on Friday June 13, 2003 @04:09PM (#6194296)

    I learned Pascal and QBASIC at the same time. I tought myself QBASIC because it was what I had at home, and I learned Pascal in high school (that was back in 1998). Needless to say, the language that helped me learn all of the important stuff was Pascal. Pascal is very a very structured procedural language. QBASIC makes it too easy to write spaghetti code, and VB just, well, sucks. I believe that it would benefit all beginning programmers to learn on a language like Pascal, so moving to a real production language like C/C++, Java, etc is much smoother.

  • So do I... (Score:3, Interesting)

    by r6144 (544027) <> on Saturday June 14, 2003 @02:03AM (#6197735) Homepage Journal
    When I bought my first 386 in 1994 I can only program in Qbasic. I programmed a lot, and it is very interesting.

    But BASIC is really awkward if you want to write structured, maintainable large programs. The largest Qbasic program I have ever written during the one or two years was about 5kB in source code.

    Then I learned Pascal at school, and got hold of a copy of Turbo Pascal 5.5. In a month I switch to Pascal exclusively. Anyway, the programs look cleaner (well, clean for a kid's code, still much uglier than most OSS code or Borland's examples) and doing pretty graphics is just as easy. What's more, it is a compiled language, so it is a ton faster than Qbasic, and the Turbo Pascal compiler really lives up to its name, about 500-1000 lines/second even on a 386DX/40. I wrote quite a few 20kB+ (in source) programs doing various actually useful things. The biggest one is a complex RPG-like game, which is about 70kB in source code.

    C was a hard language to learn by oneself, and although I spent quite a lot of time trying, I couldn't quite grasp it until it was taught in college (about 1999). Also, in DOS it is pretty easy to lock up the machine by using pointers incorrectly, which is scary, while in Pascal pointers are only occasionally necessary and there is range checking and stack checking, so bad things don't happen that often. However, comparing to C, Pascal's syntax looks awkward and verbose. In fact, C is also quite verbose, but the verbosity is about telling the machine the details about what to do, while Pascal's verbosity such as BEGIN and END doesn't mean anything. Also, when using complex data structures points should be used anyway, and Pascal's syntax IS awkward (type PFoo = ^TFoo...). So, since 1999, when I finally grokked C, has MSVC on Windows 95 and GCC on Linux, I dropped Pascal almost entirely.

    In the last four years most of my programming are done in C, and most of the code is quite clean. I learned C++ too, but I didn't use it much because OOP was never really necessary for me, and I like Java better anyway (C++ has so many pitfalls, hides low-level details and makes debugging of pointer errors difficult, and there's too many ways to do something). I have tried Smalltalk, Ocaml, Lisp, Perl, Python too, but mostly just for small programs. For a long-time C programmer, It is hard to find a compelling reason to use something other than C (and Java) for a medium-sized project.

/earth: file system full.