
Building an Open Core Company: Interview with GitLab's CEO - Siecje
https://about.gitlab.com/2016/07/14/building-an-open-source-company-interview-with-gitlabs-ceo/
======
mrmondo
Hands down the best open source community with a commercial offering I've ever
dealt with. The company really clearly gives a $&@"! about what people feel is
right and wrong with the product components and has always heard me out - even
if people disagreed with me (god forbid I might be wrong about something!).

I truly have grown to love GitLab and the team that develops and supports it,
it's probably the fastest moving OSS project I've _ever_ seen, and every
release is clearly getting better (although there are some UI changes recently
that bug me, but that might just be me).

Thank you yet again everyone involved with gitlab and it's varying components
(especially gitlab-CI) both internally within the company and those
contributing either code or conversations from around the world.

Gitlab has enabled us @infoxchange to move faster than ever before, with a low
TCO and a responsive support team.

I salute you!

~~~
sytse
Thanks, I return your salute.

It is great to know that GitLab is contributing to your not-for-profit with
its 'technology for social justice' mission.

We also heard from other people that the navigation redesign is not ideal. I
think the big picture change is welcome but some things are taking too many
clicks. But we would love more feedback with examples. The thinking behind our
navigation redesign is detailed in
[https://about.gitlab.com/2016/06/06/navigation-
redesign/](https://about.gitlab.com/2016/06/06/navigation-redesign/) Please
comment on that blog post (or create an issue) with what we can improve.

Thanks for your kind words, we'll keep shipping!

------
SEJeff
Gitlab is great stuff, but as a business model for open source, I always
considered open core as somewhat toxic. When your community is trying to add
features in your commercial implementation, you're "competing with yourself",
which in this context, is actually a bad thing. I saw it wreck havoc in the
ZenOSS community years ago.

David Neary does a most excellent post on why:
[https://blogs.gnome.org/bolsh/2010/07/19/rotten-to-the-
open-...](https://blogs.gnome.org/bolsh/2010/07/19/rotten-to-the-open-core/)

~~~
sytse
Yes, we recognize we have to walk a fine line. In
[https://about.gitlab.com/about/#stewardship](https://about.gitlab.com/about/#stewardship)
we detail our policy regarding this. It starts with "When someone contributes
a feature to CE that is already in EE we have a hard decision to make. We hope
that people focus on contributing features that are neither in CE nor EE. This
way both edits benefit from a new feature and GitLab Inc. don't have to make a
hard decision."

~~~
eevilspock
Can you explain the "hard decision"?

Is it that you have to choose between two implementations for the same or
overlapping features, meaning someone's work gets thrown out?

Or do you mean that you have to decide whether to reject the freely offered CE
pull request because it undermines the value-add of EE?

~~~
sytse
Both are options and we will make that trade-off according to the criteria
mentioned. So far all our decisions were easy (low quality contribution or
code copied from EE) but someday we'll have to make a hard decision.

~~~
eevilspock
To me the second reason is a serious conflict of interest issue and severely
undermines the open source community spirit of your open core. GitLab's Inc
would no longer be benevolent dictator for life, just plain old dictator.

~~~
sytse
I meant that rejecting an MR is always an option. We will never do that only
because it undermines the value-add of EE.

As stated on
[https://about.gitlab.com/about/#stewardship](https://about.gitlab.com/about/#stewardship)
we will consider multiple factors.

I just updated these factors to make sure everything that comes to mind is
listed there in [https://gitlab.com/gitlab-com/www-gitlab-
com/commit/8e22bb93...](https://gitlab.com/gitlab-com/www-gitlab-
com/commit/8e22bb935da1bca44e220862e93c2da7aa72b606)

------
pritianka
I've been impressed with the GitLab founder in every interaction I've had with
him. He treats people well and makes an effort to connect with every
dev/person interested in his product. He's building a great culture.

~~~
sytse
Thanks, I'm humbled by your comment. I hope to make it more clear that this is
a team effort and I'm a spokesperson.

------
willow9886
In the article Sid mentions that "according to research, by 2019 80 cents of
every dollar spent on software will go to on premises or single tenant
software."

Does anyone know which research he's quoting?

~~~
nzoschke
I'd love to know the source too.

But this matches what I am seeing right now as well as predicting for the
future.

SaaS is a powerful distribution model but IaaS has gotten so good that it's in
many ways easier to run many small things than one big thing. And when you run
many small things huge benefits arise:

* security and isolation. Single tenant by default.

* control. Upgrade when it's convenient for your company, not your provider.

* Cost efficiency. Freemium SaaS requires burning VC cash. Open source + self serve demo doesn't

* customization. Set your own feature flags or add your own patches to fit the software to your business

Everything is cyclical. I think "install this software on your [cloud]
computer" is going to be a big trend again.

~~~
tomschlick
Yup, this is why at work we have our multi-tenant SaaS using a different
database for each tenant. That way if they want to split to self/dedicated-
cloud hosting later down the road we can move them without any hassle.

Edit: I describe our thought process here if it's useful to anyone else:
[https://tomschlick.com/2015/11/29/lessons-from-building-
mult...](https://tomschlick.com/2015/11/29/lessons-from-building-multi-tenant-
apps-part-1-databases)

------
OJFord
The interviewer asks if the community edition is a good funnel into the
enterprise edition, but doesn't ask what I see as the converse; which I'd
hoped for:

"Does making the source available restrict pricing options, or completely lose
would-be users - or would self-hosters never be customers anyway?"

This has been bugging me and holding me off a project that I'd like to be
open-source; I just can't help wondering what stops someone from thinking
"well I'm just going to host your source code, and undercut you". I'm all for
a competitive market - but not if I do all the work and we only compete on how
to price it!

~~~
jogjayr
Stupid question but couldn't you release it under a license that prohibits
selling a hosted version of your software? It wouldn't pass the OSI test but
would achieve some goals. Users could self-host if they don't want to pay you
but no one can undercut you.

~~~
OJFord
That's not a stupid question, it's a good answer :)

I suppose I wouldn't expect to be able to (afford to) defend it, but I imagine
being in breach of a licence would be deterrent enough for anyone looking to
operate at anything but trivial (that is ignorable; not a threat) scale.

Thanks.

------
vonnik
> Open source is wind in your back.

So true. Open source lets small engineering teams punch above their weight.
Thousands of extra eye balls on the code for QA make it so much better. And
the project-user feedback loop is fast.

~~~
sytse
For sure we think we're punching above our weight. We're less than 100 people
and are competing with multi-billion dollar companies likes GitHub.

Some other benefits of our open core model:

1\. Remote only is the default way of working, allowing us to hire great
people around the world.

2\. Our open core model attracts great people, it is rare to have no
recruiting problem for engineering.

3\. Our technical interview is adding a feature to GitLab, ensuring we test
exactly the skills we need when you join.

~~~
agibsonccc
(vonnik's cofounder here)

We don't have a careers page on purpose. Right now the best hires either come
from very strong referrals or fall in to our lap via the oss community. People
who ask us about hiring: we just tell them to join the oss community.

It saves us a lot of time.

~~~
Akkuma
This seems like it would preclude people who love what you are doing, but also
love to do things after work that aren't around programming.

~~~
agibsonccc
We get referrals for other roles. But yeah: that's more or less on purpose.

------
Sylos
> [Without telemetry] Do you have to rely on users asking for features then?

How does telemetry affect that? I can see that you would maybe prioritize work
on improving different features depending on what gets used most or what
crashes most, but how should telemetry help you decide what features to
include?

~~~
sytse
Two examples:

1\. You might find that some parts are more heavily used than you thought (for
example the wiki) and you prioritize making them better.

2\. You find that many people use CI and not many use CD so you add features
to make the transition easier.

------
eevilspock
The true core of GitHub (and GitLab) is Git itself. So both are open core
where it really matters. Because both GitHub's and GitLab's essential
operations are all done over the Git core, neither code and code history
hosted on either system are locked in.

Where GitHub has slightly more lock-in and is less open than GitLab is its
Issues system; One can only extract the data (via API) for import into an
alternative system, whereas with GitLab you could run your own copy of the
open source code (but you'd still have to do the data export-import as far as
I can tell).

(copied my comment from a duplicate thread)

------
mperham
Great interview with a lot of good advice for anyone starting their own OSS-
based business.

Making EE "open source" (not "Open Source") is a brave move but I think anyone
who's done this work before knows that having the source available for viewing
doesn't really matter much to actual customers with money - a packaged
solution with long-term support and legal compliance are their main concerns.

~~~
sytse
Thanks for the kind words Mike and thanks for Sidekiq, we use it extensively
in GitLab.

We decided to package GitLab Community Edition to make it very quick to
install. So our open source users get the same easy installation and the same
security updates and our Enterprise Edition customers.

We find that large enterprises are interested in some of the features
[https://about.gitlab.com/features/#compare](https://about.gitlab.com/features/#compare)
and not in any of the other things. Maybe the best example is a user if China
with more than 6000 developers that decided to copy the code of some features
over to the Community Edition. This is illegal if you don't have a
subscription but I think it shows that the features do matter. Our policy is
to put features that are more useful if you have more than 100 users in the
Enterprise Edition
[https://about.gitlab.com/about/#stewardship](https://about.gitlab.com/about/#stewardship)

------
iamcreasy
I was excited to read how open source philosophy is ingrained into Gitlab and
how it helps them grow but the article rather skims over it.

~~~
sytse
This blog post was a writeup of Jason asking me questions because of personal
interest. I would be happy to do a 1 hour skype call with you if you promise
to write it up afterwards. Please email marketing at our company domain if
you're interested. Please link to this comment in your email.

~~~
iamcreasy
That's great. Thank you. But I am not much of a writer. I was just curious.
Maybe somebody else can use this opportunity to write about it.

~~~
sytse
Yep, everyone can contribute and is free to take me up on that offer.

------
rburhum
I was going to try it out after many months... and it is down :(
[https://twitter.com/gitlabstatus/status/755878196634087424](https://twitter.com/gitlabstatus/status/755878196634087424)

~~~
Scarbutt
Is gitlab.com just a demo? I have always found it horrible slow and unstable.

~~~
sytse
I agree it is too slow. We're working on improving it in
[https://gitlab.com/gitlab-
com/operations/issues/42](https://gitlab.com/gitlab-com/operations/issues/42)
(now down)

This release contains improvements that made very long issues load in 2
seconds instead of 6.

~~~
Scarbutt
Maybe this is a case where ruby is just not the right tool, how does github
does it?

honest questions:

Is performance not that important for gitlab cause your revenue comes from
self-hosted, where performance might be less of an issue because of lower
load? Isn't gitlab highly concerned with a new company starting a similar
product in a more efficient language implementation and eating your lunch?

apologize if these questions sound a bit harsh, gitlab is doing great work and
lots of users enjoy your product, I guess these is one of the perks for
exposing yourself too much to the community ;)

~~~
sytse
This is not due to Ruby, both we and GitHub use that. We do offload some tasks
to Go processes with GitLab workhorse to take advantage of multithreading. But
therr are a few reasons GitLab.com is slow:

1\. I didn't prioritize growing our infrastructure team after raising our A
round, for a long time it was one person running GitLab.com. In the last
couple of months I realized my error and now we're about 8 people and hiring.

2\. We're shipping a lot of new features every month and we where not
monitoring for performance regressions. We have better monitoring in place
now.

3\. GitLab.com runs on one file server. This release adds the capability to
add multiple ones. We are also testing Ceph to make it completely distributed.

4\. Some problems only occur at scale. GitLab.com is running GitLab Enterprise
Edition with more than 500k accounts created. This causes problems that don't
occur at 10k users.

5\. Our monitoring infrastructure has been coarse. We're now using Prometheus
to improve this.

------
Myrmornis
Lots of companies use Jira for issues and Github/Gitlab for code. It's a
painful divide. Do Gitlab and/or Github have plans to rescue such companies
from that situation?

~~~
Snappy
Take a look at GitLab's plan for Issue Boards ([https://gitlab.com/gitlab-
org/gitlab-ce/issues/17907](https://gitlab.com/gitlab-org/gitlab-
ce/issues/17907)). It's not quite Jira, more like Trello, but a great step in
solving modern issue management and planning.

------
Siecje
Any chance GitLab will add Mercurial support?

~~~
sytse
Almost no chance, if anything we would add SVN support but I think that is
already too much technical complexity.

Consider using [https://rhodecode.com/](https://rhodecode.com/)

~~~
Siecje
Why SVN over Mercurial?

~~~
sytse
There are more people using SVN than Mercurial.

~~~
Siecje
I saw somewhere else that you used Google trends to show how git was more
popular than Mercurial. However you didn't consider "hg". Here is the trend
for Mercurial vs SNV

[https://www.google.ca/trends/explore#q=svn%2C%20hg%2C%20Merc...](https://www.google.ca/trends/explore#q=svn%2C%20hg%2C%20Mercurial%2C%20subversion&cmpt=q&tz=Etc%2FGMT%2B4)

------
grabcocque
Here's the open source definition:

[https://opensource.org/osd-annotated](https://opensource.org/osd-annotated)

Gitlab EE, which is how Gitlab makes its money, comes nowhere close to meeting
that. It's pretty much straight up corporate dishonesty to pretend to be an
open source company when you're following a proprietary software model to make
money.

You're no more an "Open Source Company" than Apple or Microsoft, who also have
some open source projects separate from their main revenue streams.

~~~
skj
I'll point out that merely being the first to claim "opensource.org" does not
allow one to define what the word means for the community at large.

~~~
FooBarWidget
I'm not expressing any opinion on the question of whether GitLab is or is not
an open source company, but:

Opensource.org isn't just some random website by a random dude. It was setup
by (among others) the very same guy that invented the phrase "open source". It
should rightfully be considered the canonical definition of open source.

In my experience there is also a group of people that simply don't care about
exact definitions or legal implications. They have this overly simplistic view
that having access to the source code is all there is to it to be "open
source". That's probably the group of people you refer to when you say "the
community at large". I have no idea how big group is, or whether it is big at
all. But I do think they are wrong.

~~~
asimuvPR
_In my experience there is also a group of people that simply don 't care
about exact definitions or legal implications. They have this overly
simplistic view that having access to the source code is all there is to it to
be "open source". That's probably the group of people you refer to when you
say "the community at large". I have no idea how big group is, or whether it
is big at all. But I do think they are wrong._

I've noticed that some (not all) of the people in this group use the term
"open source" for marketing purposes. Sadly, it is a term that attracts
uninformed eyeballs.

------
NickBusey
Lot's of griping in here about whether or not GitLab is really 'open source'.
Typical HN vitriol. I think GitLab is doing fantastic work pushing forward
open source philosophies with real world execution. They're putting a lot of
their money where their mouth is. Hell, you can clone their ENTIRE corporate
website. On top of that, the product they offer (yes, their free, Open Source
community edition) is _fantastic_ and continues to improve with each release.
I am constantly impressed with how this company operates, and am always trying
to roll in more of that to my own company (their Handbook for example is
fantastic.)

~~~
vhdjdjvhdhd
Why is it that the top comment of every debate on HN is without fail something
along the lines of "I'm shocked at the negativity here..."?

This cliche is beginning to get a little worn.

~~~
scrollaway
I agree, but it's also _especially_ shocking anyone would be negative about
Gitlab.

Take it from an adamant free software user, contributor and advocate: "Free
software purism" is counter-productive and it's honestly disgusting anyone
would wag their finger at Gitlab, possibly _the_ most open source example of a
real world company out there (yeah, I'd even put them above Red Hat). They
have been a model to follow, an extremely inspiring one at that.

Maybe I'm wrong and it's exclusively HN's top paragons of virtue raising their
eyebrows? Those that have evolved beyond mortal needs such as money to spend
on food and rent, and would be ready to pledge their own possessions to Gitlab
Inc (or at the very least, donate to the EFF:
[https://supporters.eff.org/donate/](https://supporters.eff.org/donate/)).

------
paxcoder
In the interest of objectivity, I'd change the title to read "Open Core"
instead of "Open Source"

~~~
sytse
Interesting, I never considered called us an open core business, but I agree
it is more accurate and edited the blog post in [https://gitlab.com/gitlab-
com/www-gitlab-com/commit/e333cc93...](https://gitlab.com/gitlab-com/www-
gitlab-com/commit/e333cc93b17df60ce8f7948896ddf3b714d8ec1d)

~~~
sytse
I'm considering this blog post [https://gitlab.com/gitlab-com/blog-
posts/issues/226](https://gitlab.com/gitlab-com/blog-posts/issues/226) to set
the record straight, what do you think?

~~~
sytse
I just published it [https://about.gitlab.com/2016/07/20/gitlab-is-open-core-
gith...](https://about.gitlab.com/2016/07/20/gitlab-is-open-core-github-is-
closed-source/)

------
grabcocque
Gitlab are not an open source company. Their primary revenue generation stream
is proprietary software.

~~~
FatalBaboon
Care to elaborate? Isn't their primary source of revenue gitlab(-ee) which is
open source?

~~~
abetusk
AFAIK, the enterprise edition (EE) used to be open source but is now closed
[1]. There is an open source "community edition" which has many of the
features of the enterprise edition, including self hosting, but lacks others
[2].

While I find it unfortunate that GitLab doesn't have it's enterprise edition
open sourced, I think they have enough goodwill in the community so that I'm
not that angry about it. I would really be interested in hearing from the
GitLab folk whether they think making their enterprise edition open source
would really hurt their income and if they have any plans on eventually
releasing their enterprise edition as open source (again).

TLDR; GitLab has an open core business model.

[1]
[https://en.wikipedia.org/wiki/GitLab#History](https://en.wikipedia.org/wiki/GitLab#History)

[2] [https://about.gitlab.com/features/](https://about.gitlab.com/features/)

~~~
vdfs
I thought the EE was open source: [https://gitlab.com/gitlab-org/gitlab-
ee](https://gitlab.com/gitlab-org/gitlab-ee)

~~~
detaro
you can look at the source, but it is not "open source":
[https://gitlab.com/gitlab-org/gitlab-
ee/blob/master/LICENSE](https://gitlab.com/gitlab-org/gitlab-
ee/blob/master/LICENSE)

~~~
Siecje
Isn't that open source though? Sure you have to pay, but you get access to the
source and you can modify it and use your modified version as long as you pay.

Isn't this the vision that Stallman had about open source or free software and
copy left?

~~~
zanny
There is a canonical definition of open source by the OSI[1]

This is generally called source available or public source, like the Unreal
Engine, rather than open source, which implies you can actually do something
with that source code.

[1]
[https://en.wikipedia.org/wiki/The_Open_Source_Definition](https://en.wikipedia.org/wiki/The_Open_Source_Definition)

