4 ms·
After all this time seeing web aplications taking over windows/osx "native" applications, I guess we'll see more "native" apps in the near future. At least for
by eb0la 8y ago
After all this time seeing web aplications taking over windows/osx "native" applications, I guess we'll see more "native" apps in the near future. At least for cases where latencies matter (like heavy editing).
For languages, I see right now strong demand for:
- Python: as a first language of choice replacing Visual Basic or Java.
- Scala: as an alternative for both Python and Java for big data loads. Probably it could also work as an embedded language instead of LUA, but who knows.
- Swift and Kotlin for Mobile development.
- Systems and embedded programming (aka building native binaries): GO and Rust. Go looks very good since it was developed by the fathers of C and AWK (Pike, Kerningan, Ritchie). Rust seems more complicated at first sight.
- Javascript: plus some html5 (react,react native, vue, vue native, etc.) for web+mobile agencies.
- 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.
- ofrzeta 8y agoNot sure you gonna be a "top earner" with any of these.
- slipwalker 8y agoPersonally, i have been taking time to look at kotlin ( as a "swiss army knife" language for the JVM, both android, server-side and desktop ) and dart2 ( with flutter.io for cross platform mobile ) and web front-end. I'm a complete n00b on iOS, but swift seems suspiciously too similar to scala, so it should be good enough... Given the cpu-speed rat race was replaced by the multi-core rat race, anything that fits naturally with concurrent programming should deserve a long look, hint: FP.