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.

Following up on this with a recent video presentation by Cynthia Solomon on the Origins of Logo:

1 Like

Back to the top post. Oh, this is a different one. I found this card-style computer today (searching for educational computers).
(I previously found a similar, even smaller computer: BOB3

BOB3 educational computer

There is a new version BBC micro:bit v2 (aka Joy-It).
32-bit ARM-Cortex-M4 CPU, 128 KB RAM
5x5 LED matrix, 2 buttons, USB, WIFI, Bluetooth,
edge connectors with 5 holes for banana connectors.
like the one above also compass and accelerometer.

Additionally there is a microphone with activity control, a speaker and a touch sensor.
4 different ways of programming: Code Kingdoms, Javascript, Microsoft Blocks, Microsoft Touch Develop and Micropython.
There are also several projects on Github. Like Conway’s Game of Life and a Game controller

1 Like

As a (recently) former seller of these things, Joy-It is a maker of accessories for the micro:bit. They’re nothing to do with the micro:bit foundation, or the BBC who originally specified them as part of their “Computer Literacy Program, mk.2” starting around 2011.

Like all modern electronic things, the micro:bit v2 (and even the mouldy old ATMega on the BOB3) are in short supply. We sold these by the hundreds to school boards, and there’s curriculum being developed all over (including in Cree language in a school board waaay in Northern Quebec). They’re emphatically not standalone computers, because there are already more powerful computers in every student’s pocket. These are more devices to learn about physical computing and interaction with the environment.

Pretty much every educational language is a compromise, and I’ve seen incredible things done in Blocks that are far beyond the wildest dreams of what we could do in the 1980s.

1 Like

Do you mean LEGO blocks?
Did most Educational Computers, have a TV series to go with them?
Dr Who comes to mind with ‘BBC’ rather than a micro here in Canada.
Ben.

no, Blocks - as in visual/block programming in MakeCode, Scratch, or a host of others.

Some have TV programs, but it’s mostly educational curriculum like Projects | micro:bit.

The micro:bit hasn’t had anything to do with the BBC since 2016. It started as a UK thing, but is used now all over

Stewart
(also in Canada, but from Scotland)

1 Like

That’s great - thanks! (I’d forgotten some of the other things Brian Silverman had done - I came to know him through visual6502. Notably he previously wrote a 4004 simulator which was written in Logo (implemented in Java.))