27 ms·
Cloud desktops aren't as good as you'd think
- Spooky23 4y agoIt’s hard to take this seriously when it doesn’t explore the why. Skimping on MacBooks is a pretty niche use case for cloud development. Imo security drives this decision, and being able Work remotely is the benefit.
- alexeiz 4y agoIt's about two things: 1) latency, 2) cost. For the latency: 100ms is where the threshold is. Above 100ms, you start to really notice the latency and it becomes annoying to the point that you even start making mistakes while typing. Let's take an example: the average latency from my home laptop to a server in the AWS cloud is 20ms. If I add a GUI remote solution (such is Xpra, which is pretty good wrt latency), the latency increases to 60-80ms (and this is just for remoting a single GUI app like VSCode, but not the whole desktop). Now you add a latency of the app itself, which for VSCode is about 50ms. The total latency becomes 110-130ms. So latency-wise the experience of working with a cloud desktop is noticibly worse than my local developer laptop. For the cost: my developer laptop costs about $1500. 16 cores, 32 GB of RAM, 1TB SSD. The equivalent cloud desktop setup would probably be around $400 a month. So in just 4 months the cost of the cloud desktop will exceed the cost of the laptop. In my opinion, cloud desktops only make sense when you're not sure how much capacity you need. Is 4 or 8 cores enough for your work? 16 or 64GB of RAM? The cloud desktop setup is flexible. You need more you allocate more. But once the capacity is known, you should switch to your own hardware to significantly reduce the cost and actually improve the experience.
- mickeyk 4y agoAs a software dev, I like using whatever as a local env but SSH'ing into something more powerful to perform any heavy lifting. There's also tools like VSCode Remote that make it almost like developing locally. That said, the most taxing tools that I use regularly are things like video conferencing and "collaboration" tools like Miro. These things are hell.
- nicoburns 4y ago> the most taxing tools that I use regularly are things like video conferencing and "collaboration" tools like Miro Do you mean computationally taxing or mentally taxing?
- p_l 4y agoIn my experience, both? And combine computationally heavy result of running stuff like Miro adding to any inherent complexity of collaboration task... Ehhh
- maeln 4y agoThat is not what the article is talking about: > I'm also going to restrict this discussion to the case of "We run a full graphical environment on the VM, and stream that to the laptop" - an approach that only offers SSH access is much more manageable, but also significantly more restricted in certain ways. With those details mentioned, let's begin.
- deleted 4y ago[deleted]
- Rygian 4y agoIt is good that these "water is wet" statements get written down so we can point humidity-skeptical people to them from time to time. The deeper problem is the sad state of affairs of distributed computing for the end user: * Application instances expect to be the only ones modifying the files that underlie the document being edited. Most of them simply bail out when the files get modified by another application. * The default is "one device = one (local) filesystem" which is the exact opposite to what everyone needs: "one person = one (distributed) filesystem." * The case for local-only filesystems only addresses corner cases, or deficient distributed file systems that fail to uphold basic security constraints (such as "my data is only in my devices" or "no SPOF" for my data). * Whatever gets pushed to the cloud becomes strongly dependent on devices and vendors. Users end up handcuffed to a specific hardware (iCloud) or software (Android) if they want to have any chance of interacting with their own documents from their own devices. * What we need is not cloud desktops, or cloud storage. We need local desktops with a decent distributed filesystem, and vendor agnostic access to that filesystem from all our devices.
- hdjjhhvvhga 4y ago> * What we need is not cloud desktops, or cloud storage. We need local desktops with a decent distributed filesystem, and vendor agnostic access to that filesystem from all our devices. While I agree, this by itself doesn't solve the problem when you depend on such a FS for your work in a way that when you lose network connectivity, you can no longer work.
- netfortius 4y agoA combination of AWS Workspaces and Appstream solutions worked fine for us, with a few hundred developers and data scientists, spread all over the world, as FTEs (for the first category of products) and contractors on various continents (for the latter), including some M&As we conducted and continue to undergo, which require(d) very short time to bringing new teams up to speed.
- sascha_sl 4y agoI've done this for a long while, and I always come back to the only two viable competitors in the space (that don't require enterprise licensing). Nomachine and ThinLinc. Everything else is fine for the occasional remote desktop administration, but they all have a combination of bad video quality, no audio, no keyboard shortcut capture or bad scaling options.
- rcarmo 4y agoYou should really try xorgxrdp. It is now part of most modern distros, has good audio support, and excellent video quality (I can watch YouTube on a Pi running Remmina, using nothing but stock OS packages on both client and server). One catch is that some distros (like Fedora), for some reason use the Xvnc backend to xrdp by default, which is idiotic. Just go into xrdp.ini and enable the Xorg section (get rid of the Xvnc one) to get things to work properly. I personally cannot abide NoMachine (it was a spectacular fiddly failure for me many times, especially on Mac and Windows clients) and never found ThinLinc to beat the simplicity of RDP, especially considering the client software (I have very configurable RDP clients like Jump Desktop for iOS and Android that work perfectly with Bluetooth mice and keyboards, so I seldom pack a laptop these days).
- spaniard89277 4y agoDoes it work out of the box? multiple screens? doest it work ok with subpar connections, like 4G? Just asking, didn't know about it. Currentry using Linux Mint, I guess I could try.
- rcarmo 4y agoYep. Once you edit the xrdp.ini file to enable the Xorg backend (which I've done recently on Fedora 36 and Ubuntu LTS), you're good. Multiple screen support depends on your client, I've had no issues with Windows and Mac clients. Audio depends a lot on your server distro (clients have it all sorted). Fedora uses pipewire, so YMMV. When using mobile connections I trim it down to 16-bit color and it is perfectly usable, although if you're doing that all the time I'd also remove wallpaper and shadows (I prefer using something like XFCE when doing that - https://taoofmac.com/space/blog/2022/04/12/2330 https://taoofmac.com/space/blog/2022/04/12/2330).
- gw99 4y agoYep. Having worked in these environments, this solution is almost always sold to companies that are working around shitty hard to reproduce software stacks, staff trust issues, scale up difficulties and checkbox security cargo cults. The resulting outcome is usually increased staff turnover, increased cost and decreased productivity. Most of this they are having trouble rationalising or acknowledging still. You don't want to work for those companies. It's notably different if you have a cloud VM running linux and you're connecting to it with VScode or something over SSH. That's borderline acceptable. The reality is usually some horrible AWS, Azure or Citrix portalised solution however.
- spaniard89277 4y agoRDP works fine for Windows honestly, but in Linux the only decent solution is nomachine and sometimes not even that. Anyway, in my company they decided to hand us out a company laptop and connect through VPN to the corporate network, with shared drives, and it's the best solution IMO.
- rcarmo 4y agoSee my other comment regarding xorgxrdp.
- gw99 4y agoI worked over RDP for a couple of years. It's not terrible but it's not too good either. You pretty much have to have a wired Internet connection and there are still problems with Alt+Tab and high DPI displays. That's a reasonable compromise from your org. Good on them. I was suffering with corporate OneDrive. Fortunately everything I do ends up in git anyway so I just turned it off and don't use it.
- pbronez 4y agoOneDrive and SharePoint have been mostly ok for me… but there are real limits. They’re fine for a large number of medium sized files that you collaborate on with a handful of people. But then when you have a 100MB PowerPoint with a dozen contributors it falls over and can’t get up. I’m so annoyed they killed Slide Library…
- rcarmo 4y agoFunny that I should be reading this on such a "cloud" desktop. I have a Raspberry Pi[1] running Remmina and accessing a number of different machines via RDP - A personal Fedora 36 desktop running in an LXC container[2], a Windows VM on Azure, and various other similar environments. I am typing this on that Pi, through that Fedora session, pushed to a 2560x1080 display. Typing and typical browsing is almost indistinguishable from "being there". Coding too. It is only noticeable (on the Pi) when large parts of the screen update and the little thing has to chug along, but I'd rather have this completely silent setup than an Intel NUC. For work, I do have spanking new a work-issue laptop, but it is fairly recent and the fans spin up whenever I launch anything of consequence, so I am still logging in to a virtual desktop environment for everything up to (and including) audio calls (RDP has pretty decent audio support these days). Video and display sharing I still do locally, mostly because it's usual to switch environments during a call, but I have full multiple display support, and the connection can handle my 5K2K and 4K displays just fine. I've been doing this for a decade or so, ever since I could use Citrix over GPRS. The user experience is fantastic - even at that time I could literally close my session in the evening, take a morning flight to Milan, pop open my laptop and continue where I had left off, over a piddling sub-64Kbps link. With the right setup (and experience), latency issues mostly vanish. These days you can push a full 3D rendered desktop over DSL with either optimized RDP or game streaming, so the real constraints typically come from IT restrictions and people wanting to micromanage their environments. That said, I also use VS Code Remote, and it works great for me as well over SSH. But it's just easier to spin up a VM/container and do that from my iPad :) [1] - https://taoofmac.com/space/blog/2022/08/14/2030 https://taoofmac.com/space/blog/2022/08/14/2030 [2] - https://taoofmac.com/space/blog/2022/04/02/2130 https://taoofmac.com/space/blog/2022/04/02/2130 Edit: Remembered I shot this video of it running over Wi-Fi, unoptimized: https://twitter.com/rcarmo/status/1561397639215665153?s=20&t=PnWTBOx-1GBnMSmFDyHo-g https://twitter.com/rcarmo/status/1561397639215665153?s=20&t...
- simfoo 4y agoNothing beats working directly on a fast but quiet workstation sitting next to my table. At least for me, the productivity gains associated with quicker builds, IDE resyncs (CLion, looking at you) or just being able to have email, chat, calendar and an active video conference running without making the system crawl to a halt or long latency spikes are huge. 3-4k for a machine that will likely last 2-3 years is nothing in comparison.
- GiorgioG 4y agoFor the life of me I don’t understand why folks default to laptops for development. Yes portability is great, but most of us park our behinds at the same desk everyday. If I’m going to be out of the office (away from home) I take a laptop and remote into the desktop! Even M1 macs (I have one and love it), while powerful, just can’t hold a candle to a workstation class machine.
- terinjokes 4y agoI've asked for a workstation from corporate IT, because I'm nearly always working from the same spot, and would be okay with a Chromebook on the rare situations I'm working remote. The cost of a beefy (but properly cooled) workstation + cheap Chromebook isn't much different than a corporate laptop. It's just not an option being considered anymore.
- BozeWolf 4y agoI bring my laptop with me to other teams for questions. I also bring my laptop for presentations, demo’s and sometimes for refinements. I work at home 2 out of 4 days. And I am no exception. The whole company I work for does this. I cannot imagine working with a workstation. A big part of my team has crappy laptops and work just fine with a citrix client. I am a developer and do not understand how they deal with it, but the ba’s are ok with it!
- romeoblade 4y agoI have a work laptop, but do 99% of my work on an identical VM that sets on my homelab proxmox cluster. Working this way allows me to work from any device, even my phone or iPad from anywhere. It's encrypted, has all the standard security tools required for work, etc. Our VPN suite checks for all of that on connection. I have the added benefit of being able to provision with massive amount of resources that it'll only use when needed due to ballooning and quick backup and rollbacks due to LVM thin provisioning. I do have everything sync back to the work laptop so in the rare case I lose internet or have a hardware issue with the cluster I can continue working. But that's only happened once in the last two years when a completing fiber provider cut a fiber line on my property laying their own fiber. (Not their fault, my current provider had the markings off by 50', and even then the foreman gave me a gift certificates for the trouble)
- cardanome 4y agoI don't get the use case. Why would you even consider using a cloud desktop? Even a very low-spec laptop is going to run a simple graphical desktop environment like Xfce just fine. Watching a youtube video, browsing the web and even video conferencing can be handled with any new-ish laptop. And in reality, you still want a reliable laptop with decent keyboard, long battery life, good display and so on. So you won't end up on a low spec machine to begin with. For computation heavy dev stuff a simple SSH access is good enough. It can be a very smooth experience with a locally running VS Code or something.
- dijonman2 4y agoCompanies with strict data protection policies can force the usage of VDE for sensitive tasks, as part of a broader DLP program.
- Frost1x 4y agoMy work environment has a set of tasks that need to run exclusively in a tightly controlled cloud desktop environment. It's a nightmare.
- AshamedCaptain 4y agoCorollary: your company might force to use you a cloud VM desktop _even when your laptop is significantly more performant than the entire server holding these VMs_.
- Jorge1o1 4y agoThis isn’t the intended use case, but one upside of cloud desktops is that if I ever forget to bring my work laptop with me, I can RDP from a friend’s computer, etc. In one particular industry that is rife with cloud desktops you can be trusted to invest or trade $X mln dollars of someone else’s money on a daily basis, or to model out a $Y billion dollar M&A deal, but God forbid you try to install VSCode or MobaXTerm on your own. IT presumably got tired of being bombarded with application install requests, so one solution is to use vendorized cloud desktops that come with pretty easy tools (for them) to install applications.
- 8organicbits 4y ago> Modern IDEs tend to support SSHing out to remote hosts to perform builds there, so as long as you're ok with source code being visible on laptops you can at least shift the "I need a workstation with a bunch of CPU" problem out to the cloud. I'd mention SSH port forwarding in this section. For webdev you'll want to run your server on the remote host and use the local web browser. SSH port forwarding works great for this. I recently used this setup to get some extra RAM for a short project that could only be run as a collection of memory hungry microservices. This way I could get the whole thing running on one box; I spun down the server once the project was done.
- pwarner 4y agoI get a sense this model is the future, but also don't know if anyone using it at scale? Any examples out there?
- easton 4y agoGitHub uses it internally (using their Codespaces product, which also just lets you SSH directly into the VM it creates): https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/ https://github.blog/2021-08-11-githubs-engineering-team-move...
- qw 4y agoJetbrains has support for remote development environments. I haven't tried it myself, but it looks promising. https://www.jetbrains.com/remote-development/ https://www.jetbrains.com/remote-development/
- robertlagrant 4y agoI know this sounds gross, but I wonder if Chromebooks could benefit from being able to trigger local browser actions in the remote browser. So you can click "open in new tab" in your remote and it opens in your local browser. Bonus points if the remote session is also in a tab, so it just switches you away and you can come back easily.
- easton 4y agoWell thought out Citrix and RDP setups have something like this, where certain apps are able to break through and use the local GPU (usually video conferencing apps, like Teams and WebEx).
- spookierookie 4y agoIMHO remote desktops (cloud or DaaS) is a terrible idea with even more terrible executions. I never tried one that could measure up to a local environment.
- nickdothutton 4y agoCitrix HDX 3D-Pro on a GPU enabled VM works pretty well in my experience. Even driving multiple screens on the end user system.
- GianFabien 4y agoThe cost of a new fullly-spec'd workstation + high performance laptop is tiny compared to the salary of good software developers. Managements have a warped sense of how to save money and as a result grossly hurt morale and productivity where it matters the most.
- tpush 4y ago> The cost of a new fullly-spec'd workstation + high performance laptop is tiny compared to the salary of good software developers. That depends highly on where you are in the world.
- marcosdumay 4y agoIt almost doesn't. Computers are now cheap enough and developers mobile enough that it holds through all of the developing world, and most of the underdeveloped world.
- asdff 4y ago$3000 every 3 years is not alot of money to spend per head, unless you are considering somewhere with developer salaries in the $10,000 range or something like that.
- ClumsyPilot 4y agoSome companies in UK still provide 1080p monitors of the lowest quality
- yrgulation 4y agoIn my whole career i only had one company that provided windows machines and as expected it was a horrible place to work at. Current client wants to do the same. Coincidentally the place is becoming less desirable to work with.
- wongarsu 4y agoOutside of silicon valley, the business world runs on Windows, no matter how cheap or expensive the machines are. Being inflexible can certainly be a red flag though.
- destroy-2A 4y agoTry working in banking for 20 years, stuck behind at least 1 layer of citrix living in citrix inception. Latency for every keystroke, your brain starts to add latency to latency that is not there to compensate for a life lived wearing citrix latency goggles.
- just_boost_it 4y agoI quit a job because of citrix. Exactly like you said, very noticeable latency. It ate into my productivity as a part of my mental energy was going into waiting for feedback to my actions to appear on screen.
- raxxorraxor 4y ago> part of my mental energy was going into waiting for feedback to my actions to appear on screen This should not be underestimated. I was in a situation like this and I though my short term memory stopped working. I forget what steps I already did because some actions took 10-15 seconds. I often switched to another task in the meantime and could not recollect the last step I did 10 seconds ago. Such delays are poison for for intellectual task where you would need concentration for. There is no excuse for any modern device to make such pauses. It is also far too expensive for any company. The price for hardware is too low to let any user wait.
- just_boost_it 4y agoThat's exactly it. Instead of tasks going "1, 2, 3" in my head, it was more like "1,...,1,...,1". I had to keep reloading every task into my working memory, with lots of brief pauses to think "did that click register", or "when I typed those words, was the context on that text box?". It's a truly torturous level of friction.
- hirvi74 4y ago> part of my mental energy was going into waiting for feedback to my actions to appear on screen. Sounds like my life as a developer too. =D
- GianFabien 4y agoGive me a powerful workstation at work. Keep the laptop, I'm not doing extra work from home. Of course I have an even more tricked out system at home, but that's for playing games and working on my side-hustle.
- tinodb 4y ago> But even a fast laptop is slower than a decent workstation, and if your developers want a local build environment they're probably going to want a decent workstation. They'll want a fast (and expensive) laptop as well, though, because they're not going to carry their workstation home with them and obviously you expect them to be able to work from home. What kind of builds require more than one of the new MacBook Pro’s? And what about using cloud development environments instead of a fully remote desktop? I haven’t properly tested GitHub Codespaces, but it seems to me that a lightweight laptop (ie cheapest MB Air, if Apple) with MDM plus codespaces can work really well. Sure, not everyone is using these tools, but to state that devs in general need both a beefy workstation and a laptop sounds a bit outlandish to me.
- thrwyoilarticle 4y agoI work on a C++ project where a(n x86) Pro takes over an hour to build the universe. And that is less work than a browser or compiler.
- free652 4y agoI work at the company the gives a chromebook and a cloud desktop. Works great for me. VS Code for the development, SSH for the remote desktop, most of operations can be done via VSCode anyways. Chrome RDP is slow, I agree. I never use it anyways.
- jopsen 4y agoI have a fast laptop and solid desktop... But I frequently use vscode+ssh+tmux on the desktop when working from home. Then the powerful laptop just has to run chrome.. which to be fair, it barely does without crashing :)
- KirillPanov 4y ago
- throwaway0x7E6 4y agonobody thinks that. not in their sane mind. except for the "you vill ovn nothing, und we vill be happy" technocrats, but their reasons for that are their own.
- kkfx 4y agoFew personal notes: - workstation model means working on a good (physical) desktop setup, large main monitor, eventual other(s) monitor(s), good keyboard, perhaps a thumb trackball instead of a mouse etc, oh, sure potentially the same can happen with a docked laptop but... - ...laptop model means being able to move. If we WFH there aren't much reasons to move, well except when moving means relocate elsewhere. In practice MOST laptop users do not use their computers to be operational on the go but as a desktop replacer in suboptimal improvised setups, while those who need a good laptop can hardly find one. The real issue came out in lack of knowledge from most about how remote works should be done. We have seen a big PR campaigns for more than a decades about nomadic workers who works on unstable and limited mobile network with PCMCIA/3G modems cards, then USB stick/HSPA stuff, portable hotspot, mobile tethering etc in a bar (so with potentially hostile and distracting surroundings) or on a beach (added to a potentially hostile climate/environment for mobile devices) and this model who push from "big notebook" to netbook to ultrabooks etc obviously fails miserably since it can't really work. We can work in such setup for a limited period of time for limited tasks but nothing more. Now many start to admit that the solution is going back to the classic desk BUT this means every home need a room with a proper setup and so is an effort on both the worker and the company. A thing most reject. Substantially: it's about time to tell things clear. The modern web is CRAP made to sell services instead of empower users through IT plus an admission that classic commercial desktop model is also CRAP. We damn need real desktops with document-based UIs, working locally and syncing just data that need to be synced. As we do as humans, anyone who do a certain job with a significant degree of independence in a single company. To do so from remote we need a damn room per worker, well equipped, rented to the employer for a fair rate and establish clear contracts on that work paradigm. Try to keep up the crappy surveillance capitalism business who can be translated in "rent someone else services, own nothing", in the trace of WEF/2030 https://youtu.be/Hx3DhoLFO4s https://youtu.be/Hx3DhoLFO4s famous video it's a very expensive absurdity. Try to keep up hybrid craps to avoid real capex is another absurdity. Those who are eligible to work from home and want such paradigm should offer a proper room for that, companies should be clear "you are hired for remote works AND REMOTE ONLY, eventual travel to meed in persons must not happen more than once in a while" where the timeframe vary depending on the company and workers geographical distance. Let's do that and we all benefit, companies and workers together in a win-win move those only loser will be GAFAM and friends (from Citrix to Bomgar). Avoid doing so and we will keep an inconsistent liquid situation that can be trivially called like the famous Full Metal Jacket Sg. Hartman definition on the most common amphibious thing so called ...
- ClumsyPilot 4y agoWith cloud gaming you can stream 4K games at 60FPS, with clarity and quality for fast moving objects. Why does remote desktop still shit itself when I move around MS Word with a few pictures? I know a tier 1 financial company that offer 100k / year developers a slow VM and from there you have to log into another VM. The VMs are dual core, 8GB. I watch in horror as each keypress takes more than a second. The amount of lost productiviry is in millions Shadow offers remote desktop environment with GPU acceleration where you can run games and it feels responsive and decent.
- hasel 4y agoWhat’s the input latency like in those cloud games?
- NotHereNotThere 4y agoFrom a former Stadia user; latency was never an issue or noticeable with a 4K stream. And I've played quite a bit of fast paced shooters in the platform. The experience is extremely dependent on location, bandwidth, local setup and availability of close services (in my case, the closest DC was <15ms away according to Stadia telemetry).
- groovybits 4y agoI've been a Shadow PC [0] user on and off for the past few years. The performance was very good, granted I have a 1 gigabit Internet connection. 0: https://shadow.tech https://shadow.tech
- jasonlotito 4y agoNot the OP, but i know for something like PlayStation Now, it was acceptable for most games. It was a pleasure to just decide to play a game and well yeah, I was playing the game. The latency wasn't a concern. I couldn't see myself playing an FPS on it, but then I prefer kb/m anyways. But for the games I play on console? It was fine. There can still be issues, of course, but the latency overall wasn't a deterrent.
- 4y ago
- EugeneOZ 4y agoDifferent workloads require different tools. I work with Rust and TypeScript projects - MBP M1 Pro 32Gb RAM is 110% enough.
- izacus 4y agoThe companies deploying cloud workstations usually want to save money and not pay for your 32GB MBP.
- forrestthewoods 4y agoIt’d be nice if the author mentioned what cloud desktops and how good people think they are. Don’t tell me it’s worse than I think without specifying what you think I think! I know numerous gaming companies that swear by Parsec. Except the author doesn’t appear to be talking about Parsec tier cloud desktops. But then again it’s not clear what the author is talking about
- thesh4d0w 4y agoYep, we have remote developers using parsec with unreal engine, maya, 3ds, etc. Author seems to be stuck in the tech mindset of 5 years ago.
- rr888 4y agoI've had this in the last few jobs. One reason for it is that to move desks in NYC requires a union employee to move the computer which ends up costing a few thousand dollars. With terminals and a cloud PC you avoid this.
- rcarmo 4y agoAs a European, I find this befuddling. A union employee of whom?
- rr888 4y agoDoesn't matter who's paying them as long as they're union. There are certain things you just can't yourself.
- aerostable_slug 4y agoBack when I worked for $MEGACORP, we wanted to mount some monitors to the wall in the infosec space for Big Cool Dashboards. The quoted price from the union contractors that had a lock on all HQ building modifications was frightfully high (five figures to just mount some TVs). They spec'd asbestos inspectors for a space that had been certified asbestos-free, had safety observers that had to stand around and be sure the 'job site' was safe, etc. We went and just bought rolling stands instead. We thought about sneaking the Best Buy techs in but decided we liked our jobs too much to do that. When they found out we just bought stands instead of having the screens mounted they tried to throw a hissy fit but were unsuccessful (we didn't actually break any rules). This same job required me to get an exemption from two unions because the devices I worked with communicated with RF energy (radio union) and I needed a screwdriver to get inside of them (IBEW). Sigh. It didn't matter than the wire techs down the hall from me didn't know JTAG from JPEG — I couldn't risk getting a grievance because someone thought I, a mere unrepresented member of "management" (as everyone who wasn't union-represented was called), was takin' their jerbs.
- aaron695 4y agoNot sure if this is the Cloud not Thin clients but in a school licensing killed any Thin Client attempts. It was just too hard. I never got to the stage they hint at, if a tiny amount of things won't work, does it means the whole idea fails? If you only have Word/Excel/internet etc in one lab inevitably someone will ask for X,Y,Z. Is the money saved on computer and maintenance and benefits of instant installs/upgrades worth more or less than the property & teacher/student time costs of that lab running at 90% useability. But licensing stopped the experiment.
- zerop 4y agoI am studying if cloud IDEs are better option than giving laptops to team (From cost and managing PoV). Any experiences around cloud IDEs for teams.
- thehappypm 4y agoI believe this is how Google does development.
- Havoc 4y agovscode remote ssh is a decent compromise - the interface is "local" the stuff is remote. Hardly noticable that it isn't true local. The second the entire thing is piped through a VNC/RDP type setup it becomes shyte to use.
- the8472 4y agoAnother one is an unholy confluence of corporate compliance bullshit Connecting to the remote machine needs to go through corporate SSO (in a browser) that then starts the native remote client. Policy requires MFA, strong, frequently changed passwords and Windows Hello on the laptop. Policy also requires screen lock after 5 minutes. For some reason policy also requires disabling copy-paste to remote machines. The end result is that the remote session gets locked out every 5 minutes when you do something in the laptop's browser instead. To log back in one either has to enter a long, complicated password (can't paste it from the password manager!) or use an mfa code. Hardware tokens don't work either due to unreliable USB forwarding. Having to jump through those hoops once or twice a day would be tolerable, dozens of times is grating. I assume the policies are written for all the worst-case scenarios where people remote in from private, shared devices or use a laptop in a public place. But they add a lot of unnecessary friction when a laptop is used from a lockable home office.
- BenjiWiebe 4y agoDoes your password manager have an auto-type feature?
- the8472 4y agoThe remote desktop app captures the shortcut that would normally trigger auto-type. If I invoke it from the password manager's GUI it does work.
- r00fus 4y agoWhy would they disable paste-into? I can understand not allowing data egress but ingress? I don't understand the use case they're preventing against.
- vorpalhex 4y agoI had a similar problem that required me having to auth 36 times a day. I told them to fix it or I was opening a health claim for back issues from having to 2factor. Took them a few weeks but now I auth once or twice a day.
- 4y ago
- yrgulation 4y agoNot sure who thinks these are good. Perhaps for basic programming or in slow moving orgs but outside these two use cases cloud desktops are horrible.
- open-source-ux 4y agoPrivacy is also terrible in cloud desktops (and cloud apps) but many (most?) developers do not see it as a concern. It's too late to push for privacy in cloud software - especially when it's developers who are the strongest advocates for user-tracking in cloud desktops.
- raxxorraxor 4y agoReally depends on the environment. Almost all developers I know are pretty big on privacy and critical of the negative implications of users sharing too much. If you work at Google or Facebook they will plant different ideas into your brain. IT security might be slow, but they also found out that it isn't the users that pay them, it is management. Some concerns have validity, but there is also a lot of crap sold as security.
- open-source-ux 4y agoAlmost all developers I know are pretty big on privacy and critical of the negative implications of users sharing too much. If you work at Google or Facebook they will plant different ideas into your brain. I wish I could share a similar sentiment. But my impression is that privacy is low down the priority of many developers. Even this thread has 300+ comments and yet has not one single comment raising the privacy implications a cloud OS/desktop.
- vegai_ 4y agoWhoa, I thought they are absolutely pointless. Are they even worse?
- mrweasel 4y agoI don't know if I think they're pointless. The idea is reasonable, for some use cases. Personally I won't use a cloud desktop, or even remote desktop on a local LAN for any real work. Just the ever so small lag on remote desktops on a local network drives me absolutely nuts. The idea is pretty good, for light office work, but as it stands now, I wouldn't subject anyone to using Cloud desktops for any extended period of time. But the title is pretty confusing, when you think that cloud desktops are pretty terrible and now some one claims that they are even worse.
- kstenerud 4y agoCloud desktops are not a cure-all, but they do have their uses. I have "cloud" desktops hosted in my home (on a NUC server) and also on cheap VPS instances, depending on my particular needs, whether that be an isolated environment for dangerous work, or just having a portable desktop that I can connect to from whatever device I have at hand, continuing from where I last left off. GPU-intensive desktops are pretty much a no-go, but Mate desktop works beautifully and does what a desktop should: Manage my environment and get the hell out of my way. Browsing on the remote desktop is anything but smooth, but it's good enough for development. I'm not going to stream video on it, though. There's a tiny bit of keystroke latency, but not enough to matter IMO. I'm using Chrome remote desktop so YMMV. Running Steam on a cloud desktop is possible, but it's an exercise in madness. I do it all using LXD to keep things relatively distro agnostic. I've posted the Python script I use here: https://github.com/kstenerud/lxc-launch https://github.com/kstenerud/lxc-launch
- martinald 4y agoThe later versions of RDP is miles ahead of any other remote desktop protocol in my experience. I used to use it for gaming years ago (from Windows machine to Mac) - it really isn't that bad if latency and bandwidth is acceptable. As others say, it is very hard sometimes to detect what is local and what isn't with RDP. Everything seems to just work, even using the Mac client. Compare this with everything else I've used and it's a real janky JPEG compression mess.
- qwezxcrty 4y agoRDP is indeed highly performant, but the experience may highly depends on the latency. I'm working daily in a nanofabrication center and routinely RDP to workstations running Windows Server from computers with 12 years old i5 (which is supposed to be single purpose for tool billing). I wrote code with VSCode and Matlab, view GDS with KLayout, run ANSYS and COMSOL. Everything works so well even with all the 3D, despite of the ancientness of the terminal computer. However this depends on a decent LAN with a <1 ms ping delay (physical distance ~500 m)... When working at home through VPN, the experience degraded to fluent but with seldomly noticeable latency. And when using the shitty public wifi at train station, then every keystroke take a noticeable time to echo...
- rcarmo 4y agoTurn it down to 16 bit color in those situations.
- ryukafalz 4y agoThis is where I wish Plan 9 had caught on. It lets you run remote graphical apps more seamlessly than any remote desktop I know of today.
- jjtheblunt 4y agobetter than X11 did? better than Display Postscript did? (genuinely wondering since i've not had a chance to play with Plan 9, kinda randomly)
- ryukafalz 4y agoX forwarding involves granting the remote system access to your X socket, which is very powerful. I don’t know for sure that Plan 9’s model avoids this (I’ve only had small chances here and there to play with Plan 9), but given its heavy use of namespacing I suspect it’s at least possible. Performance-wise X forwarding was always pretty slow for me in a way that Plan 9 seems to avoid, though I’ve gathered it used to be more efficient prior to modern graphical toolkits that want to draw a bunch of bitmaps to the screen. It’s possible they were more evenly matched in the past. Not sure about Display Postscript, never had a chance to try that one.
- jjtheblunt 4y agoDisplay Postscript was really great, and X11R5 at least was super snappy, predates the Motif and other window managers slightly, I think. But i also would use super fast window managers and usually not be pushing bitmaps all over.
- woeh 4y agoI've had good results with offloading work to a cloud based server where I ran my docker containers during development. Just CLI though, I left the graphical part on the client side. As mentioned by others, VSCode with remote SSH was a blessing for such a scenario. There are benefits; I could scale up my workstation even for an hour or so, with more memory or a fancier cpu. And it was easier to share my work with other (remote) colleagues; because they were at another timezone I could leave the server up for them when needed, while I shut my laptop down for the day and see their feedback the next day.
- arnaudsm 4y agoWe underestimate how latency matters for user experience. Like the famous "100ms = 1% of sales" at Amazon https://news.ycombinator.com/item?id=273900 https://news.ycombinator.com/item?id=273900
- d--b 4y agoBeen working remotely for 6 years. My vm is in New York and I live in rural France. I connect over a 4g connection. I have a 24" monitor. The stuff is seamless. I mean it. I hate lagging, I hate stuff that doesn't work. But this does work. Really well.
- 300bps 4y agoSimilar setup for me and I’ve been working in a virtual desktop environment at two companies for the past ten years. Would not trade the flexibility it gives for anything and it Just Works for me. Most of the cons listed in the article either don’t apply (VR) or just work fine for me (video).
- leoh 4y agoWho do you purchase your VM from? What are the specs/cost?
- symlinkk 4y agoVSCode Remote SSH’d into a cloud desktop is superior to local development. With the hardware being remote you can afford to get something that’s ultra fast and can run 24/7, and it still feels just as snappy and responsive as running it locally. I think this will be the standard for development within 3 years.
- lioeters 4y agoI agree - for a few years my primary display has been permanently full-screen VSCode with Remote SSH, either to a remote server or a local virtual machine. Occasionally I open another window to edit files locally, but that's become rarer. I love having everything in a container that I can always destroy and recreate, or spin up as many as I want for isolated environments. It taught me to write automation scripts and configs for reproducible setups. It's perfect for education and onboarding new team members too.
- PaulKeeble 4y agoIts the latency that really gets me. Having all my text be delayed and having moving windows around be just painfully slow is annoying. Windows does a lot of tricks to hide desktop latency and that is with the CPUs right there and GPUs accelerating it. I have also run into lack of dedicated IO issues too that resulted in bad performance combined with CPU performance being subpar because cloud CPUs tend to be low frequency and a lot of desktop software depends on single thread performance still.
- opentokix 4y agoChocker
- fideloper 4y agoI think I found a good remote dev environment recently - basically "just use Mutagen to sync files to a server close to you". That keeps the source of truth (code files) local but outsources the compute. I started working at Fly.io ~4mo ago and quickly realized I could setup a nice remote dev environment since there are regions close to me (super low latency). I setup a VM to run SSH to sync/forward ports. It turn off when I'm not using it (after a configured timeout, it sniffs for SSH connections and exits if there are none - which stops the VM), and uses Mutagen to sync files. The source of truth is my local files, so my local IDE's work great (they're working against the local file system). I wrapped it up in a little tool I'm calling Vessel https://github.com/Vessel-App/vessel-cli https://github.com/Vessel-App/vessel-cli, which talks to Fly's "Machines API"
- NexRebular 4y agoMakes me miss SunRay... it just worked
- hansel_der 4y agoi feel like not much has improved when working with teamviewer or anydesk over using x11-forwarding (plain and with compression) or vnc derivatives remindes of an old document by stuart cheshire
- jcalabro 4y agoFor the past 5 years I've used a macbook to ssh in to a Linux VM as my development environment. It was great for the work that I was doing (distributed web systems). Now that I've changed jobs and I'm developing a desktop app again, I'm back on a physical Linux box under my desk, and I really miss the old experience. It was great to never care about a mac change tanking your productivity (i.e. I was totally unperturbed by the m1 switch), and it was also great not to have to run a Linux desktop environment, which it turns out is still a big pain.
- ricardou 4y agoI have had the same experience, although I've only been out of school for two years. So far my daily work stream has me doing ssh to a Linux box and then doing my work there. All the CI/CD, version control, building code, and storing the code is done remotely. So far it's been great (again, I've never had an alternative) and the power of virtualization has really come in handy. A couple of times in the past I accidentally borked my Linux box and started to figure out how to fix it, but then I had my d'oh moment: just scrap this one and get another! There's no "it works on my machine" and most importantly, I can work from anywhere, with a stable internet connection (even using a phone to do USB tethering worked fine), from a Mac, a Chromebook, windows, whatever computer. One caveat is that I program backends in C++ so a lot of the issues mentioned in the article don't really apply to me. Regardless, it's been great!
- hackrbrazil 4y agoRemote code development tools like Gitpod and Codespaces may be a good answer to the issues from the post. They sit in the middle between purely using SSH and full remote desktop experience, so feel like using your local machine while giving you access to computing power from the cloud.
- rc_mob 4y agoMy company did this to us. I'm thinking of quitting.
- politelemon 4y agoWhat do you mean by 'this' - there are several examples given in the article. Can you share some of the problems you're facing too?
- mgkimsal 4y agoHave generally been skeptical of 'cloud desktop' but... I had a friend who got in to sales for a cloud desktop provider about 6-7 years ago. There was only one real strong use case and she sold to that niche. Some specific cad/modeling/rendering vertical had software they used, and it was a CPU bear. Running that 'remotely' in the cloud was much faster than anything they could have locally. Managing all the licensing and security/perms there was an added benefit, but she was also mostly selling to smaller firms that didn't have full time staff to handle that. For the market she was in, at the time, there was a moderately clear win. I watched a pitch, and the speed diff was real. The productivity gains in many folks saving an hour or two in rendering time was easily worth the... I can't remember - $200/month/seat maybe? Outside of those types of use cases, the benefits were harder to justify. And... in 2020+... unsure if local desktop CPU caught up enough that the benefits were lower.
- geoduck14 4y agoThis sounds like a good use case! I'm considering cloud desktop at work right now for something similarish. We have a fat pile of data and want to let people use the data. If we give them VMs on the same network as the data (with super high bandwidth and CPU amd GPU), they can manipulate the data quickly.
- VyseofArcadia 4y agoI worked in architectural CAD for a number of years (as a software engineer, not an architect), and this surprises me. Sure you needed a PC with a little bit of beef to work in it smoothly, but not unaffordably beefy. A not all that recent macbook was good enough for pretty much all of our customers. I left the company in 2019, and plenty of people were still working on a 2012 macbook on the latest version. My own dev machine was a 2015 macbook. We did offer cloud rendering as a subscription service, but most people just did big renders overnight, and that was usually animations, not single-frame renders. I'm curious which CAD software is such a bear that cloud desktop was worth it. Whether the particular industry was just that incredibly complex, or if the product was just slow and inefficient.
- mgkimsal 4y ago
- nefix 4y agoDisclamer: I'm part of the IsardVDI project (https://gitlab.com/isard/isardvdi https://gitlab.com/isard/isardvdi) With RDP, in our experience, the latency issue is nonexistent. We've even have successfully run workstations editing 4k video with 0 issues. Yes, for those extreme cases you need a GPU (and the only option is NVIDIA Grid, which are really expensive cards with licensing on top of that), but for the most part, if the hypervisor has a good CPU, it's more than enough, we have clients that even use RDP through the browser. You don't even need to have a really good internet connection. Also, SPICE is really good too, with really good desktop integration
- jonnycomputer 4y agoPerhaps others have had better experience, but whenever I've used a remote GUI VM (e.g. through the Guacamole web browser interface), the latency is painfully noticeable when typing. So much so that I've usually dropped down to a local terminal connecting to the vm by ssh and doing everything in Emacs (or Vim, if that's how you're bent), or having JetBrains edit stuff remotely. But then you're back to needing a decent workstation.
- rcarmo 4y agoGuacamole is excellent for managing servers, but hardly a reference implementation of remote access. The display protocol is getting shoehorned through a websocket and rendered into a browser canvas, whereas if you use Remmina or another native RDP client things have much less overhead.
- mwcampbell 4y agoI'm glad he brought up accessibility. My company has been working on a remote desktop product [1] that addresses this issue, particularly for blind users. The connection carries audio output from the remote machine, and the keyboard input handling code on both sides is designed to work with the quirks of screen readers, so running a screen reader on the remote machine works well. Beyond that, if the remote machine isn't running a screen reader, there's a way to get speech output on the controlling machine using the open-source NVDA screen reader for Windows, without requiring audio output on the remote machine. We still need to work on Braille output and screen magnification, and we've only started thinking about alternate input methods, so this doesn't cover everything, but the problems are solvable. [1]: https://getrim.app/ https://getrim.app/ I don't normally self-promote commercial products like this, but this is relevant to the article, and I thought people might find it interesting.
- alchemist1e9 4y agoI don’t see Xpra mentioned in comments yet. Works pretty well for us since remote windows and local are seamlessly integrated and managed by local WM. Solves the multi monitor issues. Definitely lower latency than vnc or rdp or nomachine from our testing. Windows, Mac and Linux clients all work well.
- rcarmo 4y agoI have xpra installed but seldom use it since it has no real benefits (for me) over RDP (which does multimonitor, audio, etc.), but I also need to access Windows desktops.
- kanzure 4y agoIs there a cloud desktop product where I can select a development environment and instantly RDP into it pre-configured and ready to compile code with libraries installed etc?
- lupire 4y agoNot bad article, but intro deeply confuses the issue. If you want fast builds for your org, use a build server farm that is much faster than the fastest workstation, and sma incremental builds locally or on your cloud desktop. A local UX machine (15" Mac not built in the Dark Ages of 2016-2020, + desk monitor, good for 5+ years) with a FUSE mounted remote storage and a build farm is a great combo.
- GoOnThenDoTell 4y agoWhat are options for the fuse mounted remote storage?
- anxiously 4y agoI used to think so, but I have yet to own a Mac that survived more than 3 years. However, that may have been partially due to the "Dark Ages", but more like 2014-2021. I'm happier with something Linux friendly (thinkpad x220, pinebook pro, etc) and a remote system I use over ssh (sshfs, ssh+vim+tmux, etc). All at the great cost of ~$220 + $5/month?
- hoistbypetard 4y agoReading his description of the issues, it sure sounds like they're as good as I'd think. I'm more optimistic about the gitpod-style remote development environments, honestly. But that post describes exactly what I expected from a "cloud desktop." I wouldn't expect someone to get much done if I inflicted that kind of work environment on them.
- CarbonCycles 4y agoNot a fan of cloud desktops or any "virtualized" desktop. Experience is typically subpar and the worst part is that it requires a stable internet connection. What's the point of that when many of us are working remote and mobile?
- deleted 4y ago[deleted]
- cdkmoose 4y agoThis also requires access to a stable fast network at all times. Local internet goes down, AWS/AZURE/GCP goes down and I'm stuck. With my laptop setup, I can work anywhere anytime, as long as I have power. I'll need network access at some point to commit code or pick up changed libraries, but that can be managed.
- anxiously 4y agoMaybe that is not a bad thing? If you don’t have internet then go for a walk. Touch some grass. I hope always being in a work state isn’t seen as a plus.
- Maxburn 4y agoMultiple times I've caught coworkers starting a gotomeeting/zoom meeting in their VDI and they can't figure out why they can't use their LOCAL USB conference microphone/speaker array. Yet another use case where VDI falls down.
- easton 4y agoMost of the video conferencing apps of choice have a version where they run something on the thin client to reduce latency (going from the thin client to Zoom or Teams or WebEx directly instead of through the VDI). They have support for the mics and stuff too. https://support.zoom.us/hc/en-us/sections/4404192199053-Virtual-Desktop-Infrastructure-VDI- https://support.zoom.us/hc/en-us/sections/4404192199053-Virt...
- Maxburn 4y agoInteresting, I wasn't aware of that. I just copy the link and bring it to the computer I'm using to open directly there.
- anxiously 4y agoI don’t use a graphical cloud setup, but I do use a vps for all of my development. It is nice having a single cloud based machine that is accessible via ssh on any of my physical devices. I have a dev environment closer to production, ssl and publicly accessible urls for testing services and sharing to compare designs and UI changes, etc. Fantastic setup for anyone that likes a vim+tmux workflow. Only a single environment to keep up to date and configured. Daily snapshots and backups. Keeps the cost of other hardware down as well.. I can work effectively on cheap hardware which certainly offsets the server costs. I did a cost rundown before and it was like ~15 years of my vps and cheap hardware equal to a single entry level MacBook Pro.
- wwarner 4y agotilt.dev looks very promising and addresses some of these issues
- pmontra 4y agoI thought about buying a desktop again after almost 30 years, bury it in some room at my home and use my laptop as remote desktop. I work in different rooms as seasons go by (so no air conditioning), sometimes even morning vs afternoon. Not a common use case I guess but that's exactly the point of the article. I think I'll keep using my laptop as primary and only machine because many of the scenarios in the article also apply to me and what if I have to visit a customer? It never happened again since the pandemic but it could.
- chatterhead 4y ago
- leoh 4y agoI’ve been developing for the last few years on a cloud VM and love it. Latency has never been a serious issue for me. It lets me use Linux as my daily driver, I have a highly capable machine with large L2/L3 cache, a lot of RAM, many CPUs — and it’s totally portable. Not to mention that the internet speeds on the cloud VM are incredible — easily 1gbps+ wherever I am in the world. This is a selling point folks forget. The combination of speed (hardware and network) and always being on (can leave compilation tasks etc. running) is very nice. I’ve used Citrix and the modern Chrome Remote Desktop experience is generally an order of magnitude better. Working on a bus with wifi, typically fine. Even working from Asia with the VM in California, great. The only issue I have with cloud is that for personal it’s expensive. Google compute VMs are a lot more than equivalent workstations per year for similar hardware afaict. That’s the question I’m curious how folks work around.
- sbf501 4y agoWho uses a physical workstation anymore? (Besides artists.) OP is suggesting a complete remote desktop for Office applications, like Video Conferencing. Ironically, for all the crap X takes, it could actually pull this off. Moreso for Wayland. I'm surprised there isn't a graphics client/server model out there as good as X after ~40 years. But I think the problem is too much layering: trying to put a VM in the cloud as an office desktop requires way too much bandwidth & latency through a remote desktop without a client/server graphics mode. The tools are there, they just aren't being used because they are missing a security layer. I haven't used a physical workstation at my desk since 1999, and I was a designer/architect at Intel for decades. Everything was done via VNC. Back then it was called "distributed computing" with AFS, so it was a "proto-cloud". And before that I used a sun workstation to telnet into beefier computers. This was AIX/SunOS/LInux based. Granted, I was not videoconferencing, but there's no reason why the desktop needs to be rendered in the VM (including the video stream!!!), then encoded, then decoded, then rendered again. It's just dumb.
- leoh 4y agoX for wire protocol is truly awful compared to chrome Remote Desktop. I’ve been eager to use it and have played with all manner of settings, but it’s very slow pretty much no matter what. Apparently it sends many more frame updates — ie is very network and compute heavy compared to other modern protocols that send rolling images.
- politelemon 4y agoA lot of people use workstations. As described in the article, they are more powerful and many people need that power. You may have a specific, limited set of anecdotal data that you're using to ask that question rhetorically probably?
- sbf501 4y agoYep. All I have is have anecdotal data. I believe desktops are on their way out. The trend has been happening for ~30 years. Even Android is working on virtual phone OS. The only applications I've encountered that need a workstation are: Audio Engineering, Video Editing, and 3D mock-up (prior to sending to render farms). All arts. What are some other examples? Everything I know about science and engineering (academic and commercial) uses a cloud/farm/distributed.
- BeFlatXIII 4y ago> aren’t as good as you think Who thought they were any good in the first place?
- aleksiy123 4y agoI would have agreed until I started working at Google. Also, you should completely avoid having Remote Desktop and instead use ssh + an editor that works with remote files. At Google we have a custom fork of VSCode running in browser and builds can either be distributed or run on my Linux VM to utilize build cache. I liked it so much I started doing a similar setup for small side projects. Just boot up the Cloud Console on GCP and start coding. Advantages are: - Accessible from anywhere (I use my pc, my laptop, etc. The env is always the same) - More compute (I can attach more CPU + more RAM flexibly) - Less friction to start (minimum environment setup, most tools are preinstalled) - Datacenter Network speeds + Artifacts cached (installing dependencies is fast) Disadvantages: - network dependence There are some adjustments that need to be made to your workflow. And for some applications you are dependent on having the correct tooling. However, my personal prediction is most companies will move to this type of development workflow as the tooling improves.
- kfajdsl 4y agoThis is exactly the alternative that was presented at the end of the post. He was specifically against remote desktops.
- danans 4y agoRemote desktops can work great if you constrain and structure what you do in them. For me, this means not using traditional desktop environments like gnome/kde/windows/macos, but instead a full screen tiled window manager (i3 in my case) with different virtual desktops assigned to different work items. Each virtual desktop is split in half between the IDE (vim in my case) and a terminal session for the code under development in that IDE. That's it. No silly weather or chat widgets (all that lives in my local laptop's traditional desktop). The result is I never have to search for a dev task related tab or be unsure if the code I'm running is the code I'm editing (which can happen if you are working on many concurrent changes). I liken the setup to the keyboard-driven text terminals you still see in some shops, hotels, and airport check-in desks. In general, I think smartly crafting your workflow matters a great deal more than the particular tool you might use.
- overspeed 4y ago> Modern IDEs tend to support SSHing out to remote hosts to perform builds there, so as long as you're ok with source code being visible on laptops you can at least shift the "I need a workstation with a bunch of CPU" problem out to the cloud. JetBrains has Gateway[1] and VSCode has remote Dev tools[2] Gateway's performance is very dependent on the network connectivity. If you have bad ping, you're going to curse the world seeing the input delay. VSCode seems to be caching the files locally and updating them separately. With bad internet, you still get the native input lag. [1] https://www.jetbrains.com/remote-development/gateway https://www.jetbrains.com/remote-development/gateway [2] https://code.visualstudio.com/docs/remote/ssh https://code.visualstudio.com/docs/remote/ssh
- bhauer 4y agoUsing a third-party cloud only ensures that all work scenarios enjoy the same lowest-common denominator. My preference is to select one of the work contexts (e.g., the office) as primary and to put a workstation there, then remote to that workstation from secondary contexts (e.g., at home). This configuration gives me first-class computing where I need it most, in the primary context, and a decent second-class option when I need to work in other contexts. I happily worked with this configuration for more than a decade and found it served all of my local and remote needs.
- teeray 4y agoAll these dev-machines-in-a-cloud sound wonderful from a security, compliance, and onboarding perspective. What is often forgotten is that this is now a service you’re operating and a massive SPOF. If it goes down (and it will), productivity drops to exactly zero. It’s like sending your devs home until it’s fixed.
- snotrockets 4y agoNot that much different than a power failure at the office, or your uplink going down. Both more frequent, in my experience, than cloud zonal outages.
- origin_path 4y agoLaptops have batteries that can ride out a power failure of typical duration, especially for non-dev workers. People can get a lot done without the internet.
- orloffm 4y agoCloud desktops were fine a few years ago in Windows 7 times when the desktop was 2D and was remoted as GDI instructions. Windows 10 made everything 3D, so now not having a GPU assigned to a virtual machine means everything is first rendered into a bitmap and then sent over wire as a movie. This causes additional delay, JPEG-like artifacts and instability.
- deleted 4y ago[deleted]
- bluedino 4y agoI've been using this in one form or another for a very long time. Starting when we had Windows desktops with bad Linux support, and back then you couldn't run both OS's on the same machine at the same time. So I stuck a workstation with Linux on it in a closet. Fired up VNC and I could hit it from home, my cubicle, the road, wherever. It's evolved over the years as things became faster and more secure. It became a co-located server, then a VPS, and now it's a shared setup on a beefy server. It maintains it's state no matter where I go. I can open up two ore more sessions for two ore more monitors. But it's more useful to just surf the web or open PDF's or whatever on the local machine. Copy and paste is pretty seamless these days. And wherever it's located, has a much better network connection than I do. You still have a latency problem with large files (CD .iso in the old days, a 10GB package these days). I don't play games so I don't really know how that goes. But for development it works great, as well as just a general workstation.
- deleted 4y ago[deleted]
- theptip 4y agoI have never got this set up, but I think a hybrid approach could be quite good; something like pytest-xdist remote SSH builders perhaps. (Maybe you can rsync the diffs in the background though, instead of when you hit the "test" button, to speed things up?) https://pypi.org/project/pytest-xdist/#sending-tests-to-remote-ssh-accounts https://pypi.org/project/pytest-xdist/#sending-tests-to-remo... Running a local-first setup is nice for things like iteratively step-debugging your latest changes on a single test case, but being able to push the diffs to a fast remote build server (elastic cluster?) to speed up the "run all the tests" action would be nice. I think you can do this with Clang remote builders too. I hear Bazel has this. Is this something that anyone has experience with? It seems like it could be the best of both worlds, from a compute performance standpoint. (As others have noted, the other big benefit of a cloud desktop is that you don't have to spend time setting up your dev environment, which is constant toil for new developers; Github mentioned this as a big contributor of friction in https://github.blog/2021-08-11-githubs-engineering-team-moved-codespaces/ https://github.blog/2021-08-11-githubs-engineering-team-move....)
- pavon 4y agoLooks like I'm in the minority here. I use a VMWare Horizon VM as my primary desktop environment, and I love it! Working from home, VMWare Horizon has much better performance than using a VPN for many things including X11 forwarding to Linux computers on-site, RDP to Windows computers on-site, and accessing CIFS/SMB file shares. And when I do go on-site, I can connect to it from any computer, either using a kiosk, or a colleague's computer if we are collaborating, or any conference room computer.
- taylorius 4y agoI find it hard to imagine they're less good than I think.
- jjtheblunt 4y ago> aren't as good as you'd think I always find titles like this clickbaity, because the author has no idea what anyone in the audience would think.
- NoGravitas 4y agoI wouldn't think cloud desktops would be good at all, so if they're not as good as I'd think... they must be pretty darn bad.
- artisanspam 4y agoThis is the terrible norm in the semiconductor industry. VNCs everywhere. Almost all EDA GUIs are only designed for Red Hat or CentOS so IT makes everyone connect to a datacenter and start an X server. Having interviewed at/worked at these companies, I know that Intel, NVIDIA, and Apple all do this. It sucks. Your productivity plummets because each keystroke lags and it makes you lose your train of thought. When there's an outage, no one can do any work at all.
- superkuh 4y agoMirror for those that get blocked by dreamwidth like me: https://archive.ph/7RDZP https://archive.ph/7RDZP
- olliecornelia 4y agoI thought they'd be pretty fuckin bad, you're telling me they're worse than that?
- 0xCMP 4y agoUsing something like Coder to provision workspaces and VS Code, SSH, and Wireguard/Tailscale are an absolute dream. I hope for many in these comments to experience this (especially Coder V2 which is far more flexible in provisioning workspaces) instead of the RDP non-sense that others need to suffer through. While Parsec is good (and Nvidia GameSteam + Moonlight seems better in my experience) it really isn't good enough to use instead. Also, honestly, with the advent of things like Tailscale I think it'll become more and more common to have a desktop + a nice, but weaker/cheaper device (Chromebook, MBA, etc.) that you can securely access at your desk or remotely if you want. It's what I personally do with my Desktop and M1 MBA right now. Also want to add that dedicated servers aren't that expensive by comparison and you can get a lot of value paying like $100/month and using that remotely.