What should one who makes software be called?
I prefer Programmer. Coder implies a lack of knowledge regarding algorithms or at the very least being prone to “hack”(do quick fix code that is bound to cause headaches later on)
Engineer would be someone with some sort of bachelor degree, perhaps regulated by a government. Not my case.
Mr Gates Wikipedia also seems to like “programmer” better: http://www.bing.com/search?q=bill+gates&qs=n&form=QBRE&pq=bill+gates&sc=8-5&sp=-1&sk=&cvid=b066cb0a0b374fe4b8801f59ed2103bd#!1,1164807331