HN user

crawshaw

3,480 karma

CEO exe.dev

https://crawshaw.io https://x.com/davidcrawshaw https://tailscale.com

[ my public key: https://keybase.io/crawshaw; my proof: https://keybase.io/crawshaw/sigs/pAgPRWvnavoaN-xWVU1tNio7o50gsLZVH3FgdyLeu9M ]

Posts46
Comments318
View on HN
www.astralcodexten.com 9mo ago

In Defense of the Amyloid Hypothesis

crawshaw
2pts0
sfpersonals.com 1y ago

SF Personals

crawshaw
1pts0
sketch.dev 1y ago

The unreasonable effectiveness of an LLM agent loop with tool use

crawshaw
447pts320
blog.sbensu.com 1y ago

Default Blind

crawshaw
3pts0
twitter.com 2y ago

Starship re-entering Earth's atmosphere. Views through the plasma

crawshaw
2pts1
www.oilshell.org 4y ago

The internet was designed with a narrow waist

crawshaw
109pts36
sqlite.org 4y ago

SQLite 3.38 Released

crawshaw
65pts19
github.com 4y ago

ToaruOS 2.0

crawshaw
94pts24
www.sqlite.org 4y ago

SQLite Strict Tables

crawshaw
19pts1
lemire.me 5y ago

Compressing JSON: Gzip vs. Zstd

crawshaw
5pts0
cloud.google.com 5y ago

GVisor: Protecting GKE and Serverless Users

crawshaw
2pts0
www.maa.org 5y ago

Lockhart's Lament [pdf]

crawshaw
1pts0
raphlinus.github.io 6y ago

Seeking Truth in a Time of Misinformation

crawshaw
62pts51
www.businessinsider.com.au 6y ago

Bill Gates funding factories for 7 potential coronavirus vaccines

crawshaw
12pts0
research.swtch.com 6y ago

The Principles of Versioning in Go

crawshaw
174pts87
conferences.sigcomm.org 6y ago

Taking a Long Look at QUIC (2017) [pdf]

crawshaw
24pts4
tilt.dev 7y ago

Tilt: Local Kubernetes Development

crawshaw
2pts0
blog.golang.org 7y ago

Go 1.12 Released

crawshaw
295pts119
redo.readthedocs.io 7y ago

Redo: Docker and kvm containers (from scratch)

crawshaw
2pts0
nolisting.org 7y ago

Nolisting: Poor Man's Greylisting

crawshaw
1pts0
multi.thyssenkrupp-elevator.com 7y ago

MULTI – Rope-free elevator

crawshaw
2pts0
www.sqlite.org 7y ago

SQL Sudoku Solver

crawshaw
2pts0
github.com 7y ago

Teleport: certificate-based SSH server

crawshaw
1pts0
smallmemory.com 8y ago

Small Memory Software (2000)

crawshaw
1pts0
blog.gopheracademy.com 8y ago

Method Closures: You Can't Do That in Go

crawshaw
1pts0
dicksites.blogspot.com 9y ago

Larger Pages

crawshaw
1pts0
medium.com 9y ago

How we mapped the world’s weirdest streets

crawshaw
1pts0
go.googlesource.com 9y ago

Go Proposal: Eliminate STW Stack Re-Scanning

crawshaw
2pts0
www.evolo.us 10y ago

New York Horizon – 2016 Skyscraper Competition Winner

crawshaw
1pts0
talks.golang.org 11y ago

The State of Go

crawshaw
318pts167

If you have a good local VM flow that’s great. I couldn’t make it work for me. I ended up needing it to run when my laptop was shut, both as an agent and the servers I am building.

It’s a real tension, working with a remote dev env has never been my first choice. But agents seem to tip the balance enough in favor of remote that I have switched.

I think it’s worth trying. There’s a lot of value in having the agent in the box. You can give it root so it can do something like tcpdump unsupervised. And if you happen to build a new server, you can keep it serving indefinitely. That’s the whole motivation behind exe.dev.

For those looking to run agents: the short lifecycle of the typical “sandbox” seems surprisingly limiting to me. I have no actual workflow where I want one of these products. Sometimes a VM can live for 30 minutes, but it also might need to live for a month, and I don’t know beforehand.

This is why I have been avoiding the word sandbox for exe.dev. I don’t think developers agents need something “sandbox” shaped.

This is the nature of large institutions: they have to distrust their own people. You cannot be relied on to act well, you must be checked first.

There is a good reason for this! In a large group of people, there are bad people.

This is also why I am done working at large companies. I learned a lot, met some great people, but am uninterested in a low trust environment. I like relying on my colleagues. When they do something unexpected, I am surprised and study it to learn, not lambast.

My eight year old found a Terry Pratchett book of mine on the shelf the other day. He is a little too young to read them today but I realized I get to enjoy Pratchett all over again through him.

Nah. There are billions of people on the internet, and it varies from a dusty library to Atlantic City (though for some reason we let kids into the casino?). It is not one thing any more, but there are plenty of fun corners.

I could type ~four lines and an alert box response from a visual form.

For years I have lamented the amount of paperwork necessary in most of modern programming to get things done. I don't know how important that is now that I have a machine fill out the paperwork. It would still be better if there was less fuss.

exe.dev | full time member of technical staff | sf bay area only

competitive salary, meaningful early equity, 2 days a week in the downtown sf office

come build a cloud. we are doing everything from custom hardware to custom ssh servers to our own global load balancer. very senior small high-trust team looking for someone we can rely on to get done whatever is most important in the stack for the business. some days that means patch the vmm. other days it means figure out passkey quirks.

more about what we are building here: https://crawshaw.io/blog/building-a-cloud email me at david@exe.dev.

One VC (well, two) understood it. Despite what you hear, there is a lot of variation. Speak to a lot of people.

Hello, author here.

Our exe.dev web UI still runs on AWS. We also have a few users left on our VM hosts there, as when we launched in December we were considering building on AWS. Now almost all customer VMs are on other bare metal providers or machines we are racking ourselves. We built our own GLB with the help of another vendor's anycast network. You can see that if you try any of the exe.xyz names generated for user VMs.

We would move exe.dev too, but we have a few customers who are compliance sensitive going through it, so we need to get the compliance story right with our own hardware before we can. It is a little annoying being tied to AWS just for that, but very little of our traffic goes through them, so in practice it works.

Author here.

I need to fix our transfer pricing. (In fact I'm going to go look at it now.) I set that number when we launched in December, and we were still considering building on top of AWS, so we put a conservative limit based on what wouldn't break the bank on AWS. Now that we are doing our own thing, we can be far more reasonable.

Author here.

Almost every VC rejected us when we went to get seed funding for Tailscale, we knew none of them. Friends of friends of acquaintances got us meetings. Fundraising is very possible for you if you are committed to building a business. Most important thing is don't think of fundraising as the goal, it is just a tool for building a business. (And some businesses don't need VC funding to work. Some do.)

The biggest challenge is personal: do you want to build a business or do you want to work with cool tech? Sometimes those goals are aligned, but usually they are not. Threading the needle and doing both is difficult, and you always have to prioritize the business because you have to make payroll.

Author here. Most of our infra is custom, the VMM is based on cloud-hypervisor (a project spiritually similar to Firecracker). We have a lot of work to do, including on the VMM, but right now there is more value for users if we spend our time on the VM management layer and GLB.

You can get this effect today by installing Tailscale on your exe.dev VM. :)

