QBASIC Programming for Dummies
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.
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
QBASIC? They still make FPs? :/
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..
Slashdotter are stupid and biased.
From A-Apple to Z-Zebra, Baby's First Pop-Up Book is twenty-six pages of alphabetic adventure.
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 ?
why in the hell would you ever want to learn qbasic in the first place?
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.
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.
heh so is your post idiot
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
Isn't that redundant?
Please help metamoderate.
It's not nearly as redundant as your post. ;-)
I used to be a QBasic freak. Up until, oh, 1994.
Seriously, is anyone still using it for anything? I can kinda-sorta understand how it would be good as an intro to programming, but it's like tinkering with a Model T engine and working your way up to a V8 over the course of a few years. It strikes me as impractical for anyone seriously trying to learn.
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'
Maybe the book should come with a 5 1/4 inch floppy instead of a CD, since QBASIC lost its usefulness about the same time as the 5 1/4 inch floppy.
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.
>discouraging lazy people doesn't help the
>learning process along.
I find this comment misguided. If you're lazy, you're going to have a hard time learning. Learning requires work and effort - and if you aren't willing to put in the effort, you aren't going to learn.
GOTO
haven't you heard, GOTOs are considered harmfull?
Actually I can't even see the point in buying a book for a dead and crappy language.
-- Be careful what you say. Someone might remind you about it another day.
I got into programming with Qbasic by studying Nibbles and gorilla. I remember modifying the code and break both program so many times before acchieving anything useful. And as I was 9 at the time, I thought it was really cool to steal the dollarsign intro screen they used for my own programs.
-- Henry
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
Well, yeah! Ofcourse QBASIC is for Dummies.
It is practically impossible to teach good programming to students that have had a prior exposure to BASIC; as potential programmers they are mentally mutilated beyond hope of regeneration.
-- Edsgar W. Dijkstra
Norris/Palin 2012
Fact: We deserve leaders who can kick your ass and field dress your carcass.
Show me QBasic programming for Nerds. (reads "News for Nerds")
Want a *good* book on QBasic?
5 56 153406/qid=1055522032/sr=1-3/ref=sr_1_3/002-837483 1-7720813?v=glance&s=books
http://www.amazon.com/exec/obidos/tg/detail/-/1
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?)
"Making your own Apple I keyboard in 21 days"
"Changing Vacuum Tubes in your ENIAC for Dummies"
"4004 Assembly Made Easy"
"When I said to move your mouse 'up', I meant forwards, not vertically.........."
0110100100100000011000010110110100100000011000100
I know I've already commented, but I just realized he mentions that GOTO should be taught. If QBASIC has conditional loops (which I assume it does) there is no reason to teach GOTO!
Slashdotter are stupid and biased.
QBASIC is dying, but QBASIC for dummies will live forever!
*Checks year*
Good, it's not 1993... I thought I got sucked into a time machine...
1) QBASIC? That's so 1992...
2) You bought a DUMMIES book for QBASIC. It's like buying a Dummies book for cooking Kraft Macaroni.
Does it make you happy you're so strange?
. . . supposing they don't think QBASIC a waste of time . . .
I think just about any experienced programmer will tell you not to bother with QBASIC at this point. There are many other better choices for a first language, and I'm sure other people will offer their insights here as well.
I would suggest starting w/ a scripting language like JavaScript, or jump right into Java. There are many good (and free) tutorials online.
Man... anybody else remember nibbles? I'm going to pull out my old MS DOS 6 disks and install it on my old 486, and play it when i get home :)
Alex
This has a further advantage in that, as inevitable bugs are found in the code, the code on the web site can be updated.
Ooo! Ooo! And so is yours, the AC above you got one in there first!
This is like some sort of bad recursive redundancy situation.
graveyhead writes "When I purchased World Domination for Dummies, I expected a clear, concise tutorial on how to take over the world. I'm new to the world of world domination, and, having had luck with the Dummies series before, thought this the best place to start off. How very wrong I was."
std::disclaimer<std::legalese> sig=new std::disclaimer; sig->dump(); delete sig;
Just look for the book with a black & white line drawing of a quarter-length bus on the front. (Apologies to anyone forced to learn QBasic for employment reasons...)
Who the heck uses QBASIC?!? Not even QuickBASIC, the compiled version -- but the QBASIC interpreter? Perhaps as a first programming language it wouldn't be TOO bad... but where would one even find the interpreter anymore?
QuickBASIC was an interesting product in its day, except for the fact that the simplest programs were bloated by about 400% due to the overhead of all the standard libraries in the runtimes. Or you could create a "Standalone EXE" which contained the minimum necessary procedures. (If only Visual BASIC did that.)
I can't really recommend QBASIC to anyone these days though -- the structural model of QBASIC was pretty weak, and these days, it pays to learn C and Java as your first structured and OO languages, following up with VB. (Assuming this is for a novice programmer).
-- We live in a world where lemonade is artificial and soap has real lemon.
(o o)
/
O
Funny how we remember things from the passt
... but if it teaches you how to modify the banana into a "Redemer" type weapon and render the Gorilla in 3D, I'll buy it.
There are 01 kinds of cars in the world. The General Lee, and everything else.
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.
Don't buy Dummies books for languages. Period. If you can, try to find the O'Reilly Windows 95 in a Nutshell (yes, Windows *95*) book somewhere; it looks from the index like it has about 20 pages on QBASIC.
This is obviously an April fool's joke. Very sneaky. Everyone knows that the posts on April 1 are dumb redundant stupid annoying *ahem*.."jokes". So now they wait until mid June to post them hoping to "REALLY" fool someone.
I mean.. it IS a joke right? QBASIC?
... OS/360 for dummies! Comes bundled with the Hercules emulator and DASD images. Money back guarante efor people who could not grok mainframes after 21 days.
Michel
Fedora Project Contribut
LOL Your post is redundant too cuz of the AC that posted before you!
I feel like going through a time machine. Someone please review a GW-BASIC book! :)
It looks more like he needs "Punctuation for Dummies": "what did he use in it's place" What is this #$)#)$ problem with people who claim to be smart? "it's" means "it is". "its" is a possessive as in "its place." Based upon the consistency of this type of problem, it's not a problem where people do not proofread. It's a matter of stupidity.
on so many levels.
I was a fan of "C how to program". I thought it was a gentle book. My professor had nothing but bad things to say about Dietel's JAVA book, and I can see why. Its heavily applet based so there is a lot of "bulky" support code around the stuff you really care about.
Why am I mentioning this? The QBASIC "Currency Converter" program reminds me of Dietel's example program for RMI. MY GOD! It was like 10 pages of pain! ANd it was only mildly useful- it was about WEATHER report updates! who cares? Some of my teammates tried to use it as an example for RMI but got hoplessely lost. The layers upon layers of code just obfuscated things horribly. I stuck with it (cuz I'm the networking guy, dammit!) but it sure wasn't easy.
In the future, I would want to not be isolated from my friends in the Space Station.
Some colleges still teach QBASIC as a first programming language. Not in CS, but for some business or IS types. Instructors love it for simplicity. Some of the very well done textbooks are good for reasons other than they are just QBASIC books. Some of the textbooks are just good intro programming books. Unfortunately, they are a dying breed. Some of the textbooks have not been updated in over 5 years, but they stay in print. Perhaps because QBASIC (and predecessors) were around so long, these textbooks and courses had an unprecedented chance to mature.
.NET from the command prompt, or only teaching command-line apps. That seems OK, given the ability to debug, etc. Modern constructs, OO, access to classes, etc.
I know some instructors are going to move from QBASIC to teaching VB
I will always fondly recall my days of QBASIC hacking. Fun stuff.
"If you want to improve, be content to be thought foolish and stupid." - Epictetus
www.libertybasic.com
Try the shareware version...
...it's QBASIC!! Lemmie know when "C=128 BASIC 7.0 for Dummies" comes out. (I'd actually like to thumb through that, sarcasm aside.)
:D
Seriously though, the one person who comes to mind that I've seen use QBasic with any amount of success is good ol' BUILD Boy, AwesoKen. There's a bit of source on the site, some dealing with voxels and such. It's interesting in the same way as seeing a woman with no arms make a nice painting with a brush between the toes of her feet. You go, girl!
BytesTemplar.com
but does it run (on) linux?
Ok, to make a serious point, is there a QBASIC interpretor for linux? I have some code that I don't want to bother re-writing in C, and I want to first get it working on linux then re-write it as I have time.
There is no reasonable defense against an idiot with an agenda
:wq
F1
Speak for yourself.
*crickets chirping*
RIGHT?
/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i
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.
I really, really, really wish the teacher had chosen something viable like Perl. It's free, it's easy to learn, it's versatile, it's in use in industry, etc,.
Why do they teach using QBasic? It's such an obscene language.
Why does it not surprise me that an MCSE can't figure out which story his reply goes under...
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.
Came from gorilla.bas. That program had sooo much valuable info to glean from it, especially that tricky chr$(h) equals the up arrow. If anyone wants the 3D polygon rendering library i wrote in QBASIC 10 years ago just drop me a line.. when i finished that i realized i needed to find a real programming language.
I (vaguely) remember that. INTERCAL designed by people who didn't know it was a joke, IIRC.
There are reasons why democracy does not work nearly as well as capitalism.
-- David D. Friedman
You need a language and you want to get into programming. Use one of these
Delphi, C/C++
Simply because the structre there will prepare for everything else. They may not be Extreme OO but they form the foundation for pretty much everything, with exceptions of SmallTalk and TCL. Even then the concepts are similar
Hasn't QBasic been dead for years?
I wrote in it, as a passing interest. I made a few executables of stupid graphic programs (draw moving lines and dots) with our BBS names and phone numbers in it.. That was back in the days of scripting BBS's and other passively fun things..
Maybe they should have a review of BBS's for dummies, so we can relive other things that are long since dead.
Serious? Seriousness is well above my pay grade.
If you want a good language to start with, try Python.
heh, TWO ACs got it in there before YOU
10 PRINT "Your post is redundant." 20 GOTO 10
My favourite coding standards:
GOTO's, GOTO's where the label is the same as the sub's name, objScuR%e variable names, Random Global Variable Assignments, Overriding with extreme lack of coherence (oh! I want to create a method to print the number 10 to the screen! Lets use the operator ++ - it'll save space!), Optimising code to 1 very long line when it should be 20, and
obscure
whitespace usage
My code may be c*ap, but my job is secure;)
"As a writer / novelist you might want to spellcheck your sig.
I've taken qbasic. It was my first programming class. We called it basic then, but it was the dos version, not the visualbasic. Anyway, we did all sorts of accounting type problems and some math problems and some word games based on simple logic. I figured this sort of stuff was its only use.
Come to find out quite a number of games are written in Qbasic. How do you do graphics in qbasic. Is there a secret library I don't know about and some secret include capability? How did these people learn this stuff - did they have secret classes at their schools in Advanced QBasic? Was it just the few MIT QBasic Programmers and a few CalTech.
There seems to be a huge gap between the Qbasic I was taught, and the full potential of Qbasic.
because I have been enjoined by this Holy Office to abandon the false opinion which maintains that the Sun is the centre
I bought it back in '94 when I was like 10 or so, and I have to say that the book has got to be the lamest book in existence. I have never heard of a man so obsessed with foreign currencies in my life. I guess he bought Writing for Dummies. Oh well, at least he actually teaches something, unlike Dan Gookin, and you would have to have read his pathetic attempt to teach C in order to know what I'm talking about...
And the reviewer is wrong about the humor. He has no humor.
...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.
"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).
Why put a label on goto line?
10 ? "QBASIC SUCKS" : goto 10
As for programming languages, which one do you have in mind? C++, Java or Pascal are definitely much harder to get started than Basic.
"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.
I have a lot of great memories (as I am sure a lot of other poeople do) of using gwbasic -- and then qbasic on my 8088. I wrote tons of small programs using qbasic and dos .bat files to do all sorts of things automatically on my IBM XT circa ~1988. Yes Qbasic has MANY technical drawbacks (I think you used to only be able to write programs that were smaller than 64k) but it is also extremely easy to learn.
The online help is extensive and written with newbies in mind. Qbasic is one of the easiest languages to learn -- and once you have mastered qbasic it is much easier to then move on to a real language.
All the people that first learned to write code using qbasic or gwbasic please stand up!
I thought I would also like to point out that I would wish people would stop buying those "for dummies" books. Have a little self respect people! It is amazing to me that a group of books that openly insulting its user base could make so much money.
Isn't "QBASIC Programming for Dummies" a bit redundant?
I hate these books for exactly as the reviewer says. Theyare not for dummies, they make you feel like a dummy.
Back in 94/95 when I first got into HTML, the first book I bought was HTML for Dummies. It made no sense. Most of book was about theroies and unerlying technoloy. I wanted to know how to say "Hello World" in HTML. Went out and bought "How to use HTML 3" which was very grachical and I learned quickly. Ever since I have told people not to but "For Dummies" books, try the in 24 hours or any Oreilly book.
"I was really impressed with companies selling software written in Pascal (including DB engines ), but QBASIC is on another league completly."
I'd say about 20,000 leagues.
It was a long time ago, but I learned from the book 'QBasic By Example'. Wait - here it is! It's a top book, and doesn't try to explain things with ridiculous metaphors or other silly mechanisms, it just gives you a bit of code and explains it thoroughly and understandably.
The only advice I can give is move on from basic pretty darn quickly. Go to pascal, or python, or something... anything - just get away from it once you've got the fundamentals!
Hope this helps.
-- My hovercraft is full of eels.
Well first you had to switch your CGA card to graphics mode.. i always liked when i could choose between 2 different pallettes of 4 colors.. i made a race car game where everything was composed of lines and rectangles so it was basically vector graphics stuff.. but you could also get snazzy and read pcx files and write straight to the cga cards video memory.
I enjoyed the wonderful QBASIC language on my 33mhz AST laptop while listening to my 50kb midi on Windows 3.1 What exactly did you want to accomplish? I would rather program on my TI-83 Plus making programs like clocks that went through loops adding one to the milli seconds then to seconds ect for a time length of 3 min before i killed my batteries. Thats just me.
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]
Qbasic? Why, God, oh WHY?
Life is hard, and the world is cruel
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
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"
What makes us laugh out loud is the QBASIC book review. I am not laughing at the language itself (this will start a flamewar), but I think that the book QBASIC for dummies is a little pointless.
Question of the day: What is the point of having the book review here?
Should that be "QBASIC: Programming for Dummies"?
The Secret Guide to Computers has a bunch of info on QBasic here and it's free. :)
I thought it was long since replaced with vbscript..
Or did i miss something here?
---- Booth was a patriot ----
Ummmm, what does Qbasic have in common with Aramaic, Ancient Egyptian, and Latin? Pat, I'll buy a vowel for "dead language"
I mean, COBOL is lively compared to Qbasic. COBOL is a fucking RAVER compared to Qbasic.
MS doesn't even include Qbasic in it's OS's anymore. Didn't they stop with Windows ME?
Life is hard, and the world is cruel
You should try Pascal, the transition to C/C++ and object oriented programming is similar because the sytax is easier to understand with a base in Pascal.
Other than that, you might try PILOT, if you can get ahold of an interpreter.
I remember beign taught BASIC when I was in 1st grade, sure that was only 14 years ago, but come on. I learned it as a FIRST GRADER. Maybe the book should be called QBasic for slow people :)
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.
4 megs of RAM? 4 megs? Why, you whippersnapper, when I was your age core memory costed a dollar per byte, and we were happy to pay it.
Slashdotter are stupid and biased.
How, might you ask? Quite simply, my relationship would be significantly less interesting if not for my knowledge of PEEK and POKE. You gotta make sure you know where to PEEK, then where and what to POKE. See! QBASIC isn't dead!
Join Tor today!
Back in the day at Purdue University my first course in Structured Programming used QBasic. The book was written by two fine professors at Purdue University Calumet that I have had the privilege of studying under.
I just googled the professors name with QBasic and came up with a new textbook at Amazon. Although I haven't seen it myself I'm sure it will be very useful.
Maybe you should educate the morons of tomorrow so they'll stop believing the leaders of tomorrow. - Dogbert
People often complain about ratings inflation in
How can the author give such a negative review then rate the book at 5 out of 10?
What does a book have to do to rate a 2, kill someone?
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.
You should have got the c for dummies book, at least it starts out with a hello world program. Seriously, a lot of the for dummies books aren't too bad if you use them in conjunction with other books.
Wow.. and I'd flame people for using Java, .NET, VB, etc.
..i don't care!) that you really should consider learning Java instead. Even if forces here at /. are trying to kill/de-value SUN and all their products.
But this is far, far, far beyond... I think this guy is about to define the term "Waste of time" completely new. I don't know where I should start to flame.. Aaaagh...
Seriously, QBasic is so 1990(?
Que's "QBASIC by Example", is a good book. However QBASIC bored me. I wanted to see reults right away so I started with HTML which isnt a program language (Markup Language); however after learning it and it limitations I decided to learn PHP. PHP is easy once you learn HTML and really adds a new dimension to your web pages. As I learned that I also learned MySQL so that I can store information into databases. I've learned all this in about a year. This also gave me a new found love for Open source software developement. So much in fact that I have converted one PC to LINUX and I am currently developing an Open Source CMS called Nitrous that I hope to put on the web for download soon. Other good books that I have found are the O'Reilly series of books. Hope this helped.....
try:
Print "C decended languages suck worse than any BASIC"
I'll go out on a limb to say that it should be:
printf("%d", a + b);
for regular C, and only:
printf(a + b);
if you're using something like Perl or PHP where types are automagically converted (integer -> string.)
Pete
PRINT "Hello, World!"
Why yes. Yes it is.
I stole this sig.
I don't think any serious person in their right mind would use QBASIC today.
So it has to be ment as a bit a programming humor!!!
Wise men speak because they have something to say, Fools because they have to say something!!!!
After that, my dad got me a Tandy Color Computer and a VIC-20. I learned a lot more when I had some reading materials. I found that it didn't matter what the quality of the writing was, but that I could read the books while not at the computer. These were full of sappy, condescending lines like "Mr. Variable remembers a number for you."
Once you understand that (1) a variable can only hold one value at a time, (2) an instuction can read variables or change variables, and (3) an algorithm or program is just like a cooking recipe with a number of instructions to follow (and very literally at that), then you're well on your way.
The rest is just grammatical details of a given language (how to type an instruction), tactical details of a given language (what kinds of instructions there are to manipulate variables), and semantical details of the given language (what kinds of values the variables can hold).
[
I'm guessing that since you've made it through the book, it might be a little simplistic for you, but it would have made a good primer.
As far as books, I probably wouldn't bother. QBASIC is so well documented on the net, you can probably find what you need there.
I've a question for you though. Why QBASIC? In fact, why BASIC at all? There are some excellent C compilers for free (DJGPP anyone) and C is a little more useful, though maybe not as easy.
Two Rules For Success:
1) Never tell people everything you know.
Even if progress in medicine is hugh. Life will never be as long as making learning QBasic not a waste of time.
If that Dude isn't able to realize this. Then he doesn't deserve to life (sorry).
First he says:
I'm new to the world of programming...
Then he says:
I've read countless books and online tutorials on QBASIC, C++, PHP, and other various languages.
If he's read "countless books and online tutorials", especially C++ stuff, he's not "new to the world of programming" is he?
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]
As soon as I saw the topic, I knew this quote was going to come up.
It's unfortunate, but I would like to see the context of where it actually comes from. Was Dijkstra talking about structured programming? OOP? Somehow I can't help but feel that the quote isn't complete or there is a background to it that hasn't been explained.
What BASIC and other simple programming languages (I would have to think that assembly language progamming comes under this umbrella as well) teach is the mindset needed for programming. They teach thinking about requirements, planning on instruction sequences, understanding conditional execution, etc. etc. etc.
To be fair, I can see where programmers would learn a lot language bending tricks to get their BASIC applications to work but these are simply rules to working with the (specific implementation of BASIC) language and platform. As structured and OO programming is taught, these tricks (and the thought process behind them) can be discussed and shown to be inappropriate for these environments.
This may be sacreligeous, but maybe the problem with Dijkstra not being able to teach students that already have experience with BASIC doesn't lie with BASIC...
myke
Mimetics Inc. Twitter
Google came up with
this page at.
It has a broken link to a longer article maybe? But still, I'd like to see some decent argument to support this rather bold claim. BASIC didn't have decent subroutines or objects, but it could get you down the road of starting to think about wehat you wanted to get done in a step by step fashion, and I think a lot of current great programmers cut their teeth on various versions of the language.
I've certainly seen more crap in "good" languages-- from folks who started in those languages! - then from people who have a long career that started in BASIC.
SO YOU'RE GOING TO DIE: The Comic for Dealing with Death
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
Yeah, if you really like case sensitivity, easy typos, no concept of strings, no concept of block data, etc.
Face it, the common use of C was the worst disaster that ever happened to programming. Most languages in the mid-'60s were more sophisticated and better thought out. (Of course, the lack of the concept of string length has done wonders for tapeworm writers and the lack of decent memory managment has done wonders for people writing debug utilities...
...The Moron's Guide to Switching on your Apple IIe and the Loser's Guide to Inserting a Cassette Tape into your Commodore Pet.
Doesn't it make you feel good to know that our freedoms are protected by politicans, lawyers and journalists.
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.
My very first programming book was "The Absolute Beginner's Guide to Programming" which was for QBasic. I can't remember if "in QBasic" was part of the title. Anyway, I read it about... hmm 8 or 9 years ago, and it was easy to understand and helpful for my junior-highschool-age self. It did help me get some basic concepts of programming. It was also funny.
I have to agree with some other posts, though. Why waste time with qBASIC?
Qbasic si obsolete. It is a DOS-based programming language and DOS is almost dead. The only people still using it is people that still need vintage software/hardware and they probably don't need new software. So, programming in Qbasic look useless.
I Started programming at age 8 or 9 with BASICA. That was the old day. When Qbasic came out, I find it REALY hot. I discovered SUB and FUNCTION and the great CALL INTERRUPTX. I said: "what a powerful language it's far better than these stupid GOTO and line number"!
But now.... Begginner don't have the chance to deal with a easy to use programming language and it's a shame.
newbie Windows user: there is no programming language that come with windows. I think it's because Microsoft consider programming as a professional activity and consider that a end-user should not be programming.
newbie Linux user: Linux default install is bloated with different programming languages. But this don't help newbie who don't know with wich one to begin with. Since computer commonly have GUI, new user commonly reject the console as "too difficult". Most (all?) programming language work with with the console so most newbie and child will not have the reflex to learn to code. There is no easy-to-code-with IDE.
I think of this like a normal evolution. When my grandfather and father was young, cars was simple and everybody was able to fix them. Now cars are incrasingly complex and it take a qualified mechanician to fix them when it's broken. The same thing happens with computer. Now that everybody have a computer, it take a specialist to program them. Soon, it will be impossible for someone to build his own computer or upgrade it. You'll see a sticker on the back on your computer: "Do not remove this cover. Parts not user serviceable.".
It's even harder to maintain your code, 'cause now none of the line numbers are actually what the source file says they are. Nothing like having to mentally trace the execution of a program in order to figure out where your labels are.
10 PRINT CHR$(205.5+RND(1)); : GOTO 10
With a motto like that, you're going in the right direction. Applying the descriptions "obsolete" and "useless" to something with the initials GWB is likely to stir up some trouble.
There is nothing so silly as other peoples traditions, and nothing so sacred as our own.
I started programming with Pascal and C. Hated both.
Strict data typing, memory management, blah blah blah.
But with PHP-GTK, you can write powerful client side software that works on Windows/Linux well, as well as write the more typical web stuff and shell scripts.
I love it!
I have no problem with your religion until you decide it's reason to deprive others of the truth.
"Logo programming for dummies"?
Basic is what kids use before they learn how to program
Is this a Friday 13th gag or something? What next, an article on loading your CD-ROM driver into High Memory in DOS??
There is a fine line between being a cultivated citizen and being someone else's crop. - A. J. Patrick Liszkie
Check out QBasic News. They also have a book section here.
if you want a rewarding experience with programming for the first or second time.. i cant recommend something like PHP enough.
<p>
because you can do all the interface stuff in html it makes getting something worthy of showing mum really easy to make.
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.
Join Tor today!
I,for one, can say that you being made to feel more stupid than you actually are has never discouraged me from reading a book.
I agree that it was good for its time, but now we have better languages that are just as available as QB was.
QBASIC was my first language, simply because in those days my sheltered computer life consisted of DOS/Win3.11 and no instruction or guidance. I can honestly say it gave me a good introduction to the mindset of programming. Sure, it has problems and deficiencies as far as programming style and efficiency are concerned (ie. GOTO, globals, etc), but it was a good way to learn the concept of telling the computer what to do with high-level instruction. After exhausting the capabilities of QuickBASIC 4.5, I gave up being lazy and went into more useful languages.
I still keep my code for lunar lander and bubble asteroids (hadn't yet gotten to sprites for the jagged asteroids), but I cringe when looking at the almost totally non-function-based spaghetti code. My 3d graphing program was better structured, but that was near the end of my QB days.
QB got me into programming because it was fun. I could have been crippled by it though, so I am fortunate that I grew out of it.
Catapultam habeo. Nisi omnem pecuniam tuam mihi dabis, ad tuum caput saxum immane mittam.
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.
I've always found that I learn the stuff way better if I'm forced to type in the code, which makes me read it a lot more closely.
That aside, it does indeed sound like a dreadfully misguided book. "Hello World" may be hackneyed, but there's a reason it's used so often.
is through taking a low-level programming course. That's how I got started, even though I started later than probably 85% of the posters here. The first course on programming I took was on Pascal, a good teaching language that was, and the teacher focused on clear style and informative coding habits, which was a big help later on. But I heard QBasic was a good language for a cracking start too.
The fact about programming, is that 90% of your knowledge and skills come from practices and trial/failures. Work on problems, work on projects, and learn from other people(99% of the case peers)'s code and suggestions. Teachers can't teach you much more once you got started beyond the 'Dummy' courses. And yes, books are good too. But books are usually best for those who already had some programming languages, cuz once you got through with one language, the rest comes at ease. Much the same as once you are fluent with one foreign language, the others you can pick up much faster.
So my suggestion--if you don't have much programming language and want to learn QBasic to start with, take a course instead of buying one of the for-dummies book. They are kinda like jokes in the world of nerds now. And once you are done with QBasic and want to move on to other languages, look up websites where they offer customer opinions on books before you decide which one to buy. Better yet, find it in the bookstore and look it over before you take out your wallet!
-N
The Cycle of Violence is to be seen as the invisible hand that maintains the balance of Man and Nature on earth.--M
"screen 12"
Will get you 640x480, 12 colour mode
13 is for 320x200, 256 colour mode
0 is to go back to basic text only.
You'll definitely want to use:
- PSET (Xpixel, Ypixel), colour
(Set colour of one pixel)
- Line (x1,y1)-(x2,y2), colour, BF
Note: BF= filled box; B = open box, omit for a simple line
- Circle (x,y), radius, colour, ovalness-stretch-factor, arc-start, arc-end
Note: if arc-start or arc-end are negative you get a line to the center (makes a pie shape instead of just the arc)
- X = Point (x,y)
Reads colour of one pixel into integer X
Returns -1 if the point is off the screen
And, for games, you'll need the all important:
kbInput$ = INKEY$
to get single-character keyboard input without waiting. Returns "" if no input is buffered.
Firstly, "Hello, World!" is a useless way to start learning programming. IO is usually taught at the basis of all beginer test but it's unimportant for a beginer to get a grasp of what programming is. I don't really care if it makes you feel all tingly inside because you made output.
If you want to start off your programming experience with solid knowledge that will help you in every programming language you use and also instill good programming hanbbits that will stick with you through profession programming then you should read "How To Design Programs". This book is written in a general manner but uses Scheme for example. The book is availible free, in full tezt, online at htdp.org and the environment to enter examples, drscheme, is also availible free online under the LGPL at drscheme.org.
Good luck programming
I recently picked up PHP & MySQL for Dummies, and I can't say I'm a lot happier with it than this guy is with his QBASIC book. The software that came on the disc was all but useless to me. I ended up just grabbing fresh tarballs for PHP, MySQL and Apache because the ones on the CD just would not compile properly for me. Maybe that's because of some compatability that has been broken in newer versions of GCC, so that might not be entirely the fault of For Dummies, so I'll let them off the hook for that.
As for the book itself, it is really frustrating. I'm not finding it hard to follow or anything, just that it moves incredibly slowly and babbles incessantly about trivial info before actually explaining how to code something.
I suppose it's my own fault for not finding a better beginner's book, but let this serve as a warning to other people looking to buy a book and learn something new: Take the extra time at the bookstore, spend the extra $5, whatever it takes, but do NOT pick up a For Dummies book, lest it's crappiness leave you frustrated and regretting your purchase.
Build boards not bombs
QBasic Learn You!
.NET before frucking around with QBertBasic. Who the hell is going to hire you if you can program in a language that no one ever uses???
I'm sorry, but why the fsck would you want to waste your time/$ learning QueerBasic? Don't you want to be at least moderatly marketable? Go learn C, or C++, or Java - hell, even learn friggin
for example: TTLCOUNT = ACOUNT + BCOUNT
would be interpreted as TT=AC+BC
Of course, if you forgot that only the first 2 letters counted, and used comething like: TTLCOUNT = COUNTA + COUNTB ...
which was interpreted as TT=CO+CO
you could spend all day looking for your bugs
... or worst-case scenario: COUNTTTL = COUNTA + COUNTB ... but that's BASIC for you :-)
which becomes CO=CO+CO.
If COUNTTTL started at zero, you'd never get anywhere
"I expected a clear, concise tutorial on how to construct programs in QBASIC"
And you chose a "For Dummies" book?
You bought a book that insulted your intelligence IN THE TITLE ITSELF!
...dummy...
This reminds me of a native american folk tale about a woman who found an injured snake in a woodpile. The woman brought the snake in from the cold and nutured it back to health all winter. In the spring, the snake was fully healed; then the snake bit her. As she was dying, she asked the snake "why did you bite me, I saved your life!"
The snake replied "You knew I was a snake, bitch!".
You bought a book that made fun of you for being stupid, go figure the rest of the book would be dedicated to doing the same...
second society
Books are written for specific audiences. Most people interested in getting into computer programming would not pick up a book on Basic (one would hope). As a basic programmer I will tell you most people who would program in basic are business consultants, accountants etc... Basic is a language that makes those things easy for those people that is why it is still popular most of my peers are CPAs and I am learning accounting. I am rare in the basic world as I started on the computer side and moved into basic most start in their fields which are not CS. I have erad qbasic for dummies and found it to be a decent primer. The best basic I ever learned was by downloading code to try.
Why would anyone still be using qbasic? At least use quickbasic so you get the compiler? But even then, why? Things have changed so much. Qbasic and Quickbasic were very incapable of handling large projects. Why would anyone even want to learn/use it anymore?
For my bit of the Parrot project I'm tackling BASIC. The version of BASIC that now runs under Parrot will run many QBASIC programs -- I uploaded a colorful chess program yesterday that required almost no "porting". And of course, Parrot runs under a wide variety of platforms.
My goal is to have it eventually run all QBASIC programs, less stuff that *can't* be done outside of MS-DOS.
Get off my lawn.
For quick & dirty data conversion/processing programs QuickBasic is great. It's not fast at runtime but I can whip out a program in a couple minutes, if that.
I've processed countless gigabytes of data with QuickBasic.
is all you can learn from QBasic. Sure, for kids way back when (even myself) it was fun for about a week or so. But its spaghetti programming. It won't help you on your way to C, Perl, Java or Scheme.
If you do want a good book on learning it, I recommend looking at the sample programs, the little games (which are kinda fun in an old nerdy sort of way). Try modifying them to do your bidding. If that doesn't help, find a dusty copy of a Basic programming QuickReference circa 1981 for simple Basic code. Or the QBasic book for more advanced topics.
If you want another old, but easy (and still used) language to learn before you pop into C, try Fortran. Its nice, simple and very easy to learn. It comes with some more "modern" features. Fortran is fairly similar to C, infact the two languages get along fairly well when used together.
I agree that QBASIC is a waste of time; However, if you are slow to grasping the concepts of programming then QBASIC could help. Not everyone programs just for the sake of getting a job and becoming more "marketable". Those types of programmers usually are the ones scrambling to change their majors to law or english or something when they hear terms like "the dot.com bubble burst" or they hear tech jobs aren't paying what they used to that is if you can get one at all. As for me I write code because I love it and I will eventually go to school for it but write now I work in a bullshit factory and just enjoy hacking when im not at work.
God is dog spelled backwards....
Godsdog by Skrew
dog hungers for the meat of his knowing
dog is dreaming
dog is an animal is a man is a child
dog is breathing
help me find my way back home
dog is dying
don't let me steal your fire
dog is dying
walk the walk of life for a little while
dog is running, running from death
dog is dreaming
dog knows the sickness and pain of his life
dog is breathing
let me rest my head for a little while
dog is dying
don't let me block your way
dog is dying
talk the talk of life for a while
dog is dying
"I've read countless books and online tutorials on QBASIC...
"
In Gods name, Why?
I can understand reading a lot of books on more complex Languages, but QBasic?
The Kruger Dunning explains most post on
Oh god I've urinated all over myself.
Fuck Beta. Fuck Dice
This is the only book you should use to program QBasic. I grew up on BASIC and think it's a great introductory language. This book will take you far. Me and my brother used the hell out of this book and covered pretty much the entire spectrum of QBasic.
Link to the book
I did a full program, functions and all, even resizing arrays, file access and everything, in two weeks off of a little sheet the instructor gave us and the included help files. This came after a good 12 years of not touching any basic. Ok, so I was wrapping up a C++ class, but still... BASIC, is, well, *basic*!
I think a question worth asking is, "Why are there no programming books on compact disc or cassette?" I spend countless hours in my car every day driving too and from work, but have little time to sit down and read such a large book. Especially one that isn't SF or fantasy.
I can imagine many other geeks feel the same way. I've considered downloading the e-book versions of these books and using a text-to-speech program to read and record the book to cd. However, this is a long process and there is no guarantee that the e-book would be scanned without errors. What we need is a quality computer programming book on tape or cd.
man SCREEN. Actually that doesn't work, but look up the SCREEN command. And the CIRCLE command and the LINE command. and PUT and GET for serious stuff. ah sweet sweet BASIC.
Why not fork?
There is something to the people who will say "QBasic is old, learn java (or python or C++ or whatever)" because there are a lot of really nice scripting languages out now. I myself have fallen in love with Python after coming from QBasic and disliking C and C++. I'm still glad I learned on QBasic, despite the disparaging and snobby comments by people about it. You could put together neat programs quickly and easily with few bugs. Python and Ruby are like that today but infinitely faster, more powerful, and up to date.
Have fun with QB if you decide to go that way and then move onto something more modern. Definitely get Qbasic by Example
Stop the Slashdot Effect! Don't read the articles!
Really, don't ever do this.
There is no way more certain to cripple a budding programmers capability than to get them involved with BASIC in any of its variants. It's evil, brain damage inducing stuff.
There are plenty of good languages for beginners that won't rot their minds. Delphi. Python. Smalltalk. Just please, please, please, no BASIC.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Friends don't let friends enable ecmascript.
If a business had to hire a programmer or two to write/maintain their software, it would cost them at least twice as much per year in wages alone.
Or at least what got me into programming - they taught it in my "Computer Applications" class. Simple, yes, ugly, maybe, but it did the trick.
Hi, Just say no to complex programming languages!! use Euphoria!! check its webpage: Euphoria
Did this post get lost in the Slashdot bin and it has finally somehow showed up numerous years later?!?
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.
..was so much closer to the metal.
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..
When people were coding qbasic, the CDROM did not exist. They are just trying to give you a more accurate feel for the language.
wow! thanks for all the responses. sweet. gonna do some Basic this weekend. (god, did I just say that?). thanks again.
because I have been enjoined by this Holy Office to abandon the false opinion which maintains that the Sun is the centre
This quote originally appeared in "Selected Writings on Computing: A Personal Perspective" circa 1982 I believe.
While I haven't read this whole paper and can't say absolutely for sure what the context was, I can conjecture he didn't like the control structure of the language. Dijkstra is pretty well known for his stance on how GOTO statements are very bad. I'm not sure how many programming languages he approved of but I know COBOL and BASIC were 2 that he abhorred and Lisp was probably in the top favored.
I would definitely choose Lisp over Basic anyday, along with most of the other recently popular half-reimplementations of Lisp. Likewise I would choose a time honored and proven good programming book like _Structure and Interpretation of Computer Programs_ over the one being reviewed.
what about? Perl: print $a+$b; PHP: print $a+$b; C printf("%i",a+b); Those don't look too tough to me.
If you are new to programming I would recommend using Java (for free) or C# (about a hundred bucks but with a dream IDE). Either of these languages will easy the path to more manly languages, such as C++ later.
when i started programming, the only language i had available was ROM BASIC on an 8088 PC...i moved from there to GW and there to QBASIC, i believe i was about 11 or 12 at the time. while QBASIC satisfied my needs for those few years - programming games and PC speaker keyboards, i quickly realized i needed to learn a new language...and i did - C. all i can say is that QBASIC is so dissimilar to any other language out there, that it made it more difficult to learn C, which was a much better starting point from which i learned pascal, perl, java, etc.
i think the best thing about QBASIC is that it gets you to think in a programming state of mind - you know, loops, arrays, and whatnot...so it helps you learn to think and solve problems programmatically...and it makes it easy in the process. but don't grow too fond of the syntax, because there isn't much else like it out there.
and finally, it doesn't matter what language you start on, the important thing is that you start at all...as you learn more, you'll learn what languages are best for what jobs and if need be, you can learn them as you go along. everyone's gotta start somewhere. just be glad you have a hard drive to save your progs to (*cough* ROM BASIC with 2 low density 5 1/4s *cough*).
(PROG ()
10 (PRINT "HELLO")
20 (GO 10))
Programming can be fun again. Film at 11.
I know that many people are waiting for the appearance of Ninnle Linux for Dummies. Sadly, this will never happen...because it's redundant. Ninnle is already so intuitive that a manual or guide simply is not needed. Hell, the last release of Ninnle had already dumped the man pages!
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.
I know it's commonly held that people are all equal, etc... But i'd like to weigh in on the idea that lazy people should be encouraged to program. In fact, i'd like to weigh in on it so heavily that the idea is crushed to the ground, never to be restored. Frankly, the idea that lazy people should have their hands held through a programming book is one of the reasons MCSE's are swarming over the land like a plague of locusts.
What the computer science and IT worlds need isn't more programmers, it's a stricter filtering of the lazy ones. Lazy coders leave in buffer overflows and fail to check for vulnerabilities in their code, thereby leaving us the mess we presently have in the computer software world today.
So, no. Code examples, while not necessarily a bad thing, are not mandatory for a good book.
So there.
C
--
Democracy would work just fine if people weren't so goddamned stupid.
I tried it
The problem was that back then, Qbasic didn't support window sockets, or I woulda pulled it off.
God spoke to me
Just pass parameters by reference. You can then modify the parameter from inside the function. It's been a long while since I wrote in that language though.
Hardware, software, and blinking lights!
It doesn't make it any less easy to learn to do!
I did it with sick amounts of code... Even had to deal with converting 16bit integers to 32 :P
Irony that I just put this page up today
Also my game is called Intergalactic Bounty Hunter, and it seems a company at E3 is releasing one under the same name. I'm not the kind of guy that sues though.
God spoke to me
Or the ever elegant APL
'HELLO WORLD'
In my experience, only a (surprisingly small) minority of clients care at all about what programming language was used to implement their systems.
.COM or .EXE file (or at most a single directory of a few files). They were easy to maintain and NEVER suffered catastrophic failures like Windows has been known to do. The system requirements to run the app are likely modest to the extreme (ie. your clients can use those 386s until they turn to dust).
/.ers know this but some long-time casual MS users think I'm feeeding them a line of crap...
When they do, it has absoluely NOTHING to do with the merits of the language. The ONLY reason I've ever been given when a certain language was a part of the project requirements was because that is what their in-house staff knew and they wanted the option to be able to maintain/change/debug the application themselves. The fact that I was required to use VB 5 (with MS Access 95 files as the back end!) to develop a relatively complicated multi-user, networked client-server system at one time underscores that point.
The system in question may have had a humble beginning in 1990 as a Quick BASIC app that fit a specific niche very well. If it still works well in a DOS console window I'm guessing the customer doesn't want your company to wipe the slate clean and subject them to all new, untested and quite probably much less stable code than they currently have.
I remember those simpler times--DOS 3.3 or 5 and apps you installed simply by copying a single
I'm betting it's the most reliable application any of your clients have, and as such they would gladly give their left nuts for it over the typical glitchy fare foisted upon them from other vendors. Unfortunately for them, they are doomed to become victims of obsolescense when they must run the app on a new version of Windows that no longer offers DOS compatibility. I'd recommend you push your employer to start porting to VB 6 now (the most modern option that offers the least disruption of source code that I can think of--VB6 swallows a surprising amount old BASIC code--line numbers and all!). When the time comes that DOS code wont run anymore that'll buy you a few more years of usefulness.
FYI--Windows NT, 2k and XP are no more compatible with DOS than Linux is. Those OSes have an integrated DOS/Win16 emulator akin to 'dosemu' in Linux. When you run an old DOS or Win 3.x program you aren't really executing it directly--Windows detected the 16-bit EXE and transparently launches the WOWEXEC.EXE DOS emulator to run it (AKA the "Windows on Windows" execution subsystem or some such thing). I'm sure most
I'm confused. You seem to contradict yourself quite often. First off you say
I'm new to the world of programming
And then you follow it up with
I've read countless books and online tutorials on QBASIC, C++, PHP, and other various languages
Now something doesn't seem to add up here.... Either you spend WAY too much time reading programming books, but never actually *use* that knowledge, or one of the statements isn't really true. You also say
So, what good can I say about the book? Not much
And you closely follow that with
[...]it can be useful to experienced programmers [snip]. It goes deeply into data structures, arrays, and databases. There are many helpful features[...]
Something seems strange here... You're talking yourself in circles... Are you a politician?
This space for rent, inquire within.
Compared with the arcane C
#include
main()
{
printf ("HELLO WORLD\n");
}
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.
.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.
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.
..There's a-dooin's a-transpirin'
Quite frankly, I suspect that if your needs are sufficiently constrained some BASIC dialects would lead very rapid development of code/applications. It's one possible tool that may be useful. Though languages such as Python are often suggested as a good starting place, it really becomes difficult to ship a simple single binary to friends. A balance must be struck between power and logic of a language with the interface to the everyday user....Well, something like that.
A few BASICs that I keep an eye on include,
BCX (BASIC to C translator)
BlitzBasic
PureBasic
Then there are products like,
IBASICs making inroads...
A more established (and overpriced) BASIC can be found in PowerBASIC.
I don't actually programme in BASIC but it's an interesting distraction. I fully expect that time provided I will take advantage of one of the above languages in the future. It's less hassle than maintaining a C/C++ installation plus a whack of libraries.
You can purchase the QBASIC Programming for Dummies from bn.com.Amazon.com.
BTW. Why is Slashdot posting book reviews for out of print books... Wait for a re-release
Never argue with an idiot. They will just bring you down to their level and beat you with experience.
Back in the day I even learned how to do OOP in QBasic.
Hardware, software, and blinking lights!
Are you serious? When I think "programming newbie", I think of someone who is having difficulty realizing that instructions are executed sequentially, one after the other, and that a variable's value will disappear if you overwrite it.[*] I remember getting very frustrated trying to explain to one of my college roommates how the value of a variable could change over time. (The model of a variable as a box that holds a value, and not merely a placeholder for a value, is not always as easy to explain as you might think; he was a bit confused that "a := a + 1" didn't cause an infinite loop)
And you want to burden these people with a java environment? With a language that doesn't even have an interactive toplevel?
The read-eval loop that my first basic (on the TI/99 4A) started up with was something I never really appreciated until I watched someone else trying to learn to program purely through writing programs and compiling them. The mind really needs to have a chance to use and experiment with a concept to get it to sink in. For the fundamental concepts behind most programming languages, I really feel that this mandates an interactive toplevel; this is something no java environment I've ever seen offers. (As an aside: is there a nice beanshell plugin for Eclipse?)
This applies both to those learning to program on their own and to those learning as part of a formal class. Trying to learn the basics of programming without an interactive toplevel is a bit like trying to learn how to drive without ever walking first - you'd get so caught up in shifting gears and pushing pedals that you'd never get to figure out basic concepts like not getting lost when you can't see the house anymore.
[*] Yeah, yeah, some languages have control flow that doesn't follow this model, but I've never heard any of those proposed as first computer languages either. (Though I do think that my roommate might have done better starting out in Haskell than Pascal)
See, in book reviews, that's what I really want. I don't want fucknuts who read the back of the cover, and the table of contents, and flip through the book looking for cool pictures, then say "this is a good resource". I want people who can say "Do not buy this book, it sucks".
Mind you, I have no interest in qbasic, but maybe this will spark a new era in truthfullness.
Thank you.
Python is fine for scripting, but its constrained syntax was enough to turn me off. I've learned all the following languages: Assembly, C, C++, Java, VB, SAS, and JCL (HTML is not a language, inspite of the acronym).
Python forces a particular structure and is so damn narrow in so many senses. Pascal uses characters in very nonstandard ways and is, too wordy. It's too out of touch. Pascal compilers like Borland's--especially Delphi/Kylix--are very technically compitent. They compile tight and fast like C/C++ and their object componants are highly versatile, but that UGLY syntax just drives me nuts.
BASIC does not compile tightly and has never been acused on being fast (Python is also quite slow). But BASIC is a context dependent language which makes it far more natural a grammar for humans ot use. BASIC is very well suited for high-level programming such as end-user business applications.
JAVA lacks in many useful features of C++, such as the ability to break objects where they logically make sense, resulting in much smaller and faster applications. However, JAVA does clean up lots of the little gotcha's on C++ that makes programming and debugging faster and easier. The Boost library to C++ (soon to be the next standard) largely corrects this deficiency, among others.
C has all kinds of little problems by itself--particularly in terms of security. However, people find it so much easier to get used to than C++. C++ strongly suggests a top-down design approach to writing software and most coders really feel a lot more comfortable with procedural formats....such as first do this, then do that, etc.. from the bottom up.
PERL is much faster than Python and is an exceptionally rich language. Nothing matches it in terms of what it supports and ways in which to do things. But PERL is very hard to debug or read. It's easy to accidentally create bugs because such minute little things can change the meaning of what you are writing.
I really think C++ with Boost should be a systems language and BASIC should be the applications language. Other languages like SAS are best for things like data processing and/or statistical work. But the subsets of the languages that make these things possible are very small and could easily be added into a language like BASIC.
Particularly--no language currently available seems to properly address the area of data processing. PERL is exceptionally powerful, SAS is *more* practical at it, but both make the tasks overly complex.
Matthew (matthew@tedder.com)
Why not use it?
Ben
Work Safe Porn
Finally, VisualBASIC is a wonderful language that is designed for building applications, not tweeking every bit of code. I have done high-performance databases, TCP/IP software, etc in HOURS. The excellent aspect of VB is that you abstract to events and can test is piece as needed. Before anyone says, "but VB doesn't have pointers! I need pointers!" The answer is: it most certainly DOES have them, but the whole system is hidden in handles, the way it should be. There is absoluted ZERO reason to use a pointer directly with an offset in an application. I gave up pointers years ago when figured out that 99% of bugs come from them. I use the language's built-in features for resolving structures and my software doesn't crash..
BASIC is the best place to start with programing because you can introduce basic features of all languages. The trick is that you have to have a firm hand on teaching good programming practice. The most amusing thing is that code programming practice is the furthest thing from C/C++ programmers minds. All they care about is "look, I can do that on ONE LINE, though.."
Bel, the mostly sane.. "Of course I can't see anything! I'm standing on the shoulders of idiots." -- Me
Does anyone use QBASIC anymore? I didn't think M$ even provided it anymore.
What's the point of learning an ancient, MS-DOS based language when one could be busy learning something useful like C or Java?
"Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
As sarcastic as the comments might have been, they are right. The first big thing to do was SCREEN 12 for 640x480x16 or SCREEN 13 for 320x240x256, unless you use a SVGA library for QB4.5. Actually 4.5 was the best for games unless you did all kinds of weird hacks like in Gorilla.bas or Nibbles.bas. Most of my games were in 4.5.
If you are serious for nostalgia's sake or whatever, I still have my zip of qb4.5 as well as some progs I wrote in those days, such as my asteroids clone (~500 lines) and lunar lander (~250 lines).
Ah, the memories.
Catapultam habeo. Nisi omnem pecuniam tuam mihi dabis, ad tuum caput saxum immane mittam.
My last exposure to QBasic was in about 1996 or 1997, teaching a programming class to fourth graders.
Is today April 1?
Is this guy serious?
t_t_b
I'm on PJ's "enemies" list! Are you?
I used to use that to turn the DOS screen blue on my old 286. Those were the days.
It begins..
and continues...These two statements aren't precisely contradictory, but they do seem to be statements that imply opposite ends of the knowledge spectrum.
Ultimately the review has little to say other than as a book for dummies, they seemed to have overestimated the skills and knowledge of at least one dummy. How useful this is as a review is questionable.
I'll leave off the obvious joke about the missing Is in the title.
There is much pleasure to be gained in useless knowledge.
All of the 'for dummies' books are crap. They discourage thinking and are weak on detail. I guess that works for dummies though... Programming in general is not for dummies, if you are really a dummie and have an IQ of 10, dont quit your day job. You have a better chance at advancement as a dishwasher. There are enough dummies out there writing code as it is.
TallGreen CMS hosting
Great. Now you made me want to go play Rampage.
The qbasic and edit editors from DOS are a clone of WordStar, as was the editor that came with TurboPascal 3.0, and probably Delphi for that matter.
... I wish this ability existed at all levels instead of being sprinkled here and there.
One nice thing about unix is the ability to choose ones editor independantly from ones toolchain, shell, browser, email client,
BASIC -- Beginner's All-purpose Symbolic Instruction Code.
1. It's for beginners, please don't use it for anything beyond that.
2. It's really all-purpose, so don't use it for high performance / interesting applications
3. Symbolic -- you don't understand a word of it 10 days down the road
4. Instruction Code -- A slightly evolved version of Assembly
How is anyone even using this??
Of course as a result of that, I used C and Lisp at college. Got a job at Microsoft working on QuickBasic when I graduated, and was one of two developers to create QBasic by tweaking QuickBasic 4.0, and crippling it so it was slower and wouldn't compete. I mostly worked on the editor and the UI at that time, and one of the purposes of QBasic was to replace the editor if called with QBasic /Edit (that is what Edit.com did). But inevitably, I still have a bit of a soft spot for QuickBasic and its descendent VB. I know it has flaws, and as a language, it isn't as fun or as powerful as C or Lisp, but it was fun, it was easy, and I was young. And that is a moment of joy and my past I won't let any ideology or philosophy take away from me.
In the name of heaven, why would you like to learn Qbasic?! Isn'tthe sole thought a little morbid?
Quidquid latine dictum sit, altum viditur
What? Why would you be reccomending the teaching of Goto? Teach Sub routines or functions. They aren't much more complicated and get you closer to better programming. We've known that GOTO was a bad idea for over 25 years. Yikes!
I don't want to hear about Knuth supporting GOTO. It was a specialized case and still questionable.
QBASIC, Programming for Dummies
Actually, when as a kid I transistioned from BASICA (DOS 3.33) to QuickBASIC 4.5, that was when I started using SUBs and FUNCTIONs. I was able to reuse a lot of code and the layout of my programs made a lot more sence to my young mind. I already had the MS BASIC compiler for BASICA so it was a requirement for me that QB 4.5 had a compiler. I also loved the View Subs screen in QB as it let you quickly jump to what you were working on.
:( )
As to learning it, I used the help file, it is pretty much everything you need. I also had the BASIC binder that came with DOS 2.11 to fall back on (remember how much documentation used to come with an OS?).
Sincerly,
N473, AKA BAS (already exceded my 2 posts for that acct
That is so - so - so - nerdy and cool!
"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."
:)
-- Dijkstra
Ripped from linux's fortune cookies
It is butt holes like this that think coding is easy. How about rocket science for dummies? "Duh I cant understand it so it must be wrong" or Dilbert's "I dont know what you do so it must be easy" Just step away from the computer and hire a professional.
Learning a first language is also learning a model by which to understand your machine. How the language handles memory, function declarations and calls, API calls--these are all ways of 'understanding' your system that will shape your view of languages and computers for quite a while, since this will be your first exposure to them.
... Well ... I can't really think of any standalone drawbacks. If you want to distribute your programs you have to make sure the end user has the Python runtime. I don't even know if that's a drawback. By comparison, it falls short in places: It's not as fast as C++, it doesn't have CPAN or the raw string-handling or other neat capabilities of Perl, blah, blah. But this is minor.
...
.02.
My dad brought home an IBM PC six months after they first came out. I'm 37 now and I've been programming ever since that time, BASIC being shipped with the system and therefore being the first environment I was able to lay my grubby hands on. BASIC taught me a lot, and within a few months I'd written my first program with which to generate characters, complete random names, for my D&D games. Yes, I know how amazingly geeky that makes me sound. So I'm a geek. Get over it.
For all it taught me though, there were limits to where it could go. I think that still holds true today. And while it could be argued that rapid success is made possible through BASIC, I think that's also true for some other, much more modern, languages that are in wide use today and which contain all of the capabilities and ease-of-learning as BASIC, but which expand on that by being able to provide robust capabilities for the new programmer who may choose to go in any direction he/she wishes.
I don't use Python very much, because I have so much invested elsewhere, but I can say that if I were to make an initial recommendation, or start over again with something now, that would probably be it.
Virtues? Python is free, comes with command-line and GUI tools, and runs on a ton of platforms. It has powerful OOP capabilities if you're attracted to that or find you have use for it, but can also employ some basic features of FP languages (like Lisp or Haskell) and functional approaches if you want to try that. It's got a squeaky clean syntax, is easy to understand, has an interactive environment, and a load of libraries available to it. As far as learning it, if you can't find all the many, many uber-tons of free, well written materials available on the Web, then there are fine inexpensive books out on it. It's a solid performer than can run on the server, as an application platform, and, through SDL, can even be used to program some pretty impressive games.
Crap, it even has a cool name, "PYTHON". And there's a great community, too.
Drawbacks? Um
And this is coming from someone who rarely uses it. Like I said, it doesn't often come up for me. But I wouldn't mind a bit if it did. And if I were to learn programming all over again from scratch, and I didn't know what to choose or where to begin, I would hope someone would point me to Python.
I know this doesn't completely relate to QBasic. But when I saw the title of the book I was surprised it was even still around
Just my
Chr0m0Dr0m!C
I know exactly what Dijkstra meant, since I did learn BASIC first. I don't think I'm permanently damaged, but only because I realized the extremely bad programming style I'd developed as soon as I learned a decent language (Pascal).
The problem with BASIC (not Q or Visual, but the traditional ones, like GW) was that they lacked almost all useful control structures and modularization tools. They had FOR loops and GOTOs, and GOSUBs (fancy GOTOs) for flow control. There were no flexible looping structures, conditional structures, functions, or local variables. Unless one was extremely careful, one's program would spaghettify quickly.
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.
What are you doing? Put the book down and get yourself a copy of K&R.
Those files were included with Dos 6.22 and were pre-written .BAS files. Gorillas and nibbles both kicked the llama's ass.
One of my all-time favorite strategy games, VGA Planets Version 4 (some of you may remember the older versions from the BBS days), is written in PowerBASIC, I believe. I'm actually playing in two games right now. PowerBASIC seems to be a powerful enough tool - the GUI for this game is quite functional, game design & preference issues aside.
Give it a spin if incredibly complicated turn-based sci-fi wargames are your thing :)
QBasic hasn't changed one little bit since about 1994. That's nearly 10 years. For this reason, a newer book probably wouldn't be any better. My recommendation: buy a book on algorithms, and book which covering the keywords etc. of the QBasic language. The cool thing about algorithms is that they are language-agnostic. Once you have learned the algorithms, translating that into code is a simple matter when you have a language referance in front of you.
# They who can give up essential liberty to obtain a little temporary safety, deserve neither liberty nor safety. --Fran
Since we ran on DOS I wrote a character-mode UI in QBX that worked quite well, previous to that it was all sequences of INPUT statements. Our users (employees) were ecstatic to be able to GO BACK and change something..
Still, glad I'll never have to do that again. more info on QBX
you could also try DOSBox
qbasic is cool, but here's something better: www.BAStoC.com
/. it. =)
It's a site offering support, code samples, etc. for a product called QB2C.
BAStoC.com is a *very* new website (although qb2c has been around a few years) and is short on bandwidth, so try not to
It basically converts BASIC to C code that you can compile with GCC on any Linux, BSD, OS X machine.
It's a lot cooler than PHP and PERL because you get a compiled binary that runs as fast as C because it is C! You can also use C in-line, so it's the best of both worlds. I write 90% of my code in QB and connect to MySQL or PGSQL with in-line C.
This way I can give clients a compiled binary and not worry about them stiffing me. Sure, they can leave with the binary, but good luck making changes! =)
"And yes, I still believe in teaching assembly..."
Hey! believe in teaching assembly too. Lincoln logs, Tinker toys, Erector sets, Pail and shovel.
After years of schooling in the archania of COBOL, FORTRAN 77, and Pascal, I ended up coding embedded software for missiles in hex. Boy, was I ever in control.
Nowadays it's all web services in Java, and prayer is my debugger.
Luke, help me take this mask off
I suggest grabbing a copy of QuickBASIC 4.5. It has a great help system and lets you build an EXE.
QuickBASIC knowledge is sometimes very handy. I've seen many QuickBASIC programs in manufacturing used for controlling GPIB instrumentation, etc. Nowadays it's difficult to find programmers who can maintain this code.
I've always wondered, is it possible to implement any type of interprocess communication between an Windows App and a QBASIC app in the DOS Window?
http://www.basicguru.com
I use Rapid-Q BASIC instead and it works quite well. Can design apps and have them ready in a tenth the time it would take me in C/C++.
Best part is that its completely free and is available for multiple platforms too.
Brielle
After a false start with Teach Yourself Java in 21 Days *shudder* I got into programming with Beginning Programming for Dummies (Wallace Wang - 1999 Edition).
:)
The book introduces a lot of great programming topics using QBasic - mainly because QBasic was freely available with every Windows 98 distribution. It's the lowest common denominator of MS programming. Not sure if this is the case with Windows XP (seeing as XP isn't DOS, probably not).
The best part about the book is that the author places snippets of C and Java code throughout the book - so you can get an idea of where you're headed.
Of course, what it doesn't do is teach you how to program anything more than example programs - no "serious" applications. But why would you want to in QBasic? On the other hand, there seems to be a small but active community of QBasic programmers on the Net.
Anyway, you can pick up a used copy real cheep at half.com (I'm keeping mine tho
I'll admit, the title sounds dated. But that's because the first version of the game came out when VGA graphics were uncommon - shareware games, from the likes of Apogee and Epic Megagames, were still running amuck with EGA stuff. The game has come a long way from there, but the name stuck.
I bet there's more than a handfull of people here that still play rouge-likes (Nethack, Angband, etc...) and will vouch for the fact that a great game doesn't have to have great graphics.
Anyway, this is getting a bit off topic... The purpose of my original post was to give a good example of an app written in PowerBasic. So... there you go.
Basic, just like cobol, cripples the mind. I think the only difficulty I ever had with C was that I had learned BASIC first.
====
Crudely Drawn Games
QBASIC For Dummies?
Yes. Yes it is.
Looks like somebody else needs to take themselves less seriously. I also suspect that it may be bastard QBasic, not legitmate at all- your mama programs in GW Basic, punk
I find it amazing how much blame has been piled on QBasic. It was my first programming language, and I first started learning it when I was 9. The book I used never even mentioned GOTOs except in its list of commands at the back of the book. I didn't learn how to write spaghetti code. Personally, I find the GOTO command useful at times, but I've never written spaghetti code. The book I used was so wonderful that it was a good stepping stone for me when I started learning C at age 13. I highly recommend QBasic; you just have to get the proper instruction. Unfortunately, the book Learn Basic Now is almost undoubtedly out of print, and it's a real shame. QBasic Gameshop might have actually been the best product Microsoft ever released considering how bad its products are nowadays. I know it's possible to start learning from a "real" language like C because people could only learn machine language at first, but perhaps it is better for some people to learn more gradually.
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.
BASIC is to programming as SQL is to databases.
Please, learn Python. I know far too many people that started with BASIC that reflexively fall back on "goto" as the way to solve a problem. *twitch*
Though I started with BWBASIC, before graduating to Pascal and C. I just picked Python up recently; it's very easy to learn.
parent contains a goatse link (disguised) please disragard