On “From Java to Kotlin and Back Again”
zsmb.co
zsmb.co
No language will prevent a team of developers from building an un-maintainable mess no matter how good it is (and I have seen a few). Proper design skills and knowledge of ‘good’ software architecture will make or break a project every time. Stop getting hung up on languages.
Unless you’re being asked to develop in C (then I applaud you), then agree on a language that will still exist in 6 months time and then on with the difficult part...writing decent code.
The developers I've met with this argument have usually been doing one stack for many years and don't want to do anything new or uncomfortable. It's like watching someone try to cut brush with a butter knife.
Also, saving lines of code isn't necessarily the end goal for me in a language choice to be honest. Get rid of boiler plate code yes, but what I'd like to aim for is code that is easy for the next developer to understand and support as quickly as possible, whether thats 10 lines or 20 lines.
Reddit, which was inspired by PG, switched from lisp to python for reasons like this.
ta;da intrinsics merits don't matter, only what's popular.
Only if you assume popularity is static. "Innovators", and then "early adopters" keep trying things to move it forward. Popularity is fickle and disloyal - i.e. dynamic.
For long, Kotlin has meant way longer compilation times. That's no longer the case (or at least way harder to determine, kotlinc is even faster than javac in some projects) but that was a legitimate bullet to bite 2 years ago.
Sadly I agree with the author of the second article, all the reasons given are very petty and I wonder how much of these 6 months were really spent writing kotlin.
As the author of this blog post notes, there are good responses in the /r/programming comments[0].
[0] https://www.reddit.com/r/programming/comments/8lmnl2/from_ja...
"You've just complained about using : for type declarations a couple paragraphs ago."
That was for a totally different use-case. I'm pretty sure he wasn't offended by the literal character ":".
In my opinion, the 'speaking to an audience' via indirect blog posts doesn't really help us move forward as much as direct discussions do. Since we already had thorough discussions about this topic both here and on reddit, I don't see the value in this post.
I will admit that this type of indirect conversation isn't without its uses though. For one, I don't think the original blog author participated in the discussions here or on reddit. So our discussion boards were also indirectly attacking that post, without much room for the author to respond. Similarly, it's impossible to have a discussion with everyone you disagree with. Sometimes the best you can do is state your opinions, and let people consider them as they will.
I guess a better statement I could have said earlier is that we already have a forum (right here) for discussion of articles, and we don't need the disconnected responses-via-blogposts, because we can just discuss things normally here.
/s
/s
PS.
wow, what a garbage...
The text is a JSON at https://zsmb.co:8443/public/articledetails/url/on-from-java-...
Btw, that 8443 port is probably blocked by firewalls in many enterprise networks. They usually allow only ports 80 and 443.
I'll try not to spam too much and just reply to this one comment to address the feedback around here about the technical aspects of the site.
- Yes, it's a completely pointless web app in the place of what could be a very simple, quick, and well functioning static HTML site. I'm using it as a hobby project to test drive a framework I'm working on. I do desparately need feedback on it, so thank you for everyone who's reporting issues!
- Yes, I didn't have time to do any compatibility testing, so right now I only know that it works alright in Chrome. There are probably things that are very easy to fix (e.g. not using those couple functions that are missing in Edge), I'll have to look into these later.
- I don't know if I can solve the port issue yet, I understand that random ports besides 80 and 443 are often blocked, I've actually ran into this just trying to access my own site already too. I only have this one domain and one server for it so far, and I need separate ports to serve the app and to expose the API it talks to. I'll have to think about how I can solve this later.
If you can setup the second web server then you're probably in control of the server. How about reverse proxying an /api URL to localhost:8443?
If you can only run another web server on 8443 and can't modify the configuration of the main one on port 80... You simply serve the static JSON file from port 80. This is too easy so you probably can't do that. Do you have an application serving those files on 8443? Maybe run it once to create a file and store it where the web server at port 80 can serve it. Some small script with curl should be enough.
"This is like marrying without love"
https://en.wikipedia.org/wiki/Arranged_marriage#Love_and_res...
(regarding the example from "Class literals" sections)
Well, the Kotlin line is still shorter overall, despite the ".java" bit, because it allows to get rid of "new" keyword (two of them), and to replace the first occurence of "GsonBuilder" with "val".
A java programmer complaining about another language being verbose is hilarious.
It’s like saying German is more effective to write with than English or that German is easier to express poetry than English.
Assuming this is a story about Android development, there will be the sequel: "From Java to Kotlin and Back to Java -- before surrendering to Dart and Flutter." :-)
Not typically no