3 ms·
> The new Raspberry Pi 400 Learning about the Raspberry Pi is nice, but that doesn't help preserve the institutional knowledge needed to build system/low-level
by pdkl95 6y ago
> The new Raspberry Pi 400
Learning about the Raspberry Pi is nice, but that doesn't help preserve the institutional knowledge needed to build system/low-level features in a modern OS. I'm not talking about teaching kids to program; I'm concerned about preserving in the future the knowledge of how to create all of the complex tech we use today. Many civilizations throughout history collapsed after they lost the technical knowledge on which their civilization depended.
> Because modern computers are much more complex and do much more than before, you don't do much bare metal programming anymore
Yes, that's the problem! Unless those skills are actively used and passed on to the next generation of engineers, that knowledge decays. Part of the reason you don't see a lot of bare metal programming anymore is due to the knowledge decay that has already happened!
> nothing is stopping a kid from buying a microcontroller and playing with it
This article is about how those same kids are being stopped from learning the complex systems we currently use.
> didn't turn everyone into a nerd.
Nobody is trying to turn everyone into a nerd. I'm talking about making sure the nerds of he future have the ability to learn about the tech they use, so the ability to understand and make that tech isn't lost. Locking down the OS into an "appliance" that cannot be inspected or changed is a direct attack on the ability to learn,
- cutler 6y agoIt's also a fait accompli in education where Python reigns supreme as the primary teaching language.
- greyhair 6y agoThere is nothing wrong with teaching Python as an introduction to programming methods and data, then diving deeper. My son started with Python in his Junior year of high school and as a senior is now learning Java. It is just top down learning, instead of bottom up. For programming, I think either works. I just happened to learn the other direction because of the year (early 1980s). On CP/M, you had a macro assembler right there, and it took me a while to get my hands on a Basic interpreter.
- cutler 6y agoMy university course in 1980 started with Pascal and Fortran along with Niklaus Wirth's "Algorithms + Data Structures = Programs".
- squarefoot 6y agoExcellent book! Although written with Pascal in mind, it became really useful to me. Always brought it at work along with the K&R 2nd Ed. and the famous TCP/IP networking book by W. Richard Stevens.
- NortySpock 6y agoI think Arduino has us partially covered there, allowing kids to get into electronics easily with some wires, sensors, and C code. And for cobbling together a computer out of microelectronics there's CollapseOS https://collapseos.org/ https://collapseos.org/
- GuB-42 6y agoThe problem with low level programming is just the general trend of specialization. The modern computer is the pinnacle of human civilization, a thing so complex that it requires thousands of people to fully understand how it works. Low level programming is just a small link in the chain of complexity. From mining the materials, to producing silicon of incredible purity, to designing circuits at quantum scale, to CPU design and finally the guy who places the frame that will display cat videos. So if you argue that no one knows how to program the bare metal (that is not that bare anymore), one can argue that the knowledge of how to make logic gates from transistors or the metallurgy of copper traces is getting lost. Maybe less people will know how to program on the bare metal. But think about it, it has been thousands of years since most people are unable to hunt and gather. This is a great deal more worrisome than not knowing how to program computers, and yet, human civilization have been thriving. The important thing is that it is still accessible, and it is.
- ThrowawayR2 6y agoWhat you're saying was truer in the '00s when 'scopes, logic analyzers, etc. were professional instruments costing thousands and FPGAs were inaccessible to all but the most dedicated and wealthy hobbyists. Today, with adequate hobbyist-grade instruments and dev boards available in the $100-200 range pretty much anywhere you look, really, the situation for low level engineers and developers is better than it's been for years and, in some ways, even better than the '70s heyday of homebrew computers. The problem is more the lack of interest. Low level systems development is hard, a computer engineering degree is hella hard, and all the hype and easy money was in following the webdev career path starting from the late '90s dotcom boom.
- orestarod 6y agoIt was always a tiny minority of the general population that had real knowledge and capabilities of creating the actual technological equipment widely used by the said general population. In the same vein, there are no less people capable of low/OS level programming than before, and you can't expect every proficient user, even a power user or e.g. the now numerous web developers, to be at this level of ability.
- monfera 6y agoWhat changed is that the very things capable of eliciting interest in programming also offer overpowering content consumption functions with huge, never ending catalogs of games, movies, videos, short funny clips etc. As computing and "content" proliferate, the uncompetitiveness of creation, esp. symbolic creation such as programming, is increasing. At some point, broadening of the access no longer offsets this effect, and the talent pool may start to shrink even if capability and permeation is a million times higher than it was.