Hacker News new | past | comments | ask | show | jobs | submit login
Gitly: A light and fast GitHub/GitLab alternative written in V lang (pre-alpha) (gitly.org)
123 points by open-source-ux on Aug 4, 2021 | hide | past | favorite | 128 comments



V and it's creator get a lot of flack here on HN and the criticisms are probably warranted. However, I personally enjoy seeing them out here hustling and really trying to make their language succeed despite all the shortcomings. As someone who skews more apathetic, I enjoy seeing people driven by so much passion.

Now, it's time for me to be one of those critics! It's easy to promote the speed and size of your github alternative when it has a fraction of the features. I'll be curious to see where this goes and I think it has some value but only as a way to dogfood V itself.


> V and it's creator get a lot of flack here on HN and the criticisms are probably warranted.

Hi fellow Penguin :D!

I'm impressed by the creator's dedication here too, but he's clearly biting off more then he can chew - he's been saying that he's making a

* Web framework * GUI framework * SQL ORM * A language that has a lot of promises - seriously checkout their list. * Github alternative * VIM alternative

This stuff is awesome as a project, but each one of these have teams of dedicated engineers sponsored by many companies to hammer out issues and make them as robust as possible. And while he certainly has working demo's of each, they're demos. There's a huge difference between a POC and a robust framework.

A half baked framework is useless sadly, I think he's spreading himself too thin while have a roadmap that looks like a programmer's christmas list.


As the author states, he is not working alone as the following shows:

https://public-001.gitsense.com/insights/github/repos?p=impa...

When you have a large number of people in Zone 2 and nobody in Zone 1, this is a very good sign that effort is being fairly distributed. And if you look at the activity for the last year:

https://public-001.gitsense.com/insights/github/repos?q=comm...

it is extremely active with 98% days active. And if I had to guess, I would say there are at least 5-7 people working on this full time based on the following:

https://public-001.gitsense.com/insights/github/repos?p=cont...

Full Disclosure: I'm the creator of the tool with the insights above.


Not full time, but 5-15 hours/week.


Hey thanks for the insight. It looks like they are pretty productive hours then.


I'm not working on these alone :)


While your here, thank you for the awesome work on the V language!

It pretty much has the (for me, subjectively) ideal features of a small, fast, and static programming language. I've been following it for a while and I'm pretty sure I'll find a good use for it soon!


Thanks! Glad you like it :)


I knew vlang from Volt, been waiting for 3+ years. I agree with some of the parent comment.

But I hold no grudge for you, keep up the spirit and good work.

I hope the project went well


Also

* package manager

* operating system


I think it's good test of lang features


i was annoyed by the hyperbolic ambitious claims but if the guy and his friends pour out solid code then there's nothing else to say :)

also they seem to aim at frugal fat free programming, i cannot not like that


Those that lie often either don't respect other people or they don't have the ability to know when they are lying. Which is scarier?

Go, Nim, and Zig have similar focuses and their devs have put in years of public, good work.

Some of the take downs at the time he was making his initial claims are absolutely brutal and make it clear that he not only couldn't back up his crazy claims, he wasn't getting the small stuff right.

https://christine.website/blog/v-vaporware-2019-06-23

He still hasn't learned.


Some points in that page don't seem like valid criticism. Like, complaining that the compiler is not "zero dependency" on Linux, because it depends on glibc?

Also, allocating a fixed 1000 byte region at the start of a program is not a "memory leak". In fact even glibc has tons of such "initial fixed cost" allocations - IIRC valgrind has built-in "suppression file" to ignore these allocations. (It would be a memory leak if the compiler allocated new 1000 byte chunks every time println is called, but the article doesn't demonstrate it so I guess I'll never know.)


IIRC one of the original claims was to skip libc and do syscalls manually, like Go used to do on Linux.

So listing it makes sense in that context.


That sounds more like a bugfix. Doing syscalls manually is a rather perverse exercise, which go thoroughly proved.


No, this was never claimed.


Hardly an unbiased article:

> V can be bootstrapped in under a second by compiling its code translated to C with a simple cc v.c No libraries or dependencies needed.

Git is a dependency, which means perl is a dependency, which means a shell is a dependency, which means glibc is a dependency, which means that a lot of other things (including posix threads) are also dependencies. Pedantically, you could even go as far as saying that you could count the Linux kernel, the processor being used and the like as dependencies, but that's a bit out of scope for this.

