Live data from Hacker News

Devpod: Remote development environment at Uber

uber.com

191–200 of 235 posts

Re: Devpod: Remote development environment at Uber

#191
Anyone from Uber here that works on this? You ever expect a DevPod for iOS developers? I've been toying with idea of doing this in work for our devs on Intel MacBooks, using -> https://github.com/sickcodes/Docker-OSX, which enables local running on iOS devices.

I think it's hampered by licensing though, maybe that's why it's not used or mentioned in this post.

Re: Devpod: Remote development environment at Uber

#192
post #191

Anyone from Uber here that works on this? You ever expect a DevPod for iOS developers? I've been toying with idea of doing this in work for our devs on Intel MacBooks, using -> https://github.com/sickcodes/Docker-OSX , which enables local running on iOS devices. I think it's hampered by licensing though, maybe that's why it's not used or mentioned in this post.

I worked on this at Uber in the past and you explain very well why there is no iOS flavor for devpods.

Re: Devpod: Remote development environment at Uber

#193
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.

These days lots of people stream games and CAD sessions over the internet using software like parsec. It works quite well and is often better than the UI running locally on an underpowered GPU.

I'm using Steam Remote Play over local LAN for gaming, works pretty well.

Re: Devpod: Remote development environment at Uber

#194
post #154

I've tried to setup this up at a small tech company pre-kubernetes and there were a lot of challenges... * low utilization, so you need to auto-shutdown or auto-scale down systems but sometimes jobs did need to run overnight or on the weekend so you needed an interface/user training to avoid upsetting users/killing their jobs. * local hardware is cheap and powerful - employees are already issued really powerful lapto…

Yeah I can't really get beyond this thing about how powerful our machines on our desk are compared to what hosting providers charge if you have 12 months utilization (I get people in SV change jobs every 6 months but). I guess the thing that makes this make sense for Uber is the ginormous repo? This probably is a good "big ball of mud" solution to a bazillion tiny projects, each with varying degrees of documentation…

> Yeah I can't really get beyond this thing about how powerful our machines on our desk are compared to what hosting providers charge if you have 12 months utilization

I'm not so sure. Here's a quick comparison:

Desktop:

Dell XPS 12ᵗʰ Gen Intel® Core™ i5-12400 Windows 11 Home Intel® UHD Graphics 730 8 GB, DDR5 256 GB SSD

$669.99

https://www.dell.com/en-us/shop/desktop-computers/xps-deskto...

Cloud:

Linode 8 GB 8 GB 4 CPUs 160 GB

$0.06 / Hr

Suppose I work every working day of the year for 10 hours (an overestimate). I would pay 250 * 10 * $0.06 = $150 for the Linode. So the Dell desktop takes 4.5 years to pay for itself.

Granted this is a fairly rough comparison but I don't think it's obvious that physical machines are more cost efficient that cloud machines.

Re: Devpod: Remote development environment at Uber

#195
post #147

Earlier quoted context omitted.

[Obligatory Nix stanning here]

oblig. advice to wipe / on every boot: https://grahamc.com/blog/erase-your-darlings

Great idea! Also, restore from backup on every boot. The trouble is, I never reboot.

Re: Devpod: Remote development environment at Uber

#196
post #160

Back in the early 2000s, Sun ("the network is the computer") had a similar solution that worked seamlessly for most of their software org-- the Sun Ray. https://en.wikipedia.org/wiki/Sun_Ray It was a network terminal. Your files and entire session were on the server. Your “local” terminal consisted only of a network interface and enough compute power to display your session. The way they had it set up was that you co…

I worked on a Sun Ray. I and many colleagues absolutely hated it. These tiny machines were just way too slow to handle even the tiny amount of work they had to do. Also, everyone knows that X over network is just not made for modern applications ("modern" in the year 2000!). I worked with Matlab, and had a lot of fun trying to rotate 3D plots with a few thousand points. It was just unbearable. Then of course the "sin…

How long did the networked machines experiment last at Sun before you switched to Linux PCs?

I remember that famous Larry Ellison speech in the mid 90s about how thin client/networked applications will be the future. It’s apparently what helped make him famous because no one cared about enterprise DBs in the tech media:

https://tedium.co/2018/04/12/larry-ellison-network-computer-...

Re: Devpod: Remote development environment at Uber

#197
post #190

Off-topic question: What are 70 Mio. code lines for? I mean, yeah, there are some services like Uber, Uber eats, but gosh, 70 Mio.? I have worked on very sophisticated products with a bit more than 1 Mio. LOC... Do I miss something in Uber apps and services?

Or "4000+ services", and "500+ Web Apps", and the many thousands of devs they employ.

I've wondered for quite a while where all this code and complexity is at. My guess is a lot of it is in their self-driving cars projects and stuff like this, but I don't really know.

Re: Devpod: Remote development environment at Uber

#198
post #71

Earlier quoted context omitted.

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…

Depends on the scale you're working with. If your complete code can fit locally, you're working at a different scale. Huge monorepos won't fit on a laptop-sized local disk these days, and a full local dev env would take a half dozen VMs to even replicate half-successfully.

> Huge monorepos won't fit on a laptop-sized local disk these days

Reason 743 why monorepos create more problems than they solve

Re: Devpod: Remote development environment at Uber

#199
post #58

I always dream about this setup. But an unreliable network prevents it. mosh and VSCode Remote partially solved the problem of latency. There's is still a problem of unavailable network - when you are in flight. nix solved my problem by and large for well modularized projects. Because, nix can provide nearly identical dev environment in practice.

I'm always thinking about the use case of writing code at an airport or on a plane or somewhere remote with limited (or no) reliable internet connection. Or maybe I should just take a vacation :)

Re: Devpod: Remote development environment at Uber

#200
post #113

Earlier quoted context omitted.

The tech was by most accounts groundbreaking. The problem was with everything else – business model, pricing, games, customer trust.

It wasn't really groundbreaking tech. It's been possible for years, see online. It's just the business model sucks. We did some prototypes in a large company I worked for and it was easy to tell if you could put servers in local data centers with fat pipes it would work. We had demos using ec2 back in 2013. Them we ran the numbers and were like why, esp with free to play becoming more and more of a thing so we canned…

I don’t think Stadia itself was groundbreaking. Xbox cloud worked as good as Stadia.

But a few yrs in the big players in the cloud gaming industry figured out some critical latency issues around the controllers and optimizing delivery of the video feed. To the point where lag was almost non-existent on a good fiber connection. The datacenter stuff was obviously the core innovation though.

I still prefer to download my Xbox games to my series s/x but I spent a year playing Xbox cloud games exclusively and I could 100% see that being the default for a big part of the casual audience.

Post reply on HN