• carl_dungeon@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    5 days ago

    I wrote Java and jvm languages for a long time. Mostly a good experience. Maven and later gradle, groovy and spring boot really made it more fun to use. Spock is still my favorite testing framework. These days it’s all python and node for me though- but using those languages and their popular libs really shows how much better dependency management and testing was in the Java ecosystem even 10 years ago.

    • Maven and later gradle, groovy and spring boot really made it more fun to use.

      There is no better example of “to each their own.”

      I started programming Java professionally when it was still called “Oak.” I was working at a University doing distance learning stuff and applets were incredible. They were also the thin end of the wedge, although I didn’t know it at the time.

      I watched over the years as a nice, concise, core library of a dozen packages swelled like a bloated corpse. The last core library book I contributed to was larger than War & Peace, a veritable tome just to describe the standard library.

      And then tooling like Maven and Gradle came along, and frameworks like Spring Boot became unavoidable, and I found more of my time was spent not programming but trying to detangle some horrible maven build config. In XML. That’s about the time I jumped ship.

      My philosophy is: tooling is fine, but if it takes over the project so that it’s impossible to build the project without it it’s not tooling anymore, it’s a framework - a platform - that you’re locked into. You get to spend your time debugging issues with the framework, over which you have no real control, where your best hope is work-arounds and crossing your fingers that upstream fixes their shit before your work-around becomes permanently engraved into the build.

      It’s funny to me that what I saw as bloated distraction, a hateful corruption of simplicity onto layers of obfuscation that themselves became platforms needing maintenance and debugging, would have been a pleasant and even fun addition to the ecosystem.