==============

Ridiculous and unnecessary nitpicking.

Also benchmarking the language with a debug build, using a slower backend, and while running vfmt.

Here's a better benchmark: V compiling itself in 0.3 seconds:

https://www.youtube.com/watch?v=pvP6wmcl_Sc


So if it was a release build from the time, there wouldn't have been massive memory leaks, she would have been able to compile 1.2 million LoC per core per second, V would have only used 400kb of space to compile itself, and the curl binary wouldn't have been used for the download_file function? I agree that there's a cutoff where Linux dependencies don't really count as dependencies in this case.


This is great. I try to have an objective discussion about whether or not Christine's critique is fair, get no response, and am downvoted by who I assume are V lang fanboys. Not improving my impression of the language.

It's important to sort out these lies (and apologize for them if they were, in fact, lies) because no company will use a product they can't trust to do what it says. Though it's all at V lang's own peril I suppose.


The rest of her blog posts on V

https://christine.website/blog/series/v


I'm the author of that post if anyone has any questions.


Yeah let’s bash on V again instead of celebrating what this post is about: a really great web app.

Maybe it is time to move on to more productive discussions. People are obviously building pretty interesting things with V.


Calling this "a really great"web app is a significant stretch. It's an extremely bare bones clone of GitHub. Another case of over promising and under delivering from the V team.


I would like to believe Gitly is a really great web app. The problem is, how can I trust the claims that have been made about Gitly, when I have reason to distrust the group making the claims?

Christine's blog posts indicate V lang is blatantly over promising and under delivering. You can't claim a language is memory safe, when it has trivial memory safety issues. You can't claim a language compiles 1.2m LoC in a second, when it takes about 3 seconds to compile 50k LoC. If they said these are the goals for the language in the future, that's a different story but they did not say that. This was 2 years ago, so maybe things have changed and V lang is no longer over promising, but I don't have the stats on hand to back it up and so I remain skeptical. I like the idea of Gitly but I can't trust it does all they claim right now, given V lang's past.

If you have any stats on V lang fixing these issues, I'd honestly love to see them. Being able to deliver on all of these promises, would make V lang an extraordinary achievement.


I read that article, maybe .. maybe they wised up during the last 2 years.


It's a very large amount for the most talented person to learn, much less build multiple production-grade systems with.

We all should get some grace ofc, but does he also not need to show that he's learned not to make exaggerated claims? Otherwise there is no accountability and someone else gets fucked because they run across a bug because the dev didn't know use valgrind while claiming no memory leaks. I can't like that.

How many people would love to get their service on HN for a few hours?


> if the guy and his friends pour out solid code then there's nothing else to say :)

Unfortunately, they don't.


is gitly yet another imaginary revolution ? (honest question)


Is gitly supposed to be solid code?


it was a hypothetical


> It's easy to promote the speed and size of your github alternative when it has a fraction of the features.

I could have said that about Gogs years ago since a high school student made that in their spare time.

Once projects become open-source, the community usually takes over that work. Just like many others, the same could happen to this project, just like how interested contributors did so with the V language as soon as that was open-sourced.


Can you perhaps link to some of said criticism? I'd be interested to read it.


Here is a nice mini series of blog posts about V https://christine.website/blog/series/v


Don’t forget this one: https://christine.website/blog/OVE-20190623-0001

I wouldn’t even for a second using web-facing services from someone with a security track record this bad.


The best bit is this excerpt from the standard library (2019):

  fn download_file(url, out string) {
      // println('\nDOWNLOAD FILE $out url=$url')
      // -L follow redirects
      // println('curl -L -o "$out" "$url"')
      os.system2('curl -s -L -o "$out" "$url"')
      // res := os.system('curl -s -L -o "$out" "$url"')
      // println(res)
  }
Here's what that file looks like today: https://github.com/vlang/v/blob/master/vlib/net/http/downloa...


No, this file is no longer used.

We have a fully working net module:

https://github.com/vlang/v/tree/master/vlib/net/http


In that case, you ought to be mocked for making a mess of the repository by keeping unused files in it.


Come on, that's just mean.

I don't really understand the negativity against V; is there something wrong with setting crazy goals if you're actually working towards them?


Why should anyone be mocked for anything? How is that conducive to the conversation?

You should rethink how you convey your ideas, IMO.


I really don't understand why everyone is making fun of what is clearly a stub implementation. Have we not all written code like this so we can go work on some other part of the code that depends on this?


