QBASIC Programming for Dummies 630
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 bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
QBASIC ?? (Score:2, Interesting)
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)
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)
What is next (Score:5, Interesting)
No Disc can be a good thing. (Score:5, Interesting)
Here's a nice quote from a /real/ programming book (Score:2, Interesting)
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)
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...
Re:Might I recommend a different language to start (Score:2, Interesting)
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).
Re:It is not bad to learn QBasic... (Score:3, Interesting)
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)
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)
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
Ah, QB.. *sigh*... You were the perfect language, at the time..
Old review, but stirs up some nostalgia (Score:4, Interesting)
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
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)
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)
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)
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.