Programming for children: the old and the new

I think that, if the code style was configurable, it might have been more approachable for those who dislike the inbuilt indentation rules. Even slight customisation would have been useful for those of us who are OK with semantic whitespace. It would really have required support from editors so that code you didn’t write yourself is reformatted in the style that you are comfortable with, then later stored back in the original form.

These days, the trend is to force everyone to format their code according to a common style – maybe “force” is too strong, but there are cultural and social pressures in the Python community to encourage compliance with PEP 8, which sucks all the fun out of writing code for public consumption.

Replying to myself about using CircuitPython on a Pi Zero…

It boots pretty much instantaneously to something on screen but my boot partition wasn’t large enough for the disk image file – assuming that the file needed to be in that partition – so I didn’t get any further.

Keep in mind that the code style of Python was intended from the start.

One of the problems with us children of BASIC is that BASIC did not encourage good programming practices. Many of us had to unlearn some of those practices as we progressed in our careers.

Python’s indentation is trying to encourage tidy looking code to make things more readable. Something I really appreciate when I go looking through old BASIC program listings trying to port the program over to a new platform.

Yes, that’s one of things that attracted me to it in the first place. “Python: programming as Guido indented.”

2 Likes

And the text terminal to go with it - ie. a Linux/Mac/Win PC running a terminal program… That adds to the overall “cost” in terms of time, knowledge an so on.

Not saying this is good/bad either way - it’s just never as simple as just turn it on these days… Even an LCD monitor needs to “boot” which takes seconds now…

-Gordon

At the risk of drifting, this is something I’ve disputed over the years - it goes along the lines of: BASIC doesn’t teach bad programming, bad teachers teach bad programming.

I was taught BASIC by an old Algol programmer. I think this helped. I didn’t un-learn anything because I already knew how to structure my BASIC programs.

I’ve also looked at some older BASIC programs which were remarkably well structured, once you get over the visible GOTO/GOSUB nature of the code.

Then there’s the self-taught brigade. I do not blame this crowd - arguably the majority of coders in the 80’s purely because they had nothing better to go on - I also know that in the 80’s computers, people coding, etc. were far in abundance compared to computing teachers in schools…

-Gordon

You’ve triggered a memory: my first program, I think, was on paper and never executed. It was probably in Fortran but possibly Basic, and it was an effort at generative text: I forget now whether it generated sentences, or stories, or poems. Probably just sentences. But I must have been dimly aware of the recursive nature of language, because I certainly had some idea of subclauses, and also strings of adjectives. But I was completely unaware of recursion in programming, or possibly even subroutines.

So it was complete spaghetti. And it kind of kept me awake in a delirious way, so I had to put it away and try to forget about it.

I also looked at a Pi Zero running CircuitPython, and it was able to display output on a monitor via the HDMI connector. So it seems you can still use the Pi, at least, as a standalone computer, in this configuration.

Someone could probably do the same for BBC BASIC, for example. Is there a collection of links to bare metal programming environments for the Pi?

I’ve probably mentioned this somewhere, but for a long time I had a late 2000s/early 2010s LCD television in my office, hooked to one of several 1980s computers via composite video. One of my preferred things to point out was that the modern TV took several seconds (I think about 20-30?) to boot, while in most cases the computer was ready in well under a second. Even Applesoft BASIC loaded from disk under DOS 3.3 was faster than the TV!

Of course, contemporary monitors also took 30 seconds to get ready, just for different reasons. :wink:

1 Like

Yeah, very dependent on the particular hardware. For example in the Sharp MZ it was either about 1 second from power switch, or about 5 seconds to press a key to go the BASIC (from a sort of a firmware menu), depending on the model.