The people that are making fun of V, instead of helping, at this point are nothing more than hateful jerks imho.

They just want to hate something - if not V, it would be something else.


Most of us also don't splash it all over hn/reddit like it's the second coming of Christ.


You're early obsessed and make it a large portion of your existence to hate something with such a deep passion.

It's astonishing.


Frankly it's rather amusing.


Most of us also do not name ourselves based on things we hate...


I don't get it, is that file's function bodies just comments now? Or does /* */ not mean a comment in V?


Meh. I have some issues with the criticisms there, but they make some okay points too.

I don't see this as a reason to dismiss the entire language though. I've seen more damning arguments against Go, Rust, Zig, etc.


The languages you've listed generally work as advertised and while you might dislike some of the design decisions or tradeoffs inherent in those decisions, ultimately, they do what they claim to.

The same cannot be said of V.


You say that and then do nothing to back it up.


This HN User has been quite outspoken on his criticism: https://news.ycombinator.com/threads?id=vlang1dot0


Some can be found in every thread about the project: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...


>It's easy to promote the speed and size of your github alternative when it has a fraction of the features.

At leat this fraction of features works, what can't be said about gitlab and is only partially true for github. It shows repos, files, commits and what not, what features are missing?


Looks like V author/community is on the track to rewrite the world. Expect operating system stuff next? I'm shocked by how quickly it goes along, though. Gitly is quite usable already, and I appreciate the swiftness. I'd think that Rust community is rewriting the world, but it's happening at much slower pace. Is V's basis strong enough to do this? Seeing the issues like [1] (about the basic memory management stuff) open makes me suspicious.

[1] https://github.com/vlang/v/issues/6456


Could someone explain to me why, after seeing how many exaggerated claims the author has made, they have invested their time into building up a community around it?

I'd be straight up terrified to trust anything serious with this guy's work.

In this instance, the demo won't even load for me and the documentation page can't be bothered to put the most basic of padding in it. Why even release publicly?

Promises, promises.


Yeah, it's absolutely wild. Even the main contributors don't really know what they're talking about, they just regurgitate the party line.

http://imgur.com/a/hUXR6s3

For instance, when asked how the memory management system works, here you see a team member give the standard response: the compiler inserts calls to free when it detects the variable is no longer used. This seems reasonable to anyone who hasn't thought much about PL/compilers before. But when pressed further, you see Alex admit "most stuff is simply cloned ATM" which is in stark contrast to the "autofree handles 90-100% of objects for you" on their homepage.

Or this where Alex shows he has no idea what UB is?

http://imgur.com/a/mbLtASH

UB is a property of the language's abstract machine. Common C UB like dereferencing a null pointer or signed integer overflow has well defined semantics on basically any commodity hardware manufactured in three decades and yet it is still UB not because of the runtime properties but because the C abstract machine says it can't happen and compilers are free to optimize based on that assumption. For a language that compiles to C and claims no UB, the author should have a much better understanding of this.


I confess that I've found it both enraging and depressing to see that the "bootstrapped-by-hype" model works even in programming language development, which I had (naively, I guess) assumed would be more immune to that sort of thing. I suppose the field is composed of fallible humans just like any other.


You can't even imagine, just wait until you run across C++.


Having tried out a bunch of different things without clear reward, it feels more like programming languages is 90% hype / fashion.


My honest opinion (as someone with no dog in this fight) is that the author was naive and really bad at PR, but is improving overtime.

I generally encourage new programming language efforts, so I'm willing to be more generous with forgiveness in the hopes that this succeeds.


It's not even a question of "how bad". There was way too much PR given how immature the project was, at least at the time. I don't think the author had had a lot of experience as a language designer / compiler implementer when the project was started. One advertised feature of the compiler was its supposed simplicity, such as getting along without an AST. I doubt this was a good choice and I think they ended up adding one in.

In my perception it was mostly sold as a piece of engineering by PR like this (quote from OP): Cheapest server $160 $20 $3.50 [2]


They made hugely exaggerated/false claims while raking in lots of Patreon money.


"Lots" is very, very subjective. What country do you live in? I would say (as an appreciative donor/patron myself) there has been very, very little in the way of direct donations to the founder himself. This is no "get rich quick" scheme. Frankly I don't know of any programming language that's ever been such a quickie in this regard.


