17 ms·
This reminds me of PG's essay on Java, in which he wrote "Java's designers were consciously designing a product for people not as smart as them.". Ben says tha
by arnoooooo 16y ago
This reminds me of PG's essay on Java, in which he wrote "Java's designers were consciously designing a product for people not as smart as them.".
Ben says that smart people should also work with these languages because non-smart people might have to work with the code. I think that is actually what happens a lot in the industry. Smart people who know Lisp, Ruby, Python, etc. still end up coding in Java because that's the language everybody else knows.
What I don't like about this is that it's basically saying that people can't become good at programming. It's accepting that the majority of professional developpers can't learn to use languages like Lisp correctly or to understand a Lisp program that uses powerful abstractions.
Maybe the ones who really can't are not in the right business ?
- forinti 16y agoI agree with PG and I also think that Java and C# maintainers are wrong to keep adding features to these languages. I've done a lot of work with Java (and some with C#) and most developers have a hard time even with original Java's scope rules. So, if these languages want to be the COBOL of the future, they should keep it simple and dumb. Closures and Generics aren't for most people. Or they could add some compiler directive for switching on advanced features.
- IDisposableHero 16y agoI take the point about "Java's designers were consciously designing a product for people not as smart as them." But, consider the reverse - The C++ spec always seemed to as if the language designers were showing off - competing to add fatures that showed off how clever they were, without as much regard for the readability and maintainablity of the resulting code in the language. I don't think that strategy is optimal either. Also, if you think only simple code can be done in C#, have a look at the Rx framework. C# as a language is suffering from a bit of bloat too, but not as bad as C++.