On Thu, Jan 8, 2015 at 11:42 AM, Warren Young wyml@etr-usa.com wrote:
- Reduce the amount of effort it takes to maintain a given feature set.
A lot of work has gone into that. It’s one reason software is moving to higher- and higher-level languages. Much of the Red Hat specific code in RHEL is written in Python, for example, not C, the traditional language of Linux.
Yeah, that's going to be fun when the 'push incompatible changes' mentality reaches the Python interpreter. Oh, wait - when it affects RHEL's own work, they hold back...
Then we get old farts complaining that the new software is less efficient, because it isn’t written in C. That’s the tradeoff: computer efficiency for programmer efficiency, because programmers are more expensive and harder to come by.
You get programming efficiency with well designed high level library component support with stable interfaces regardless of the language itself. How long would it take you to hook a perl or java program to a new sql database (assuming you aren't the first one to ever do it)? Or parse some xml? The things that kill programmer time are when you have to do tedious tasks like that from scratch or deal with interface changes in the code that was supposed to handle it.