Moving to GitLab: Yes, it's worth it
about.gitlab.com
about.gitlab.com
[1] https://github.com/gitlabhq/gitlabhq/blob/master/doc/install...
https://github.com/gogits/gogsHowever, it is the "home of developers" right now, and they probably would prefer a low barrier to entry for people to get involved.
I totally understand why people host open source projects on GitHub.com, most open source developers have accounts there so it lowers the barrier to contributing.
BTW If you host it on GitLab.com people can login with their GitHub account.
- code review
- deployment key
And the builtin SSH server will randomly hang once or twice every day.
We did a comprehensive internal review of both gogs and gitlab. Gogs was a long way ahead of gitlab in terms of stability/speed and had pretty much all of the features developers tend to need.
(I used the tigris.org migration tools).
The GitLab team is doing a great job. Thanks you guys.
Any way we can prevent those false starts for other people?
None of the false starts were due to flaws or confusion in GitLab specifically.
I should, and if you pester me I will, sanitize our internal how-to documents and scripts and contribute them to the Gitlab community so the next guy can benefit from our experience.
It would be great to receive some contributions to our documentation. It has proven a big challenge to make sure it covers everything and stays up to date. We'd really appreciate it.
That's certainly not how I would write code today, but it is amazing to see how much top-notch programmers vary.
If you want to give it a spin, check out our recent blog post on starting from 0: https://about.gitlab.com/2016/07/29/the-basics-of-gitlab-ci/
Because if that's what it is, that is pretty kickass.
One caveat is that we might introduce a new API by releasing a new version of GitLab and GitLab Runner at the same time, then you would need to upgrade you project to stay compatible.
BTW To ensure nobody is confused, you can use GitLab Runner to test all kinds of projects on all kinds of hardware. We're discussing developing an alternative to GitLab but reusing GitLab Runner.
Docs: http://docs.gitlab.com/ce/ci/docker/using_docker_images.html...
Im referring to using docker images as the deliverable. I mostly want to just have a gui to do "docker pull x" "docker stop xcon && docker rm xcon" "docker run --name xcon -v /volumes/x/config:/var/www/config -p 8080:80 x" for me. There would technically be nothing to be stored in the gitlab repo here, except the config.
Replace the "docker pull x" step with docker build in the event that I'm using a dockerfile to build a custom image, which could trigger as a result of updating the dockerfile... but usually the dockerfile doesnt change, it just needs to be re-run to pull in upstream changes.
Two options for configuring the runner:
1: http://docs.gitlab.com/ce/ci/docker/using_docker_build.html#...
2: http://docs.gitlab.com/ce/ci/docker/using_docker_build.html#...
This would also be a great reason to test the awesome GitLab Docker Registry[1], which is also included in CE!
[1] http://docs.gitlab.com/ce/container_registry/README.html
I was thinking about making a game in Löve for a while now, but I have never done any automated testing with it.
Is there a good tutorial for that? Or do you feel like writing one? ;)
I wrote a bit about testing on my blog, but it's more about the architecture of how the user-input system meshes with the internal reprogrammability. There's a bit about fuzz testing though: https://technomancy.us/180
Maybe I'll follow it up with a more detailed post specifically about automated testing in Löve since it seems to be not well-understood.
Would love to hear your thoughts on developing a game using GitLab, anything we can improve in that regard?
All the minor complaints I had a while back have been addressed (not showing the readme as the splash page, and not being able to reply to issue emails) so I've been quite happy with it.
I also appreciate how force-pushes to master are disabled by default. The fact that my browser's Emacs key bindings don't get stolen by the issue textarea to do stupid markdown stuff is very much appreciated. (glares fiercely at github)
We've done a few talks on Git basics to help increase adoption, and are doing a free webinar "Git Foundations: Basic Concepts and Definitions" next week: https://www.eventbrite.com/e/git-foundations-basic-concepts-...
This is the sort of result it makes us very happy to achieve:
"I have got by on minimum understanding of Git for a couple of years now--this really brought up my confidence in using Git. After I learned the Git internals, the esoteric commands really started falling into place." --Nicholas Santucci, Monitoring and Performance Engineer
If you plan on doing physical events, drop me an email (job at gitlab).
We need to be able to set priorities (ideally customizable, but at minimum high/med/low). We can kind of do that through labels, but it's messy because you can only search for one label at a time (no boolean combinations of labels).
Right now, when you assign an issue to a user, it's considered "in progress", and from there it can either be unassigned or closed. It would be nice to separate the state of the issue from the assigned user, since in our current workflow we assign many issues to a user, but that user might only be working on a few of them at a time. Using our current bug tracker, we can differentiate between "Open, unassigned", "Open, assigned", "Open, in progress", "Fixed", "Verified", "Closed", etc. I know having a completely customizable state diagram for issues is a big software task, but maybe there is some intermediary level of complexity that would allow better tracking of what is actually being worked on now vs. what is assigned to people.
One problem is that a lot of things automatically work with BitBucket and GitHub but GitLab need manual setup. For example, TeamCity has out-of-the-box support for both BitBucket and GitHub but you have to set up GitLab as a raw git repository (and create a user for it etc.).
edit: I should add that I've also used GitHub professionally with private repositories. However, I quite like having separate credentials for open source vs. more sensitive work.
Our hope is that with time, it'll become obvious that when developing an application, you integrate with GitLab as well as with BB and GH.
Addressing this issue will go a long way, in making it easier for others to create solutions that can easily integrate with GitLab.
For the upcoming release (8.11, August 22nd), we're adding deploy keys with push permissions [0]. This would allow you to basically do the same thing.
That said, that doesn't make it very clear that you can use these for this purpose, so I've added a note to re-evaluate these.
We're also expanding OAuth scopes, potentially making it easier / more attractive to integrate [1].
By providing supported injection points in GitLab's UI, GitLab will be able to signal to others, that they are a solution you can safely build on top of.
Right now, to integrate deeply, you'd have to go through the heavy-handed process of creating a service [0]. That then does allow you to do almost anything, but the barrier to entry for that is high.
I created an issue for your proposal and hope you can provide some more feedback on how this would work, ideally [1].
[0]: http://docs.gitlab.com/ce/project_services/project_services.... Services
> Not sure if you guys have people constantly looking for mention of "GitLab"
We do! Channels straight into chat.
There are some plugins listed here [0], but we hope to have official plugins in the future.
As for JetBrains, we discussed this option with them - it would help if you create an issue for that on their platform as a user request to surface it. The more demand their users will have for this request the more likely it is to happen.
Someone made a Saltstack state[1] that I've used and had some success with - installing and configuring Salt from zero and using this config is still faster than installing Phabricator by hand.
Also a lot faster.
Guess I'm just not the target audience :(
Phabricator could easily include their metadata in a merge commit, instead of collapsing the branch into one mega-commit. I know some people love a flat history without merge commits, but those lose a lot of info available with a graph/tree visible when there are no forward merges.
https://secure.phabricator.com/book/phabricator/article/arca...
> Phabricator could easily include their metadata in a merge commit
And this is what happens :-)
What's funny is that mutability didn't exist for Mercurial support because when it was written Mercurial had no official mutability feature.
And I can only suppose mutability being default for git support is because of Facebook's dev style. It's wrong to assume that those who want merge commits for the final merge onto master do not rebase locally before sending a pull request. Rebase is a standard tool for working on your branch (aka patch set aka patch queue) and it's normal to rewrite it upon each revision of the branch sent for review. Does phab support multiple revisions of a branch in one diff or does it require separate diff tickets? This is something that Gerrit got right, allowing one to see the diff between revisions of a branch (patchset).
Customizable Task Management
Plan features, track bugs, and award tokens. Maniphest lets you customize input forms, use custom fields, and has a rich API.
Keeps track of lots of bugs.
You can assign them to people.
Maybe you could fix them, eventually. (optional)
Build unique task forms for every department.
For example, look at this feature in Phabricator itself: T6526
- Business Rules
As your company scales, keep track of activity with Herald, which notifies you when things you care about happen (like a specific file being changed).
Write business rules.
Everyone loves business rules.
Keep an eye on suspicious new hires.
Warns you about plotting and scheming.
Build triggers on tasks, commits, revisions, and more.The other thing would be "ease of deployment" or lack thereof- if you're going for anything other than omnibus installs or docker images then it can be a bit painful. (I wanted to run on freebsd for example).
But, yes, it's super nice to have something not only comparable to github but even superior in some areas. I would definitely run the enterprise edition if that were my decision at work.
[0]: https://libsecure.so/t/github-alternative-aka-weve-moved-git...
it also suggests operating under bad practices like running gitlab from /home/
I guess I could write a decent salt-formula to do all this, but I can't handle upgrading of gitlab easily, it always breaks when I take a new branch from git and run a gitlab-ctl reconfigure.
[0]: https://github.com/gitlabhq/gitlab-recipes/blob/master/insta...
https://www.freshports.org/www/gitlab/
https://github.com/t-zuehlsdorff/gitlabhq/blob/master/doc/in...
https://github.com/t-zuehlsdorff/gitlabhq/blob/master/doc/up...
https://github.com/t-zuehlsdorff/gitlabhq/blob/master/doc/up...
We now have strengthened the team that works on these issues. I'm seeing whether it's possible to ship this with 8.12 (due Sept 22nd).
We'll be rolling out a major release next week, might be the right time to spread a word to colleagues ;)
However, you can already deploy from GitLab quite easily to Heroku, it just requires a single line in your CI config:
http://docs.gitlab.com/ce/ci/examples/test-and-deploy-ruby-a...
Mostly, we need a way to defined custom fields to be able to triage, query and reassign automatically. Like for example components or platform. And labels are clearly not enough for that.
I'd really like for UI updates in the future not to be jarring and seemingly pointless. I really liked the UI right before the overhaul, only minor tweaks seemed truly necessary. Many of the tweaks I would have suggested before have come through; such as putting profile information and notifications in the upper right hand corner. I'm glad about that.
Other than that; I'd like to say that I have really liked using Pivotal Tracker for developing software. It has a rigid pipeline between requirements and results. Configurability ruins some productivity tools. It would be swell to have something like "Pivotal Tracker lite" associated with GitLab (in that GitLab CI is). It's not a difficult kind of software to do reasonably well, and it would make GitLab the ultimate software project productivity suite.
> Other than that; I'd like to say that I have really liked using Pivotal Tracker for developing software. It has a rigid pipeline between requirements and results. Configurability ruins some productivity tools. It would be swell to have something like "Pivotal Tracker lite" associated with GitLab (in that GitLab CI is). It's not a difficult kind of software to do reasonably well, and it would make GitLab the ultimate software project productivity suite.
Could you elaborate on what kind of features we'd be required to add given your suggestion? What do we miss?
The sidebar is a global navigation and not always necessary when interacting with page-specific content on the site. GitLab is very content heavy and by allowing the sidebar to be collapsed, it allows users to have more space on smaller screens to read/scan the information that they need. As you mentioned, the sidebar can be pinned so users can view the navigation all the time if they prefer, esp if they are using a larger screen.
If you have other examples of changes that you felt were pointless, I'd love to find out the reason for the change for you!
I also urge you to voice your opinion by making an issue for changes that you think would help improve the user experience. https://gitlab.com/gitlab-org/gitlab-ce/issues/new
Testing your hosted version, loading this page[1] for example takes 4 seconds (3.6s TTFB). Don't get me wrong, the platform and its features are very broad and very good, but I personally can't stand having such long loading times. It's very frustrating because I really want to use GitLab and its features.
My feedback would be to set a main focus on reducing the TTFB for the Web UI, but also the Git server, because it takes a couple of seconds for it to respond to pushes.
https://tools.pingdom.com/#!/cOKg2F/https://gitlab.com/gitla...
GitLab.com is too slow. We're working on it here: https://gitlab.com/gitlab-com/infrastructure/issues/59
For example, take a look at the drop in response time in the middle of last month: http://stats.pingdom.com/81vpf8jyr1h9/1902794/2016/07
We've focused on speeding up some more common pages (Issues, MRs, etc.), but still a ways to go for the rest of the application!
Ceph should make a big difference once we get GitLab.com running on it in a few months, the reason the commits page specifically is so slow is because our current infrastructure is bottlenecked by filesystem-heavy interactions (e.g. getting all the recent git commits for a repository).
Ceph issues are here: https://gitlab.com/gitlab-com/infrastructure/issues?scope=al...
GitLab.com is slow, occasionally painfully so. We're very aware of that and are working to improve that. You're welcome to watch or contribute here [0].
That said, I'm holding off for now because I'd love for it to replace both Github and our current ticketing system, and rather than doing two migrations, I'd rather wait a few months until you guys have fleshed that out and do it all at once. The issue boards on your roadmap look absolutely fantastic, but the true killer feature I'm waiting on is time tracking, which I'm hoping makes it in later this year. Get that in and I think you'll see people flock to Gitlab.
- https://gitlab.com/gitlab-org/gitlab-ce/issues/18687 - https://gitlab.com/gitlab-org/gitlab-ce/issues/20608
If you have ideas to improve the current vision, don't hesitate to join the conversation!
[1]: https://githost.io/
I've used omnibus installer and it was almost painless, only a couple of issues because of LXC limits.
My only concern is resource usage, it does take at least 2Gb memory, are there any options to tweak it?
That said, there are ways to tweak it. I believe you can reduce the default amount of Unicorn workers to one, as a start. Further than that I'm out of my league; I'll ask one of our awesome service engineers to respond here.
Well done Gitlab :)
GitLab was a great idea but from my experience it's been built on an extremely frustrating method of deployment.
I'm not a dev ops person nor do I want to be. I want things to be as simple as "run this and it will work" without me needing to do much of anything.
I tried to setup a GitLabs instance but after running a simple update command (apt-get update && apt-get upgrade) it broke. It seemed to have something to do with something called Sidekick at the time or something along those lines. It was just frustrating that the automated update scripts from their deb BROKE their own system. That just should never be a possibility in a system, I have near no tolerance for dealing with crap like that.
After messing around with it for a while I gave up and tried Gogs. It was easier to use but using go's build tools yielded similar problem for me. It's not the easiest thing to setup and takes a bit of know how to get Gogs and golang's build tools working (I know someone is going to tell me I'm wrong and that this did not happen to me).
I settled on GitBucket [1] and I have to say I'll not be switching to anything else. It was simple: download and run a single jar file. I setup an unprivileged user, it's own opt folder, and a small init.d script to do everything I needed. To update I download the latest version and I do a drop in replacement with the .jar. Nothing difficult. (Sadly GitHub seems to have put legal pressure on them to change their 'look' so they've done that but before that it was perfectly stable in appearance unlike GitLabs).
If anyone is interested in the self-hosting aspect of this, I'd say don't look at GitLabs, Gogs, or any of the other systems out there. Look at GitBucket.
Again, I'm as much of a sysadmin/debops is a neurologist in the way that I'm in no way a neurologist. If I cut open someones head, maybe messed around with some things, and closed it up they might be ok. That's how my servers 'run'.
Anything outside securing the system (ssh key auth, non-root user, etc) to a standard good enough for me is not doable.
Some things are a little bit akward but BitBucket didn't had this, too:
- FF only merges is only EE (too bad that would be a really major selling point even for CE, squash button would be unnecessary)
- CI is a little limited compared to a full blown Jenkins - We hit a CI bug which still shows up "Running" Pipelines https://gitlab.com/gitlab-org/gitlab-ce/issues/19455
- Artifacts API is limited to everything or nothing
- CI Stages can be defined as trigger only but you can't have multiple triggers that starting different things (considering a production trigger and a testing trigger while you don't want the 'manual' thing directly in GitLab, especially when integrating into other systems makes this a flaw)
- No Custom CSS (yeah our logo isn't 72px x 72px...)
But then again BitBucket didn't had these things anyway so except the bug it's nothing that would've hold us back. Everytime you wanted a Feature for BitBucket, the guys said that there is/was an extension. How dare that costed a shitload of money which would even superseeded GitLab EE.
> FF only merges is only EE (too bad that would be a really major selling point even for CE, squash button would be unnecessary)
These are always hard choices to make for us. We wrote about these decisions here [0].
> CI is a little limited compared to a full blown Jenkins - We hit a CI bug which still shows up "Running" Pipelines
We're still young, but confident that we'll get there! CI/CD is a major focus for us and we're working really hard to improve it with every release. Love to get specific feature requests for things that we miss in comparison with Jenkins.
Regarding the bug: I've pinged our PM on it.
> Artifacts API is limited to everything or nothing
Could you elaborate? I know we have numerous improvements planned, but I'm not sure about their prioritization.
> CI Stages can be defined as trigger only but you can't have multiple triggers that starting different things (considering a production trigger and a testing trigger while you don't want the 'manual' thing directly in GitLab, especially when integrating into other systems makes this a flaw)
Hm, could you write a feature proposal for this [1]? It sounds like a great improvement.
> No Custom CSS (yeah our logo isn't 72px x 72px...)
We're extremely hesitant to do this, as we make many changes between releases. This would break custom css with every upgrade, in turn resulting in a worse experience.
I rather hear suggestions about specific parts in the interface that should be made customizable or suggestions about changes to the UI altogether.
Although I'm not a fan of custom css, there is an issue to discuss this and I welcome your input there [2].
[0]: https://about.gitlab.com/2016/01/11/being-a-good-open-source...
Oh and thanks god for the easy backup stuff, which even works while running (which other products doesn't....)
Do you have more examples of workflows we are not supporting at all or well enough?
> - Artifacts API is limited to everything or nothing
Right you are, you might want to track this issue[1].
> - CI Stages can be defined as trigger only but you can't have multiple triggers that starting different things (considering a production trigger and a testing trigger while you don't want the 'manual' thing directly in GitLab, especially when integrating into other systems makes this a flaw)
I don't fully comprehend what you mean, could you elaborate?
https://gitlab.com/gitlab-org/gitlab-ce/issues/19826
So either that or have a way to name triggers which I opened here:
https://gitlab.com/gitlab-org/gitlab-ce/issues/20574
And I guess these are the things my company does / did with jenkins.
There is also another downside but we don't do that anymore: You can't push from CI to master branches, some people do tag and create builds with their CI / CD (which we also did) but now we just push a Tag to the Repo and the CI will be: '- only: tags' and catch that up.
That's all stuff I can think of now which is probably not supported by most "simple" CI / CD Tools. I guess only the big one's have such a thing like TeamCity, Jenkins and Bamboo.
It's hard separating the different moving parts (gitlab, gitlab-workhorse, gitlab-shell+ssh, postgres/mysql, redis) but I think I will have a merge request ready soon enough :D
Do you leverage GDK? [0]
I have some code. I guess I can submit a merge request + issue on gitlab-ce and gitlab-workhorse, but I need to read CONTRIBUTING and PROCESS first :P
The first example of 8 developers and 20 repos is $10/month
or 100 developers and 300 repos examples is $100/month
What is the cost and/or time involved in maintaining DigitalOcean (or whatever VPS)? Security updates, upgrades, redundancy/availability, backups, or when something goes wrong the time involved in debugging/fixing (github/bitbucket have had their problems, is gitlab 100% available w/o hiccups)?
GitHost for teams of up to 100 is $80/month.
Moved it all into the google cloud and it works at the speed of the network. But we don't really need any of the features except the git repository anyway.
Self-hosted might be slow if you don't have enough RAM on the system you're running it with, but as long as you have more than 2GB it definitely shouldn't take more than 1 minute for a basic operation.
As for GitLab.com, that can be slow (we're working on improving it, much better now than it was last year, but still progress to be made!), but it should never take more than a minute, otherwise it'd just timeout. When did you try it out?
I can't believe this still isn't a Github feature. I don't know how many times I've lost track of issues or forgotten because I can't flag them.
We'll be waiting for you at https://gitlab.com/users/sign_in :P
The response time on gitlab.com was painfully slow. That extra 2-3 seconds waits for each commit was enough to drive me back. I still use github for professional projects and bitbucket for personal ones.
I hope you're willing to give GitLab another try when we've improved the performance of GitLab.com or by hosting it yourself.
Follow our work on GitLab.com performance here: https://gitlab.com/gitlab-com/infrastructure/issues/59
I pay for GitHub and enjoy it.
[1] comes with git, screenshot: http://static.lwn.net/images/ns/kernel/gitk.png
We have an Activity feed which you can set as your homepage if you'd like, though maybe it's missing features you'd like?
However it is sluggish on a 1GB box and I think you need at least 2GB. Since Linode doubled the RAM on their $10 boxes then you can get it for the same price.
One of the benefits of working for a software company that started in the pre-cloud era is a surplus of server boxes, now retrieved from colo racks. :-)
If your code is private and not meant to fall into external hands, then putting it on a VPS won't protect it. The only way is to put it on a machine that's only used from workstations that access it in a local-only fashion, inside containers/vms that have no way to contact the outside world. This means the build process may not access the internet and has to rely on a cache of external libs if needed and allowed. This also implies that network config won't allow access as forbidden via VLANs or similar measures.
If someone wants to steal your code, grabbing it from your vps won't be harder than doing the same on github/gitlab because the procedures to get access will be very similar.
I suspect by private code you mean code which shouldn't be publicly clone'able but isn't behind locked doors otherwise.
Out of curiosity, does the import process include all issues, PR and comments?
(BTW labels are also imported)
Let me know how it works for you; happy to provide feedback to make it easier for your purposes!
No troubleshooting. But we're a small (<10 developers across 4 repos with access granted to ~ 30 people to GitLab for ticketing) team. Even my non-technical people are able to use GitLab for ticketing without bugging me, so that's fantastic.
Love it.
It comes with support for automatic offsite backups (we use S3), so besides occasionally restoring to make sure they're working, that takes no time at all.
The pricing is extremely competitive. We are a small shop so the smallest package ($35, recommended for up to 30 active users) is good enough. We started with a self-hosted GitLab via docker and switched to GitHost as soon as it was bought by GitLab.
The instance I maintain takes me about 15 minutes a month. Security updates are done automatically so all I've got left to do it 'apt-get install gitlab-ce' once or twice a month and thats it!
Checking backups once a week, 3 min.
Updates twice a month (using apt-get upgrade) 10 min counting integrity checks.
Nuisance factor: updating gitlab-ce drops a tiny little backup file in the backups folder.
`sudo touch /etc/gitlab/skip-auto-migrations`
Docs on it here: http://docs.gitlab.com/omnibus/update/README.html
Also, he must be considering other expenses that come with having employees (though he did say "25m in salaries").
Still, if you bring the salaries to 100k a year, it still compares favorably to GitLab: $11k vs 10M.
For self hosting, what's wrong with a shared file server and nice GUI such as TortoiseHG?
There seem to be a bunch of Git GUIs as well:
- you can use GitLab.com for free: unlimited public and private repositories, unlimited collaborators, free hosting of your Docker images, free hosting of your static site with any static site generator and free CI / CD
- GitLab CE is fully open source (MIT Expat). You can easily install it anywhere you want.
It seems like that is the main selling point. However, I think that most of us don't want the extra weight of managing yet another tool. Thus why many of us use GitHub to begin with and not something else...
AFAICT the "cost" is that you're effectively load-testing GitLab EE and help guiding the development of a commercial product. Plus you're giving GitLab free marketing. But to the extent that anything in life can be considered "free" (as in "gratis"), GitLab.com can be used for free.
We're thinking about charging for specific GitLab Runners in the future (think Mac Runners) or additional storage (we have a soft cap of 10GB per repo).
a) Start charging for things that I'm used to having for free
and/or
b) Go bankrupt/get bought out by a company and disappear
Do you really sell enough enterprise licenses to give all the rest of this stuff away? From a look at your site, that's the only source of profit for your company that I can find.
We're not planning to charge for what we give away for free now. Never.
We're thinking about charging for specific Runners for our CI (such as Mac runners) and possibly for extra storage.
They're using a Github commit graph to show how good Gitlab is? GitLab's graphs aren't as nice? :)
But it is the one and only feature i am missing so not worth upgrading to EE for me.
As soon as an alternative (open source, self hosted, free) comes around that does have this built-in, i will be tempted to try it. (and of course on success i will move away from gitlab).
But for now, gitlab (CE) works best for me, self hosted.
We wrote about this here: https://about.gitlab.com/2016/01/11/being-a-good-open-source...
I understand, and money has to be made too. It's a nasty trade off. Though as i wrote to the other reply, its the service that is worth the money not necessarily the feature(s).
IMHO, there is always a certain percentage of users that want to pay. The more users in total, the larger the amount of paying customers.
And the repo mirroring would be a great feature to let me move a lot of github project users to gitlab without losing any potential updates from an upstream source.
It would also allow for nice backup purposes, though you could do that now of course already with the hosted enterprise solution. But if the feature was in CE, many would be used, familiarised, to the feature, and perhaps see the added value of a backup node ($$) at gitlab.
Features have a limited value, they are valuable until an alternative provides it for free (which is the common thing these days). And that will happen here too, just take times. Same as gitlab nibbled at github, something else will come around to take share from gitlab.
Simplifying the development to just one tree/version, saves a lot of maintenance, development discussions, allows feedbacks of all features by self hosting users as if they were enterprise hosted clients. This also has a value.
Do you believe Linus Torvalds deserves to have a salary? Are you happy he does? I sure am. Do you think that money grows on trees? It comes from people realizing that it's important to contribute to sustain the pieces they rely on. The majority are always free-loaders: I just think it's important to emphasize that if everyone were, the cycle of innovation would slow significantly.
If you're talking about a self hosted instance, we think it is OK right now and frontend code will get better now that we adopted https://vuejs.org/
This isn't another ads or trolls. It is similar to AWS topic and recommending GCP, or Microsft Azure, all three are classed as similar with different tradeoff. So is Linode and DO. I do not think there are any other VPS provider then are in their class mindset wise.
We don't like to use Github anymore because of the politics there. Example: We had a project involving software filters that included this sentence in the description:
> Phase is related to time, but a pure time delay does not involve any phase shift. A pure time delay or "group delay" is constant with frequency. Phase shift varies with frequency and can advance or retard as the frequency changes.
We got a note from a woman who works at github who was apparently scanning open source projects for "offensive" words. Our project was flagged for the use of the word "retard".
We removed our project and never used github again.
That seems like a totally disproportionate approach versus responding with a polite 'this is a legitimate use of the word, thanks' message.
Just firing off a warning based on a simple text match seems high-handed and/or incompetent enough to consider leaving.
It raises questions about the internal company culture, their commitment to pragmatism (doubly important for a source code hosting site), and their priorities. Any developer could have told this person that a string match does not equal a linguistic match.
Small signals matter; they're usually all you get out of large orgs.
Also why as a code hosting service would they be getting involved with the politics of the content of projects they host?
"Hey boss,I tried cloning the Github repo of project X, but it says it can't be found, and I noticed our org page on Github is gone."
"Oh yeah, they sent us a message about the use of the word 'retard' in when referring to phase shifting."
"Oh, so they deleted our organization?"
"No."
"Oh? Well why can't I view it, weren't the projects public? What did you say to them?"
"I didn't say anything, I moved us to a different host."
My point is simply: if Github is flagging content based on perceived personal morals (not ever being allowed to use the word "retard," even in legitimate contexts), some choose not to associate their work with them.
I'm definitely not interested in company I'm paying for investing resources retarded things.
- a happy gitlab user.
[1] https://github.com/opal/opal/issues/954 [2] https://github.com/CoralineAda?tab=activity
I'm not terribly surprised. GitHub is, after all, a company which changed its logo to celebrate a highly political U.S. Supreme Court decision and which has had issues with left-wing racism (http://www.businessinsider.com/github-the-full-inside-story-...).
For me it's still about the organization, and singling out individuals is about as productive as yelling at customer support on the phone.
Related: The company is slipping my mind right now, but one startup changed their email name in automated messages from male to female and saw improved metrics as a result.
It just seems that this problems is remarkably easily solved with a simple "We are using a technical term correctly, maybe you should consider adjusting your automated emails."
I do get the impression that people generally seem to be all to eager to take offence, and it strikes me as a bit ironic to flounce off in a huff as a result of a badly-judged automated process!
How is this any better?
Idk, i dont understand why they would even care. Unless it reached a very intolerable bar, i dont think this is necessary
Fortunately, people like me see such declarations — "Hmm, I'd better now reactivate my paid GitHub subscription, and stop pushing people to competitors. Their attitude is improving!"
I was there to code. Not worry about if I hurt some oversensitive person's feelings for referring to master/slave copies.
We're all on Github to write code, but I'd argue you are dangerously close to throwing the baby out with the bathwater there. It seems perfectly reasonable for someone to say "hey, this term you use might be offensive/makes me uncomfortable, please consider changing it." It's also perfectly legitimate for you to say "I don't want to do that".
I just kind of wish that everyone would be a little less sensitive about the prospect of other people being offended by things that they are not. Political correctness, in the sense of "try not to say things that are offensive" sense, is probably not the worst idea in the world!
At which point you get harassed by a mob, spammed with issues that clutter up your project, and get emailed death threats.
Github is allowed, of course, to choose which projects they decide to host. Demanding the removal of the word "retards" [0] or a project would be shut down drove at least one developer away.
So no - that isn't "perfectly legitimate" for that community. "I don't want to do that" is not good enough.
[0] https://github.com/nixxquality/WebMConverter/commit/9fde8f33...
This doesn't mean people stop having them.
This just means that they are labelled/judged if they have them.
Guess what happens then? People keep it to themselves. And then they vote for Trump. Why? Because, he is a ridiculous loudmouth who is very out of touch with most of reality. But, he doesn't feel the need to be censored. And to people who haven't spoken out due to fear of reprisal, this is an admiral characteristic. He gives them validation.
So yeah, political correctness is retarded.
To olay devil's advocate, what's wrong with offending people who read your source code? You can't harass people through source code in a meaningful way because you can't force them to look at the code through natural interaction with GitHub itself, if they see a project that is insulting, they can just ignore it.
It's not like a social media site where you can ensure your victims' feeds will be polluted with your insults.
It cannot be healthy to have all our eggs in one basket (Github), regardless of how featureful and nice Github is, especially so given the availability of viable options. To that end, we should not complain when a project, say, evil-mode is on bitbucket, and similarly not ask a project to open shop on github.
I mean, if we don't work towards a fully distributed project model ala fossil-scm (via things like git-appraise), we should at least use alternatives when we can, and not strengthen Github's monopoly.
If you find it on Github, you can find out how to get started but everything else is on Gitlab.
Going away is the correct response, fighting the decision is never useful. One might wait a bit to see if it's a fluke, but that will certainly depend on the GP's evaluation of the company.
Also that interaction with Github, can be interpreted as a pointer to larger systemic issue (for better or for worse) which the customer doesn't believe will be solved with a simple email.
And what level of access do these on-staff political activists have to private user information? What measures, if any, does GitHub have in place to prevent one of their political activist employees from using privileged information to go after perceived political enemies or even just retaliate against users who protest being harassed?
What is "bigoted" about trying to avoid the user of the word "retard"? I'm not saying that what Github is doing is wise or sensible, but I'm struggling to see how it is bigoted.
> What measures, if any, does GitHub have in place to prevent one of their political activist employees from using privileged information to go after perceived political enemies or even just retaliate against users who protest being harassed?
I would imagine the same as any other company. There's nothing that would indicate otherwise, aside from your own biases against Github.
She indicated that it doesn't matter how the word is used, some will see it as aggressive.
A customer can choose to take their business elsewhere for whatever reason, at any time. I mean you can speculate as to whether it was disproportionate or not, but the only determinant here whose opinion matters is the paying customer.
I'm also curious on how many downvotes I will get for this, because the polite way is to use f*ck or something, right?
But ..
Me too!
I now use gitlab for my company and haven't noticed a difference.
I want my git host to worry about hosting git.
As she appeared to be a non-technical person mysteriously employed by GitHub as some consolation to some organization (IIRC it was called the "Ada Initiative") I realized that github is no longer a technology company. It's a Social Justice company. Good luck to them--I don't even disagree with the basic premise--but I like my git repo companies to be worried about git.
EG The french for "I'm late" is "Je suis en retard".
We can't just erase gender. People think in gender, and they consequently speak it. I don't think twice about mentioning "some guy" commented on my post, for example. Just the other day I decided to be even and refer to a hypothetical person by using "s/he", and even got called out on it.
It's not usual to avoid any mention of gender in English; some people avoid it for political reasons. But when you're translating a gender-marked word into an English equivalent which is not marked for gender, it's not idiomatic to add another word to indicate gender unless it's relevant to the topic at hand.
English lost most of its grammatical gender centuries ago. Since the 1960s and 1970s the parts that remain have become politically fraught in some circles, but usage varies by community. Unless you're deliberately wading into that fight, I'd stick to the way you were taught.
On a side not, I do miss that added context in English, especially in novels, when it's hard to guess just based on the names of the characters. It makes it easier for me to imagine them and evaluate interactions between them.
Github is never getting another penny from me.
GitLab has seen steady growth for years and has recently been gaining an increasing level of attention (in part because of the pricing changes and dodgy politics at GitHub). It's here to stay.
I hope GitLab.com will become more performant and stable. I would love to see GitHub for open source be replaced with a company actually built around open source rather than proprietary tech and catchy marketing.