So in the last post I wrote that when you are creating something, you go through a phase where you ask too many questions and you should just try to push through that phase (as it is mostly just our mind making excuses). Today, I tried to continue making that web browser I was talking about, however, I just couldn’t get myself to do it.
I got overwhelmed by the amount of new information that I was supposed to soak in, and eventually, I gave up. Then I started asking myself: should I make it in some other language? Should I make some other project in this language (Rust)? Should I make some high-level project? Should I start making websites or something?
I don’t know what to do honestly. This is partly why I used to love security work instead of development work. In security work, you don’t have to make anything, you just look at things made by other people and see if they made any mistakes. Then you write a Python script to demonstrate that mistake and voilà. But honestly, I am kind of tired of security work as well. I do feel that the need to create something is stronger in me, than the need to hack into something.
But even when you are talking about creating, there are so many things you could do apart from web browsers. Sometimes I feel that systems programming gets too much into the weeds. Sure, making your own web browser or operating system rocks as a first experience, but do you want to keep doing it again and again? I don’t know.
I love first principles and whatnot, but without some heavy guidance (like in the nand2tetris course), it is overwhelming. I feel like taking a break from assemblers and emulators and web browsers and operating systems to work on some high-level stuff.
So I don’t know what I am going to do now, but it’ll probably be something less to do with the extremely lower-level aspects of computing. But who knows, my opinions change on a daily basis. I do feel however, that if I spend a lot of time developing actual applications, it will help me a lot in understanding computers on a deeper level.