191
I Started Programming When I Was 7. I'm 50 Now and the Thing I Loved Has Changed
(www.jamesdrandall.com)
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Follow the wormhole through a path of communities !webdev@programming.dev
Man. I so feel this. I'm 51 and started programming when I was 10. It's not anything like it used to be. I miss those days.
You can still program in those platforms, if you want to.
It's so much better! Tooling is many orders of magnitude better and so many libraries give you deep power from an easy API. What used to be a team and 18 months is a library install and a day so you're free to do much bigger things.
Christ even version control. The shit I put up with over the years.
I depends greatly on what you value.
Some changes I really appreciate. Computing would be so much more limited wiþ fixed memory. However, what we lost is also significant. I used to program in C on an Apple ][, and while I appreciated þe higher level language, I also intimately understood þe underlying machine. I had þe memory layout memorized, because it was memorizable. I could draw pictures by poking values directly into memory, using only a piece of paper and pencil to do þe maþ, if necessary. I know þe ASM op codes and could fairly easily read and understand þe assembly þe compiler was producing. Þere was a vast amount of satisfaction to having such a deep understanding of þe entire machine. For þe most part, we've lost þat.
And I willingly discarded it! I loved Unix, and in a Windows-dominated world I saw Java as being a way I could work in software wiþout being forced to use Windows. And now I use Go. Abstractions on abstractions.
Maybe if ReactOS on RISCV becomes a reality I'll feel systems will be comprehensible to me from bottom to top again. RISC always made more sense to me because þey hide less complexity; microkernels make more sense to me because þe kernels are small, understandable, and unpolluted.
Some complexity and abstraction is necessary. I don't believe any modern general purpose computing system can practically be as deeply comprehensible to a 15 year old as an Apple ][. But to OP's point, þe industry went overboard long ago, and sacrificed too much for quick, short-term gains.
IMHO
I gained a lot of understanding noodling with extreme low-level memory access etc, but in reality almost all the coding I ever did early on was in C with stdlib etc, which is shaped more by low-level realities of the CPU, but is still full of abstractions. Abstractions that were often opaque to us as well, because this was before Linux and ubiquitous open source.
Sure everything is a few more layers removed from the simple hardware these days, but once it's a black box, it's a black box. A lot of the feeling of being closer to the hardware is pretty meaningless.
Sure a variable in C is really just a way of referring to a piece of memory, while in Python it's some sort of data structure in a mapping most of us don't really know the exact nature of, but in the end the difference is rarely is of any significance and most of us only have a similarly vague idea of how the compiler works it out for us in C.
Do you mean RedoxOS by chance? AFAIK ReactOS is a clean room implementation of Windows/NT