4 ms·
My observation is that no matter what language it is written in software tends to evolve towards a level of complexity that is determined by the culture of the
by zmmmmm 16y ago
My observation is that no matter what language it is written in software tends to evolve towards a level of complexity that is determined by the culture of the people writing it rather than the language. Every project uses up its complexity budget one way or another. The budget is not determined by the language, but by the culture and skill of the people doing the work.
As a simple language, Java tends to result in complicated frameworks. This is a problem because every framework is complicated and different - you can't infer what one is doing by knowing another. Given this, I like having the complexity supported in the language. I'm going to have to deal with it anyway, but at least I can count on the language being the same where ever I go, so I can learn it once and have a reusable skill.
- extension 16y agoI've found that the best thing you can do with a bad programmer is to let them write the code in whatever potentially inferrior way they think it should be written, in contrast to trying to force them to write it in some better way that they don't understand. It's always better for them to understand what they are coding and why they are coding it that way. Java forces bad programmers to use patterns that they don't understand. Inevitably, this results in those patterns being applied incorrectly, which is worse than not applying the pattern at all. It's worse still if the programmer thinks they understand the pattern, but doesn't. No type system can guarantee that an API is used correctly on more than a superficial level, nor can it guarantee good architecture or correct behavior. The best language for a bad programmer to use is a flexible and expressive one. The more easily they can express themselves, the better chance you have of understanding their misconceptions. Forcing their broken ideas into a restrictive language will just mangle them further, producing dailywtf material. Monkeys are dumb, but a monkey doing calculus is even dumber.