Live data from Hacker News

Learning BASIC Like It's 1983 (2018)

twobithistory.org

21–30 of 93 posts

Re: Learning BASIC Like It's 1983 (2018)

#21
post #6
post #2

Agree with the author’s thesis of how the folks that “grew with computers” have an advantage over those approaching them now, in terms of understanding the inner workings. I’m not sure that this matters much in terms of solving actual problems though, which is probably a good thing. But I somehow find it a little bit sad that this is the case, so I’ll plug my own https://www.endbasic.dev/ because it’s very fitting in…

let's not overly romanticise it though the vast majority of people with access to computers in the 80s didn't harness the opportunity to be able to understand a lot of what was happening that was always going to be the case, and similarly people nowadays more often than not don't harness the vast opportunities that they have at their fingertips

Yeah, sort of the same today.

The C64 was incredible but I thought skipping Basic and going straight to 6510 assembler was the way to go. Got all those extra sprites by interrupting the scan lines, the huge performance advantage, etc

More than once I wiped my source code while zeroing memory.

I enjoyed Byte magazine but Compute! was my favorite:

https://www.commodore.ca/commodore-gallery/compute-magazines...

In my opinion, it’s even more exciting learning machine learning today than 6510 assembler on the C64.

I’d skip early the 1980’s nostalgia and begin the next quest. Kaggle is a good place to start:

https://www.kaggle.com/mmellinger66

And this book:

https://www.oreilly.com/library/view/hands-on-machine-learni...

Re: Learning BASIC Like It's 1983 (2018)

#22
post #19
post #2

Agree with the author’s thesis of how the folks that “grew with computers” have an advantage over those approaching them now, in terms of understanding the inner workings. I’m not sure that this matters much in terms of solving actual problems though, which is probably a good thing. But I somehow find it a little bit sad that this is the case, so I’ll plug my own https://www.endbasic.dev/ because it’s very fitting in…

We still have that 80s experience. Lest you forget, the TI83/84 is the only Collegeboard approved graphing calculator for the SAT and is thus the public school standard through to today. Well into the 2000s and probably still now bored teens have TI BASIC with them.

On US.

That was never a thing in many European countries.

For example I was always a Casio user.

FX-4500P, FX-880P and CFX-9850

Re: Learning BASIC Like It's 1983 (2018)

#23
post #21
post #6

Earlier quoted context omitted.

let's not overly romanticise it though the vast majority of people with access to computers in the 80s didn't harness the opportunity to be able to understand a lot of what was happening that was always going to be the case, and similarly people nowadays more often than not don't harness the vast opportunities that they have at their fingertips

Yeah, sort of the same today. The C64 was incredible but I thought skipping Basic and going straight to 6510 assembler was the way to go. Got all those extra sprites by interrupting the scan lines, the huge performance advantage, etc More than once I wiped my source code while zeroing memory. I enjoyed Byte magazine but Compute! was my favorite: https://www.commodore.ca/commodore-gallery/compute-magazines... In my op…

I always wonder what could have been, if the Commodore 64 and similar machines would have come with Forth instead of Basic.

Re: Learning BASIC Like It's 1983 (2018)

#24
Mine was the Atari 800XL. Atari Basic hadn't PEEK and POKE as the C64 (though something similar which I can't remember right now), but some more possibilities to switch graphic modes and plot things. But I never learned how the machine worked from that, it was still magic.

I tried typing in listings, but you only knew that there was a typo somewhere after you finished hundreds of lines. Finding the typo was out of the question for me. Also, it was obvious that the result of the listing, usually a game, was of much lower quality than the games I already had or could copy from friends.

The reason I learned Basic was that I wanted to know how games work. They always fascinated me since I saw Space Invaders somewhere. I quickly understood, mostly with the help of more advanced friends, that you couldn't make games with Basic, it was too slow. You had to learn machine language.

So that's what I eventually did, and that's how I really understood the machine down to the point where I could tell what almost every single of the roughly 40000 available bytes did. It took a long time to get there, those 8-bit machines where already quite layered in hindsight when you think about: How 6502-instruction, assembler, disk I/O, joystick input and graphical output where tucked together with what today be probably called the Atari-API was not immediately obvious and the result of 20 years of technical development, but nowhere explained for a 12 year old!

My enlightment moment was this dialog with a friend: Me: "Why does this assembler program crash? Why do I have to reset? Why can't the computer handle it?", friend: "Because deep down, executing your program is also a program. If your program crashes, that program crashes.". I think that was the most profound lesson ever to me. It's programs all the way down!

So, yes I know that CPUs have their own instructions and that every programming language ultimately compiles to that. But that knowledge helped me little with what I consider the next large learning steps over the decades: Learning C on x86, learning how Unix/Linux works, learning what the internet is fundamentally build up on, learning Javascript+HTML5, learning how fundamentally different asynchronous programming is if you can't assume that I/O might not respond immediately and possibly never.

My favorite language today is vanilla javascript. I love the simplicity, no compiler insisting on type safety, a great UI, almost platform independent, lots of cool APIs. I think JS is as remote from Assembler as you can get.