https://news.ycombinator.com/item?id=20230351 says they got $927/month some time ago, which is a decent amount of income I think. It seems to be less now.


Medvednikov seems to be good at marketing ¯\_(ツ)_/¯

Given the over-prommise-under-deliver launch of V, it boggles my mind that it gained so much traction on GH.


Same could be said about Elon Musk but he might become first trillionere. Sometimes you have to try bold stuff. I'm rooting for them.


[flagged]


> Any actual valid examples of exaggerated claims?

How about this one:

> It will be launched this month. We're actually going to switch to Gitly CI, since Github Actions has been really slow for us.

I setup a reminder for 1 month.


> You create a new account to spam the thread with accusations, and links to biased articles (see my comment above).

If you'd just look at my comment history, it's obvious this isn't the case.

I don't understand, if it is this unready, why not test it locally?


Already beat you to it https://github.com/vlang/vinix


People are always talking about the 10x engineer. Nobody imagined that someone would invent the 10x programming language.


Jobs' engineering team did it when compared with other libs at the time with NextStep. I know devs who claimed they were 3x (or more) more productive than their Windows and other Unix counterparts during that time. Rails arguably brought a similar revolution in the webdev world.


Hi,

Author of V and Gitly here.

Gitly is currently in alpha, and works more like an example/documentation of the V web framework and V ORM.

You can't even sign in at the moment.

It will be launched this month. We're actually going to switch to Gitly CI, since Github Actions has been really slow for us.


You might have trademark issues with Gitlab's Gitaly https://gitlab.com/gitlab-org/gitaly


Saw your hiring post - may I ask, what funding did you get?


Have you considered integrating with git’s pull request model (eg: sending an email) rather than just cloning GitHub web-based fork-based model?


Good luck on your projects! You should probably add Gitea to your comparaisons, at it seems to be the closest to your project (written in Go, lightweight).


Unfortunately this will probably run afoul of Git's trademark:

"In addition, you may not use any of the Marks as a syllable in a new word or as part of a portmanteau (e.g., "Gitalicious", "Gitpedia") used as a mark for a third-party product or service without Conservancy's written permission. For the avoidance of doubt, this provision applies even to third-party marks that use the Marks as a syllable or as part of a portmanteau to refer to a product or service's use of Git code."

How enforceable that is... I'm not a lawyer.

https://git-scm.com/about/trademark (section 2.3)


How do gitlab, github, gitea, etc get away with it then?


GitLab team member here.

Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license.


GitLab and GitHub predate the trademark, and were explicitly granted an exception when the trademark was approved.


Is that kind of extension to trademark even legal anywhere?

That's so aweful how pissing territory behaviors are driving mindset of people involved in intellectual works.


Unless someone has agreed to a contract binding them to the Git trademark policy, the policy would seem to serve as nothing but a statement as to the Conservancy’s preferences (except where it explicitly permits something, where it may constitute a gratuitous license); what is enforceable is trademark law.

But, for a git-related service offered in commercial trade, there would seem likely to be a trademark violation independent of the policy, so the Conservancy is probably within their rights to enforce the policy in this case.


It would be a stretch but git has another meaning, which some find consistent with their perception of SWEs ;)

https://www.merriam-webster.com/dictionary/git


So does Apple but you'd have a hard time defending your Apple Phone in court on that basis


Strange. What about GitLab and Gitea? And probably others.


In the case of Gitea, an argument could be made that it's actually `gi•tea`, not `git•ea` :)


Not how trademark law is argued I think. Mike Roe Software (mikeroesoft) had a similar challenge. Trademark law is kind of inane but what are you going to do.


Gitea is a portmanteau, which is explicitly covered.


EcmaScript all over again. As I understand, letter reversal doesn't count?


Could they keep the same domain and change the name to gitly.org?


So I should be seeing incoming lawsuits for GitLab (Who also acquired Gitorious and Gitter) GitHub, Gitea, GitKraken, Gitcoin, Gitpod, GitSense and a VSCode tool called GitLens?

Why haven't they happened yet?

Downvoters: So you have ALL sources to your claims that these aforementioned Git-related services have the necessary permissions to use the Git trademark from the Software Freedom Conservancy?

I don't want 'probablys' or 'maybes' but full sources to ALL these services that explicitly show the permission granted for using the Git trademark under license.

GitLab is covered. Evidence for the rest?


They're used under license. [0][1]

> Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license

[0] https://news.ycombinator.com/item?id=28062305

