top | item 3186476

I swapped my MacBook for an iPad+Linode

634 points| moconnor | 14 years ago |yieldthought.com

338 comments

order
[+] raganwald|14 years ago|reply

  One fateful day, VMWare and OS/X conspired to trash my
  shared filesystem, losing several days of uncommitted
  code in the process.
Several days of uncommitted code? We need to have a heart to heart talk about your process.
[+] moconnor|14 years ago|reply
This is really true. Back then we were still using CVS, and I was writing a feature that I thought wasn't quite big enough to branch and remerge for, but turned out to be a bit more involved to get right than I'd thought.

Now we're on Mercurial and life is better.

Edit: A nice win with the Linode is that they back it up for me for $5 a month. Sure, there are solutions for the desktop too, but somehow I never got around to using one of those.

[+] dpapathanasiou|14 years ago|reply
Insightful, and so close to a haiku as well...

Here's an attempt:

  Mac lost my data
  Many days of work gone
  Cloud to the rescue
[+] jfoutz|14 years ago|reply
So, this is something i worry about.

I'm using time machine for backups, so i don't think i'll lose much ... but i'm sorta hazy about how i should be using svn for all these little incremental steps. I'm uncomfortable with committing code that's going to break the whole system.

Should i be creating a branch for projects longer than an afternoon, and just committing that fairly often? I feel like eclipse's history is working okay but i have a vague paranoia i'm doing something dumb when i see comments like this.

[+] nicklovescode|14 years ago|reply
There once was a man with a Mac

One day his VMWare went wack

So he picked up his code, went to Linode

Which now handles all of his stack

[+] tripzilch|14 years ago|reply
As I read the article I knew something like this would be the top comment on HN ... :-/

Apparently lots of people make this mistake.

Is it stupid? Maybe. Probably.

Do we need to have a lengthy discussion about it every time it is a minor part of a story or article? I'd rather not.

[+] sliverstorm|14 years ago|reply
How about if he is using Git? It is normal to work out of your local repository and only sync with the master occassionally, no? At least on projects that can tolerate such methods.
[+] danssig|14 years ago|reply
Probably using SVN or CVS. Everyone I know used those systems that way but moving to a modern RCS usually gets people checking in a lot.
[+] scott_s|14 years ago|reply
For anyone who spends their day (or most of some days) in a terminal connected to a remote server, I can't recommend using GNU Screen enough (brief tutorial: http://www.kuro5hin.org/story/2004/3/9/16838/14935).

I've worked almost exclusively on remote servers, using the command line and vim, for about eight years now. It's only been in the past year that I started using Screen, and I feel stupid for not using it sooner.

[+] agentultra|14 years ago|reply
This has to be the most ergonomically inefficient set-up ever!

I also cannot fathom how to work with < 2 big monitors (> 21" at least). And a tiling window manager. And a decent mechanical keyboard... ok ok..

Interesting setup. I'd be interested in knowing how it works out in the long term.

[+] sliverstorm|14 years ago|reply
Once upon a time programming was a lot of thinking, a little typing, and even less compiling. Maybe even some pen+paper and chalkboards. If you go back to that way of programming, I don't see why poor ergos would be a problem.

Certainly not "in vogue" and I don't know if it's feasible today. Still an interesting thought.

[+] josefresco|14 years ago|reply
Not just lack of screen space but looking "down" to your screen even tilted on a table will wreak havoc on our neck/spine which extends to your extremities (and head) quickly. Simply slouching and tilting your head up pinches nerves in your neck which leads quickly to wrist/arm pain.
[+] moconnor|14 years ago|reply
The wireless keyboard is really good; it's not quite as nice as a mechanical one, but it's easily better than a laptop keyboard.

If I ever go back to my MacBook, I'll take the keyboard with me.

I have a tiling window manager. It has one tile.

[+] exDM69|14 years ago|reply
A tiling window manager can definitely be a huge productivity booster. Perhaps even more than adding an extra display, which is often said to be the cheapest way to improve productivity. A tiling WM costs nothing.

I've even started working comfortably using just one display now that I've changed to using a tiling WM. With a floating wm, I needed at least two large displays to work comfortably. Lots of that screen area was wasted just by showing a little desktop in between of poorly arranged windows. I'll never go back to floating windows with frames and decorations.

[+] rayiner|14 years ago|reply
I used to program with a 24" monitor. Then I switched almost exclusively to my 13" Macbook/Pro and haven't looked back.

The screen is just the right size to fit two 80x25 text editor windows side-by-side when full-screened. Swiping back and forth with Mission Control is almost as quick as switching your glance from one big monitor to another. Having your "mouse" right below your keyboard makes clicking something only marginally more time consuming than contorting your hands to hit an Emacs command sequence.

Probably still faster with the big setup, but I get a lot of mileage out of my little setup and I get a huge productivity/creativity boost from being able to wander around the house, head to a Starbucks, etc.

[+] scottschulthess|14 years ago|reply
Having multiple monitors isn't good eronomically IMO. I always prefer what I'm working on to be on direct center, and I don't really see the point of having other stuff that isn't direct center. I prefer to alt-tab.
[+] mushishi|14 years ago|reply
I use 27" Dell for my Java development and 11" MacBook Air for Javascript. The bigger screen is essential for pair programming but 11" is almost good enough for most purposes. Its size causes most problems when I need to inspect the dom inside a browser.
[+] jebblue|14 years ago|reply
Seconded, thanks you saved me a lot of typing. :-)
[+] awolf|14 years ago|reply
There are a lot of comments here from people acting as if not having two 24" monitors and a full mechanical keyboard would drastically diminish their productivity. This year I spent 4 months out of the country with only my 15" laptop while still working 8 hour days. I was surprised to find no change at all in how long it took to get shit done. I think we tend to kid ourselves about how much of a difference expensive equipment makes.
[+] idspispopd|14 years ago|reply
It's interesting to see that other people are noticing how poor the google web experience has become on iOS. It seems especially deliberate when I note that android & chrome use webkit.

