Lately I’ve been diving deep into the fundamentals.
One thing I was quite interested in, was the underlying architecture of Git.
I didn’t understand was quite how Git stored information.
Then, I read about Hash Tables in Four Semesters of Computer Science in 5 hours. It was quite enlightening.
It made me realize the difference between Programmers and Engineers.
Engineers understand the system. Programmers use the system.
Maybe more directly, Engineers can build the system, use the system, critique the system, rewrite the system. Programmers can only use the system.