Whenever I see things like this ("like X, but written in a different language"), I can't help but think that there's a lot of effort wasted for something that makes no difference to the end user. Why duplicate the whole thing just to make deployment (something that happens once) a bit easier?
It makes a difference to me what I put on my server. I don't run any rails apps at all because I don't understand the security implications enough and I haven't had a rails app I wanted enough.
You are right, I don't know that. But, I have an opinion on the likelihood of future vulnerabilities and my chance of being on top of them (and my ability to assess and remediate). My point was more that I care about the implementation language than saying that Go was better (for me, it's not).
I partially agree, but if you're going to be hosting your own server you should be considering the front end features, as well as making sure whoever is going to be maintaining the server it lives on won't want to pull their hair out.
I recently toyed around with InfluxDB which is a similar thing (written in go, no external dependencies) and it was pretty novel to have a 'self contained' binary like that.
I suspect it's especially helpful when dealing with docker images as well.
I definitely see the appeal of a single binary, and maintaining Stash has made us want to tear our hair out, but, in the end, the hours lost there are fewer than the hours we would have gained if the developer of this project decided to help another one. The new features would save us much more time than time spent administrating it.
Whenever I see things like "Why duplicate the effort, help with the existing ones", I cannot help but wonder how people fail to recognize that all great things had once a beginning. Gogs may or may not turn out to be great, but thinking that because it duplicates effort, it's a waste is very short sighted. Examples? How about countless Linux distributions? How about git itself?
You obviously didn't read the README section titled "Purpose". Here's a copy:
``Since we choose to use pure Go implementation of Git manipulation, Gogs certainly supports ALL platforms that Go supports, including Linux, Mac OS X, and Windows with ZERO dependency.
More importantly, Gogs only needs one binary to setup your own project hosting on the fly!``
But even if "all it aimed" was to be a duplicate in another language, that's just part of what will define it in the future. Linus didn't "aim" for his "just a hobby, won’t be big" project to take over the world and it did. Public open source projects have some of the most unpredictable paths - I'm not sure why you're trying to imply this one's an exception and it'll go nowhere!
Absolutely. I also think it's ridiculous that every language has it's own package manager, and some of them work in considerably different ways. Considering the amount of work put into NPM, Gems, PIP, Pear, Brew, RPM, APT, etc... this should just be a solved problem by now.
Oh god yes, we're in a state of package manager hell with all these languages, the worst part is that they all act so differently that it becomes hard to manage with puppet / chef etc...
Does anyone else feel this way?