113
anekix
3y

Anyone looking for something interesting to do???

Step 1) understand how basic circuitry works on a bread board nothing too fancy. ( Implement NAND, AND, ADDER, SUBTRACTOR)

Step 2) learn about microprocessors and how OS works

Step 3) learn assembly

Step 4)write a basic assembler and understand how loaders and linkers works !

Step 5) write a kernel with very basic features like memory management and process management and some drivers for IO

Step 5) write an emulator for some simple systems .! ex chip-8.

Step 6) read about compiler theory and automata

Step 7) write a basic Python interpreter that compiles (not interpreter) to native assembly.

Step 8) implement TCP stack .

Step 9) learn as much as u can about complexity measurement ), data structures and algorithms using C or C++ it's very important ( familiarity with pointers and thus computer memory )

Step 10) learn any high level language of choice like Python or Ruby.

Step 11) stop debating over tabs vs spaces , emacs vs vim , angular vs vue, php vs Python , OOps vs procedular vs functional ( just know about all of them and when to use but don't fucking debate over which one is superior )..

Step 12) live happily and be healthy.

Comments
  • 11
    @nitaj96a It's not tough as it seems☺️☺️
  • 5
    I'm in! I'm somewhere around step 3 right now, but this knowledge is really useful and I can guarantee that you don't need to be a genius...
  • 12
    Step 13) with all the previous knowledge acquired, build an OS for the critical control and management of a manned space ship that will carry the first explorers to Mars.

    Step 14) profit!
  • 2
    Haha😂😂
  • 2
    You must have lots of spare time if you can do all of that.
  • 4
    I'm on step 5 (both of them).
    But come on, step 11 is impossible. You should have more realistic steps.
  • 3
    Anyone Heard of Nand 2 Tetris , it basically teaches you to do just that
  • 1
    Thats actually a great list of things to star learning if you wanna get into programming
  • 1
    Adding this rant on my to do list. Started with step 1. 😀
  • 2
    I actually did this a few years ago. I built the processor in logisim, supported all kinds of hardware peripherals, programmable irq, and I designed my own lassembler and compiler for a high level language I came up with. Then I wrote a small multitasking os. It was pretty neat. It was a project to keep my busy over winter break when I was in college, took about two weeks
  • 1
    I'm on step 11, I think I'll be here for a couple decades.
  • 0
    @runfrodorun that's great ....😃
  • 0
  • 1
    step 12) Graphic card crashes. Go back to windows
  • 1
    @lucas22 step 13 is already done. NetBSD ;-)
  • 2
    I may be interested in the journey. Could anyone please give me a starting point for 1, 2 and 3?
  • 1
    @Shika93 for step 1 and step 2 search Google for digital electronic and microprocessors syllabus of any college or university you will get lots and rest will follow from there. and finally search for 'NASM' tutorials for step 3 .
  • 5
    @Shika93 I havent played w it much but autodesk has a pretty sweet free online breadboard simulator http://circuits.io
  • 4
    Solid advice! I'm often shocked by how intimidated devs get; look back and think of how intimidating some code was at first, it's easy now — everything else is the same way!
  • 1
    i need shitloads of cocaine to even consider this shit.
  • 0
  • 0
    @anekix a huge lack motivation to do anything.
  • 1
    this seems like my college syllabus
  • 0
    @meain then you are at a very good college..
  • 0
    @anekix if you're college doesn't offer most of these in some form, you're probably better off staying at home, saving your money, and studying.
  • 0
    @Neotelos I never said that my college dosent offers that. I said if you read properly "you are at a very good college then" so the question is how you got to that conclusion of yours.
  • 0
    @anekix It's almost like you assumed my conditional statement indefinitely applies directly to you. Edit: I can edit too, I see you toned it down. Good for you.
  • 1
    I was thinking to compile all these steps in a step by step tutorial starting from scratch ( I couldn't find the aggregation of these topics at one place ) and I am thinking of some other topics like implementing a simple jit compiler in other above list. Would the effort be worth it? anyone interested?
  • 1
    @anekix you should totally do it! I would read it for sure
  • 1
    @anekix I think it would be a blast for you to write, and would be awesome to read, especially steps. 3-9.

    You could also write it In such a way that steps 10 through 1 could be worked in reverse (or partially in reverse) step 11 would be the favorite to read and if written with passion and persuasion could become an instant reddit & devrant hit.
  • 1
    Boy, that all sounds fun and challenging. But mostly fun! Gonna try one step at a time. :D
Your Job Suck?
Get a Better Job
Add Comment