10 ms·
For those talking about wanting to wait till docker support is 5x5, there’s another work around you can go with. Buy the M1 and switch to a fully remote develo
by wjossey 6y ago
For those talking about wanting to wait till docker support is 5x5, there’s another work around you can go with.
Buy the M1 and switch to a fully remote development experience. Spin up a DO instance, wire up VSCode Remote, and run docker on that machine.
While it does require an internet connection, I’ve found remote development to be really fantastic as an option on a personal “underpowered” laptop. Especially if you are running a cluster of services or large databases, I find it’s far more productive to offload the running of my code to a VM in the cloud.
- seek3r 6y agoWhy is this getting downvoted?
- untog 6y agoI didn’t downvote but IMO “the way to get this working on your expensive laptop is to buy another entirely separate computer and have an always on internet connection” isn’t really an answer (and isn’t at all specific to the M1).
- reaperducer 6y agoI read it more like: "The way to get this working for the time being is to skip the upgrade for now and use an old banger laptop you have lying around until the ecosystem is ready for the way you work."
- whbrown 6y ago> "Buy the M1 and switch to a fully remote development experience." At least you'd be getting the impressive battery life from the power efficiency courtesy of RISC ... Still rather silly though.
- skohan 6y agoI'm really hesitant to invest in VSC Remote because I feel like it's a slippery slope to a world where we can't compile software on our own computers anymore
- reaperducer 6y agoI feel like it's a slippery slope to a world where we can't compile software on our own computers anymore To me it feels more like going back to the way things used to be. Reminds me of when I used to do my work by pushing buttons on a Wang terminal in one state, and the PR1MEOS machine that I was actually working on was several hundred miles away. Maybe as our work becomes more complex, it makes sense to return to thin clients.
- skohan 6y agoBut is it necessary complexity? The average laptop is orders of magnitude more powerful than servers were back then. Which workloads besides maybe ML training actually need that much more power than you can get easily locally?
- cpuguy83 6y agoVSCode has completely solved the complexity problem at the interface layer. It is quite literally like you are running it locally (because you are), but the commands are executed against a remote backend. Extensions are managed per host and just work naturally... it even tells you what extensions you don't have installed on the host (but do have on the local instance). It works extremely well.
- skohan 6y agoYeah but what I mean is that is a lot of extra complexity, compared with just building code on your own workstation. I would rather use my workstation's CPU & memory resources to actually compile the code rather than masking the complexity of moving that compilation process onto hardware which I do not own.
- shmoogy 6y agoFor people considering this, you can do the same on any iPad using Blink as your terminal, with the benefit of LTE. It's how I work now, a lot of vs code remote and ci/cd anyway. That being said I am ordering my M1 air .. for reasons, definitely just lusting for a new upgrade.
- yoz-y 6y agoAn often repeated things is that you should buy tools for what they can do right now, not what they might be able to do in the future. There is nothing wrong with waiting a bit more. One of the great things about docker is/was that one can develop locally and the same thing would run when deployed. Having to run it on a distant machine kind of ruins this.
- reaperducer 6y agoOne of the great things about docker is/was that one can develop locally and the same thing would run when deployed. Having to run it on a distant machine kind of ruins this. That's great, if you're doing something that will fit in a laptop. But I think the OP's point was that people using large datasets, complex workflows, or multiple projects, his method makes sense and saves money on buying new hardware. For example, the web site I'm going to putz with today is many GB larger than the unformatted capacity of my laptop's SSD.
- nohant 6y agoWell OP said "Buy the M1 and switch to a fully remote development experience." One could argue that even the "cheapest M1 + paying your remote Docker/Compute friendly machine" is not really the cheapest option. At least do not convince yourself "the new M1 chip is faster and will improve my developer experience regarding compute"
- coldtea 6y ago>One could argue that even the "cheapest M1 + paying your remote Docker/Compute friendly machine" is not really the cheapest option. You don't buy a Mac because it's the "cheapest option". You buy it because you value several extra conveniences (displays, trackpads, speakers, construction, weight, baterry life, even keyboard - before and after they've messed theirs up for 3 years). Sure, it's not better in all of those than a comparable in price PC laptop, but it's usually better in most, and unaproachable in others. The SSDs it comes with are speedy as hell also (compared to the options Dell or Lenovo has on comparably priced models). The CPU/GPU you can find in PC a too. At least until the M1, which has the best performance/power ratio of any current PC CPU. Plus there's always macOS, which lets you have a no-fuss desktop OS than runs all your proprietary apps and a native UNIX (as opposed to WSL/WSL2). Plus an ecosystem, drivers for your external peripherals (as opposed to the hit-and-miss Linux experience). But it's not about saving money, and "I could the same work while spending less".
- monroewalker 6y agoWhat does "DO" refer to here? edit: I'm guessing Digital Ocean
- BossingAround 6y agoYep, Digital Ocean, a cheap VM provider.
- bluedino 6y agoI’d say they are past cheap VM territory and would be a tier two “cloud” provider, wouldn’t you?
- wlesieutre 6y agoFunny to think about this approach from an M1 machine, since I bet the new Air is substantially faster than the average DO instance. But you get the compatibility and still keep the Air’s absurd battery life, so it wouldn’t necessarily be a bad setup.
- gogopuppygogo 6y agoNot realistic for everyone’s workload. Especially if you buy M1 hardware to take advantage of the machine learning enhancements. You could buy a chrome book for less than Apple silicon and do remote development.
- mamcx 6y agoI get the Macbook Air (waiting!) to replace my mac mini, but for this and be able to run Windows instead of pay forever a remote host I buy one of this babies: https://www.lenovo.com/us/en/desktops-and-all-in-ones/thinkcentre/m-series-tiny/c/M-Series-Tiny#compareSection https://www.lenovo.com/us/en/desktops-and-all-in-ones/thinkc...
- matt-attack 6y agoDO instance? Can you please expand that acronym? There was a recent discussion on Hacker News about the use of abbreviations and acronyms and how they drastically reduce the legibility of posts.
- deleted 6y ago[deleted]
- IceWreck 6y agoOP is talking about DigitalOcean. They are just one of the thousands of VPS (Virtual Private Server) providers you could use.
- dmerrick 6y agohe means Digital Ocean
- pk2200 6y agoDigital Ocean, probably.
- mekaron 6y agoIt stands for Digital Ocean. https://www.digitalocean.com/ https://www.digitalocean.com/ But yes 100% agreed, especially this one as it's really hard to google for..
- lucideer 6y agoWhat a bizarre suggestion in this context. I get that remote development is a thing some people prefer, and if you have an underpowered machine it can be great to just use it as a thin-client and get all the power and performance you need without running down your battery or spending a fortune on local hardware. BUT... you're recommending this as a workaround for limitations in expensive "Pro" local development machines, as part of an encouragement to go ahead and buy them. Why not follow your advice and buy an old refurbed Macbook. Or any 2nd-hand machine of any brand. Or a low-end Chromebook. To clarify: I'm not saying remote dev is bad, or you shouldn't recommend it. It's just really really weird to do so in this specific context.
- webmobdev 6y ago> BUT... you're recommending this as a workaround for limitations in expensive "Pro" local development machines, as part of an encouragement to go ahead and buy them. Yeah, I came to say the same thing - if you are anyway going to do remote dev, why still bother buying a new Apple device?? Anything else will do fine too!
- chiefalchemist 6y agoYes and no. For starters, there's reliability and durability. There might even be resale value. Just because you don't want to go all in (i.e., MBP) - or can't - doesn't mean you want to own a piece of junk. I'm not disagreeing with you per se. Simply pointing out there are other considerations when selecting hardward.
- jack_pp 6y agoThere are very reliable and durable machines for cheap, stuff like thinkpad t480+ or the x1 carbon 6+ gen. For example : https://www.ebay.com/itm/Lenovo-ThinkPad-X1-Carbon-6th-Gen-i7-8550U-16GB-256GB-SSD-Backlit-Touchscreen/313313154075?hash=item48f2eb541b:g:ETgAAOSwxe9fu9wq https://www.ebay.com/itm/Lenovo-ThinkPad-X1-Carbon-6th-Gen-i...
- 6y ago
- gingerlime 6y agoMy team is using remote dev boxes for years and I think it’s the best setup. I couldn’t figure out how best to fit VSCode though. It works remote, and with docker, but it seems very tricky with both? e.g running a ruby linter inside docker on a remote box and seeing lint errors on my local VSCode. Any pointers or tips?
- rob-olmos 6y agoWhat tools are your team using for remote dev?
- sergiomattei 6y agoI came across this issue. Dev Containers by VS Code solved it for me, allowing me to use development tools and packages by remoting inside the container itself.
- corytheboyd 6y agoIn general, I think one of the major benefits of building out a remote dev environment would be freeing all local resources to do things like linking and formatting etc.
- emilecantin 6y agoI've played with remote docker a little before, and 2 things were stopping me: - Is there a way to forward local ports to the remote docker instance? So I can access the app on "localhost:3000" as usual? (OAuth setups make the app URL a pain to change) - Is there a way to "mount" local volumes on the docker instance? (Reaction Commerce mounts the code folder as a volume. Altough that project has other issues, that's the main thing that kept me from using it).
- pmontra 6y agoPorts: ssh tunnels, ngrok or similar tools. Mounts: it's equivalent to mounting a remote file system. Docker -> server -> local.
- lmarcos 6y agoThat would require paying for that remote machine... I don't see the point if I'm already paying for my local one.
- mcintyre1994 6y agoWouldn’t a DO instance that makes an M1 machine comparably underpowered actually be really expensive though? It might only be the case for Apple’s ecosystem apps, but iOS devs seem to be seeing M1 laptops build apps faster than an iMac Pro for example.
- JMTQp8lwXL 6y agoWouldn't running linting and code formatting tools on every keystroke (as I prefer to) be intolerable over the network, with even minimal latency? Perhaps I am misunderstanding what actions are local, and which are remote.
- wjossey 6y agoVSCode actually runs that stuff over on the remote host. There’s no lag when typing because it’s pushed to the remote host async, so your editor doesn’t lag like if you were typing something in over SSH. It’s quite seamless and you forget you’re remote.
- visarga 6y agoVS Code remote editing is the best thing that happened to code editors in the last decade, at least for me.
- WildGreenLeave 6y agoI would love to use this method, but I am just too stuck with an actual proper IDE like my Jetbrains editors. VSCode just doesn't cut it when you compare it to any of the existing Jetbrain ones. If anyone has some good tips for this, I would greatly appreciate it.