I recently read Thinking in Systems. The book was a great high-level look at Systems. There was no math involved, no low-level details. It was all about understanding the big picture. It approached things from the top down, whereas my traditional Electrical Engineering classes in college were the exact opposite.
I was listening to an interview with Mary and Tom Poppendieck on Mob Mentality. Mary had some very interesting thoughts about adding features. Mary starts by making a very simple observation. As projects grow larger they inherently get more complex and that complexity makes it harder to manage the code
So here is another article inspired by Joel on Software. In this article, titled The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!), Joel talks about the importance of understanding Unicode and character sets. It is a bit of a rant (Joel