Bottom line, I think it really doesn't matter to know about machine instructions, same as it didn't matter at the time how CPUs worked on the hardware level. That still mystifies me: The 6502-equivalent of an if-clause was branch-not-equal (BNE), but how did that work in reality? What's happening on the silicone then? How can a lifeless thing make a decision? Never really understood whats beneath the turtles.

Re: Learning BASIC Like It's 1983 (2018)

#26

This is a lovely ode to the period in which I developed my love for computers. Although like many growing up east of the Atlantic Ocean, my computer of choice was the Sinclair ZX Spectrum. Without the budget to afford to buy much in the way of cassette-based professional software, like most I resorted to manually entering programs from magazines like Sinclair User[1] and Personal Computer World[2], which got me into…

Fellow Spectrum user here, I bought Your Sinclair and Sinclair User.

I started with BASIC, from the orange manual, moved onto Z80 assembly, and also made submissions to the magazines - in my case POKEs for infinite lives/energy/time, for games.

I didn't really write any new software, but I did hack a lot of games. That was almost more fun than playing them.

But you're not wrong about information being hard to acquire. I had a couple of books from the local library about assembly programming, but they were very basic (pun intended!)

I'm trying to collect more of the older books anew, but it's hard to find them and get hold of them these days.

So if there's anybody reading who has any books on Z80/Sinclair coding, or documentation please feel free to get in touch. (PDFs are nice, but physical books are best.)

Re: Learning BASIC Like It's 1983 (2018)

#27

This is a lovely ode to the period in which I developed my love for computers. Although like many growing up east of the Atlantic Ocean, my computer of choice was the Sinclair ZX Spectrum. Without the budget to afford to buy much in the way of cassette-based professional software, like most I resorted to manually entering programs from magazines like Sinclair User[1] and Personal Computer World[2], which got me into…

Fellow Spectrum user here, I bought Your Sinclair and Sinclair User. I started with BASIC, from the orange manual, moved onto Z80 assembly, and also made submissions to the magazines - in my case POKEs for infinite lives/energy/time, for games. I didn't really write any new software, but I did hack a lot of games. That was almost more fun than playing them. But you're not wrong about information being hard to acquire…

If you haven’t seen them, Acorn Books in the UK have put out a lovely set of hardback reprints of some of the classic Melbourne House titles. Well worth a look: https://acornbooks.uk/retro-reprints/

Like many others before me, my occasional weekend hobby has revolved around writing a ZX Spectrum emulator as a way to better understand these primitive but fascinating machines: https://github.com/timsneath/cambridge. Nothing special, but a fun project nevertheless.

Re: Learning BASIC Like It's 1983 (2018)

#28
post #6
post #2

Agree with the author’s thesis of how the folks that “grew with computers” have an advantage over those approaching them now, in terms of understanding the inner workings. I’m not sure that this matters much in terms of solving actual problems though, which is probably a good thing. But I somehow find it a little bit sad that this is the case, so I’ll plug my own https://www.endbasic.dev/ because it’s very fitting in…

let's not overly romanticise it though the vast majority of people with access to computers in the 80s didn't harness the opportunity to be able to understand a lot of what was happening that was always going to be the case, and similarly people nowadays more often than not don't harness the vast opportunities that they have at their fingertips

I don’t think that growing up with a c64 made kids into great programmers, but it did ingrain the notion that a computer is a programmable machine at its core. That complex things are just collections of simpler things.

It’s very hard to have the same realization growing up with current technology. It just too easy to see computer(/phone/tablet) as a complete appliance, which operation you never really alter. The same way you don’t mess with your washing machine outside of its designed functions.

Re: Learning BASIC Like It's 1983 (2018)

#29
post #2

Agree with the author’s thesis of how the folks that “grew with computers” have an advantage over those approaching them now, in terms of understanding the inner workings. I’m not sure that this matters much in terms of solving actual problems though, which is probably a good thing. But I somehow find it a little bit sad that this is the case, so I’ll plug my own https://www.endbasic.dev/ because it’s very fitting in…

Endbasic: marvelous execution, bravo!

Re: Learning BASIC Like It's 1983 (2018)

#30

Earlier quoted context omitted.

Fellow Spectrum user here, I bought Your Sinclair and Sinclair User. I started with BASIC, from the orange manual, moved onto Z80 assembly, and also made submissions to the magazines - in my case POKEs for infinite lives/energy/time, for games. I didn't really write any new software, but I did hack a lot of games. That was almost more fun than playing them. But you're not wrong about information being hard to acquire…

If you haven’t seen them, Acorn Books in the UK have put out a lovely set of hardback reprints of some of the classic Melbourne House titles. Well worth a look: https://acornbooks.uk/retro-reprints/ Like many others before me, my occasional weekend hobby has revolved around writing a ZX Spectrum emulator as a way to better understand these primitive but fascinating machines: https://github.com/timsneath/cambridge . N…

Thank-you, I hadn't seen those. I'll be taking a look properly shortly :)
Post reply on HN