Live data from Hacker News

Devpod: Remote development environment at Uber

uber.com

91–100 of 235 posts

Re: Devpod: Remote development environment at Uber

#92
post #35

We are moving to such cloud environment, and it makes me sick. Maybe you need to dockerise Mongo, MySql and 5 other dependencies - I can get this, but I don't get it why the rest the code should still be running in the cloud. Python, Rails, Node? Why? Developers should be able to run 1 shell commands to install node. Dev experience excuses are just excuses for a bad setup. So, fix your setup, please. Not being able t…

> Why? Three reasons from my perspective: 1) There's no setup steps. You just open your editor of choice and everything is set up for you. All the build tools, linters, specific versions of software $XYZ, etc. 2) Large VM (16 core, 96GB of RAM in my case) speeds builds and tests up dramatically. 3) Zero productivity lost if your laptop breaks. Just grab a new one from IT and you're up and running exactly where you le…

I don't see #1 happening. There is no way anyone has my personally customized development setup in some VM ready to use. More likely it is going to be one common setup that they want everyone to use.

Re: Devpod: Remote development environment at Uber

#93
> Controlled toolchain–pre-curated secure environment

I'm a hacker dammit. I'm supposed to be dangerous if you let me within whistling distance of a payphone.

The idea of slowly becoming useless without an internet connection and access to my devpod makes my skin crawl.

Re: Devpod: Remote development environment at Uber

#94
post #71

Earlier quoted context omitted.

You already have the same concern with source control, code review, continuous integration, continuous deployment, etc. Dev servers are arguably much simpler to provide without issues.

But I don’t really have those concerns—they’re better mitigated. If source control goes down, I have a complete clone on my machine and so do my coworkers (yay git). I have done code reviews by pasting `git am` formatted patches between coworkers during particularly long GitHub outages. CI/CD is more problematic, but I only need those things to integrate work. I can still do work and verify correctness with tests tha…

Nothing is stopping developers from running the docker image locally.

Re: Devpod: Remote development environment at Uber

#96

Even for my home lab I use a remote setup. My local workstation/server runs ubuntu with all the bells and whistles (nginx, docker, cuda etc). My dev laptop just has vs code and connects to my local server via wifi 6 &/or gigabit ethernet. I do not notice that i develop remotely. VS code also has some great quality of life features, for example if you run a command that exposes a port in your remote machine, it automa…

I also have a remote dev machine and love it. When I do any heavy cpu work my laptop stays nice and cool since it only has a terminal and a browser open.

Re: Devpod: Remote development environment at Uber

#97
post #35

Earlier quoted context omitted.

> Why? Three reasons from my perspective: 1) There's no setup steps. You just open your editor of choice and everything is set up for you. All the build tools, linters, specific versions of software $XYZ, etc. 2) Large VM (16 core, 96GB of RAM in my case) speeds builds and tests up dramatically. 3) Zero productivity lost if your laptop breaks. Just grab a new one from IT and you're up and running exactly where you le…

I don't see #1 happening. There is no way anyone has my personally customized development setup in some VM ready to use. More likely it is going to be one common setup that they want everyone to use.

It's not for you, it's for every new hire. You can always build on top of the base image, but it sets a nice lower bound and gets people started fast.

Re: Devpod: Remote development environment at Uber

#99
post #48

Earlier quoted context omitted.

It had some good ideas, but that was the extent of it. Every iteration of the solution since then has agreed that streaming all application UI is always going to be janky and needless. It's a lot better to host the data on the server side and let the client handle visual rendering by itself.

I used to run Firefox on my Debian server with X tunneling in high school sometimes. It wasn't that bad then and surely it's even better with today's internet.

Firefox is a particularly bad experience over X forwarding these days.

Turns out lots of software depends on at least minimal hardware acceleration.

Re: Devpod: Remote development environment at Uber

#100
post #15

This sounds great. Certainly the IP zealots love it because the code never leaves the walled garden, and it’s a super-secure blah blah environment. Consistent tooling, easy onboarding… you get the idea. All good until you have an outage. Then your development team’s productivity drops to exactly zero while you fix it and your entire production environment is now potentially vulnerable to defects you can’t fix until t…

Every service has the risk of introducing a new point of failure, of course. But compare dev productivity lost due to service downtime with that of each new SWE in your org burning time to A) setup their own unique snowflake of an environment and B) futzing and debugging it when it breaks or there's a software update.

> burning time to setup their own unique snowflake of an environment

Anyone good is doing that even if you tell him not to. One size does not fit all.

Post reply on HN