Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

This may be thinking back on things with rose tinted glasses, but I learned to code in qbasic when I was 12 or so at a Boys and Girls club after school and fell in love. It was entirely effortless and fun to me. I think the difference is at that point I wasn't trying to program to enter some lucrative career and be a startup guy (where are these "coders" going to be once the market dies down and a new industry is hot? probably trying to do that). For me it was something I loved immediately, and while obviously there are really hard problems, the coding part was effortless


sort by: page size:

Still think QBASIC was the perfect way to start coding.

I learned to program with QBasic and it took me colossal effort and time to kick that crap out of my head and actually understand programming. At 31, I'm still not sure I'm completely over that.

QBasic was my first exposure to programming, when I was 9 years old. Fond memories. Despite it having what today I consider terrible syntax, it made programming extremely approachable. After a quick "hello, world" intro from an IT guy at my mom's office, I spent countless hours reading the help pages and learning the commands. Sometimes I wish programming could be as simple again.

One important thing about QBasic that's often overlooked is that it's a community of 100% amateurs.

I learned to program in 2004 in QBasic, although I very rarely fire it up anymore. By then it was not considered a "serious" language and we all knew it. But that meant the stakes were a lot lower. It's a lot of newbies and a few old-timers who do things for fun. This makes things a lot less intimidating for the non-coder. There are no conferences, no corporate sponsors, no polarizing big-shot Twitter personalities. It's a realm surprisingly insulated from the pissing contest of modern engineering culture and technical progress, where things that are acknowledged to be easy in other languages are nonetheless praised as impressive when done in QBasic.

Another thing is that QBasic has no decent library functionality for code reuse (QB4.5 has a linker but no one knows how to use it). This means people constantly reinvent the wheel, and they aren't told not to. People copy and paste snippets of code and learn how they work, but they don't build ever more complex mashups every year. Thus, you're not on the framework treadmill or starting 5 years behind the curve. Things are done simply and idiosyncratically, pretty much the same way they were done in 1995 or 1988.

Makes me nostalgic just thinking about it.


I'd be interested to know what circumstances made the concept flourish. Massively popular yet difficult-to-program devices sitting in every home?

If I could go back in time I would have stuck with QBasic for at least another five years before moving to C. I wasn't close to ready for the briefly exciting dive into "real" coding, which led to abstract CS concepts, the thick books with exciting illustrations on the covers, the CS classes which were so boring. Meanwhile I believe I could have actually been shipping software had I stuck with QB. Gar to admit but true.


I have never heard of QBasic, but now I want to learn it just to understand your experiences with it and grasp why you think it's how programming should be versus how programming is now. Maybe we can learn a thing or two from the past?

Part of the appeal Qbasic had to me as a kid, was that I read that it was occasionally used in a professional capacity. So this easy-to-learn, easy-to-use language had the added cool-factor of being "real stuff". I don't think something like Gamemaker or Scratch would've had the same appeal - they'd just feel like baby's toys to me, whereas with something like Qbasic you knew you were actually doing "real" programming.

At least in my part of the world, qbasic remained a popular beginner language through the 90s to the early 2000s. It was easy to get, and there was plenty of tutorials available for it. Visual Basic didn't have the same appeal unless you wanted to do desktop applications, and I guess it was harder to get your hands on. C and C++ were not considered too beginner friendly. I don't think there was much competition for QBasic on its merits, at least in the Microsoft world.

To me it looks like a lot of hobbyists here started their dabblings with QB until web development (read: PHP) took over.


Qbasic is something that simply has no modern-day parallel.

It started very simple, PRINT and GOTO were enough to get you started. It had the tools to expand along as you learned, and a great community of amateurs who would make cool games with it. Eventually, you'd grow out of it and try your hand at C, because by that point you were encouraged to learn so much (and with a gentle curve) that you exhausted its capabilities. It was an excellent educational tool, an excellent way to get kids "hooked" into "real programming".

Learning programming today isn't quite as simple as it was with Qbasic. It involves setting up a large toolchain, and for a beginner, the experience is daunting as the language community reviled both anything imperative and unstructured. There's no easy way to do anything other than text from the command line, which makes for some thoroughly uninteresting demos and examples. Qbasic wrapped an IDE and graphics library around the language in an all-in-one solution; it was so cool seeing colourful, pseudo-graphical demos like Nibbles or Gorillas. If a beginner wanted to do anything "cool-looking" today, this same beginner programmer would need to set up render to texture on an OpenGL surface. Yuck! And so they lose interest, believing programming is the mysterious and complex domain of gods.

