25 March 2011

Joel pulls no punches.

Amusingly, the history of the evolution of C++ over time can be described as a history of trying to plug the leaks in the string abstraction. Why they couldn't just add a native string class to the language itself eludes me at the moment.)



The law of leaky abstractions means that whenever somebody comes up with a wizzy new code-generation tool that is supposed to make us all ever-so-efficient, you hear a lot of people saying "learn how to do it manually first, then use the wizzy tool to save time." Code generation tools which pretend to abstract out something, like all abstractions, leak, and the only way to deal with the leaks competently is to learn about how the abstractions work and what they are abstracting. So the abstractions save us time working, but they don't save us time learning.


A different article on insulting bonuses for working extra hours, or perceived
merit:


Natch, SE (my prev employer) had a "bonus" program for working 50-60 hours a week.
One employee handbook suggested working weekends to get our (otherwise unpaid)
SE Time which only counted at bonus time, if the company made money.

I've got a life; I sell my time. Don't think you're going to burn me out.