2 ms·
I also grew up with BASIC (no new flavor. Controlling pixels one at a time on a TRS-80). One thing it teaches you is how to organize your own code, i.e., spaghe
by noduerme 3y ago
I also grew up with BASIC (no new flavor. Controlling pixels one at a time on a TRS-80). One thing it teaches you is how to organize your own code, i.e., spaghetti is so easy in that format that you develop a lifelong appreciation for OO or functional code once you move on to it from thousand lines of GOTO and GOSUB... yet it teaches you everything you need. Yea
it exposes screen interfaces you don't have to write yourself, but the point is to teach logic, not pure CS. Every first time coder should be exposed to BASIC because it has no preference or bias... any code you write in it will be equally shitty and equally educational.
- charlieyu1 3y agoLearning BASIC made me feel OO, clear variable names and clean code was unnecessary and I made no effort learning that back then. I’d regret about that much later
- ikari_pl 3y agoCould they have been unnecessary at the time? Not all applications (in the literal English sense of this word) need this, and I think it's something we embrace as we advance. After BASIC (which was obviously also my first, if I didn't mention it in the article already :D), I switched to a PC and used Borland Delphi for my first programming adventures. Fully object oriented language, with all the structural help you may want. And yet, my code was often repetitive, procedural, or just doing silly things (and variable names mixed English and Polish even within a single name). But it was a phase. I think a beginner programmer focuses on the goal and struggles with their way to reach it enough not to bother about the best, or most beautiful, or idiomatic way to achieve the goal. However, after a few years you build the awareness that if you're going to revisit this code in the future, you want it easy to read as well, and you may want to hide certain functionalities and operations behind functions, procedures, objects. The more time you spend programming, the more you appreciate structuring your code, then your application, then your entire architecture in a way that wouldn't hurt you in the future... or minimize the hurt. It's also a matter of the right tool for the job - an advanced programmer, writing a one-off script to quickly get or transform a result, may also decide not to decorate it with a sophisticated system of classes :-) I'd just write a bash or python script.
- greenbit 3y agoNearly the same story here. In HS the only computers in sight were TRS80 IIIs, PET4032s, and C64s. By graduation I'd moved to assembler for the sense of the metal and the speed. First year at college, took intro to programming in Pascal, and oh what breath of fresh air that was. Sure it was cumbersome, had a lot of ceremony, but it had procedures and functions that you could pass parameters to! And structures! Things that had been a hassle in BASIC suddenly had legible descriptions. But yes, BASIC did one thing very well: it got out of your way and let you cut your teeth on the fundamental concept - that a machine can follow a sequence of simple instructions to produce complex behavior. It provided a sense of that dynamic, that I think would have been a little less obvious with an edit/compile/test environment with as much ceremony as Pascal etc.