Live data from Hacker News

Codespaces but open-source, client-only, and unopinionated

devpod.sh

141–150 of 157 posts

Re: Codespaces but open-source, client-only, and unopinionated

#141
post #66

Tried it, but it doesn't seem to work with non-rootless podman as a replacement for docker.

Are you using podman for everything in production? I am still trying to understand when to use it.

Not using it yet, but basically there where you cannot control who runs what, like shared builders or server with personal beyond infra/itsec teams may have access and need to be able to run containers. As being in group Docker/having access to Docker socket effectively means having root access, Podman/rootless docker can be a savior.

Re: Codespaces but open-source, client-only, and unopinionated

#142
post #135

Trying this out, and a word of caution if you use the SSH provider: it does not check host SSH keys, which is sort of a no-no: [15:25:45] debug Run command provider command: ssh -oStrictHostKeyChecking=no It also seems to rely on the remote server having passwordless sudo, which is... interesting. Edit: I've managed to make it work with my own solution ( https://github.com/rcarmo/azure-dev-bootstrap ). It works OK, b…

> it does not check host SSH keys Otherwise DX would be totally ruined. Totally. > work on an iPad I never tried, but from the distance it looks like _working_ on such kind of devices is a torture, what's are your impressions, effectiveness comparison to working on laptop (desktop) with real keyboard?

Not DX, but security, yeah. I do this for one-shot automations inside a LAN or to talk to my own transient VMs inside the same box, but it is something you absolutely SHOULD NOT DO if you are connecting to a public host that may be compromised/spoofed whatever. Working at an ISP really opens your eyes to how easy that is to achieve.

(I am assuming that this, and the attempt to do passwordless sudo on the remote machine, simplifies the developers' life a lot since they don't have to put up prompts for you to validate the host key or do privilege escalation remotely, but they are must haves if I am to trust this solution.)

As to the iPad, I have been doing that for many, many years: https://taoofmac.com/space/blog/2016/11/06/1930 (the date on the URL does not denote the first mention). It is an excellent way to work for many hours with a quiet, cool (as in temperature) machine from remote locations.

Re: Codespaces but open-source, client-only, and unopinionated

#143
i tried devpod few weeks ago on a non-trivial project. i had .devcontainer setting from GH Codespaces already in place though. anyhow, it all worked seamlessly and i was quite impressed.

good job!

i tried same project running locally using VSC’s devcontainer extension too, but that felt really slow on a mac so i abandoned it.

what is devpod doing differently? iirc, running devcontainer directly via extension inside docker had same perf problems with bound volumes. is this solved differently in devpod?

i didn’t compare these two apples to apples style because i tried extension on older computer.

Re: Codespaces but open-source, client-only, and unopinionated

#144

Earlier quoted context omitted.

Vagrant was the reason for Hashicorp :-)

Too bad they abandoned it.

https://github.com/hashicorp/vagrant/blob/v2.3.7/CHANGELOG.m... ?

The changelog lists both improvements and bug fixes and there's even apparently some effort to port it away from ruby: https://github.com/hashicorp/vagrant/blob/v2.3.7/internal/cl...

Re: Codespaces but open-source, client-only, and unopinionated

#145
post #129
post #126

Earlier quoted context omitted.

creating the workspace is based on docker but within the workspace you're free to do whatever you want, no need to use docker-compose there

But then how is this so different from running "docker-compose" and then do whatever you want withing the container? Is the difference just that they provide ready-made Docker images for certain environments so that you don't have to create your own? Can I get the same images on Dockerhub then?

Partially, yep. The more important part is that these Docker images run on a remote machine

Re: Codespaces but open-source, client-only, and unopinionated

#146
I'm kind of obsessed with this space and have spent way too long setting up VS Code and RStudio IDEs on my homelab.

One area I struggle with when thinking about building container-based development environments is the best way to avoid mixing in your IDE specific dependencies with your project dependencies. I think some of the commercial tools do this, but I haven't gotten in set up well in my homelab.

I just came across two articles by a former GitPod employer who moved to Coder (these are the two main providers of open-source VS Code in the browser solutions). They're both really interesting.

The first is on how effectively Microsoft has used VS Code to fracture the market place to their advantage by strategically open-sourcing parts of VS Code while keeping many of its best features proprietary (Pylance, the python language server is a good example of this). https://ghuntley.com/fracture/

The second article is about why he thinks Coder's strategy is more promising than GitPod's prompting him to go work for them. It's not as detailed, but it touches on some of the parts of container-based development environments that I've found overly limiting. https://ghuntley.com/integrate/

Re: Codespaces but open-source, client-only, and unopinionated

#147

I'm likely not the target audience, but I personally see "client-only" as a disadvantage. Ultimately I use VS Code to stand up devcontainers on my laptop, but I sometimes need to do dev work on my iPad and don't want to pay for Github Codespaces. Gitpod has worked for me in the past and I've gotten Coder setup. Maybe this will be nice to get Jetbrains IDEs working with the devcontainer standard, since IIRC they don't…

I've been wishing that JetBrains and Posit (nee RStudio) would adopt the devcontainer standard, but then I just read this article [1] about how MSFT is using VS Code's weird mix of open-source and proprietary components to fracture the market and ensure that any competitors who try to build off of VS Code are at a permanent disadvantage. Now I'm having second thoughts.

Devcontainers are a good example of their strategy. VS Code's source code is open source, but the devcontainers extension is not [2] and alternative vscode-in-the-browser providers are not able to use the devcontainers extension as they're not allowed to use the official VS Code extension marketplace.

[1] https://ghuntley.com/fracture/ [2] https://twitter.com/castrojo/status/1671544329402302464?s=20

Re: Codespaces but open-source, client-only, and unopinionated

#149
post #107

I haven't used Codespaces, but how does this work with databases? A common problem we have during onboarding is getting your local database (MySQL) setup properly: run all the migrations => load some sample, de-identified, production-like data => update certain rows to allow for personal development (e.g. for our texting service, make sure you text your own phone number, instead of someone else's). What's the workflo…

We've built www.snaplet.dev to introduce the exact workflow that you're describing. Unfortunately we're PostgreSQL only at the moment. We give you a serverless PostgreSQL database per branch in your code. [via Neon.tech] Each time you branch your code we grab the latest snapshot of your production database which is de-identified and transformed [Transformations are via TypeScript] and a subset of the original. If a c…

This looks amazing, we have written a similar script for both our local dev dbs as well as our staging env. Would love MySQL support

Re: Codespaces but open-source, client-only, and unopinionated

#150
post #62
post #42

Earlier quoted context omitted.

https://www.daytona.io is currently in stealth preparing to launch. You could grab early access by joining the waitlist.

What's its difference?

Daytona will be available as SaaS and self-hosted alternative to cloud-based development environments like Codespaces (also using devcontainer.json). It provides similar capabilities for setting up and managing development environments, but with the flexibility of hosting and managing the infrastructure yourself.
Post reply on HN