![]() |
![]() |
#1 |
Registered User
Join Date: Sep 2022
Location: Eastbourne
Posts: 1,213
|
Do aspiring programmers benefit from learning BASIC (or a variant) first?
If you owned a home computer from the late 70s to early 90s, it almost certainly came with a dialect of BASIC, be it Microsoft or Locomotive or Sinclair or BBC. Unless you had access to computers in an academic or scientific setting, this was almost certainly your first access to a programming language, with schools and colleges relatively late to offer computing as a subject. Lots of early classics were coded in BASIC, the original Football Manager for example. You still get BASIC languages to this day.
It made its mark on the Amiga too. As late as 1991, the dropping of AmigaBASIC (a Microsoft BASIC derivative poorly regarded by then, but actually well-received on the Amiga's launch) from Workbench 2 received some murmurings of discontent, that it was going to impact people's learning of computing. Variants like Blitz and AMOS were still to come into their own - games like Skidmarks, the Valhalla series, Base Jumpers and Gloom were made in them, not to mention innumerable PD/coverdisk or recent homebrew games - all mostly by people with no professional or academic coding experience. Amiga Format cover-mounting the programs and having extensive guides has to take some great credit there - not sure if magazines in other countries did anything similar at the time? Still, though, there are criticisms of it. Some feel that it promotes bad programming habits. Some care that it lacks functions or object-orientation. The variants can be quite different from each other. Still, when I took A-Level Computing at age 16, having dabbled in Spectrum BASIC at a very young age, and later Blitz to a limited extent, did feel helpful, as I wasn't completely new to many of the concepts. Of course, home computers varied in the quality of their BASICs. It's been argued elsewhere that a system coming with a relatively poor BASIC (or at least, one which didn't maximise the computer) this may have been a blessing in disguise, as it encouraged programmers to go straight to assembler. Was this a general feeling, or were the outweighed by the amount of people who were put off from programming altogether? Do we know to what extent the leading Amiga game programmers started off with learning BASIC, whether they feel it was good or bad before progressing to Assembler or perhaps C? Last edited by Megalomaniac; 10 August 2024 at 17:26. |
![]() |
![]() |
#2 |
Registered User
Join Date: Oct 2020
Location: Bicester
Posts: 2,087
|
Do aspiring programmers benefit from learning BASIC (or a variant) first?
it can do I guess, as it usually gives reasonably quick results and so spurs them on to continue. |
![]() |
![]() |
#3 |
Registered User
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,178
|
I would argue yes, but not with AmigaBASIC. It was terrible.
I moved up from a Spectrum - where I coded in BASIC mostly - to an A1000 in very late '87 and it naturally came with AmigaBASIC. I powered it up and after about an hour decided to drop it for now. It was bloody awful. Slow, even compared to the Spectrum, and with a horrifically designed IDE. Didn't go back to coding on the Amiga until much later. AMOS was better and Blitz was great fun, though by that point I'd been messing with C. |
![]() |
![]() |
#4 | |
J.M.D - Bedroom Musician
Join Date: Apr 2014
Location: los angeles,ca
Posts: 3,678
|
Quote:
|
|
![]() |
![]() |
#5 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
I've said it before and I'll say it again the whole OOP scene is pretentious.
|
![]() |
![]() |
#6 |
Global Moderator
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 32,539
|
|
![]() |
![]() |
#7 |
cheeky scoundrel
Join Date: Nov 2004
Location: Spijkenisse/Netherlands
Age: 43
Posts: 7,112
|
In the world behind the mirror, sure.
--- It wasn't a terrible starting point to learn programming conceptually, especially since you didn't have too many accessible languages to choose from at the time. Nice learning tool, I wouldn't recommend it today though ![]() |
![]() |
![]() |
#8 |
Registered User
Join Date: Jan 2009
Location: M'Gladbach
Age: 47
Posts: 631
|
Some dialects are. .NET basic is OOP, and iirc Gambas too.
To answer the ops question: It is beneficial to learn, but if you want a career as developer I would suggest to learn a language that is in use a bit more often. C#, Python, Java, they are all good first languages and there are jobs for it. I went from c64 basic to pascal to c. But if that was a good way or not, i cannot say. |
![]() |
![]() |
#9 | ||
Registered User
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,178
|
Quote:
Quote:
Which is precisely where I wanted to be! |
||
![]() |
![]() |
#10 |
Registered User
Join Date: Sep 2022
Location: Eastbourne
Posts: 1,213
|
That title should have been 'DID aspiring coders' as I was primarily thinking about the home computer era. Programming professionally is very much a road untravelled for me, but I'd love to get into retrogames coding, I did have the old Spectrum manual out a while ago and went through much of it with an emulated +2, remembering the concepts - ultimately I'd rather be making Amiga code though. Maybe learning Blitz and making a game in that would be worthwhile, before moving onto something heavier like assembly?
The point about BASIC allowing you see visible results quickly, from HELLO WORLD to the Celsius-to-Fahrenheit conversion program I remember typing in from the Spectrum manual. Maybe Dunny and Saimon are right that a bad BASIC is a bigger impediment if you're already used to a good BASIC? |
![]() |
![]() |
#11 |
Registered User
Join Date: Oct 2012
Location: Italy
Age: 49
Posts: 2,988
|
Basic was the first language i learned before i passed to school languages
![]() |
![]() |
![]() |
#12 | ||
Registered User
Join Date: Aug 2006
Location: Scunthorpe/United Kingdom
Posts: 2,178
|
Quote:
I thought so too, as it happens, and I didn't learn any asm until much later, and tbh I wish I'd just knuckled down and learnt it back then instead because it's way easier than I thought. Sure it takes a lot more "boilerplate" than a higher level language but you can work through that with libs or even some heavy copy-paste action. And it's so worth it. Quote:
That's also why I love coding in Delphi (Pascal) because it's just so rapid at getting results on the screen, and why I took a job in that language ![]() |
||
![]() |
![]() |
#13 | |
Registered User
Join Date: Jan 2019
Location: Germany
Posts: 3,490
|
Quote:
It is not the lack of OOP, it goes even below that. Early dialects of basic, or what we had in the 1980s, were completely unstructured, leading to spagetti code. "GOTO" with absolute line numbers, global variables, no structured data types except arrays, and only two elementary types, namely numbers and strings. Things changed a bit over time, and in terms of "easy scripting" more powerful languages became available that also provide instant access to the machine, such as python. Back in the 1980s, probably everyone started with BASIC, but this was more or less because it came with many machines and played the role of the "operating system". You could not sell a machine without BASIC, but that does not make it a good language. Actually, most of the BASIC implementations back then were outmost terrible. |
|
![]() |
![]() |
#14 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
Global Variables, that's another thing - if you are using the same name variable in different methods/locally that is horrendous. But global variables are considered evil.
|
![]() |
![]() |
#15 |
Registered User
Join Date: May 2023
Location: Norwich
Posts: 527
|
BASIC had the advantage of teaching the generic flow of iterative code without too much complexity. So certainly learning it gave you a basic understanding of the sequence of execution and simple concepts like variables etc.
But it also tended to teach a lot of bad habits, like poor code structure and over-reliance on global state, which other languages like Pascal deliberately avoided. And it often simplified things too much, making the learning curve when jumping to another language seem almost impossible difficult. |
![]() |
![]() |
#16 | |
Global Moderator
Join Date: Sep 2006
Location: Germany
Age: 46
Posts: 32,539
|
Quote:
|
|
![]() |
![]() |
#17 |
Phone Homer
Join Date: Jun 2006
Location: 5150
Posts: 5,887
|
I would disagree strongly. OOP programmers like to think it's a lot more complicated etc but in reality a lot! Of the terms etc originated in BASIC. In my humble opinion
![]() So the original question - I would say a lot of "normal" people can't grasp programming and it's a problem. A quick couple of lessons on something like QBasic and probably anyone can grasp coding |
![]() |
![]() |
#18 |
Also known as GarethQ
Join Date: May 2019
Location: Twickenham / U.K.
Posts: 750
|
There are fashions in the programming world like all other things. New languages pop up like they are the second coming, but invariably they have roots in the old world wether they realise it or not.
I think BASIC is still a great language for learning to code. Last edited by fxgogo; 12 August 2024 at 13:51. Reason: Spelling |
![]() |
![]() |
#19 |
cheeky scoundrel
Join Date: Nov 2004
Location: Spijkenisse/Netherlands
Age: 43
Posts: 7,112
|
Kind of feels weird to say "normal" people I must admit. As if people who understand programming are abnormal. Thanks bruh.
|
![]() |
![]() |
#20 | |
Registered User
Join Date: May 2023
Location: Norwich
Posts: 527
|
Quote:
But it depends if you just want to solve simple problems with programs, for which BASIC is fine, or whether you're (or were) aspiring to be a professional programmer, for which BASIC was a poor choice. |
|
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Trying to find variant of this song | Flow Res. Kenny | Amiga scene | 1 | 11 August 2023 21:58 |
A1200 case, desktop variant? | Malakie | Amiga scene | 6 | 11 December 2021 18:12 |
Preferred Falcon variant | eXeler0 | Retrogaming General Discussion | 19 | 20 November 2020 00:40 |
How to specify the game variant used in Arcade Mode? | ketschak | support.FS-UAE | 2 | 07 March 2014 14:31 |
|
|