This market did not go away. I don't quite think QB64 fills it, being little more than a nostalgic, artistic homage to Qbasic. If someone were to design a programming language with a learning curve as gentle as Qbasic, and wrap a simple IDE and graphics library around it, all while modernising some of its more dubious qualities...you'd have a real shot at recapturing the magic for a new generation of young programmers.


QBasic was my first experience with programming too.

I remember discovering QBasic as a kid and being totally absorbed in it. I couldn't understand what an array was, so that halted my progress.

I rediscovered it as a teenager in highschool and wound up making a basic platform game with a mess of shitty spaghetti code goto statements and drawing lines on the screen. It was great. My dad wanted to encourage me but didn't know how, so he got me a C++ book from the library but it just made no sense and I couldn't get anywhere.

Fast forward to being 23 and deciding what to major in at University. I rediscovered the idea of programming and instantly fell back in love with it. I remember blowing through the entire first semester textbook in 2 weeks and really getting it. It felt like a super power had finally been unlocked. Still does.

I was so glad to reconnect with programming. I always feel I would have been an absolute whizz kid by now if I had really picked it up when I was a teenager and part of me is a little sad about that.


I still think QBasic is one of the better ways to get people interested in programming. It starts off very simple, but you can really go a long ways with it. Plus it's got some pretty powerful, yet easy to access graphics and music capabilities built right into it. My first programming class in high school, we went from Hello World to creating an animated Christmas card, with MIDI Christmas carols accompanying it, in the first semester.

QBasic might not have been the greatest language, but it had a pretty sweet IDE, fantastic live documentation, and was really just fun to play with. I feel like there ought to be a packaged up Python distribution with the same kind of attributes, but I've never really seen anything that really aced that spot the same way.


I have a fond place for QBasic. I started to teach myself programming (as a 14 year old in the 90s) with GW Basic because my dad's older computer had disks and a manual. I quickly learned that if I upgraded to DOS 5 I could get QBasic and I did so along with a book from the library on QBasic programming. I tore into that book. I think I renewed by checkout as many times as they let me. I never stopped programming everyday from that day until well into adulthood. Now I have had some days where I haven't programmed in the last 25 years. QBasic was a life changing moment for me.

QBASIC was also my intro to programming.

I think in a way it’s a shame that kids now first see visuals rather than code.

There’s something much more thrilling about seeing a bunch of written instructions become a game, than some sprites that already look a lot like the game start moving about.

Another awesome QBASIC feature - the help section taught you everything you ever needed to know to learn every feature.


I couldn't agree more. I started programming with QBasic -- basically teaching myself on my own -- when I was seven. And it worked. I was programming little interactive stories, drew crazy stuff on the screen, wrote small games. I was happy with it. The only things I was always curious about (and know one I knew back then could help me with) was on how to access the computer's mouse and the sound blaster. With my limited knowledge I never got that working until I switched to Delphi and Windows four years later.

One of the best things I remember about QBasic is the help system (also referred to in the article). This where I found everything I wanted to know, including examples, about the language. I believe that's one of the reasons why I'm still more patient when it comes to studying software documentation compared to the average programmer.


Promitive as it was, QBasic had the right mix of commands people wanted (drawing, colors, music, file access), with the immediacy of running and seeing where your errors were (stepping through code) to make many a beginner coder motivated enough to stay with it to learn and develop beyond. I'll always owe it a debt for being my outlet through my middle school years.

As my profile says, qbasic has a special place in my heart. I spent many, many middle school hours and late nights in it before learning c++ in high school.

QBasic is what got me started with programming more than 20 years ago. The thrill of writing a program that draws a rectangle, than erases it and draws slightly to the left and then watching the rectangle zoom across the screen hasn't been surpassed ever since.

If you want to teach a visual person like myself programming and the programming environment requires more than one statement to put something on the screen (including import statements), it has already lost to QBasic.


I got my start with programming in QBasic. Now I work at a Prominent North American Enterprise Linux Vendor. FWIW I don't write much code that gets merged into anything important, but I wouldn't be working in the tech industry at all if it weren't for the curiosity QBasic sparked in me twenty years ago.
next

Legal | privacy