8 ms·
Reflections on software development from anywhere on an iPad
- rich_sasha 5y agoWhat I now discovered, after drooling about similar idea of remote work: in most scenarios, children put a halt to that. Children want stability, access to age-appropriate entertainment (playgrounds, soft play centres, or cinemas and suchlikes for older ones), good schools, friends with similar age. All those things funnel you to populated centres, likely wealthier ones (for schools, though this varies by locale), and hence also pricier ones. Sure, some kids are super-happy slumming it in a van, or a shack somewhere beautiful, and enjoy outdoors so much that they don't mind missing out on the other things, and I'm sure (I know in fact) that you can have a very valuable childhood this way. But I guess this is not great for most kids, or at least unsuitable to many.
- ghuntley 5y agoI’m divorced. I’ve got two kiddos - five and seven. For school holidays we go away on extended adventures around Australia and on weekends we go camping. During weekdays the kiddos see me before and after school most days and I’ve rented an office nearby for co-working from when in Sydney. The van is setup like a house (office) on wheels with all the typical luxuries such as toilets, running water, seperate sleeping areas, microwave for popcorn+movies, massive electrical system and “the best interest in Australia” - https://ghuntley.com/internet https://ghuntley.com/internet so it is hardly slumming it.
- rich_sasha 5y agoWell done, sounds like you're a very dedicated parent. Mine are 1 and 3 (1's a bit young for major exploring, admittedly, but 3 is getting there). The 3-year old likes outdoors, but I can't picture her living permanently out in the sticks. She likes her big-city nursery, her little friends, going for croissants etc. In a way it's a shame, I'd love to pack up and live in the back country, but how things are for me, I could only do it at a detriment to my kids development - YMMV.
- throwaway413 5y agoHave always had the off-grid van dream, but as the father of a 6yo I’ve come to accept what you have said as my reality, having experienced the results on myself and my family after much trial and error over the last few years, including building out a shipping container on 5 acres, living in hotels full time, buying a van, and attempting to settle down in many different urban communities. I finally find myself now settling down in a suburban family-focused community, for my son to start 1st grade. And after a couple months already, I wouldn’t say the amount of happiness is what’s changed, but the total amount of stress. It is extremely freeing in its own right, just like falling asleep in a van in the desert is. I still haven’t given up, I love setting off to explore the unknown, but life has a funny way of giving you exactly what you want while not giving you anything you may have expected to begin with.
- thurn 5y agoThe greatest thing about books is that they are easier to read in bright sunlight. I wish we could crack that problem for computer screens, even really bright screens like the iPad essentially must be used in a very shady environment.
- ghuntley 5y agoI found a solution to the shade problem. Introducing my outdoor office chair. https://twitter.com/geoffreyhuntley/status/1453194790216953857?s=21 https://twitter.com/geoffreyhuntley/status/14531947902169538...
- yjftsjthsd-h 5y agoThat's still just trying to get away from the sun at a smaller scale, and honestly even sitting in shade in bright sun is too bright for most screens to really work well in my experience.
- ghaff 5y agoI extended my WiFi to, in part, allow me to sit out on my deck and work. I quickly realized that I didn't actually want to work out there.
- ryukafalz 5y agoI'm interested in seeing how the PineNote turns out: https://www.pine64.org/pinenote/ https://www.pine64.org/pinenote/
- throwaway894345 5y agoI thought eReader screens were supposed to outperform paper? The problem with these is that they have very low refresh rates relative to typical laptop screens (but still far higher than paper!)
- nicbou 5y agoI travel by motorcycle. My big, fragile laptop takes a lot of precious luggage space, so I'd love to have something smaller. I thought of using just a tablet to replace my laptop and my paper notebook, but thin client development only works with a fast, stable Internet connection. This isn't possible everywhere. It's not even possible on German intercity trains/buses. It's also not possible across the oceans due to latency. Even when the location is fine, there are bad wi-fi connections, paygates and network outages. Hotel wi-fi is hit or miss. Camping wifi is mostly miss. Censorship is also an issue in some countries. Some wi-fi networks block certain ports too. My definition of anywhere includes those places, and far more remote ones. Therefore I need a local development environment, so I'm taking my laptop with me. However, I really love the idea of working from a quiet place outdoors. I spend a few hours on my small balcony every morning. I was considering working from quiet places in the woods like you do.
- secondcoming 5y ago+1, an ipad is useless if you don't have an internet connection.
- ghuntley 5y agoTbh. Software development in 2021 without internet (regardless of iPad or other device) is almost impossible which is why I invested heavily into my internet connectivity - https://ghuntley.com/internet https://ghuntley.com/internet
- ericd 5y agoHave you heard of Dash? Makes it easy to download and search doc sets, as well as subsets of Stack Overflow. Guessing you might’ve, given how much effort it looks like you’ve put into this, but if not, it’s worth a look. Integrates really well with Alfred.
- nicbou 5y agoIt's not that hard for the sort of development I do. Most of it is to support the content-based website I run.
- leephillips 5y agoHe has powerful and expensive hardware in perfect condition, that he can’t use because it depends on a closed-source OS and is controlled by Apple’s policies. He recommends another device running another closed-source OS and controlled by the same corporation for software development. Wouldn’t a better choice be a device that you can actually own?
- ghuntley 5y agoConsider a standard node_modules and installing via pnpm - that’s a lot of network round trips and downloads if you are on a marginal internet connection. When your development machine has Gbit uplinks all that pain melts away. These cloud style development environments are lovely because all development is happening in a data centre and frankly it’s all sandboxed. Every time you run “git pull && make” from GitHub you are essentially rolling the dice that the end result is not “rm -rf /*” or “sudo apt-get install miner” (if you are lucky)
- vorpalhex 5y agoPlease don't run code from the internet without glancing at first. I also believe parent was discussing the fact his laptop managed to get bricked because he left a beta program...
- poulsbohemian 5y agoI’m in Tucson for the week (with 5g connection) and needed to edit a pdf. Couldn’t even manage to do that without pulling out my partner’s Mac book air. Actual software development on an iPad? Forgetaboutit - none of the tooling I used in my programming career runs on an iPad and trying to use it as a thin client sounds horribly suboptimal. Great for watching a movie or reading a book, still not as productive as a laptop for anything else.
- ghuntley 5y agoTyping this on my iPad right now. For things such as editing PDF’s (see https://www.jabmaker.com https://www.jabmaker.com) I RDP to my homelab in the sky (see bottom of blogpost for details about the setup). For day-to-day software development. Use Gitpod or GitHub Codespaces or Mosh+SSH to a Baremetal machine. What’s your technology stack? What’s the tooling you need to do?
- ViViDboarder 5y agoAll of mine runs on an iPad when I develop remotely using mosh. Also, iSH allows you to install Alpine Linux along with many packages.
- poulsbohemian 5y agoWell, congrats. But none of the tooling I used in my tech career (which I left 2 years ago) ran physically on the ipad then, and none of it does now either. I tried doing the thin term thing and it was just a hassle. Good on you if it works for you, but I’d rather pack a laptop if I’m doing more than editing a few characters- for the screen size if nothing else
- xvilka 5y agoiSH is a wasted battery and performance. I don't get why they emulate x86 and not just use Alpine ARMv8 version instead.
- djrogers 5y agoLet’s be honest - you didn’t want to edit the pdf on your iPad. I say that because if you wanted to, or it’s something you need to do even once in a while, there are dozens (hundreds?) of serviceable pdf editors for iPadOS. There are even many really good ones. And they cost the proverbial cup of coffee..
- martijn_himself 5y agoThis is a great read. I absolutely love the iPad, and it's one of the few devices I still find magical everytime I pick it up. I have an older iPad Pro 10.5" with a Smart Folio keyboard and I wonder if his setup is a big step up in terms of ergonomics. I've tried using my iPad for productivity related tasks but I find it too cramped.
- ghuntley 5y agoThe 13” screen enables me to do split windows and multi task effectively. I don’t see split windows working well on an 10.5”. Having said that - iPad’s can connect to external monitors so 10.5” might just be a perfect size. K33g over at GitLab (who is also a core committer to golang) uses a 10.5” https://twitter.com/k33g_org?s=20 https://twitter.com/k33g_org?s=20 > I still find magical everytime I pick it up So magical. I love mine so so much. If it could run Xcode natively it would be so much better and I would not need to carry around my M1 MacBook Pro.
- mbreese 5y agoMy problem with using the 13" iPad was that with the keyboard, it's not that much smaller/lighter than an Air. You still have a big battery and display, which will be roughly the same size. While I like the keyboard, it adds a decent amount of bulk. I also use my iPad for drawing / handwritten note taking. This is a use-case which the iPad is clearly superior compared to a MBP/MBA. :)
- k33g 5y agoI have the iPad pro (12.9") but I don't use external screen (but I used to work with an Air 11.6" for years) And with GitPod it becames almost the perfect notebook btw, I'm not a core committer to golang but gololang (based on Java & invokedynamic)
- martijn_himself 5y ago> If it could run Xcode natively it would be so much better That made me think, Apple must have some internal prototype of Xcode for iPad? Creating iOS apps on iPad could be a killer 'Pro' app, convincing people to choose a Pro version over the regular iPad. Maybe they are worried apps created on iPad wouldn't be quite the same standard as apps created on regular Macs?
- yewenjie 5y agoThe PR for the Nix/NixOS guide for OpenVSCode Server is still open though - https://github.com/gitpod-io/openvscode-server/pull/88 https://github.com/gitpod-io/openvscode-server/pull/88
- ghuntley 5y agoWell spotted. That’s why the blog post uses oci.virtualisation. Upstream PR to turn openvscode-server into an expression is at https://github.com/NixOS/nixpkgs/issues/140344#issuecomment-952478188 https://github.com/NixOS/nixpkgs/issues/140344#issuecomment-....
- yewenjie 5y agoHow difficult and useful would it be to have a NixOS based instead of Ubuntu using something like https://hub.docker.com/r/shridharpatil01/nixos-base https://hub.docker.com/r/shridharpatil01/nixos-base ?
- sosuke 5y agoThough I found the content sounded very interesting I kept losing focus while trying to continue reading. The interruption sections look too much like advertising. I think I'm having a gut reaction thinking the article was over.
- throwawaycuriou 5y agoYeah I had a similar reaction. Chalk it up to the chum bucket fatigue at the end of listicles. I am recently considering that imagery on the web is too powerful. It can be detrimental or subversive to my attention. I feel rejuvenated from HN much of the time because it's textual and thoughtful, not so much of the web that's trying to influence me with images (moving images even more so). Using reader mode / pocket can help.
- sosuke 5y agolisticles LOL, I picture the icon for Nesticle and that feels like an apt description.
- nicbou 5y agoWhatever happened to just text on a page
- emptyparadise 5y agoWhat hurts is that an iPad is powerful enough to do a huge chunk of these tasks locally but Apple wouldn't allow it.
- throwaway894345 5y agoI have mixed feelings about this. On the plus side, it's more secure (which is especially nice since my less-than-tech-savvy family use iPads quite a lot). Moreover, even if you had an unlocked iPad, it would be inferior to a laptop in most respects anyway (most standing cases don't allow you to actually work from your lap, keyboards are awful, etc). So while it would be neat to be able to do development work from an iPad, it's really only useful in those rare occasions where you really can't afford an extra cubic inch (or whatever the difference between a MacBook Air and an iPad is) in your luggage.
- mjmahone17 5y agoIt would be amazing for students. In college a lot of students get a device that needs to last for 4 years, not knowing what classes they’ll end up taking (often they switch majors). Lots of students will get iPad Pros as their only device. When they decide to take a class that requires coding, they’ll run into all the support problems, and either need to do all their work in a library or pony up more money they don’t have to get a worse-spec computer that they can actually do their assignments on. These classes typically have support guides for MacOS and Windows. Even making it possible to install MacOS on an iPad Pro would make the device good enough to be a student’s only computer.
- throwaway894345 5y agoI would contend based on my earlier post that they would still be better served by a MacBook Air at a similar price point (even if they could unlock their iPad). In other words, I don’t see an advantage for the overwhelming majority of students.
- dividedbyzero 5y ago
- AlbertCory 5y agoFor a while, Google tried to institute Tablet Tuesdays, where developers did all their coding on a tablet. These were definitely not 12 inch tablets. It fizzled. But we didn't have all the advantages he has.
- dividedbyzero 5y agoI've been trying to build a remote dev setup using code-server [1] on a 2017-ish iPad Pro 10.5" and a Logitech K380 keyboard for when travelling and when on the indoor bike. I have code-server running in a big fat docker container with language SDKs, utilities, fish shell with custom prompt, etc. installed as well, and it works great in a desktop browser, but I can't quite get it to be fully usable on the iPad. It seems this still has a bunch of very rough edges. Using code-server in iPad Safari means Cmd+N etc. won't work and also losing very precious display real estate to Safari's UI. Adding it to the home screen and launching from there solves that, but now switching to Safari and back causes keyboard input to stop registering at all in code-server. The Serverediter [2] app doesn't have that issue, but its UI and parts of the code-server UI will jump around for a second when Cmd-Tab-ing to it, which is pretty unnerving. Then there's connectivity: Apparently background SSH tunnels get killed by iOS after a while. Serverediter has its own SSH client, but port-forwarding any other ports than code-server's doesn't seem to work. Not being able to expose a running web service on my local device makes lots of things infeasible. Maybe I'd need a separate VPN between the code-server machine and my iPad? But that adds more complexity to an already quite complex setup. And finally, https with self-signed certs isn't exactly a walk in the park with iPads (I can't use letsencrypt), but without it I believe the clipboard won't work right. I realize there are SaaS offers that will make some (or most?) of these issues go away, but those don't seem to be all that customizable, and since I'd use this for personal projects that don't earn any money, keeping costs down is a priority as well (so if I can self-host on hardware I already have, I'd rather do that). So while I totally get the appeal, I really wonder how others make it work for them. It doesn't seem to be quite as straight-forward as the blog posts made it look. 1: https://github.com/cdr/code-server https://github.com/cdr/code-server 2: https://servediter.app/ https://servediter.app/
- math0ne 5y agoRecently did the exact same thing and came to the exact same conclusion, even if code server worked well enough the lost screen realestate pissed me off so much I don't think I could have lived with it. There is a hack to get background ssh connections to stay alive: https://docs.termius.com/faq/troubleshooting/cant-run-in-the-background https://docs.termius.com/faq/troubleshooting/cant-run-in-the...
- math0ne 5y agoI have a Ipad with Magic keyboard that I tried to make work for just keeping up on work while I travelled not even as a primary dev machine and without background tasks it was just not possible. Ended up giving it to my wife and getting a surface go 2 m3, its lighter smaller and 1000% more capable, couldn't be happier.
- Isthatablackgsd 5y agoSame for me. Tried to use it for various things but it never works well for me. Now it is function as a Zoom meeting and videos. It is so locked down which make it behaves like a smartphone rather than actual productivity device.
- ghuntley 5y agoSend a PR to https://github.com/open-vsx/publish-extensions https://github.com/open-vsx/publish-extensions to close the gap! > One goal of Open VSX is to have extension maintainers publish their extensions according to the documentation. However, you may be missing specific extensions that have not been published by their maintainers: either they are not willing to do it, or they haven't found time to do it, or simply they haven't heard about Open VSX yet. Though the preferred solution for such a situation is to convince the maintainers to start publishing themselves, you can add the extensions here to have them published by our CI workflow.
- nicbou 5y agoI tried the Surface Go 2, and it would indeed be a better option. However it's terrible as a drawing tablet (the reason I looked into tablets), and I just can't deal with Windows anymore. After spending a whole day (including several hours of looking at the update screen) making Windows halfway usable, I decided to just return it.
- xvilka 5y agoUnlike MacOS, iPadOS doesn't allow you to run binaries that you just compiled from source. So it's no-go for any compiled language.
- wilsonfiifi 5y agoUnless he's really invested in the apple ecosystem, I can't help but feel the author might have been better off with a Surface Pro. Similar form factor but with a desktop OS. Granted it's not as powerful as an ipad pro but I would argue that it might provide a better overall development experience. I don't understand why Apple doesn't give Ipad pro users an option similar to Samsung Dex. There seems to be an aversion to enabling MacOS on touch devices. Anyway enough with my rambling, the author seems pleased with his setup so it is what it is.
- hnrj95 5y agoas mentioned in the article, blink is a remarkable tool. it really is indispensable for any dev work on an ipad. i absolutely love it. worth every cent
- bnastic 5y agoI tried this setup a few years ago, over a couple of weeks whilst in Spain on holiday. iPad Pro (1st gen + apple's keyboard case), shared Wifi from my iPhone (4G in roaming), blink, and OpenBSD VM from Vultr. It was surprisingly OK. Mosh definitely works for dodgy connections, tmux keeps the session(s) around and all works fine. I was writing C in vim, so that also helped, no heavy tools other than the compiler. I only wish I had the bigger iPad model. And I wish there was a way to attach that keyboard when in portrait mode (far superior for coding on iPad).
- p2t2p 5y agoI wish they would make docker and external monitor possible on an iPad. VSCode for iPad + docker that is shipping with it + VSCode Remote that runs dev. environment in that docker would solve all the developers requirements (except for power).
- rcarmo 5y agoI’ve been doing this for a long, long time, and RDP over SSH ato a recent build of Xrdp (with Openbox and a minimal DE) has been very productive. (As an aside, the blog post is… disconcerting. I was expecting long form and not what my brain initially believed to be a mass of banners interrupting the actual text. Extremely hard to end until the end, reminded me of TikTok).