https://about.gitlab.com/blog/2020/04/14/github-free-for-tea...
https://about.gitlab.com/blog/2020/04/14/github-free-for-tea...
My grand-boss might love the idea but the fact that GitHub is missing time tracking is a blessing as a developer.
Making developers track their time is hostile. Development is not something you should clock in and out of. A time-box in JIRA or GitHub shouldn't replace management being aware of what their team(s) are working on and how their progress is.
It too often turns into a stick to beat developers with.
There are all kinds of better metrics by which to hold developers accountable. Tracking time just puts developers off from improving code or refactoring. If you write bad code it's not your time that suffers, it's the next developer who has to work on that section.
For every boss that wouldn't, there are a hundred bosses that would, with very little understanding of what is even being measured. Sure, the "guns don't kill people, gun users kill people" argument applies, but maybe don't hand people free guns with their milk purchase?
What is small change we can make to stress planning has error bands without affecting the usability?
>Consider this. What if the repository in which we craft our products is configured with cost estimates in mind? At the moment our logged hours reaches the total we projected, the repo would freeze and we grade the work. How would this affect our work?
>Do you have confidence in your plan? Would you bet your course grade on the quality of a project frozen at that point?
This reminds me of the appetites and bets that Basecamp's "Shape Up" describes. https://basecamp.com/shapeup
Instead of keeping scope and time 'fixed' and sacrificing quality, instead try and keep quality and time 'fixed' but be willing to sacrifice scope.
Having an 'apetite' in mind for how much you want a particular feature then mitigates: if you fail to achieve what you want in the fixed time period, do you want to try again later or is it more effort than it's worth to you.
Fortunately, they actually seem to prefer the reported times to be rounded to the half-hour/hour so the numbers line up with the financials. I think this helps discourage the temptation to nickel-and-dime developers over their time.
More often than not, I use time tracking to manage Sr Executives, and business partners, not developers. It may be invisible to most developers, but your executive probably has to fight for the budget that is funding your work on a regular basis. Having a pie chart that shows where time is spent is a great tool to convince your business partners that they can't cut everything but new feature development. It's sad how often I have to have this conversation.
Don't get me wrong, there are bad bosses, but there are many good uses of information like time tracking that may be invisible to the average developer.
I agree that imposing time-tracking from above (especially using user-hostile tools or especially employee-hostile management) is objectionable, BUT:
Org mode is fantastic and a great way to organize your day:
https://git.sr.ht/~sircmpwn/linux/tree/master/arch/arm/boot/...
https://github.com/torvalds/linux/tree/master/arch/arm/boot/...
https://gitlab.com/ddevault/linux/-/tree/master/arch/arm/boo...
cold cache warm cache
git.sr.ht: 1.4s 72K 1.4s 48K
github.com: 3.3s 635K 3.0s 317K*
gitlab.com: 3.1s 1300K 1.6s 58K+
* Hides half of the files
+ Only the initial load, it loads a bunch of stuff with JS to keep
populating the page afterwards, and has severe performance issues
simply using the page (on Chromium, it was straight up unusable on
qutebrowser)
Even after the page loads, for me it's impossible to use. On a more forgiving "best-case" page, GitLab has poor performance:https://git.sr.ht/~sircmpwn/scdoc/tree/master/src
https://github.com/ddevault/scdoc/tree/master/src
https://gitlab.com/ddevault/scdoc/-/tree/master/src
cold cache warm cache
git.sr.ht: 296ms 28K 198ms 4K
github.com: 572ms 360K 629ms 36K
gitlab.com: 1310ms 1311K 1110ms 16K
You should definitely make performance a core focus IMO.For our references please see https://storage.googleapis.com/sitespeed-results-gitlab/gitl... and https://about.gitlab.com/handbook/engineering/performance/
We've investigated and confirmed the controller that's looks to be the cause of this and raised an Issue here - https://gitlab.com/gitlab-org/gitlab/-/issues/214681. Many thanks again.
The only real complaint I have is about the Auto DevOps feature you released. We're currently using this for a number of smaller projects, and we've found the documentation around customizing deployments severely lacking. We ended up just reading through the Auto DevOps repository since it was clearer and more complete than any online documentation, which eventually allowed us to work through all of the issues we were having.
Other than that, it has been a wonderful experience. Thanks for a great product!
Also, you may want to point out that GitLab only offers annual billing, so the minimum charge on GitLab is $48. Some of my hobby projects only run a couple of months, so GitHub is the better choice.
I use both for work - and gitlab by preference:
* On the whole they are now close enough that I don't worry about the choice
* Both are slow. Silly slow. A 2 second target for page loads is horrific. Jumping around a file structure and exploring blame is really really painful; but 90% of the time I'm on the pipelines page and its so so so slow. Its actually faster for me to have my pipelines webhook a private server for a faster dash.
* GitLab is better for CI/CD. Easier, more sensible. I use it all the time; I set new clients up on it.
* Gitlab is better for k8's - several clients use it and love it.
* Search sucks on them both. They both give a paginated list when what I always want is a place in repo / filetype / etc. filter, post initial search (i.e, I'm looking for loadModule in webpack, I want to ignore tests (when I didn't know which was the test folder before searching), and jump between definition and usage, as well as find out if there is any documentation. Its not worth doing each individually. I want all at once)
* API's are really slow. GitLab is probably worse here. My default webpage (localhost home page) is a dashboard of quick links and widgets. One of those widgets shows my failing pipelines. It takes 6 seconds on a good day. I bypassed it (as above) to let me be more responsive. I didn't have to bother bypassing it w/GitHub
* On my NAS I maintain images of GitLab hosts and backups of all my repos. I have an image of the self-hosted gitlab we had at a previous (it closed) company. Being able to fall back to self-hosted is the oft-touted godsend, but being able to restart a retired self-hosted has literally made me and the others involved several thousand each (twice old clients have wanted a one off job. GitLab is the core of testing and deploying infrastructure).
> * Both are slow. Silly slow. A 2 second target for page loads is horrific. Jumping around a file structure and exploring blame is really really painful; but 90% of the time I'm on the pipelines page and its so so so slow. Its actually faster for me to have my pipelines webhook a private server for a faster dash.
Agreed - and we're working on performance improvements for GitLab.com. Do you use GitLab.com or a self-managed instance?
> * GitLab is better for CI/CD. Easier, more sensible. I use it all the time; I set new clients up on it.
Thanks - I'll give the feedback to the teams to keep up the good work. We do focus on sensible defaults and easy setup.
> * Gitlab is better for k8's - several clients use it and love it.
Awesome to hear, I have some heritage with this part of the product so I'm glad you love it.
> * Search sucks on them both. They both give a paginated list when what I always want is a place in repo / filetype / etc. filter, post initial search (i.e, I'm looking for loadModule in webpack, I want to ignore tests (when I didn't know which was the test folder before searching), and jump between definition and usage, as well as find out if there is any documentation. Its not worth doing each individually. I want all at once)
We have a recent integration with SourceGraph, have you tried that out? https://docs.gitlab.com/ee/integration/sourcegraph.html
> * API's are really slow. GitLab is probably worse here. My default webpage (localhost home page) is a dashboard of quick links and widgets. One of those widgets shows my failing pipelines. It takes 6 seconds on a good day. I bypassed it (as above) to let me be more responsive. I didn't have to bother bypassing it w/GitHub
Uggh - I'm sorry. I don't quite understand your reference to a default webpage and widgets. Is it pulling from GitLab APIs to give you a dashboard of your development work?
> * On my NAS I maintain images of GitLab hosts and backups of all my repos. I have an image of the self-hosted gitlab we had at a previous (it closed) company. Being able to fall back to self-hosted is the oft-touted godsend, but being able to restart a retired self-hosted has literally made me and the others involved several thousand each (twice old clients have wanted a one off job. GitLab is the core of testing and deploying infrastructure).
I didn't follow this one explicitly either. I'm glad you've got backups, are you suggesting GitLab needs some improved restore capabilities from backups?
Yes, I mean I'm using the API, specifically the graphQL one because it was giving detail of pipelines better.
The last NAS/backups, I'm saying GitLab is better because it allows me to not be reliant on the ongoing subscription due to the on-prem / community edition (backing up the git repos is only half the story for a functional system).
That being said I've been using GitLab for a several years.
Right now is a perfect example of why I use GitLab. I just started a role, and I'm working to improving pull request and CI/CD visibility. This is automatically baked into GitLab. To the point I just copy a template for all my projects. But now I'm writing a bunch of custom integrations, and talking to a number of different third party services. Even with all the extra work it feels less polished than GitLab.
With Kubernetes, Serverless, and prometheus metrics integration. Gitlab hand's down provides the best visibility into a release or sprint from what I've seen. There are pain points, but I have very little in the way of complaints.
You guys have also been great for the open source community. I got a Gold open source license and am using it for a number of projects.
I've converted a number of people to GitLab, now we just need to find places that will let us use it.
As a program manager, I'm personally really excited about this year's plans to build out more of GitLab's project management features. I think that once we're able to be more competitive with tools like Jira it will help create more buy-in at companies to adopt a single platform. Let's hope!
Thank you for advocating for GitLab among your spheres of influence, and for being part of the GitLab community! We appreciate it!
Also, this topic is about the article linked, not about your survey.
As feedback, I would say Github is a better company since it doesn't sink this low on their tactics. They just focus on making their product better.
That said I can't help recalling the last time the topic came up, seven months ago even then it was old-news:
https://news.ycombinator.com/item?id=20995889
If the site hasn't gotten faster in the past year I think it is obvious that this is not a priority in any real sense. Despite claims to the contrary.
Gitlab has a great core-offering, the gitlab runners were wonderful when they came out. But it seems like new features are constantly being piled on top of each release, (time tracking?!) when it might benefit users to step back a little bit and focus upon the core.
I can only assume developers get recognition by new-features, not core-improvements.
The comment you linked says: "We are working hard to improve performance and memory consumption of GitLab. We have two major projects underway, switching to Puma [1] as well as reducing the overall memory consumption of GitLab [2]."
The current state is that Puma is now powering all of GitLab.com and we're working on getting it to be the default in Omnibus https://gitlab.com/gitlab-org/omnibus-gitlab/issues/4698
https://about.gitlab.com/releases/2020/03/22/gitlab-12-9-rel... https://gitlab.com/gitlab-org/gitlab/issues/32894
Here's the documentation: https://docs.gitlab.com/ee/user/project/issues/issue_data_an...
- thanks to GitHub pages and markdown rendering your tool's homepage is the Git{Hub|Lab|...} page. That page is linked from "everywhere" else and indexed in search engines
- all history aside from code is in there (discussions in bug issues and pull requests etc.) getting them out is possible, but all the linkage between commit messages and those might be problematic to migrate
- contributors are often only known by their handle on that page, migrating of requires new setup of permissions and mapping of usernames to trust on a social level
- there are tons of hooks configured for many projects
- as GitHub Actions and GitLab CI gain more and more traction workflows depend on those
"Just move the repo" is a fallancy which doesn't work. I have no doubts medium term about Microsoft steering GitHub, but I fear a single entity being so central in the opensoruce world (also consider npm acquisition etc.)