4 ms·
> - Python: as a first language of choice replacing Visual Basic or Java. I don't see this happening in practice. Python has taken over the niche of Perl/PHP/R
by bloomthrowaway 8y ago
> - Python: as a first language of choice replacing Visual Basic or Java.
I don't see this happening in practice. Python has taken over the niche of Perl/PHP/Ruby/Bash almost completely but traditional uses for Java are hardly touched.
VB is dead, the only thing out there right now that seems like it may replace Java is C#.
Scala gets a bad rap from most JVM devs, but Kotlin may be a contender for Java replacement on both mobile and desktop.
Top earners? Likely to stay Java and C/C++ because they're not going anywhere and they're harder to learn than most languages. Maybe Swift for a while too because less people know it (because its Apple specific)
- bb88 8y ago> but traditional uses for Java are hardly touched. What are the traditional uses for Java that are hardly touched?
- tynpeddler 8y agoWeb servers mainly. However, Go is starting to make inroads in that space.
- BjoernKW 8y agoEnterprise CRUD applications is one area where Java probably is still the most widely used language. Particularly with relatively new frameworks such as Spring Boot I don't see this changing any time soon.
- bb88 8y agoYeah... I think that's a fair statement. I think the entire business CRUD segment is due for a massive disruption, though. I'm beginning to think one language to rule the front end and the back end is starting to make sense. To that end, JS killed Java applets, and should have killed Python/Ruby on the backend by now with Node.js. But it still hasn't.
- bloomthrowaway 8y agoI don't like Javascript at all, even with all the linters I could find its too easy to make mistakes. Too many old broken language constructs they can't fix. Java's strongest sell has always been an extremely reliable platform, strong typing, and solid standard libraries, things I also can't say about JS. Typescript on the other hand is glorious. My favorite language now. Fixes all the issues with using JS for large applications besides flaky libraries. I still don't think its ready for server-side development, not until they add threads (WTF is taking so long). When you're running on a 32 core system node doesn't make any sense. Yes, I know there's various workarounds like launching multiple copies of your app, but that still limits parallelism on the app level and its pretty lame.
- bb88 8y ago> I still don't think its ready for server-side development, not until they add threads (WTF is taking so long). Having debugged deadlocking threaded code in production, frankly, I prefer async/await style of code, which btw is in Typescript, Java, Python, etc. For parallelism, there's concepts like python's multiprocessing (which I think does it right) because it's easier to think about parallelism when the OS doesn't constantly pull the rug out from under your state.
- bloomthrowaway 8y agoI don't mind threads when they're done right. Every Java app server is multi-threaded and I don't remember the last time I ran into deadlocks. It's best for performance and readability to have both threads and async support. This is achievable with some work in Java by using Comsat/Quasar