The reason we put so much effort into exposing these publicly is for sharing with a heterogeneous team without imposing a client agent requirement. The web interface should be easy to make public, easy to share with friends with a Google Docs-style link, and ssh should be easy to share with teammates.

That said, nothing wrong with installing tunneling software on the VM, I do it!

Amazingly even most p2p works with NAT, see (and I am biased here) Tailscale.

I certainly wish we simply had more addresses. But v4 works.

(exe.dev co-founder here)

We are not running out of IPv4 space because NAT works. The price of IPv4 addresses has been dropping for the last year.

I know this because I just bought another /22 for exe.dev for the exact thing described in this blog post: to get our business customers another 1012 VMs.

(exe.dev co-founder here)

IPv6 does not work on the only ISP in my neighborhood that provides gigabit links. I will not build a product I cannot use.

Even when IPv6 is rolled out, it is only tested for consumer links by Happy Eyeballs. Links between DCs are entirely IPv4 even when dual stacked. We just discovered 20 of our machines in an LAX DC have broken IPv6 (because we tried to use Tailscale to move data to them, which defaults to happy eyeballs). Apparently the upstream switch configuration has been broken for months for hundreds of machines and we are the first to notice.

I am a big believer in: first make it work. On the internet today, you first make it work with IPv4. Then you have the luxury of playing with IPv6.

That is very true. We use copy on write for exe.dev base images right now, and are accumulating a lot of storage because of version drift.

We believe the fix here is to mount the base image as a read-only block device, then mount a read-write block device overlay. We have not rolled it out yet because there are some edge cases we are working through, and we convinced ourselves we could rework images after the fact onto a base image.

Right now our big win from copy-on-write is cloning VMs. You can `ssh exe.dev cp curvm newvm` in about a second to split your computer into a new one. It enables a lot of great workflows.

Nice to see this work! I experimented with this for exe.dev before we launched. The VM itself worked really well, but there was a lot of setup to get the networking functioning. And in the end, our target are use cases that don't mind a ~1-second startup time, which meant doing a clean systemd start each time was easier.

That said, I have seen several use cases where people want a VM for something minimal, like a python interpreter, and this is absolutely the sort of approach they should be using. Lot of promise here, excited to see how far you can push it!

exe.dev | Full time | SF Bay Area | multiple roles

Support Engineer - If you want to use Claude or Codex (or Shelley!) to trawl through our code base, augmented with (carefully scoped) API keys to make our customers lives better, we are hiring.

Designer - If you want to use Claude or Codex (or Shelley!) to make our product functional and beautiful, we are hiring. You do not ship mocks or assets to other teams. There is no other team. You ship by pushing to production. Don't worry, we've got your back.

Software Engineer - If you see a pattern here, we are hiring. Expect to design, build, and run entire subsystems. What matters is attention to product detail and overall architecture, we have agents for writing code.

With significant industry experience, pay will be over $200,000 with meaningful equity.

We are a small team and going to stay one. The focus is building a high-trust environment. Success for us is if you say "I'm going to fix the load balancer" we all sigh with relief, because you are on it and we can rely on you to take on and solve large projects.

The concern is not losing access to some new IDE for operating outside the terms of service. The concern is when you lose access to the IDE, you also lose access to your 20 year old Gmail account.

A general problem for Google products is that everything is mixed together.

But you also want smart phones, electric cars, and a navy. There needs to be a path towards doing things other than foisting them on people who are out of sight.

Lot of things could be added to this list. Good luck getting permission to start a hospital, or permission to mine/refine anything with a slightly messy process (e.g. rare earth metals). You can't build a new port. The California Coastal Commission won't let you open a new hotel anywhere on the water. You can't even keep a bar open late in San Francisco.