3 ms·
I'm no expert on enterprise software, but this tallies with my casual observations. Note that Java didn't make enterprise software into a bloated, confusing ar
by mechanical_fish 18y ago
I'm no expert on enterprise software, but this tallies with my casual observations.
Note that Java didn't make enterprise software into a bloated, confusing architectural spaghetti. It just found its niche there. Remember that Java was originally intended for writing embedded software for set-top boxes; then it got repurposed for writing "write once, run anywhere" desktop applets. It is only because the language was a nigh-complete failure in those niches that it became primarily known as a language for server-side enterprise software, which has influenced its development ever since.
So it might be that the enterprise development "pattern", memorably characterized by PG as "maintainable spaghetti", did this to (Java's) OOP, not the other way around. But I would suggest that it's a little of both: Java and the "enterprise pattern" are coevolved, like the chicken and its egg. At this point it's hard to sort out which came first.
UPDATE: I should point out that the author says more or less the same thing:
OOP didn't do this to us; we did it to ourselves. OOP just held our hats.
His title is a rhetorical question, so the fact that I think it's subtly misleading is actually a sign that it's doing its job. ;)
- russell 18y agoYou make a good point. Open (loosely used) enterprise software leads to committees and committees lead to kitchen sink specifications. CORBA, from a previous generation, had exactly that kind of bloat, W3C specifications likewise. The Java libraries show that in spectacular fashion. Maybe Sun thinks we need umpteen hash table implementations, but I think we would be better off with one well done. Frameworks done by committee are even worse. God save us from W3C and the Apache Foundation. Counterpoint: software from dictators: Python and Django.
- eru 18y agoHow does Haskell's collective approach to design / standardization stand here?