10 ms·
Does anyone else wish they could do real coding on an iPad, Unix style? That would be so awesome; the new iPad Pro’s especially are fantastic pieces of hardware
by electrograv 8y ago
Does anyone else wish they could do real coding on an iPad, Unix style? That would be so awesome; the new iPad Pro’s especially are fantastic pieces of hardware, and it’s a shame that although you can be productive via word processing, media editing, etc on them, coding is not really viable.
I’ll have to read more about iSH to learn if it’s a “true” shell, or effectively just emulated or with strict limitations, but either way the potential inspires of how great it would be to have a true shell and/or dev tools for iPads.
- jerkstate 8y agoI use mosh via the Blink client and the Logitech keyboard on my '17 iPad Pro and do a lot of coding on it on remote servers. The lack of an escape key sucks and I had to figure out how to do code folding in vim but it's pretty serviceable. Of course I still prefer giant monitors to fit a lot of different panes for inspection and debugging, but it's pretty serviceable.
- saurik 8y agoYou can plug an iPad into a giant external monitor using the lightning to HDMI cable, so really you directly just miss "lots of windows open at once".
- bronco21016 8y agoHow do you interface with it then? So many parts of most workflows still require using the touch interface.
- goerz 8y agoIn particular with Blink, the app will actually recognize the monitor as a second screen, and use it at full resolution (as opposed to mirroring the normal iPad screen). With tmux, this means you can arrange as many horizontal and vertical splits as you can fit onto the monitor.
- saagarjha 8y ago> You can plug an iPad into a giant external monitor using the lightning to HDMI cable Or, on newer iPads, directly via the USB C connector. And apps can recognize that you have chosen to plug in a secondary display and suit their content to match on the other screen.
- electrograv 8y agoI agree 100% about big monitors and keyboards for chair-and-desk situations. In fact, I’ll take this opportunity to remind everyone that we now have incredible 42” IPS 4K monitors, like this one by Dell: https://www.amazon.com/Dell-Monitor-43-Multi-Client-P4317Q/dp/B01F80FSKS https://www.amazon.com/Dell-Monitor-43-Multi-Client-P4317Q/d... (I use this for work, and absolutely love it.) For portable use though, I think an iPad could very well be superior to modern laptops. The hardware of Apple’s iPad Pro is certainly well beyond that of ultraportable laptops on the market now. The only missing piece is the software.
- goerz 8y agoAre you aware of Blink's option to map caps-lock to escape?
- jerkstate 8y agoWow! Thank you!
- simon_acca 8y agoNot a shell, but pythonista is quite powerful and well integrated: http://omz-software.com/pythonista/ http://omz-software.com/pythonista/
- taude 8y agoOnly if Appple came out with a clamshell designed iOS device. I have a third party keyboard attached and I feel it makes my iPad so much more comfortable in a wide variety of positions to work on. Even when I'm not using the keyboard much.
- saagarjha 8y agoThe iPad Pro keyboard folio does basically this, does it not?
- Hippocrates 8y agoI've been thinking a lot about this and decided to try. I just got set up to remote code on my laptop via mosh+nvim (connecting to my MacBook Pro when it is at home). I'm using terminus as a terminal which has a very good free offering. I'm pairing my apple magic keyboard 2 which works as well as you'd expect. Oh and I did this on my iPhone X because I am still undecided on the new iPad. There doesn't seem to be any issue at all, despite the small fonts. The screen is actually large and hi-res enough that it's workable. I can have a NERDTree and a wide buffer with no wrapping, or 2 buffers side by side with a tiny bit of wrapping. Obviously an iPad would totally solve that. I want this to work for a few different reasons. 1. Be able to do the occasional odd task or put out a fire on the go. On vacation probably, when I am not planning on doing work and leaving my laptop home. 2. Have a consistent development environment which I can reach from anywhere on any device, and pick up right where I left off. (So far tmux sessions have been an awesome lightweight solution for this) 3. Taking it a step further, perhaps leverage a server in the cloud which I can spin up/down as needed, and customized for low cost or stupid power. 4. Rely less on the mouse 5. Divorce myself from IntelliJ. While while awesome, is pricey and bloated, and abstracts away a lot of cool command line tricks behind the GUI. So far my personal challenge is just getting used to vim + tmux. I've been using IntelliJ mostly for the last few years but have a bit of experience with vim and tmux to get started. The next hurdle will probably be figuring out how to get a workflow set up that involves a browser loading the code. I expect lots of annoyances around outputting something on the remote machine which I then want to view on the iOS device, like an image or CSV. Working around the lack of a real local file system is going to be like pulling assets out of another dimension.
- SomeHacker44 8y agoAfter coding for getting close to four decades, you can pry my IDEs (like JetBrains's IntelliJ) out of my cold, dead hands. And I wrote huge bodies of code in the original vi back in pre-Linux (and early Linux) days and still use it daily.
- jsjohnst 8y agoIf writing Java code, I agree re: IntelliJ, but thankfully that’s not 100% of my day to day programming. IntelliJ does work “ok” via a VNC app though.
- chadlavi 8y ago1000% yes. This is one of the big things that would prevent me from ever going truly "iPad Pro is my computer"
- pomatic 8y agoCtrl - ] == escape. What I haven't seen mentioned yet is the fact that there is no way to run a browser/javascript debugger on ios. You can do it remotely, but not locally. This is the missing link for me in terms of using an ipad for serious dev work.
- jaredcwhite 8y agoThere's actually a pretty decent browser with an inspector called…Inspect. I've used it quite a few times and it'll get the job done in a pinch. https://itunes.apple.com/us/app/inspect-browser/id1203594958?mt=8 https://itunes.apple.com/us/app/inspect-browser/id1203594958...
- pomatic 8y agoThanks; the 'in a pinch' bit rather puts a damper on things though!
- snazz 8y agoI think what we need is a port of Qemu. If you've ever used JSLinux[0] on an iPad, you know that it's plenty powerful to emulate riscv64 or x86 fast enough (even in JavaScript), so if there would be a proper PC emulation layer on an iPad you could run anything (Linux, *BSD, GNU/Hurd, NT, even full macOS). [0]: https://bellard.org/jslinux/ https://bellard.org/jslinux/
- FullyFunctional 8y agoActually a good enough port of TinyEMU/RISC-V allowing for network communication and persistent storage would probably make the iPad interesting for me. Would Apple allow such a thing on the App Store? It would still have to be open source of course. Fedora/RISC-V is dangerously close to being useful; the only apps I miss are a couple of the big hurdles: Firefox, GHC, and Java.
- yjftsjthsd-h 8y ago> even full macOS And hilariously enough, I think that would actually be within Apple's license, since an iPad is, after all, Apple branded Hardware.
- jim00338811 8y agoI’ve been playing with this app this week and it’s pretty amazing, Sublime Text style including multiple cursors: https://gocoedit.app https://gocoedit.app
- saurik 8y agoiSH is a binary emulator that ships with an almost-Linux-compatible-ish subset "library operating system" that is good enough to make a bunch of common command line apps work. So like, this little operating system has a minimal ELF loader in it, and then runs the executable in its little emulated jail.
- amelius 8y ago> iSH is a binary emulator I was under the impression that emulators were forbidden in the App store (?) Or does it hold only for software running inside an emulator?
- tatoalo 8y ago> I was under the impression that emulators were forbidden in the App store It's in fact "distributed" via TestFlight, legally speaking (and practically) it's not on the App Store.
- saagarjha 8y agoI don’t see anything about emulators in the App Store Review Guidelines, so I’d be interested in seeing anything that Apple has cited when they reject such software from the App Store. To my knowledge, this software follows Apple’s guidelines.
- amelius 8y agoThere is a lot missing in the App Store guidelines that is still taken into consideration in the review process, depending on the reviewer. https://www.quora.com/Why-does-Apple-hate-emulators-while-Google-play-store-has-emulators https://www.quora.com/Why-does-Apple-hate-emulators-while-Go...
- saagarjha 8y agoThe clause mentioned in that answer has changed recently to allow for emulators. See my other answers throughout this thread.
- JustSomeNobody 8y ago> Does anyone else wish they could do real coding on an iPad, Unix style? Honestly? No, absolutely not. My rMBP is 13" and that's the smallest screen I want to program on.
- goerz 8y agoThat's (almost) the same screen size as the 12.9 inch iPad Pro, no?
- JustSomeNobody 8y agoFair enough, it's close. But I still wouldn't do it. It would be like a carpenter bringing a screwdriver with a metal handle so he doesn't also have to bring a hammer. I care about the tools I use to do the work I do and I don't want to compromise (or compromise very little). I don't think I can get serious work done on an iPad without faking it and saying, "um, sure, it's great!", and without honestly feeling claustrophobic.
- goerz 8y agoI absolutely prefer to have a larger external screen, too. But if I'm traveling, and the choice is between my 13 inch Macbook Pro, or the 12.9 inch iPad Pro, I usually choose the iPad. With Blink in full screen, it's basically the same as iTerm on the Macbook, but much more portable (and I can do things on the iPad I can't do on the Laptop: Apple Pencil & Goodnotes)
- electrograv 8y agoBig and powerful dev setups are great, but that’s what my 42” 4K Dell monitor is for — and there’s no way that’s going to be portable. So the reality is that there’s no such thing a no-compromise dev setup: Either you optimize for a desktop setup, or for portability, or somewhere in between. If you have the ability to have both a desktop and portable setup, such a pair I almost always going to be superior to just one medium sized laptop: Your desktop experience will be better with massive high resolution monitors, and your mobile experience will be better with a lighter, slimmer device and longer battery life etc.