On understanding, exploring and abstractions.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux