top | item 42407878

(no title)

Falkon1313 | 1 year ago

People will say it's easier now since there are so many (sooo many!) free languages and tools and frameworks out there. But while that's great for someone who already knows what they're doing, it's not simpler to start. And a lot harder to know where to start!

Back then, the PC came with the language and tools already.

As a kid, you probably didn't have much money to buy software anyway, so if you wanted it to do something, you had to learn to program it yourself.

And once you could figure out how to read input from the keyboard or a file and write output to the screen or a file, that was most of it right there. You yourself could write programs that did almost anything that the professional programs did.

Because it was just that simple. No networks, no frameworks, no layered stacks, no APIs, no GUI libraries, no 139 processes running in the background, no nothing.

Just you and the 'bare metal'. PEEKing and POKEing and GOTOing until it did what you wanted.

And from there it was a simple step up to Turbo Pascal, inlining Assembler for performance, etc.

The whole system back then was just so simple, you could comprehend and fit the whole thing in your mental model. And yet you could make it do almost anything it could do with just that simplicity.

We lost that around the time that Macs and Windows came out. And it's just gotten ever more complex and inscrutable since then. Much more powerful, and tons of free stuff, but there's no longer that simple entry point. Javascript isn't, Python isn't, nothing is or will ever be as simple and fully-capable of an intro as we had during that short period of early home computers.

discuss

order

sras-me|1 year ago

>Javascript isn't, Python isn't, nothing is or will ever be as simple and fully-capable of an intro as we had during that short period of early home computers...

That is exactly why I started making this..

https://hackage.haskell.org/package/spade

WillAdams|1 year ago

Nice!

Do you have a sample/screen grab showing all the possible widgets?

Is there potential for interacting with a canvas? Could one make a drawing program?

ssharp|1 year ago

I understand the thinking behind some of this but I don't think it's right. My first language was GW-Basic so I grew up and enjoyed this era. However, if I want to start working on Javascript today, all I need to do is open a browser and start playing around in the console or set up a directory to point my browser to.

You don't need NPM, Github, Vite, React, etc. to do any of that. I'd also say the vast amount of documentation, sites like Codecademy, seemingly infinite amount of Youtube videos, etc. accelerates learning light years beyond what we had with GW-Basic, assuming you even had this reference guide!

pipes|1 year ago

JavaScript is a painful first language, full of gotchas. Even worse code bootcamps introduce it with react. I always recommend anyone starting programming to just make command line programs at the beginning in something like python. I might be wrong but at least it introduces a fundamental universal programming tool.

dxbydt|1 year ago

You are deliberately missing the point and confusing X with ‘something that looks like X’. For eg., using QBasic, you can pick some random spot on the monitor and have a white dot show up at that spot. What you end up doing is directly writing to the vga buffer address of that spot. That’s the X. You can directly talk to LPT1 and directly get the dot matrix printer to print an ascii character. That’s the X. All these things were possible because the synergy between the hardware and the software was extreme. QBasic was just a shim. You were directly talking to the hardware in as few steps as you possibly could. The assembler code for your BAS file could be inspected and you could even muck with that.

All of that has gone out the door. What you have with javascript is something that looks like X. So I can use a html canvas element and get its drawing context and do an arc with the right parameters and fill and hide the scrollbar with some css and pretend that what you now see is like the X. But its not! To actually get rid of the browser window and only have the white dot, you would need a full blown electron install or worse. And it still wouldn’t get you to the X. We already had X. Now we have something that barely approaches X after a great deal of effort.This is supposed to be progress ?!!