a follow up for everyone. On Sat, Apr 22, 2023 at 9:24 PM Aman <amanmatreja@xxxxxxxxx> wrote: > > Hello everyone. > > This is Aman, I am a high school student. And, > > "I DON'T know how computers (and modern software) works AT ALL". > > I have no idea, except about the abstractions I play on. I understand > the case for abstractions, they are what, (arguably or not) run the > world forward. > > But it is really , And by really, I mean really frustrating. To the > point where I don't quite enjoy programming (despite the fact that I > have had exposure to "programming" for quite some time). I am > fascinated by these things around me, computers run the world, and I > REALLY want to understand them, just for the sake of it (I guess). > > I believe what made computers fun, in the old days, was the ability to > really talk to it. (even Linus tells this in the "beauty of > Programming chapter" in his book, which was written 20 years ago!) > Even C feels like an abstraction, hey the "magic" of compilers, and > libraries. > > Even people around me, and 99% of people I find on the internet, to > discuss issues like this, too, don't know how a computer, and modern > software (which runs the world) really works. And people seem to get > fine by it, which is not necessarily bad, but really frustrating to > me. > > And my question is, How do I do it? Should I try to build my own > computer? Create a CPU in Verilog on an FPGA. Write an assembler, > bootloaders, operating system kernels, compilers, etc.? But what about > wanting to read how the modern systems work? But if I want to know how > LLVM or Linux works? Or how a modern compiler is created? > > People have discouraged me to read source codes, and software > architectures, saying it may not be worthwhile, even IF you could do > it. So what could be done? > > Maybe, the right question isn't what to do, but why do I want to, so > perhaps we can systematically deduce what to do about it. So why? I > guess, if you see life as a playground, and I have come into this > world, I'd be an interesting task to learn how it all works. This may > be a bad idea, and I am open to others. Since nobody I have met, yet, > has expressed something like this, I don't know if I am living in a > rock (probably I am anyway). > > But learning how a computer (like your phone) works from scratch, > isn't that interesting, and not knowing, down right frustrating to > anyone reading this email? Or is it just me for some reason? > > And it goes both ways right? , even if I create a simple compiler, > it'll still be a simple one. Won't it be more interesting to work on > things that I might use, and others might get value from too. > > So this is the dilemma of an 18 year old, confused about what to do about it. > > (btw, If you reading this, are a hardware person, making chips or > something, do you feel like a king/queen? since everyone builds on top > of what you do) > > Regards, > Aman