Hacker News new | ask | show | jobs
by ahmedk92 3534 days ago
I wonder why people limit themselves to PHP, Python, Ruby, and Node, While Java has good presence in sync & async world.
3 comments

While Java devs are fighting with the eclipse issue of the day, generating wsdls, deploying wars, making annotated glorified structs for typed json/xml/both (except in some cases when they just go with a Map<Map<....,String>,String>), and so forth, those other dynamic languages get out of the developer's way and let them solve their problem with less fuss.

Java's not a terrible option. But it's rarely the best option, especially for Right Now, though it may become the best option later when enough competing concerns have cropped up.

You should check out Spring Boot.

Example: http://spring.io/guides/gs/accessing-data-rest/.

Here you don't even have to write code for controllers or db connections for basic CRUD HATEOAS REST service. Spring takes care of it. The model still needs getters and setters, but you can avoid this with Lombok

Java development today is different.

If all you need is a basic CRUD service, there are even easier options in the PHP/Rails/etc. world. If you have a schema for your data, it's pretty much one command away to generate such a CRUD service. Some of them even give you a nice looking out of the box web interface too. So you're not really selling me... And my day job is in Java, we're pretty modern with Java 8, Jetty 9, Spring, etc. but it still ends up being something like this: https://ptrthomas.files.wordpress.com/2006/06/jtrac-callstac...

Spring Boot may be a bit nicer than the most out of the way method I used years ago (now at https://github.com/stoicflame/enunciate/wiki) which did use Spring for some things, but it's really still far away from what dynamic languages and their ecosystems offer.

Honestly, I think just because it's so exceptionally un-cool. PHP may not be that cool either, but Facebook uses (has used?) it, and it's at least not as strict and "enterprise-y" as Java.
Because they use what they know and those tool works for them (solve their problem).