2 ms·
I've been working on Java-based systems for about 20 years now, and I fully relate to that. Same experience. This is so annoying that I prefer to use Rust over
by pkolaczk 2y ago
I've been working on Java-based systems for about 20 years now, and I fully relate to that. Same experience.
This is so annoying that I prefer to use Rust over Java even in areas where things like better performance or better type system don't matter. But being able to start a fresh project with one `cargo init` and a few `cargo add` invocations to add any dependencies... well, this is priceless.
- mdaniel 2y agoAre you aware of Maven Archetypes[1]? I believe they were the "cookiecutter" before cookiecutter existed, although I am 10000000% on-board that their discovery story is total garbage :-( 1: https://maven.apache.org/archetype/index.html https://maven.apache.org/archetype/index.html and https://maven.apache.org/archetype/maven-archetype-plugin/usage.html https://maven.apache.org/archetype/maven-archetype-plugin/us...
- pkolaczk 2y agoBut I don’t want to copy a full project with prepopulated list of dependencies chosen by someone else. I want to start small and add dependencies I need. It’s like LEGO vs Playmobil. I want LEGO. ;)
- brabel 2y agoInteresting that you ended up going all the way to Rust land instead of just using one of the multiple tools that have been created to help with this, like: * Spring Boot (it has a UI to create projects where you pick Java version, DB, build tool, some libs etc): https://spring.io/guides/gs/spring-boot https://spring.io/guides/gs/spring-boot * JHipster - the nuclear option, pick what you want a la carte: https://www.jhipster.tech/ https://www.jhipster.tech/ * JBang - a cute CLI for this: https://www.jbang.dev/ https://www.jbang.dev/ * Maven Archetypes - the old fashioned way (existed before "create-app" kind of tools appeared): https://maven.apache.org/guides/introduction/introduction-to-archetypes.html https://maven.apache.org/guides/introduction/introduction-to... And most IDEs also have "new project" wizzards.
- rileymichael 2y agoHow does that differ from `gradle init`?
- pkolaczk 2y agoInit and then what? The story of discovering and adding dependencies is still much worse. Nothing like cargo add/remove or crates.io where I can quickly search dependencies with their descriptions with standardized links to repos and documentation. Actually even Python is nicer in this regard with PyPi and pip install, even though virtual envs are pain.
- rileymichael 2y agohttps://central.sonatype.com/ https://central.sonatype.com/ and https://mvnrepository.com/ https://mvnrepository.com/ are exactly that