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

All else being equal (i.e. assuming equal functionality and performance), customers would prefer code that's written in "beginner" programming languages. Customers don't always know many things about code, but every single one of them knows how to count money, and they fantasize about replacing their maintenance staff with a bunch of beginners. Hiring competent beginners is difficult enough.

An important aspect of this problem: Even if the overall system is too complicated for beginners to understand, beginners may be able to usefully tinker with the system if it is built out of parts that they understand. The problem with PHP-based systems is that their most complicated parts may need to be built out of PHP, but the bonus is that all their simple parts are also built out of PHP, and often the bulk of the maintenance boils down to tinkering with the simple parts.



This is very important.

Code that is simple is easy to maintain. This is not to say that simplicity wins over the use of complex design patterns and abstractions in every scenario. It's a trade-off that needs to be considered on a case-by-case basis.

This is especially true in the open source arena where it is critical that new developers can come along and read, understand and improve existing code. Code that is too complex will not be understood and will almost certainly lead to errors.




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

Search: