Slashdot Mirror


QBASIC Programming for Dummies

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 bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

56 of 630 comments (clear)

  1. Redundant??? by (54)T-Dub · · Score: 5, Funny

    Isn't "QBASIC Programming for Dummies" a bit redundant?

    --

    "I can not bring myself to believe that if knowledge presents danger, the solution is ignorance" - Isaac Asimov
    1. Re:Redundant??? by Anonymous Coward · · Score: 2, Funny

      I'm recommending "PERL for Dummies" or in the worst case "WTF are you using QBASIC for, Dummy!"

    2. Re:Redundant??? by WndrBr3d · · Score: 5, Insightful

      You know, flame all you want but we all know everyone started in this programming language. And if you were any good at it, you could make some pretty dope applications. I mean, what better way to show off to your junior high programming class than making a DOS based Paintbrush application by hooking the mouse interrupt.

      Didn't get me any women, but it (QBasic) as a good springboard into computers.

    3. Re:Redundant??? by jcast · · Score: 2, Funny

      You got to start in QBasic? You don't know how lucky you are. Back when I started, we had to line-number our programs. And we were grateful!

      --
      There are reasons why democracy does not work nearly as well as capitalism.
      -- David D. Friedman
    4. Re:Redundant??? by Z0mb1eman · · Score: 2, Funny

      Isn't "QBASIC Programming for Dummies" a bit redundant?

      Apparently not, didn't you read the review? You need to be a dummy with a PhD!

      --
      ClutterMe.com - easiest site creation on the Net. Just click and type.
    5. Re:Redundant??? by WndrBr3d · · Score: 3, Insightful

      Not everyone possesses the obvious programming genius which you inherently do. I myself find some of my friends asking me what is a good language to start in, and it all depends on the person. If I think they're ready for it, VB. If not, then QBasic. Both are excellent starting languages. It all depends on how well they understand the concepts.

      NOW, the POINT of this book review would be more or less to the people (or perhaps parents) looking for books to recommend to their friends/children looking for a foot in the door.

    6. Re:Redundant??? by Joey7F · · Score: 2, Funny

      Funny story for ya. When I was in high school (way back in 1999) we used VB. My father asked if we were going to learn PASCAL (as that is what he grew up on) I looked at him dumbfounded. Realizing how far behind the times he was, he asked "What is PASCAL passe?"

      To which I said, "More like blasé"

      --Joey

    7. Re:Redundant??? by dickens · · Score: 2, Interesting

      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.

    8. Re:Redundant??? by Atzanteol · · Score: 5, Insightful

      Ahh, the good old teenage "Well, I've never used it, and don't know where it's used, so it *must* be obsolete!" attitude. You use 'PASCAL'? How ten years ago!

      What's wrong with PASCAL? I'd rather learn on PASCAL than VB anyday. PASCAL looks more like C++ and Java (and C#) than VB does. Learning VB from any other 'decent' language is a snap. But learning C++ or Java from VB is a pain in the ass.

      Students should be learning with a command line. No GUI apps to start. Learn from the ground up. Otherwise you'll be able to do things, but not necessarily understand them.

      And yes, I still believe in teaching assembly...

      --
      "Ignorance more frequently begets confidence than does knowledge"

      - Charles Darwin
    9. Re:Redundant??? by Arker · · Score: 2, Informative

      To which I said, "More like blasé"

      Ahh the arrogance of the ignorant.

      Pascal beats your silly VB toy in every way imaginable. Go get Delphi , buy a good book on it, and learn something.

      --
      =-=-=-=-=-=-=-=-=-=-=-=-=-=-
      Friends don't let friends enable ecmascript.
    10. Re:Redundant??? by quasi_steller · · Score: 2, 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.

      --
      ...interesting if true.
    11. Re:Redundant??? by cgreuter · · Score: 3, Insightful
      Students should be learning with a command line. No GUI apps to start. Learn from the ground up. Otherwise you'll be able to do things, but not necessarily understand them.

      The problem is not with GUI-based languages; it's with tools that hide their inner workings from you. VB is like that but so is VC and MFC.

      Smalltalk, on the other hand, is also purely GUI-based but it's also completely transparent. The entire system--including the GUI (usually)--is written in Smalltalk and you can browse it and modify it just like any other part of the system.

      (A good open-source Smalltalk system is Squeak if you're interested.)

      I get the impression from looking at M$-ware that they have divided the world into rulers and peons with their developers in the ruling class and the customers as the peons. When this extends into their development tools it's either "this is too hard for you to understand" (in the case of VB and the like) or "you don't need to know this--just read the API documentation" for VC. Whether or not a GUI is involved is relevant only in that MS seems to be trying to get rid of the CLI.

      If I were teaching a programming course, I would avoid MS tools (and those that try to emulate them) like the plague.

  2. Chapter Summary by Prince_Ali · · Score: 4, Funny

    Chapter 1: That game where the snake eats the numbers.
    Chapter 2: That game where the monkeys throw bananas at each other.
    Chapter 3: That game..

  3. QBASIC ?? by makapuf · · Score: 2, Interesting

    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 ?

    1. Re:QBASIC ?? by Anonvmous+Coward · · Score: 3, Insightful

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

      Programming is a rather abstract concept. Best to start with something where you don't have to trip over stupid things like case sensitivity or declaring variables.

      Nothing wrong with starting with Basic.

  4. Who realy is the Dummy? by Anonymous Coward · · Score: 2, Funny

    You bought the book so im starting to wonder who realy is the dummy?

    Actualy I have read several of those books, the one on linux was a decent read for a noobie.

    1. Re:Who realy is the Dummy? by mhesseltine · · Score: 4, Funny
      You bought the book so im starting to wonder who realy is the dummy?

      The person who misspelled "really"

      Twice!

      --
      Overrated / Underrated : Moderation :: Anonymous Coward : Posting
  5. go ahead and laugh by cr@ckwhore · · Score: 5, Interesting

    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.

    --
    Skiers and Riders -- http://www.snowjournal.com
    1. Re:go ahead and laugh by SuperBanana · · Score: 2, Funny
      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.

      More like a "leaving your cave for dummies" book.

    2. Re:go ahead and laugh by nicomen · · Score: 5, Funny

      Cool, you work at Microsoft? How's the salary? I'm considering applying for a job there.

      --
      Nicolas Mendoza
      Prepare for MSIE 7
    3. Re:go ahead and laugh by Mr_Silver · · Score: 4, Insightful
      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.

      Am I the only person who sees nothing wrong with this?

      As long as the application does what the client wants, is bug free, works well, easy to use and saves them money - who cares what it is written in?

      --
      Avantslash - View Slashdot cleanly on your mobile phone.
  6. What is next by Fizzlewhiff · · Score: 4, Interesting

    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.

    --

    'Same speed C but faster'
  7. QBASIC is the first language. by Omni+Magnus · · Score: 3, Insightful

    I can't even count how many educational institutions use QBASIC to teach programming. With QBASIC, you can learn the fundamentals very easily, and that is why it is still used. Granted, these fundamentals are being taught in junior high and sometimes at high school. If he is reading about QBASIC he probably isnt a skilled programmer and he is just starting out, and that is what he needs to do, start with QBASIC.

    1. Re:QBASIC is the first language. by FroMan · · Score: 2, Informative

      I can't even count how many educational institutions use QBASIC to teach programming.

      Maybe if the schools were better you could count them. :-P

      It might be better to pick up a language that is more commonly used though. For instance C would be a decent language. Once you learn the simple IO libraries you can do some fun stuff. You can then learn about all the basics of programming like flow control, functions and such.

      --
      Norris/Palin 2012
      Fact: We deserve leaders who can kick your ass and field dress your carcass.
  8. Q-what? by jabbadabbadoo · · Score: 4, Funny
    "The book started off making me feel stupider than I actually am."

    I would feel pretty stupid actually reading a QBASIC book in 2003. Modern programming languages are easier to learn than QBASIC.

    In short:
    10 PRINT "QBASIC SUCKS"
    20 GOTO 10

    1. Re:Q-what? by Tablizer · · Score: 5, Funny

      I would feel pretty stupid actually reading a QBASIC book in 2003. Modern programming languages are easier to learn than QBASIC.

      They are? By what reconning? These days they turn this:

      print(a + b)

      Into this:

      am = new math.ArithmeticManager()
      opA = new math.Operand((float) a)
      opB = new math.Operand((float) b)
      am.addOperand(opA)
      am.addOperand(opB)
      am.operator = new math.operators.Addition()
      am.executeMathOperation()
      system.io.output.print(am.mathOperationResult())

    2. Re:Q-what? by metamatic · · Score: 5, Funny

      Ah, but at least you know your code to add two numbers and print the result will be reuseable and extensible. Imagine if you had to reinvent that piece of code every time you needed it? *cough*

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  9. Here ya go... by nbvb · · Score: 4, Informative

    Want a *good* book on QBasic?

    http://www.amazon.com/exec/obidos/tg/detail/-/15 56 153406/qid=1055522032/sr=1-3/ref=sr_1_3/002-837483 1-7720813?v=glance&s=books

    there ya go.

    Running MS-DOS: QBasic by MS Press.

    I'm *NOT* a fan of Microsoft, but this IS a well-written book that covers the QBasic language well.

    I used this many years ago when I wanted to modify the source code to VirtualBBS 6.12 (Remember that mess?)

  10. Coming up next on Slashdot Book Reviews... by ecc0 · · Score: 5, Funny

    "Making your own Apple I keyboard in 21 days"

    "Changing Vacuum Tubes in your ENIAC for Dummies"

    "4004 Assembly Made Easy"

  11. Wow! by meringuoid · · Score: 2, Funny

    You know, I've seen many a troll in the comments, but never before have I seen one actually posted as an article.

    --
    Real Daleks don't climb stairs - they level the building.
  12. It is not bad to learn QBasic... by halivar · · Score: 5, Insightful

    For all those folks ranting at WHY someone would want to learn QBasic, I like to consider myself a QBasic "success story."

    WAY back when when I got my first computer, DOS was this wierd arcane alter-world from Windows 3.1, I found QBasic. It CAME with my computer. I didn't have the internet, so free, downloadadable compilers were not an option. For me, QBasic was my only link to the programming world.

    I never had a book, btw, so all I had to learn BASIC was a vague memory of LET and PRINT commands, and the help file. The help file was awesome. It is, to date, the only good docs I have ever seen from MS. After 6 years, I could do stuff in BASIC that my friends who started out in Pascal and C++ could not dream of doing. Why? Because their learning curve made it impossible.

    Before I found QBasic, I wanted to be a writer or a chef or something silly like that. QBasic introduced me into the programming world in which I can now call myself a professional.

    So, I'm going to do something right now that, as a Linux user, I thought I would never do...

    Thanks, Microsoft.

    1. Re:It is not bad to learn QBasic... by blowhole · · Score: 2, Interesting

      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.

      --
      "Ask me about Loom"
    2. Re:It is not bad to learn QBasic... by JerryKnight · · Score: 2, Insightful

      Yes, availability was the issue in those days. For alot of us, the internet hadn't exploded yet when we were poking around the contents of the Win3 install, so besides BBSes (I never got into that), we were cut off from other sources of instruction. All there was was that help file (I think QB4.5 had a better help file and everything else).

      After my first few years in QB in Jr. high, I stumbled on 4.5 and a SVGA graphics library that among other things had easy-to-use 3-d projection. Talk about fun stuff when 3-d accelerators or opengl/directx hadn't gotten big yet (I am not sure if they had been introduced yet).

      Now there are better languages and we are not all so isolated, so self-teaching is not an option anyone has to resort to anymore. For that reason, I would not recommend that anyone run off and learn QB unless all they ever want to do is write better VB. In that case, I am sure there are good VB books. BASIC in general makes it too easy to learn bad techniques and could cripple someone hoping to go further in the field. Try to explain OO to someone who only knows GOTO and GOSUB. QB was good back in the day, but it should be only be a display at a museum today, and not in actual use.

      --

      Catapultam habeo. Nisi omnem pecuniam tuam mihi dabis, ad tuum caput saxum immane mittam.
    3. Re:It is not bad to learn QBasic... by Old+Wolf · · Score: 2, Insightful

      There are only two construable reasons one would learn QBasic. You've correctly stated one: very shallow learning curve. All the old micros came with Basic because even the dumbest people would be able to do a little bit of coding, and not feel bamboozled. This is how I got started too (on my Speccy when I was 4 years old, AAMOF, Win 3.1 was still 7 years away).

      The second reason: if you know Qbasic then you may be able to maintain VB programs with little or no further training -- a good skill to have on your resumé, and if (god forbid) you want to learn VB properly, you will already be half way there.

  13. A Better Choice by Frodrick · · Score: 2, Informative

    In my experience, a far better book for beginners than Qbasic for Dummies is The Idiot's Guide to Qbasic. It is very straight forward and much easier for an absolute beginner to understand.

    Setting the Wayback machine a bit further, Perhaps the best "beginner's basic" book that I have ever seen was How to program the Commodore 64 (If you have never programmed a computer before). Although very system specific, it explained concepts like arrays in language a beginner might actually understand.

  14. Why use QBASIC at ALL? by arashiakari · · Score: 5, Informative

    ...when there is PowerBASIC. (www.powerbasic.com)

    16-bit 100% compatible DOS compiler...

    32-bit Console Compiler and GUI Compiler for Windows. Full GUI programs in less than 2k. VERY fast compiled code, very small, no RTL, compile to EXE or DLL. PowerBASIC is really cool. I use their compilers all the time.

    AND they are coming out with a Linux compiler! w00t.

  15. Page 1 by numbski · · Score: 3, Insightful

    "Close this book and burn it. Go buy O'Reilly's elephant book, and learn PERL instead." :P

    Seriously, I learned QBASIC, and it had me so brain damaged for so long that it took me forever to grasp PERL, and I've still never quite gotten Java, even though I took a college course on the subject.

    Stay faaaaaar away from anything with the word 'BASIC' in it. You've been warned.

    --

    Karma: Chameleon (mostly due to the fact that you come and go).

    1. Re:Page 1 by Hornsby · · Score: 2, Funny

      Please stay as far away from PERL as possible! Perl, on the other hand is a useful programming language. If you're confused, Perl is the language proper, perl is the interpreter, and PERL is that god-forsaken language that Matt writes all his scripts in.

      If you want to learn to program, I would suggest starting with something a little more structured like Python or Ruby. Both of those languages are near to my heart.

      --
      A musician without the RIAA, is like a fish without a bicycle.
  16. No Disc can be a good thing. by Kevin+Stevens · · Score: 5, Interesting

    "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.

  17. Here's a nice quote from a /real/ programming book by Kernel+Corndog · · Score: 2, Interesting

    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]

  18. WTF? by evilquaker · · Score: 5, Interesting
    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...

    --
    To within half a percent, pi seconds is a nanocentury. -- Tom Duff
  19. Yeah, But Companies Don't Need To Care by reallocate · · Score: 4, Insightful

    Ummm...I've been involved with more than a few folks spending great chunks of money on software and can't recall any of them ever asking what language was used. Or, frankly, needing to ask. What they need to know is the vendor's track record, financial status, support record, etc. Companies care that problems will be fixed per their schedule, not the language used to code the stuff in the first place. Buying a $50,000 QBasic program is just fine as long as the vendor can provide QBasic coders.

    --
    -- Slashdot: When Public Access TV Says "No"
  20. Re:QBasic by LostCluster · · Score: 2, Informative

    The reason why the did away with line numbers is that they became irrelavant. With QBasic sharing its interface with the DOS Editor, it was just much more logical to assume that the lines were already in proper order rather than have to rely on numbers to sort them. (GWBasic lacked any way to move up and down between lines.)

    From there, the only lines that actually still needed their numbers were the lines that were called by name in a GOSUB or GOTO line, and there was no reason to limit the "line number" to numerics so the Line Label of any text you wanted was created instead. QBasic still supported numbered lines for nice legacy compatibility.

  21. QBasic vs. Others by hendridm · · Score: 2, Insightful

    Hmmm, although I started out on QBasic, I'm not sure it's the best language to start on today. If you're looking to start with a programming language, I think the easiest semi-modern language would be ASP (not ASP.NET) if you already know HTML or Visual Basic *6* if you don't. Some would argue that VB teaches you the wrong way to program, but I think the basic concepts are the same. Avoid .NET. Although I think its a decent platform, it can introduce some unnecessarily confusing concepts that a newbie probably doesn't care about. If I were you, I would seriously consider a beginner book on Classic ASP. You don't need to know advanced HTML to play with ASP output (in fact, most of the books will tell you all the HTML you need, and ASP doesn't HAVE to output HTML, just text), and you will sort of be killing two birds with one stone (HTML + scripting). Plus, some would argue the web is the platform of the future anyway.

  22. Re:Might I recommend a different language to start by term8or · · Score: 2, Interesting

    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).

    --



    "As a writer / novelist you might want to spellcheck your sig. :) " - AC
  23. Re:Duh? by c13v3rm0nk3y · · Score: 3, Informative
    I tried cooking it in beer once...

    Tip: don't cook the macaroni in beer, but use the beer in the cheese and dairy mixture. Just heat it up in a saucepan (you can do this in the hot saucepan you just cooked the pasta in) and you have an excellent beer-cheese sauce. Reduce the amount of other liquid, of course, or your creation will be runny.

    Stronger beers work better. Pretend pilseners like Bud will not be so good.

    Remember: don't play with cheese sauce powder near an open flame. Unless you know what you are doing. And like setting things on fire. And second-degree burns. But only then.

    --
    -- clvrmnky
  24. Avoiding BASIC... by WIAKywbfatw · · Score: 3, Funny

    Stay faaaaaar away from anything with the word 'BASIC' in it. You've been warned.

    Where were you when I was 10 years old in my hobby shop buying my first Dungeons and Dragons set?

    --

    "Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg
  25. QBasic is still used by dcuny · · Score: 4, Informative
    A number of years ago, we decided it was time to move our key entry group off the minicomputer they had been using to a PC-based application. We ended up selecting a DOS based application, and it works nicely, ThankYouVeryMuch.

    The author claimed that it wasn't a QBasic application, but the error messages when it crashes tell a different story.

    The QBasic integrated editor was a real joy, and it's hard to find a good, lightweight equal. Python is too big, C++ lacks the "fun" factor...

    Lua with the SciTE editor comes close, if only it had builtin help.

    I only stopped using QBasic after repeatedly running into the 32K memory barrier. I moved to Euphoria, a nice interpreted language. I missed the QBasic editor that I ended up writing a clone for Euphoria.

    Heck, QBasic left such a mark that I ended up writing a Basic interpreter of my own.

  26. Re:Coming soon by Elwood+P+Dowd · · Score: 2, Funny

    You italicized grok because it is a Martian word?

    --

    There are no trails. There are no trees out here.
  27. No, learn C++ first. by Jerk+City+Troll · · Score: 2, Flamebait

    Don't mess around with any variety or descendent of BASIC as a learning language. You've got one thing right: it teaches you the wrong things to do in a lot of ways. It will only add confusion when a programmer goes on to more complex (perhaps the wrong word here) languages.

    So, I suggest C++. That may sound appauling at first to some, but here's why.

    Programmers absolutely have to know how to work with memory. It's a fact and it's one I think will never change, no matter how abstracted or garbage-collected languages become. You might suggest using C, but I think that's a bad idea for two reasons. The first I'll describe here: it's a little too hard. You want programmers to learn the hard stuff, but not too fast. new and delete are clearly not as powerful as malloc and free, but they do basically the same thing: allocation and deallocation of memory. The former two are easier to use at first and more intuitive to the programmer, especially when dealing with objects. The second reason for not starting on C comes in my next point.

    We live in a world of objected oriented abstraction. It's essential for the development of a lot of modern software, particularly anything that exhibits a sophisticated user interface. Classes are not particularly difficult to learn with C++ and C lacks object oriented programming altogether (well, for the most part). Once you know C++, the object oriented programming skills obtained can be passed on to a number of other languages, including Java with very little relearning.

    C++ is more relevant by far than *BASIC. Aside from skills developed while learning it, the language is self is widely used and has a relatively small learning curve. *BASIC may or may not be much easier to learn, but that's irrelevant because it is very rarely used. You wouldn't bother learning *BASIC for the same reasons you don't really bother learning COBOL or Pascal these days. I'm not saying they're lousy languages, just not particularly useful. (You could argue that VisualBASIC is used a lot. May be true, but usually only for RAD throw-away applications or application prototyping. It's piss-poor for anything serious.)

    Of course, you could also argue that CS should be taught the same way as CE: learn why the tiny pieces work, then learn how to use the tiny pieces, then learn how to use complex pieces made of tiny pieces, and so on. In that case, everyone needs to learn Assembly first then move to higher level languages one at a time. That is another discussion altogether, but it contradicts learning *BASIC first. :-)

  28. Get 4.5 by Forkenhoppen · · Score: 3, Interesting

    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..

  29. Engineers paradise more like. by sg_oneill · · Score: 2, Funny

    It most certainly is not redundant.

    One line.........

    10 OPEN "COM1:" as #1

    explains it all. For RS232 work, QBASIC is gold standard for me.... For exerything else.. Forth baby!!!!

    --
    Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
  30. Old review, but stirs up some nostalgia by antis0c · · Score: 3, Interesting

    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.

    --

    ..There's a-dooin's a-transpirin'
  31. Forgot the comma... by PetoskeyGuy · · Score: 2, Funny

    QBASIC, Programming for Dummies

  32. Absolute Beginner's Guide to QBASIC by Anthracks · · Score: 2, Informative

    When I first started learning to program QBASIC, I too had the Dummies book and found it nearly worthless. I actually ended up accidentally leaving it on a plane and didn't even care :). Afterward a friend recommended the "Absolute Beginner's Guide to QBASIC" which is now out of print and hard to find, but if you locate it it's an awesome tool for learning the language.

    --
    Rock over London, Rock on Chicago. Wheaties: Breakfast of Champions.
  33. So do I... by r6144 · · Score: 2, Interesting
    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.