Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I will give you a historical example. In 1346 the English absolutely annihilated the French at the Battle of Crecy. The English had the longbow. The longbow had greater power, much greater range, a greater than 3x fire rate, and less failure rate due to mechanical complexity compared to the French crossbow. In 1415 the English destroyed a significant portion of the entire French army with a vastly inferior force. Again, it came down primarily to the longbow and also cultural differences with regards to concepts of chivalry.

If the French knew the English had superior war technology nearly a 100 years before why didn't the French adopt the longbow? They had more than sufficient time and resources. It comes down to cultural differences. The French had a large standing army of professional soldiers. The English army was mostly composed of reservists who trained as a part time job. It takes years to become passably competent at the longbow which means you need a lot of people training on that all the time. So much went into the training that some of the English became deformed by having one arm substantially larger and more muscular than the other. The French never modified their culture to account for the difference in technology.

Software is just like that. Most teams would rather fail than deviate from their currently familiar set of conventions and processes. Some of that comes down to an inability to measure things, limits on perceptions and diversity of approaches, some of it is also a fear of retraining, and various other factors. Most people who write software like to think of themselves as some sort of engineer, but its still mostly a cottage industry devoid of the professionalism crystalized in most other industries.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: