I feel very inspired after a conversation with Jenny.
She has a Bachelor's in history, with a specialization in early European colonialism.
She then went on to get a masters in Computer Science after some self-taught undergrad programming turned out to be really fun. Now she works on all sorts of inspiring graphics and VR projects using C++/OpenGL and various engines.
That history knowledge is valuable. It gives her a perspective on sociological, political, and economic issues that many of us don't have.
We are building products that interact with the world.
In my opinion, programming is the easiest part of my job. It takes time to learn about all the different concepts, it takes experience to build up mental models of how everything works and recognize patterns. But there's a huge element of my work that people of lots of other disciplines can help me with.
How can we learn from history, as programmers?
We can learn from organizational mistakes. We can learn about the economic impact of inventions. We can learn about the role of inventors in a society-- we can better analyze how to make the best impact.
It isn't just about working on cool work-- we are influencing the direction of mankind, we are a part of society, we are a part of an economic system, we need to be careful about what we work on, how we price it, how we treat the people who make it, how we introduce it to the world.
Knowing about history can make someone a powerful programmer indeed-- someone with a deep knowledge of how their ideas can shape a society.