|
|
|
|
|
by IgorPartola
4770 days ago
|
|
Somewhat offtopic: I learned to program using a variant of BASIC on an 8 bit machine. While it was limited in what it could do, it also forced me to reinvent the wheel, which I think as a novice is a good thing. Once you understand how you would build something, you will have an easier time understanding how others would do it. Since then, I have always used the approach of "how would I do this?" To figure out a new paradigm. For example, how would you create a simple memory allocator? How would you multiplex a single timer interrupt to perform all necessary OS services? How would you create a process scheduler? How would you implement a syscall handoff from your running process to the OS and get the result back? How would you implement something like inotify/kqueue? I play this game with every bit of technology I touch. The fun begins when you come across something where you are way off base. You think you have a great idea for how to do it, and then you see an implementation that is much more clever and usually simpler than yours. That is when I think you grow the most as an engineer: after you can truly appreciate the genius of the accepted solution. |
|