I really only carry around my laptop for two reasons. Engineering work, and video/photo editing. Writing in my own opinion is actually very good, I typed up this whole article on my iPad for instance.
This one has been on my wish list for awhile. In fact, I built a small prototype in college with RubyMotion with a server side component for coding on the iPad. Obviously, the paradigm would need to change, you can’t just give a user a on screen keyboard and tell them to type, that’s just less efficient then typing on a real keyboard. You’d need interactions like using two fingers to select text, swiping to indent, etc.
Tab complete like behavior also becomes much more important. It’s actually amazing how much of code is boilerplate (I’m looking at you especially, Java), the aspects changed to fit your particular program are often small, as is the search space. If you think about it, it’s significantly less then just looking at characters changed, aka keys typed. Similar to how Google noticed how the average number of words typed out before a user finds their query at the top of the suggested list is 2.5, and you can take that further in that each word probably only needs a few characters types before you know which word. Meaning to access the vast amount of information out there on the internet, maybe only about ~7 characters needed to be typed, with reasonable guessing in place.
My point with all that is simply that even the most terse languages are verbose, and if you get celver with it I’d bet you could program easy with a touch screen, never wishing you’d had a keyboard to type characters quickly.
There seems to the progress here. Apple is allowing 3rd parties to run more code on device, for instance. The iPad playgrounds app is quite nice to see, too.
Along these lines, I wonder how much an touch optimized JupyterLab³ could make since here. Potentially gets around any need to run code on device. Also it’s a crazy neat piece of sofware. Go check it out.
Also I wonder how much a visual programming language would work well with a touch interface. Something QuartzComposer or Origami inspired. It might even be a faster path to making sense with a touch interface then traditional code. Dragging around nodes/edges, or even many of them with multi-touch, could be far superior to a mouse based interface.
Turns out with you do some pretty advanced things with a visual environment. Check out this project a friend of mine build, it’s a Neural Network built entirely in Quartz Composer:
The second part of this is video editing. I actually tried to see how far I could push this recently on a trip to Hawaii. This entire video was done on an iPad:
Pretty good, though it would be near impossible to do high quality work here without Adobe Premiere. There’s a lot of room for improvement.
I also when to Banff 🇨🇦 recently, and again tried to see how far I could push iOS. I edited and posted all my photos with an iPad.
Photos edited and then later grouped together all on an iPad. Turned out pretty good. Some of the edits with an Apple Pencil were even better and easier then they’d be if done on a desktop. So that’s awesome.
Though there is still room for improvement. After doing this I had 20 copies of each image in the photos app, after moving from app to app to get the edits just right. I also ended up with some jpg artifacts I had to clean up. I’d also love to be able to import RAWs right from the sd card into the Files app without going through Photos. Mainly because I’ll edit the photos in an application that supports editing RAW¹ then save the final version into Photos. Photos doesn’t really let me tell which pictures are RAW and which aren’t. One step at I time I suppose.
There’s also a boat load of room for improvement in the interaction between a DSRL-like camera and an iOS device. Could easily⁴ be a slick exprience, instead it feels archaic. A constant connection (without screwing up your phone’s wifi) would go a long way.
Again things are getting better here. The Files app is new. It just needs to get a lot better. Seriously way can’t it view the files on the sd card plugged in.
3rd party software is also a huge part of what’s lacking. For the most part the hardware is on par with Laptops² — Luckily Apple appears to be working on this as well. We’ll see what’s ready to show off at WWDC this year.
1: Affinity Photo is awesome
2: My Macbook’s Perf, My iPad’s Perf (iPad is better)
3: JupyterLab is amazing, if you haven’t tried it, I highly recommend it. Very well done. Great work by the team.
4: easily ish… haha