News for hackers. Stuff that matters.
Re:Why We Chose Rails to Build Gitlab by sytse on Tuesday January 22, 2019 @04:41PM (#18972827)
As listed in the article under 'Overcoming challenges' we do replace code in Go and Vue where needed. I do believe Rails is still the most productive framework out there.

See https://docs.gitlab.com/ee/development/architecture.html#com... for more information on what parts are Go.

Re:Why We Chose Rails to Build Gitlab by lettergram on Tuesday January 22, 2019 @04:45PM (#18972873)
I’ve utilized inline C quite a few times to replace sections of code. Specifically to do some of the server side computations for my applications:

e.g. https://hnprofile.com

The full system is built in rails and I query and generate information on a million or so accounts and tens of millions of comments. Haven’t really hit a bottleneck yet.

Re:Why We Chose Rails to Build Gitlab by Xeronate on Tuesday January 22, 2019 @06:47PM (#18974079)
Serious question. Why do so many companies choose to rewrite in Go? I tried to like it, but it just felt so painful to use.
Re:Why We Chose Rails to Build Gitlab by Scriptor on Wednesday January 23, 2019 @01:43AM (#18976205)
It seems that every few years a new backend language comes to the forefront and becomes a popular for greenfield projects or rewrites. First people moved from PHP to Ruby, then Node, and now Go.

Of course, Go's popularity is helped a great deal by Google using it, as well as the huge amount of devops software written in Go (docker, terraform, kubernetes). But at some point the hype for those will settle and they'll just become more tools. At the same time there'll be more and more legacy Go projects at various companies that won't be very exciting. Around about this time we'll probably see the next language start rising in popularity.

Re:Why We Chose Rails to Build Gitlab by pdimitar on Tuesday January 22, 2019 @05:24PM (#18973217)
To me, the article reads like "We REALLY don't want to abandon Rails so we rewrite the hot paths to Go". I mean no offense; I just wasn't able to find good argumentation in it for sticking with Rails. To me, the article kind of makes the argument for Go.

"Developer productivity" is not a myth and it does exist. But Rails is very far from the only framework that gives you that.

IMO you should seriously evaluate making your web + API gateway in either Elixir or Go, outline a migration plan and get on with it.

Re:Why We Chose Rails to Build Gitlab by sytse on Tuesday January 22, 2019 @05:38PM (#18973348)
I think a rewrite in Go would greatly increase our line-count.

I think Elixir is very interesting but Phoenix still has some way to go before the ecosystem matches that of Rails. Our Gemfile.lock https://gitlab.com/gitlab-org/gitlab-ce/blob/master/Gemfile.... is more than 1000 lines!

Re:Why We Chose Rails to Build Gitlab by pdimitar on Tuesday January 22, 2019 @05:53PM (#18973478)
Well, that complexity is yours to evaluate -- what I am saying is that you are seriously underestimating the Elixir community. And our forum is full of people making this same admission and saying they regret not reaching for Elixir earlier! :)

In the end, it's your call of course. But line-count doesn't say anything about a project's complexity. Go is quite verbose but with rigorous CI, tests, code reviews and linters, teams produce pretty hardcore and good software in Go, regularly.

Re:Why We Chose Rails to Build Gitlab by sytse on Tuesday January 22, 2019 @06:01PM (#18973551)
I agree Go produces great software. But for the same amount of functionality it tends to require more lines than ruby. I tend to favor the more expressive language http://www.paulgraham.com/avg.html

Another thing is that there isn't a web framework like Rails in Go. Although I'm keeping an eye on go-micro and we plan to add that as a template soon.

Re:Why We Chose Rails to Build Gitlab by pdimitar on Tuesday January 22, 2019 @06:03PM (#18973578)
Yeah, fully agreed on that. Go just doesn't have as productive a framework like Rails. That's why I only use it for very small websites or even smaller API gateways. Or CLIs. Or network daemons.

I am not disputing your choices. Just wanted to give you the quick and intuitive (and likely misinformed) immediate reaction that I had from the article.

Keep making GitLab awesome. <3

Re:Why We Chose Rails to Build Gitlab by sytse on Tuesday January 22, 2019 @06:53PM (#18974136)
Thank you! <3
Re:Why We Chose Rails to Build Gitlab by dieblur on Tuesday January 22, 2019 @05:46PM (#18973422)
Line-count really isn't a great way to measure developer productivity either though...
Re:Why We Chose Rails to Build Gitlab by Scarbutt on Tuesday January 22, 2019 @06:26PM (#18973873)
It does measure bug count though.