I am writing more code with Django and python, node.js (express) or even golang to do the basic stuff a spring boot application does. StrongLoop's loopback framework looks interesting though.
You can get really non-verbose Java applications these days, thanks to lombok. I get not wanting to be dependent on an IDE, but you're not really that cool when you fire up vim you know. At the end of the day, you rely on tons of command line tools which complicate the process a lot. Then refactoring is childs play with an IDE - ever regretted a name choice a year into production, and it's everywhere? Done in a few minutes, without any errors. Feels good man.
Cleaner, more sane code. There's some really cool stuff you can do with the java EE spec, and inheritance. Let's say you want to import "pictures" from various sites into your application. Make an interface called "PictureImporter".
interface PictureImporter {
List importPictures();
}
then implement that interface for every source you want, like Sup Forums, facebook whatever.
public class FacebookImporter implements PictureImporter {
public List importPictures() {
return (facebookpics);
}
}
public class 4chanImporter implements PictureImporter {
public List importPictures() {
return (4chanpics);
}
}
}
and then injecting the interface as a list of instances means you can import from them all - just by ADDING code. No "registering", just implementing an interface.
Wow. I'm not really sure the params... thing is really that good. Am I missing something?
Google is always the best resource, and stack overflow. Use your google-fu to answer your questions, and use Django's official documentation which is very well written, and has plenty of examples.
Where I live there's mostly Java jobs though, as well as some .NET stuff. Employability isn't really an issue, if you know Java you can adapt to .NET.