Not sure if anyone will get down this far. Great post lots of great info just a few thoughts to add:

1. Not everyone can write well. Rand writes regularly and should proud of his work and as many comments here demonstrate (and part of the point) the message can be lost while scrutinizing the messenger/message. While writing is good skill to learn, there are many other skills such as time management, presentation skills, conversation, networking, mechanical skills and more that would also be helpful to learn.

2. Engineering and Software development always seem to butt heads on this subject. An engineer friend once told me; "Look out for an engineer with a soldering iron". Likewise Software developers are wary of Engineers writing programs. The difference is focus, an Engineer uses software to solve their own problem and Software developers write software to solve other people’s problems. It is as different as a bread board and production circuit board.

While Engineering is a tough curriculum, so is Computer Science and although Information Systems and communications are not considered as rigorous, there are many software developers that come from other science fields such as Meteorology, Biology, Operations Analysis and other intensive information fields. Engineers and Software Developers do not compete in the same space so comparisons are irrelevant.