I've even swapped the default search engine to bing because it provides a better layout, especially so for image searching which in my view is broken on iOS.

This from the company that just released tools to aid the transition to mobile web.

(and yes, I'm aware that they hate each other, but why should I be punished? reminds me of the MS from yesteryear.)

Also: there is general feedback that google's optional services are generally quite good, which makes it curious that the originally very good google search/image search was replaced with versions that aren't up to scratch.

[+] Kylekramer|14 years ago|reply
Anyone who thinks Google Docs is better on Android due to anti-Apple conspiracy clearly has never used Google Docs on Android.

Also, outside of Google Docs, Google has first rate support for iOS on the web. Gmail, Voice, Reader, everything runs brilliantly on iOS. In fact, usually better than Android, as they clearly see web as their primary in to iOS compared to Android (example: Voice is the snazzy HTML5 newness on iOS, while Android has the spartan 1995 grad student webpage styling).

[+] gujk|14 years ago|reply
No need to ascribe malice; the Google web experience is bad on Android too.
[+] guelo|14 years ago|reply
You Mac people are so entitled. Tell me this, how come I can't dual boot OS X on my Windows PC?
[+] wes-exp|14 years ago|reply
Imagine an "iPad Pro" that had similar battery life and even an integrated keyboard. In addition to supporting the SSH workflow, it can run traditional GUI applications if you really need them.

You don't have to wait: it's called the MacBook Air.

[+] nileshk|14 years ago|reply
The last time I tried to use SSH under iOS with the Apple bluetooth keyboard (trying different SSH apps including iSSH and TouchTerm) I found that I could not comfortably use Emacs due to various key combinations not being transmitted (I guess Vim isn't as much of a problem). One of the SSH app developers said that they were not able to trap certain keystrokes that were iOS keyboard shortcuts. Looks like this may still be an issue, as moconnor says this:

> Ctrl-X is my screen’s ‘hotkey’; it defaults to Ctrl-A but on a wireless keyboard that leaves unicode characters in the terminal - I assume this is related to Apple’s support for some common Emacs key bindings in iOS.

Is the situation any better now? Any workarounds to make this work better (e.g. configure the shell on the remote end)? How is this on Android?

I was trying this on an iPhone, but I'd imagine it handles bluetooth keyboards the same as the iPad.

Another issue I had was latency of the cellular connection (AT&T 3G); there was a very noticeable delay between keystrokes and the server receiving them and transmitting back. I imagine if you're on wifi most of the time this isn't as much of a problem, though. Or maybe you just get used to the latency.

[+] moconnor|14 years ago|reply
I'm on wifi, there's rarely noticeable latency, even on full screen updates.

Ctrl-a and friends still don't work properly. However, iSSH has an option that lets you use the option key instead, and for me that did work just fine, but escape didn't.

Now in version 5.x escape and ctrl work for everything except the most common emacs key bindings, and option-A doesn't any more.

[+] rsl7|14 years ago|reply
In my experience, Prompt is much better app for straightforward terminal use than iSSH. It handles meta keys very well includig the hardware ESC key on the wireless keyboard that iSSH could not, last time I tried it.
[+] kayoone|14 years ago|reply
You could actually do the same thing WITH a Macbook Air/Pro. The beauty of a cloud linux instance + gnu screen isnt limited to the ipad and so you could still have a bigger screen and the possibility to go back to GUI apps if you need them. I like this for travelling on the go, but spending my normal workday in 1024 resolution ? Naaa.
[+] moconnor|14 years ago|reply
This is true, but I'd be sacrificing the silence, the portability and the battery life. And the hipster factor, I guess.

102x768 isn't for everyone, but in text-mode it's all the same. I've no idea how many hours I've spent on a huge high-res monitor staring at a relatively tiny terminal window surrounded by a pretty desktop picture.

[+] icefox|14 years ago|reply
One thing I did pick up on that could be _very_ attractive is the idea that you would use the same apps on the iphone and ipad so you can take your desk with you on your phone in a way that you can never do with apps that you run on your laptop.
[+] mscrivo|14 years ago|reply
If this guys thinks having a single 10" screen with no ability to switch between tasks easily and quickly is the wave of the future for developers, I don't want any part of that future.

You can pry my dual 24" monitors + high performance desktop from cold dead body.

[+] jwallaceparker|14 years ago|reply
It looks like the goal of the swap was to have a spartan, lightweight, cool (temperature) workspace.

It seems like a MacBook Air accomplishes this better than iPad, stand and keyboard.

The only difference I can grok from the article is that the MacBook Air is somehow more fragile. But is it?

[+] drivingmenuts|14 years ago|reply
What's the solution for when "the cloud" loses your files and the ToS says "so sorry, we'll try harder next time - here's next month's bill"?

When I keep my files locally, the only person I have to blame for losing them is myself. Out in "the cloud", there's quite literally nothing that can be done to recover my data.

[+] moconnor|14 years ago|reply
Linode offer monthly backups for $5. All my real work is pushed to the office repository. All my personal projects are done in a Dropbox folder.

I'm pretty confident the data will be ok this time.

[+] nemoniac|14 years ago|reply
You can "quite literally" keep your data in two places in the cloud at once.
[+] cmwright|14 years ago|reply
Incredible that we seem to be moving back to powerful mainframe computers in a timesharing system. A 40 year cycle?
[+] moconnor|14 years ago|reply
Yes, I was really happy that so many open source tools born on such equipment were still around and perfectly tailored for this kind of setup.
[+] toddh|14 years ago|reply
We also used to use diskless sun terminals that worked completely over the network.
[+] markkanof|14 years ago|reply
It is a bit better than that though because you can have a complete server environment to yourself, and don't have to deal with timesharing.
[+] RexRollman|14 years ago|reply
I am still amazed that Apple hasn't come up with a shortcut for app switching when using bluetooth keyboards.

By the way, Moconnor, have you given Panic's Prompt a try?

[+] ConstantineXVI|14 years ago|reply
They don't really need to come up with one as much as just implement it. Gold standard's always been [Alt|Clover]-Tab; or even F3 (Apple's mapping for Exposé/Mission Control, even marked as such). I understand there's no easy way to dismiss the on-screen keyboard when you're using a hard keyboard either.
[+] jrockway|14 years ago|reply
$800 gets you a pretty nice laptop. I don't see the advantage of this approach at all.
[+] deanproxy|14 years ago|reply
The lack of ability to look at documentation/stackoverflow/code examples in a browser while simultaneously coding out said example and making the changes I need would severely limit my productivity. "Just copy and paste!" you may say... Sure, that'll work. Only, wait, I forgot what that one line meant, is it needed? What did they say about changing this piece of code that was "really important?" Crap, back to the browser. Let's switch apps again. Crap, the page in the browser is having to reload because I had too many tabs open and memory got low, now I have to wait for it to reload. Where was I on the page? Cause when it reloaded the page, it put me back at the top. Wait, that wasn't the tab I wanted, it's that other tab. Great! It has to reload now too!

I typically work with a single external monitor connected to my Macbook and use the Macbook for holding my mail client, chat and a browser while my Terminal's and IDE are on the external monitor. This works best for me.

Now that spaces and expose are so tied together, working with even just one screen is much nicer. I have toyed with the idea of just using a single external monitor and use spaces extensively. Just a swipe and I'm at a new space. This is much faster and nicer than changing apps on iOS.

I think it's a neat trial idea, but for long term productivity, it certainly is more of a "hipster factor" than useful.

[+] rapind|14 years ago|reply
Very interesting. Did you ever consider the same setup but using a Chromebook? I've been thinking about doing that for a while now (I'm on an MBP currently). http://www.google.com/chromebook/
[+] powerslave12r|14 years ago|reply
I think the way of the future is a smaller powerful notebook, like a Thinkpad X220, and then using larger monitors and whatever cloud service you want.
[+] navs|14 years ago|reply
I actually attempted the same thing once but gave up after a day. I borrowed the iPad from work (clients absolutely love demos on this thing) and used iSSH to connect to my netbook running ubuntu.

First, I tried to create a simple mobile website with vim. I'm not a hardcore vim user so the frustration I felt using it on the iPad were mostly due to my level of inexperience with vim. Additionally, I didn't have an external keyboard. Using the software keyboard with my neck hunched forward gave me some serious cramps.

The second activity was writing a document. I used markdown and pandoc to create an rtf. googlecl for uploading to the google cloud.

Small screens bug some people but after using a 15" macbook pro and a 10" netbook, it normally doesn't bother me. In this case, using a software keyboard meant I had even less screen real estate which did bother me.

Overall, it was workable. If I ever took vacations, I could see myself taking an iPad (with keyboard) instead of a regular laptop and doing some emergency bug fixing but I wouldn't choose it over my netbook.

[+] namank|14 years ago|reply
What you have done here is an HCI study. On yourself.

You could formalize this with related models and write a paper on it if you wanted.

[+] 6ren|14 years ago|reply
Isn't the latency of vim on a remote server distracting? Or is your ping low enough to not be noticeable?

I've thought about this kind of setup, but I think I'd need vim to be running locally (but working on files from a remote filesystem - vim can do this).