Ending support for self-hosted Gitpod and moving our source to AGPL
github.com
github.com
I was going to be looking hard at GitPod in 2023. That is now entirely off the table.
If the answer is "nothing" then you don't really need it so it was never on the table.
I cannot/will not consider a solution that results in you directly managing or hosting my code/projects. I know many companies that would also take issue because of this.
Also I understand you're pivoting your customer base to enterprises and not the random hobbyist - but obviously I cannot afford enterprise pricing.
That's why many of us are sad to see this no longer be an option for us.
If you did run it in "our" cloud account you would still be on the hook for very expensive audits and background checks for everyone involved.
It not even close to worth it :/
Not supporting self-hosting is a cost-based decision, saying "well I'll figure it out and do it anyway" is just encouraging companies with open source offerings to act like this. Open source is only have the equation to make something self-hostable in any practical sense, the other half being accessibility.
It sounds like the dedicated version essentially lets enterprises run in on their own accounts while letting gitpod manage everything, which seems like a reasonable middle ground to me. Also sounds like you can still self host, they just won't support it directly as a customer, which again, seems reasonable.
But once it's running, troubleshooting it is the same everywhere. Can you perform network operation X? Y? Z? Is the process doing A? Is the VM in state B? Is the VM's OS up to date and on version C/D/E? It's all just basic networking and basic Linux systems administration.
Other vendors do the same thing. If you know what you're doing, self-hosted should be a small, well-understood feature of your overall offering. The fact that they're going full-cloud is more likely a factor of just not having a strong engineering organization, and seeing more money coming from their cloud offering from small players that don't do self-hosted. Later on they will want the whale money and go back to self-hosted, or they'll get their lunch eaten by the other players in this market.
I think in this particular case it's maybe not quite as easy as just shipping a container or whatever, because a huge amount of the value and effort is actually the orchestration of VMs/containers/however they do it under the hood. Again, I might just not know enough here, but it seems more like they've constrained their self hosted option a bit to keep it manageable rather than getting rid of it in practice. It also seems like you could just use the agpl licensed open source code if you want?
Finally, it seems unfair to characterize them as having a weak engineering culture when they've managed to create something rather impressive with, I think(?), quite a small team.
This might be possible in the fast and loose world of scrappy startups, but the bigger (and more lucrative) customers will have a lot more homework to do.
It requires a team to manage databases and a team (or several) to administer on-prem or cloud ops. They're going to have to learn this new thing themselves or meet with whatever team owns this third party thing. And have vendor meetings.
It's work and upkeep. At enterprise scale, this is one FTE bare minimum (probably spread out across multiple people), plus an oncall rotation (this is a pretty important business function), and definitely involves maintenance and upgrades that need to be coordinated.
Plugins, peering with external IPs, vendor security evaluation, BeyondCorp, certs provisioning, service discovery, traffic routing ...
This is all more work than "just", which is to say, I understand why the vendor is throwing up their hands and going after easier money. It's hard to support this, as each company does all of these things differently [1]. It just doesn't scale as well as SaaS does.
[1] Future business opportunity.
So while our cloud/SaaS offering had a shared codebase there was still a considerable engineering team responsible for the “on prem” packaging and support. Alongside a pretty extensive CI pipeline to try and catch all the nuanced customer setups that had bit us in the backside in the past.
The only purpose to self-hosting is because you can't use the dedicated managed cloud, such as due to regulations, contractual stipulations, networking limitations. If you're already in that situation and you don't have the headcount to manage this technology, you're screwed.
So, again, for the vendor, providing self-hosted is as easy as "here is a binary, here's some docs, good luck to you". If the client can't hack it... they shouldn't be doing self-hosted. It's self hosted, not we'll help you host it.
I suspect that is the issue.
At $curjob, we offer self-hosted versions, but our product is a monolith (in java, if that matters) that needs a RDBMS and optionally a proxy and elasticsearch. That architectural simplicity lets us offer self hosted solutions in a variety (deb, rpm, zip, docker image, docker compose, kubernetes).
But we're also an application component (auth server) not a full featured application. A full fledged application would be tougher to support, but if I were to try, I'd definitely start with a monolith.
Edit: Misunderstanding, we are only evaluating GitPod, we already have a on-premise Gitlab instance.
Our customers include financial institutions, asset management firms, hedge funds, US government agencies, professional services and outsourcing firms, retailers, insurers, software providers, and more who also confirm what you are saying.
We are seeing a move to clouds but only when the cloud is under their control where infrastructure is locked down to meet regulatory and security requirements. One prospect we were speaking with recently signed a multi-year public cloud provider agreement, but shared it will take a couple years for their GitHub Enterprise solution to pass tech risk and information security reviews before developers can even access it...
Over at https://coder.com/blog/how-our-development-team-shares-one-g... explains how we build Coder with Coder.
If you got any questions lemme know. Our source code (AGPL) can be found at https://github.com/coder/coder
ps. We are we creators and maintainers of `code-server` btw.
https://github.com/coder/coder/blob/v0.13.1/LICENSE
> GNU AFFERO GENERAL PUBLIC LICENSE
Is there some licensing subtlety that I'm not seeing?
Sorry to hear about your troubles. GitLab is working on adding remote development into the DevSecOps platform. I suggest reviewing the direction page [0] and implementation planning in the main epic [1] (with child epics and issues), and add your feedback and thoughts into the epic. (via the direction page in the 'how you can help' section [2])
[0] https://about.gitlab.com/direction/create/editor/remote_deve...
[1] https://gitlab.com/groups/gitlab-org/-/epics/7419
[2] https://about.gitlab.com/direction/create/editor/remote_deve...
We also provide a remote dev environment solutions. I think in your use case is very special as you cannot leverage any cloud providers, which can potentially make it harder for you to integrate with certain solution.
We are looking for design partners. If you like to share more and have a discussion, I am very happy to learn more about use cases and make Nimbus work for your on-prem infra.
I took Code Catalyst for a spin the other day and it is terrible.
https://twitter.com/GeoffreyHuntley/status/15997732931288637...
> It seems like maybe the best position for Gitpod is an acquisition (possibly by Atlassian)
I agree. I used to work there and think they need to slash circa 40 employees to shrink down to more sustainable burn rate numbers - https://ghuntley.com/tea
> but the odds are stacked against them
In more ways then one https://ghuntley.com/fracture documents Microsoft's strategy with Visual Studio Code which means 6 out of 10 top programming languages integrations only work on GitHub Codepaces. If you want .NET, C++, C, Python or Jupyter then the LSP integrations cannot be legally used on Gitpod.
GitHub Codespaces got one thing right - they chose IaaS as the brick of compute meaning they can do GPUs and run Kubernetes clusters. On Gitpod, you can't because Gitpod chose Kubernetes as the compute abstraction. Gitpod needs to ditch Kubernetes...
https://github.com/gitpod-io/gitpod/issues/4889 and https://github.com/gitpod-io/gitpod/issues/10650
Microsoft has been retiring on-prem products as a business strategy for over 12 years now. Why would GitHub be the snowflake exception? Somewhere, in some CVP's mind GitHub ES is already EOL (look at GitHub.com/enterprise they are already muddling the meaning of "enterprise")
If you look at /.codespaces/bin or /workspaces/.codespaces/shared on GitHub Codespaces you'll understand how tightly coupled GitHub Codespaces is to Microsoft Azure thus on-prem isn't going to happen. The likely path they could do it would be like JetBrains Spaces does it "configure in our IAM/ARM key and we will provision Azure/AWS virtual machines" via GitHub Enterprise Server.
$ ghuntley /workspaces/.codespaces/shared $ grep sku * environment-variables.json: "skuName": "Standard_F2s_v2",
If you want further information check out https://coder.com/blog/github-codespaces-coder-and-enterpris...
license forbids using it to host a service for others, but you can host it for yourself.
Can the user install them? How complicated these are? Is there some awareness about this in OSS communities? If yes, is there some kind of consensus? (Is it something like: okay, then each programming language project needs to provide its LSP, like Rust has rust-analyzer, Scala has Metals, etc..?)
Doing so is not legal. Here's the standard boiler plate license for the LSPs
> You may install and use any number of copies of the software only with Microsoft Visual Studio, Visual Studio for Mac, Visual Studio Code, Azure DevOps, Team Foundation Server, and successor Microsoft products and services to develop and test your applications
https://marketplace.visualstudio.com/items/ms-vscode.cpptool...
The key here is VSCode (MIT) is NOT Microsoft Visual Studio (the product) and only the product can use the LSP's, tools such as GitHub Copilot or the Visual Studio Marketplace Ecosystem.
> Is there some awareness about this in OSS communities?
Yup
https://github.com/search?q=repo%3AVSCodium%2Fvscodium+pylan...
https://github.com/VSCodium/vscodium/issues/1020#issue-11802...
> is there some kind of consensus? (Is it something like: okay, then each programming language project needs to provide its LSP, like Rust has rust-analyzer, Scala has Metals, etc..?)
The consensus is that programming languages need to author their own LSP integrations and not allow Microsoft to build it. It's why rust-analyzer, go, metals are self-developed by their communities.
Again https://ghuntley.com/fracture recaps the problems w/VScode and how Microsoft is building a GitHub 365 vision through VSCode.
On the market landscape: the whole market around CDEs (https://www.gitpod.io/cde) is in its infancy. Our largest competition is local development. We believe that unlike for other creative workflows the convenience threshold for development in the cloud has not (yet) been crossed. We are moving away from self hosted to execute faster on what we always wanted: from history-dependent cobbled local development environments to consistently reproducible, instant, ephemeral Cloud Development Environments (CDEs). You can think of CDEs (https://www.gitpod.io/cde) as our product north star.
Other links:
- How Redmonk looks at the market https://redmonk.com/jgovernor/2022/12/01/the-year-of-the-clo... - Kent Beck https://medium.com/@kentbeck_7670/cloud-development-environm... (full disclosure: Kent invested in the meantime into the company)
Both of them allow you to host VSCode or Theia on your own infrastructure.
Really? Looks like they shot their own foot there
"On-prem" usually doesn't mean "running on AWS but managed by us". Sure, some people will want it, but not most of them.
I just hope they survive long enough to take off as they're giving a lot away for free currently. Their dedicated instance setup looks like it'll cover the majority of businesses who'll likely have their own landing zones and cloud controls they can integrate into. Not being able to self host is a loss, but it might the right trade off.
I don't understand the AGPL bit well other than it was seen like poison by corporate risk types at my previous jobs.
Have opened https://github.com/gitpod-io/gitpod/issues/15254 for discussions re: if CLA is still needed after todays announcement.
Or, of course, into the arms of their competitors.