Java is stupid.

Well, not Java in and of itself, but the way Java is typically handled in a development environment. It’s all “install sixty-eleven different packages and hope they play nice.” The trouble is, you end up with dozens (literally) of packages installed to accomplish a relatively simple task, and nobody understands how they all work. Each package, of course, has its own verbose XML file full of vague settings unburdened by such niceties as proper documentation. Configuration files are sprinkled throughout the project tree like so much tinsel. It goes without saying that nothing is ever simple.

Today’s gripe is just a symptom of this metastatic approach to development: for license reasons, we switched from MySQL to Postgres. Postgres typically outperforms MySQL, but that sort of thing only matters with way more data than we’re using, and we weren’t leaving MySQL for performance reasons anyway. For some reason, though, Hibernate then became glacially slow — like, “go get a cup of coffee, and then get another one, and take a nap” slow. Why? Nobody knows! Now the developer is up to his ass in half a dozen configuration files and a googleplex of Google searches trying to figure out what the hell the problem is, and I’m sitting here wondering why the devil we didn’t do this thing as a simple web app in the first place.

Comments are closed.