5 ms·
There's never been anything quite like Qbasic. Bundled with the OS, providing clear and relatively foolproof syntax, with an ability to get graphics onscreen ex
by ashleyn 7y ago
There's never been anything quite like Qbasic. Bundled with the OS, providing clear and relatively foolproof syntax, with an ability to get graphics onscreen extremely quickly. Plus, an amazing and decently large community of amateur game makers who grow up to be the next generation of professional developers.
I struggle to conceptualise a modern form of it - something that's perhaps a cross of Hypercard, Visual Basic, and Unity.
- ido 7y agoNot to mention great "online" (i.e. integrated into the IDE) help with useful examples and simple explanations.
- cblum 7y agoI spent many hours of my childhood in that help system :)
- malux85 7y agome too! <3
- craz8 7y agoMicrosoft help systems were great back then. Which was good, as there was little online documentation, and what was available was expensive to access with per-minute dial-up fees I remember a version of MS C in the late 80s coming with 5,500 pages of printed documentation! And it was easy to find what you needed
- ido 7y agoi agree. imagine my disappointment upon installing Redhat Linux 5.2 in 1998 (from a CD-ROM that came bundled with a magazine!) and naively trying the man pages for documentation.
- badsectoracula 7y agoAnd Borland's help systems too. Sadly today with (internet) online documentation things are still not as good - even if often there is more information, it is scattered all over the place, often repeating (parts of) itself and slow to find and access. The main reason why i prefer to have a WIN32.HLP file from (i think) some Borland product whenever i need some Win32 function than search Google for it for MS Docs (the test is 99.9% of the cases the same anyway). Also why i have Zeal[0] installed with the docs of a few things i use and i download offline copies of whatever specs and documentation i can find for other things. But in terms of help systems, i think CHM was the peak (in terms of functionality - the HTML-based content is a bit of unnecessary overhead and something like HLP's hypertext should have been good enough, but Microsoft wanted to shove IE4 everywhere so they can claim it was an integral part of Windows 98 back then). [0] https://zealdocs.org/ https://zealdocs.org/
- knome 7y agoIt really was fantastic. I taught myself QBasic out of the help screen when I was a teen. I spent many afternoons flicking through the extensive documentation and finding functions with interesting sounding names to read about and try as I programmed little games for myself.
- redisman 7y agoThinking about drawing a pixel in QBASIC vs drawing a pixel in OpenGL sometimes makes me sad.
- sedatk 7y agoPixels? Where we’re going we won’t be needing any pixels.
- cardamomo 7y agoGlad I'm not the only one feeling this pain! My graphics needs are minimal (usually amounting to a dead-simple visualization of a musical score I'm working on), but the complexity of coding any such feature is beyond my self-taught-on-LOGO-and-QBasic skills.
- klez 7y agoIf you simply need to blit pixels on a surface I'd suggest taking a peek at pygame. Setup window (one line of code), draw shapes, render!
- 0815test 7y agoModern graphical programming has nothing to do with setting pixels on a framebuffer the way you would in typical BASIC or LOGO implementations. You're essentially dealing purely with "surfaces" that work pretty much like glorified sprites (although supporting all sorts of 3D-like transforms), and then "compositing" the final result in hardware. This is why modern accelerated graphics can cheaply support very impressive visual effects, but has a bit more trouble achieving the inherent "pixel-perfect" effects that you got with purely software-based systems.
- redisman 7y agoI know that, but I don't want that :p I guess there are still software renders and game engines that simulate a 2D buffer
- unixhero 7y agoWell my impression is that Turbo Pascal is also like this, no?
- bdcravens 7y agoIt was approachable. First language I learned was Turbo Pascal, and it inspired me to learn more via QBasic on an old 286 I had been given. (1995 I think)
- mkl 7y agoYes. I went: GW-BASIC (no built-in help, incompatible with most library books, no real editor: hard for a kid to teach themselves from nothing) -> QBasic (Help! Graphics programs that crashed didn't leave you in graphics mode! Proper editor!) -> QuickBasic (bigger programs, compile to .exe) -> Turbo Pascal (help, compile-time errors, programs ran fast in comparison, proper modular code, good editor (great in 6.0), advanced graphics (for the time) totally within reach, and that's where a lot of high-school lunch hours went). Once Windows started to catch on, Visual Basic and Delphi (both had integrated help), then C++ (though I'd done some of that in DOS too, with Turbo C++). Integrated help systems were almost essential before the internet, and Microsoft and Borland did them well.
- kyriakos 7y agoReally cool thing I remember about Turbo Pascal was that you could drop in x86 Assembly right in your Turbo Pascal code and the compiler would take care of it. If you wanted to write a function with better performance you could just use assembly.
- thom 7y agoThere are still people who code every day without a REPL and interactive debugger and it blows my mind.
- icelancer 7y agoI don't code with a debugger, and I know a ton of people who don't either. I think people like me just rely on a REPL, which is enough. I find most debuggers to be intrusive and flow-breaking. I do agree that a lack of both, however, is crazy to think about. Yet I hired a developer not long ago who did basically that while shopping JCL Cobol for a student loans company.
- thom 7y agoYou’ve never written a debug print statement?
- icelancer 7y agoprintf-style debugging counts as an interactive debugger? Then I guess... yes. I just took that phrase as being an actual full-fledged debugger, not irresponsible printing to console (which is what I do).
- thom 7y agoNo, I’m saying that in those cases you _should_ be using a debugger, because it’s just so much easier and more powerful. My point being, why do so many people have a day to day workflow inferior to what was available for free decades ago to kids making gorillas throw bananas at each other?
- icelancer 7y agoOh, I probably should be, yes. But I won't, because I don't like them and never really have. I realize this is probably less productive, but at least I'm self-aware about it. And I don't think it's heresy to say that many people just don't like the current crop of debuggers out there, especially when you write in dynamic (and weakly typed) languages. Which is another bunch of bananas, but sometimes we don't get to pick what code we write in, especially in my industry.
- bermanoid 7y agoProcessing was the closest thing that I found. That was my first and simplest post-QBasic programming, and it served as a great jumping-off point into a real career in the industry. I still reach for p5.js when I need to throw up a quick visual demo of something.
- 0815test 7y ago> providing clear and relatively foolproof syntax Meh. BASIC-like languages are "clear and relatively foolproof", but not because of their syntax. The genuinely "clear" elements that they do have, such as the use of numeric labels, turn out to be poorly scalable, and the syntax itself also accretes all sorts of warts as it's extended beyond trivial functionality. Mostly, they are just simple enough that it is feasible to grok and fully internalize the functioning of the system as a whole, even for novices. "Getting graphics onscreen quickly" came with the territory on MS-DOS systems. The basic hardware functionality was standardized and there was no multi-processing to step on your toes, so just set the graphics mode you want, call some pre-made drawing routines, and you're set.
- vkaku 7y agoBBC Micro had that, you forget. I love QBASIC myself, just saying.
- davesmith1983 7y agoOn the AMIGA and ATARI machines there was something close (not part of the OS though) call AMOS and STOS. The author of AMOS / STOS is bringing back and he did an interview here. https://www.youtube.com/watch?v=Hs-QOu8EAWY https://www.youtube.com/watch?v=Hs-QOu8EAWY He seems to have gone the browser route which I am not keen on though.
- 0815test 7y agoThe actual nice thing about those packages was the straightforward support they provided for the mostly gaming-oriented hardware features in those machines (particularly the Amiga). In this way, they were close precursors to present-day game engines like Godot. And this also creates a conundrum for anyone wanting to bring the originals back, of course - do you reimplement their actual features, even if this means basically emulating a legacy platform?
- davesmith1983 7y agoYeh. TBH the video I linked is the only exposure I have to the tooling itself. There needs to be something that is simple like QBasic where you can just start programming and have a crack at doing something fun.
- Razengan 7y ago> There's never been anything quite like Qbasic. Bundled with the OS On home computers throughout the 1980s, BASIC WAS the OS. I also found it bizarre, how you can't even use modern computers costing hundreds of dollars as a simple calculator if the OS can't boot up. I wish Apple would bundle something like iOS Swift Playgrounds with macOS, considering they already include Script Editor, Automator, Pages, Numbers, GarageBand etc.
- JustSomeNobody 7y ago> There's never been anything quite like Qbasic. Bundled with the OS, providing clear and relatively foolproof syntax, with an ability to get graphics onscreen extremely quickly. Plus, an amazing and decently large community of amateur game makers who grow up to be the next generation of professional developers. The C=64, Atari ST, etc. all had decent BASICs and large communities.
- cmrdporcupine 7y agoAtari and Commodore never shipped a decent BASIC with their 16-bit machines. GFA Basic for the ST was wonderful, but you had to go buy or acquire it.
- iamnotacrook 7y agoSounds like BBC Basic.