[1] https://about.gitlab.com/handbook/marketing/corporate-market...


You can add my startup GitSense as well

https://public-001.gitsense.com/insights/github/repos?q=wind...

The thing is, from what I've read, if you were using Git<plus something> before Git started cracking down, they will let it slide. I also think they don't care until you hit it big and cause issues for them.


They almost certainly have permission to use the phrases that way.


One simple question:

Do you have evidence of this 'permission' on all of them excluding GitLab? Any sources?


Only 128MB of RAM? What happens when you try to GC a huge repo? This must mean only the non-git requirements. Under the covers either libgit2 or the git executable are being used, and those will use many resources depending on the operation.


Well this is for average repos, you can't expect to run a huge multi gigabyte repo on the most basic instance. I'll make it clear.


Good to see another open source git development platform. I am currently using sourcehut and am very happy with it.

https://sourcehut.org/


They claim to be the fastest among all such platforms too.

https://forgeperf.org/


Wow—they weren't kidding when they said fast! It's interesting how I've been conditioned to expect delays on websites—so when I come across something like this which loads seemingly-instantly, it's super noticeable!


Don't like that it tries to mimic Github UI.


What would you do instead? They popularized that interface, and I think it's very usable.


anyone here keep up with V and can give a quick rundown of how development of the language has been going? I used to keep up with it out of curiosity but haven't checked in in awhile.


Looking at gitly repository it almost has no features, only a fraction of the basic git features are present, and they are barely working. Why is it being advertised here on HN as a fast alternative of github/gitlab?

P.S.: Probably the website crashed, it's giving me 502 bad gateway from cloudflare


502 was fixed.

I'm actually surprised it handled a front page HN traffic spike on a $3 VPS.

That was a good test of V/vweb.


Now it's online


Please add "contributions in the last year", thats the one thing keeping me from using GitLab:

https://gitlab.com/gitlab-org/gitlab/-/issues/22578


I'm a big fan of GitBucket - It's like GitHub-in-a-WARfile https://gitbucket.github.io/


One thing that is positive is that writing an application in a new language is a 'rubber meets the road' situation where the language is being tested in the real world.


I like the approach that sourcehut took overall. I would like to find a way to implement issue tracking into Git, but the mailing list approach isn't a bad idea.


Isn't that what Fossil does? https://www.fossil-scm.org/


Fossil does all kinds of awesome stuff out of the box, I remember looking at it and being blown away.


Yes, but I honestly hate the idea of having to learn yet another SCM. I may reconsider at some point though, especially if more implementations emerge.


First time I hear about it. What alternative implementations git has?


There are multiple... JS, Go, Python, etc.


> I would like to find a way to implement issue tracking into Git

Maybe git-bug would work for you? https://github.com/MichaelMure/git-bug


Thank you. I am interested, but am concerned by this statement:

> This is now more than a proof of concept, but still not fully stable. Expect dragons and unfinished business


git-bug author here.

It's still not v1 where there would be some sort of backward compatibility guarantee, but it's close if you are using master. Note though that even without that guarantee, there is git-bug-migration to provide you some safety.

There is however some bugs and missing features, as in any software that young with an author busy buying/refurbishing an apartment ;)


That's something you should ask the git-bug authors, I vaguely remember some being on this very website.

FWIW I don't even use git-bug, I just know it exists :).



> “ Works without JS”

> “ Open source“

> “ Minimum RAM needed is only 128 MB”

Curious to see how this compares to @drewdevault great Sourcehut.org alternative and to get his take on Gitly

For performance comparison, maybe Drew will add Gitly to https://forgeperf.org/


Checkout https://github.com/theonedev/onedev for a serious self-hosted git server, with CI/CD baked in.

From a user of OneDev:

>> As an open source project, it is too good to be true


Sign in takes you to a 404 Github OAuth


Any documentation on the CI/CD features?


Can what this guy is doing be done without making mistakes? Is this thread not good publicity? Does crazy_horse not sound pathetic and amedvednikov comparatively heroic? Could we not dream a little, please?


amedvednikov only sounds heroic if this is first time you've heard about him or the criticisms towards him over the years.

To those who've heard of him before, he's just a conman.

Make no mistake, this is just one of his many "ambitious" projects that he creates for publicity and then abandons after a while. Again, this isn't the first time he does this. He promises the world and under-delivers.


I choose to give this guy the benefit of the doubt.


Can you give few examples?




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: