News for hackers. Stuff that matters.
Re:Why We Chose Rails to Build Gitlab by ppeetteerr on Tuesday January 22, 2019 @04:26PM (#18972656)
Does anyone ever have to justify using Java for their backend?
Re:Why We Chose Rails to Build Gitlab by freehunter on Tuesday January 22, 2019 @04:40PM (#18972818)
Yes. I work for a company that used to build almost everything in Java and people are constantly asking why the hell we used Java for it and we're constantly apologizing and saying how quickly we're moving to a more modern solution.

Before this, I worked for a company that build almost everything in Java and we had to constantly explain why things were in Java and what we were doing to move things to a more modern solution.

But you don't read blog posts about those companies because they choose not to write them. The blog posts you see about the backend technologies are from companies who are proud to use those technologies and want to promote their use of that technology. The companies who use Java (mostly) are companies who aren't going to write blog posts about their backend technology choices.

Re:Why We Chose Rails to Build Gitlab by vips7L on Tuesday January 22, 2019 @04:58PM (#18972982)
I really enjoy modern java. Its extremely performant and the ecosystem is amazing.
Re:Why We Chose Rails to Build Gitlab by darkr on Tuesday January 22, 2019 @04:46PM (#18972878)
I used to hate Java, but years of experience later, I would gladly inherit a well maintained/architected and modern Java codebase over anything written in Python or Ruby (even a well maintained one)
Re:Why We Chose Rails to Build Gitlab by postalrat on Tuesday January 22, 2019 @04:50PM (#18972914)
So the only thing you would trade ruby or python for is something that doesn't exist.
Re:Why We Chose Rails to Build Gitlab by darkr on Tuesday January 22, 2019 @06:59PM (#18974202)
Oh but it does. And even when it’s not great, it’s usually a less horrendous task to refactor into something better.
Re:Why We Chose Rails to Build Gitlab by zbentley on Tuesday January 22, 2019 @07:10PM (#18974295)
That, actually, is one of the the largest selling points of Java as a platform: when it's bad, it's not that bad, and even when it is, the tools to clean it up are better than anyone else's.
Re:Why We Chose Rails to Build Gitlab by purple_ducks on Tuesday January 22, 2019 @06:20PM (#18973799)
> we're moving to a more modern solution

What exactly qualifies as a modern solution that Java(/jvm?) is disqualified?

Syntax, library eco-system, paradigm, type system, cruft? Is "modern solution" some function of blog post count? A social blade type score for how many early-20 somethings are using it?

Or is it going to be something "simplistic" & "clear" which will eventually inherit the cruft all other large languages do?

Re:Why We Chose Rails to Build Gitlab by freehunter on Thursday January 24, 2019 @04:19PM (#18993064)
None of the people complaining are the developers (the developers like Java). They're all (enterprise) end users. The "modern" solution is something where the customers don't know it's Java, don't have to hear the words "tomcat" and don't bring to mind all the baggage associated with those names.

There's nothing wrong with Perl or PHP either, but plenty of end users have seriously negative associations with the technology and will blame every fault on the technology because it's had a rough history. All of those languages/ecosystems scream "dotcom" to enterprise users and they don't want to hear that they're paying $1.5m for a system that's built in what they consider to be legacy languages.

Re:Why We Chose Rails to Build Gitlab by purple_ducks on Friday January 25, 2019 @04:15AM (#18996646)
Were the companies you were working for agencies?

> that's built in what they consider to be legacy languages

Who's the software company in this situation - you or them or both?

What's the modern solution which they expect you to be on? Go?

What characteristics does it have?

A solution could just as easily be packaged for them in such a way that they just have to run "java -jar someuberjar.jar"

Re:Why We Chose Rails to Build Gitlab by amm on Tuesday January 22, 2019 @05:26PM (#18973236)
It depends on the project.

Java is the goto language in more conservative environments (e.g. insurance, banking, government) and I never had to justify using it there.

In small shops/startups it’s different. Hype is a real thing and running your backend on “25 year old tech” often does not attract the right kind of people you need to have in this space ;^).

That being said, I’ve been shipping stable and performant backends on the JVM for over 15 years and I could not be happier with the state of Java in 2019.

The ecosystem is amazing. Tooling, too. Talent and jobs are available everywhere.

Also, there is an active effort to modernise Javas syntax and I think it’s going into the right direction.

Re:Why We Chose Rails to Build Gitlab by Roboprog on Tuesday January 22, 2019 @09:02PM (#18975001)
I don’t understand why you got voted down.

I don’t have the enthusiasm for Java I did 20 years ago (the alternate for employment in Sacramento was largely C++ back then, mind you), but I think what you said is accurate.

Personally, I want to see Java retire, but downvoting people who are pointing out legitimate benefits, even if there are counter points to be made, seems rude.

Re:Why We Chose Rails to Build Gitlab by Dirlewanger on Tuesday January 22, 2019 @05:05PM (#18973049)
It's nitpicky, but Java is just so fucking ugly and verbose. Does Kotlin extend beyond the Android ecosystem? I'd totally consider that if the case.
Re:Why We Chose Rails to Build Gitlab by Roboprog on Tuesday January 22, 2019 @06:24PM (#18973857)
Kotlin runs on the standard JVM, not just android.
Re:Why We Chose Rails to Build Gitlab by zmmmmm on Wednesday January 23, 2019 @04:25PM (#18983142)
Consider Groovy if you're interested in something Python or Ruby-like but with access to the JVM and its ecosystem. It's basically the best of of both worlds with almost none of the downsides.
Re:Why We Chose Rails to Build Gitlab by olavgg on Wednesday January 23, 2019 @05:01AM (#18977012)
Not at all, with Hibernate, Spring, Groovy, building web applications is much faster and more maintainable than other alternatives.

I am a huge fan of the Grails framework, they do a lot of things right. As a developer I can focus on creating business value as most technical challenges are easily solved with Grails. Grails is performant and memory efficient. With Grails 4 which will be released later this year, memory usage will decrease significantly more.

Re:Why We Chose Rails to Build Gitlab by itslennysfault on Tuesday January 22, 2019 @04:56PM (#18972969)
IMO yeah. I can't stand Java and for someone to sell me on building any of my backend in Java it'd have to be one hell of a compelling argument.
Re:Why We Chose Rails to Build Gitlab by icedchai on Tuesday January 22, 2019 @05:01PM (#18973001)
What is your preferred language for backend?
Re:Why We Chose Rails to Build Gitlab by mrath on Tuesday January 22, 2019 @04:36PM (#18972777)
mostly in the industry (finance) I work Java is the default. You need to justify and seek approvals for using anything else.
Re:Why We Chose Rails to Build Gitlab by Iwan-Zotow on Tuesday January 22, 2019 @05:20PM (#18973181)
even things like scala or kotlin?
Re:Why We Chose Rails to Build Gitlab by johannes1234321 on Tuesday January 22, 2019 @05:37PM (#18973345)
I'm not in that industry, but in general yes, even other JVM languages, since one of the reasons is that using a common language makes it simpler to move people between projects. If there is a sole kotlin developer or small group of kotlin devs and they leave it's harder to replace. Also integrating new members coming frommother teams is harder. The more architectures, libraries, coding styles, ... are standardized the higher are the chances that others can take over which is beneficial even if individual productivity might be lower.
Re:Why We Chose Rails to Build Gitlab by athrun on Tuesday January 22, 2019 @06:14PM (#18973722)
AFAIK, most of AWS is built on top of the JVM, including massive services like S3 or DynamoDB.

Seems to be working well enough for them.