
With this I can pinpoint the exact first bug I created, and debugged. The year was 1991 +/- 1, the place was Canberra Australia. For unknown reasons that changed my life forever, my Dad got on board with this "computer" thing and bought an "Osborne" 486 PC. That year I went to the school fete and, for AUD 0.20, picked up a used copy of this book, leafed through the pages, settled on Hammurabi, and after some struggle and discussions with friends, managed to run Q-Basic and typed this program into it. And it sort of worked, but something was wrong, and after much experimentation I found that on line 11 (only today, with this post can, I finally state the true line number) I had written "LET P=P+1" instead of the correct "LET P=P+I". After a fair bit (days) of trial and error and 10-year-old reasoning, I figured that out, and so it began.
2) I ported the game to a mobile web app/PWA [1] trying to keep the original feeling, but the lack of a usable keyboard meant the UX had to be drastically changed. Also I'm super-proud of the software architecture I picked which is all event-driven and applies the Model-view-presenter-controller pattern [2]
[1] https://github.com/ggeorgovassilis/superstartrek
[2] https://blog.georgovassilis.com/2019/04/14/the-model-view-pr...
Simply, with QBasic specifically, you got...QBasic.
Yea, it came with a nice help system, but that help system was was a user guide and reference manual. It didn't teach you how to program. It just showed what the arguments to PRINT were. Useful, as a reference.
Outside of the TRS-80, which had a fairly large BASIC tutorial manual, the early 8-Bits had rather poor BASIC documentation. They were combined BASIC reference and user manuals, and not spectacular at either. And they certainly weren't robust computer programming tutorials by any stretch.
The simple point being is that while, yes, early computers came with BASIC, they weren't really set up for someone to actually learn how to program a computer. Anyone wanting to program the computer would need to find another book (or magazine) to learn programming. Even if that book were 101 BASIC Computer Games (which is an excellent mechanic, I learned a lot typing in BASIC programs).
Every computer today comes with a web browser, a web browser that can take them to any of a long list of sites where they can start coding immediately -- whether in Javascript, or even many other languages. If anything, of course, the problem is that the web is "too big", the menu "too large" and an unguided novice can get lost in vast array of choices. I actually pity some poor soul typing "learn javascript" into Google alone.
But, truth is, today, there are even few of those. Few are learning this stuff in a vacuum today.
The modern web is hardly a barrier to someone interested in programming today. The available resources are endless.
QBasic was a wonderful tool. It was beautiful and useful. A very elegant early IDE. Head and shoulders above GWBASIC/BASICA. But, still, stand alone it was incomplete.
This was a book published in the 70s by DEC. I vividly remember at either the very beginning or the very end of the book there was a section on how to send submissions for consideration in future editions, complete with instructions on how to properly pack oiled teletype tape for shipping. :)
I found a copy of one of the editions of this book in my parent's book stash in the 80s some time after I got a C128. Up until then the C128 had spent most of it's time in C64 emulation mode alternately running a BBS, downloading cracked games while taking some liberties with the telephone system, or playing those games. Starting on that book put me on the path of teaching myself to program.
If the OP is looking for something that changes philosophical outlook, or something that might be relevant today, then I probably disappoint. However in taking the question literally, I'd guess this book set me on the path to the life I live today more than any other single book.
I spent hours and hours making stuff written for DEC/MS-BASIC work on my TI-99/4A with its limited language implementation..
https://en.wikipedia.org/wiki/BASIC_Computer_Games
PDF: http://bitsavers.trailing-edge.com/pdf/dec/_Books/101_BASIC_...
I had the later yellow-cover edition myself.