Swap Your Laptop for an iPad + Linode

Vim: My Home from Home

Perhaps the only reason this transition has been so smooth is because my favourite editor/IDE looks and feels almost exactly the same running on an iSSH console as it did running locally on my MacBook. iSSH supports xterm-256color, which means you still can have pleasant color schemes despite working in a terminal. All my plugins are there, my code-completion, quick navigation and so on.

Figure 3. Vim on iPad

I found Ubuntu's default Vim didn't have everything I wanted, but don't worry! It's easy to download and build it yourself. See Listing 1 (also available at ).

I honestly can't remember which plugins I installed and which ones I actually use. I just copied the existing .vim folder from my MacVim installation. I definitely use these every day though:

  • a.vim

  • cctree.vim

  • clang_complete.vim

  • color_sample_pack.vim

  • command-t.vim

  • cscope_maps.vim

  • NERD_tree.vim

  • scratch.vim

  • searchfold.vim

You can get them all from http://www.vim.org/scripts, but you may want to install pathogen and get them that way instead. Note that command-t requires you to build a stub—follow the install instructions in command-t.vim, and it just works.

To use the clang_complete plugin, you'll need clang. Typing apt-get install clang should do the trick. I had to play around with it a bit to get it working on my project, which included adding all the -I and -D command-line options to a .clang-complete file in the project directory.

Everybody configures Vim differently. Listing 2 shows my .vimrc (also available at https://gist.github.com/1357590). Some of the things here relate to our internal tracker system and won't be interesting for you, but it should be clear what most of these things do and which keys are bound to them.

In short, it's a seamless transition from my MacVim environment. If I were developing OS X apps with Xcode or used Eclipse or Visual Studio regularly, this change probably would have killed me.

As it happens, working in the terminal on a remote Linode is even better than working locally, thanks to the magic of GNU Screen.


Mark O'Connor is a Munich-based programmer, occasional writer and part-time startup founder. He believes in dynamic typing, first-class functions and the immortal essence of the human soul. He also likes tea. You can reach him at @yieldthought or http:


Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.


stber321's picture

Why not use x-forwarding over ssh to use libre office. I dont know about other devices but it works verry well on my n900 and with a good network connection i can acheve decent speeds. It should also work on the Vavaldi tablet, as it runs mer. Of course If you have an n900 you can simply install it in the debian chroot or natively edit documents using abiword and gnumaric in maemo.

Mac v Linux....Really?

ICouldHaveHadAV8's picture

Find it humorous that there are folks that are griping/crying about how an article that mentioned the dreaded word "Apple" appeared in a Linux magazine. Really? Sorry folks, fresh out of Kleenex here. Linux isn't just about open source. It's about creativity...the ability to use whatever parts and components you have and gluing them together in interesting and unique ways USING Linux.

I've been working Linux for years, but yes I own some Apple products. Why? Because sometimes the "it just works" is more productive to me to get what I need accomplished rather then sitting down and wondering if the driver will work, of if I will have to recompile with 500 flag options. And for those that will try to flame "all drivers just work on Linux", they are kidding themselves. If they do then why is it that firmware cutters and ndiswrappers still have to be used for wireless cards?

I congratulate the author for using his ingenuity to take what he has and come up with a method that works. That's what Linux gives us, the freedom to use what we have to accomplish what we want without a corporation dictating a specific method. I agree that the author could have mentioned you could do the same thing on Android tablets, but then again, if you are reading this magazine and article you should be smart enough to know you could do that anyway.

Column Width? Android?

Chris Brodt's picture

How many columns does the iPad display in Vim? 80? 100? Do you use it more often with a vertical or a horizontal orientation while coding (not having used an iPad, I'm assuming it rotates and works well either way).

Also, did you consider any of the Android tablets for this, instead of an iPad? And last question, have you considered using Amazon EC2 instead of Linode, for cost savings?

Great article, strongly considering a similar route.


Ian Purton's picture

There's an article here about using Vim inside a shell ina box browser terminal. http://servermonitoringhq.com/blog/the_ultimate_web_based_ide

This would work on android tablets, you're easily looking at 100+ columns of output with the iPad resolution.

Google Docs

David James's picture

I agree that the mobile client for Google Docs sucks. The best app I have found is Notemaster, it costs about $4. With this app have given up paper during meetings and just use my iPhone or iPad.

I got a Linode account

MJD's picture

I got a Linode account because of this article. I didn't buy an iPad though.

I think the idea of encouraging interoperability (between Linux and other devices/operating systems) is one of the key points of the article. If the community insists on a kind of idealogical purity at the expense of excluding everything that isn't Linux, that isn't going to be good for anyone in the long run.

Moreover, the idea that a consumer device like an iPad or an iPhone can interface with Linux and allow work to be done in a meaningful way is a powerful message. You can certainly substitute the iPad with anything else that has an SSH client and decent user input.

The only thing that cannot be taken out of that (cloud-computing) equation is Linux.

tl;dr... Don't conflate your hatred of Apple products with the usefulness of what's being presented here.

What about Apple?

Paul Gigas's picture

It is certainly not very bright to hate Apple hardware. I use a Macbook pro and I can testify to the quality behind it. The track pad alone makes all the difference. This goes pretty much across the board with Apple hardware, which always has been (for the most part) very dependable. That is, if the Chinese manufacturing doesn't bother you. I would feel less ill disposed toward Apple if they had at least some of their manufacturing in America. Nobody has been able to explain to me why this should not be so. I have run Linux on Apple hardware for years, esp. Lenny and Sarge. To be honest I don't like losing control of my data in the cloud. Also, it seems to me that I never remember so much breakage in Linux as I have been having recently.

I don't think it's Apple's

Anonymous's picture

I don't think it's Apple's hardware that people hate. I think it's the spirit of Apple's business model with the walled gardens, lack of choices, endless tirades of frivolous lawsuits. I know Apple's hardware is nice....at least externally. I would just rather never use another computer again than buy anything from them. Dollars are votes.


Paul Gigas's picture

It's not just the hardware. If you look at words all day long, whether writing a story or programming, fonts get really important. To have to face a crappy, mono spaced or badly kerned font is really hard after a few hours. The fonts that come with Apple OSX, on the other hand, are beautiful. And there are lots more that you can get off the net. After a fashion if you work on Ubuntu awhile you can get a few nice looking, typographically sound fonts. But still they are nothing like Apple fonts. Mint's Helena had okay fonts. But from distro to distro Linux fonts, even in the latest Mint distros, have fallen off badly lately. Incidentally, can you get into a Linode and fix their fonts? or are you stuck with what's there?

More cloud

Paul Gigas's picture

Everybody seems to be looking for a more portable solution. I am not sure what sense there is to using the cloud when you have to remain portable. I cannot speak for the Zen thing. Of course when you can't charge the batteries, then you are down. But when you are local a negative or undependable internet connect does not mean the end of everything. One problem that is little considered when work tends to focus on the cloud is the problem of backups. I have heard rumors of very nasty stories: an important free lance photographer losing not replaceable photos, for instance. Then there are problems of virus attacks from unsecured wifi, and so on. When I am on the road I cannot afford to deal with a machine that is barely serviceable. The hot spotting theory is theory only. It is nice as a theory, but as a practical solution, well, has anybody really tried it? I mean really? 4G is better but expensive. (Incidentally, 4G plus a Linode plus a Dropbox, assuming you are talking about any data at all, can add up to quite a sum per month. This while the price tag on memory media continues to drop like a rock.) And after you pay the bill, somebody else is in control of your data. I love articles like above, but it all is a head scratcher to me. A good Linux box with the emphasis on local makes more sense. Linux plus a commercial distro plus a box with a decent sized screen (at least 15") is the best when you really move around.

More Cloud

Randy Noseworthy's picture

Paul, back when 3G was the NEW thing, I had a sprint dongle that worked great with Linux. I guess being on the road and the connectivity issue depends on where you're traveling. Most of the major interstates have great coverage, or at least good coverage. IF one was going to be dependent on WiFi only, yes, it's do-able, but has it's limits. Truckers are using the cell services or WiFi at the truck stops all the time to connect.


Paul Gigas's picture

Hi Randy! I think that most of the time for people who carry around Apple stuff and find serious amusement (literature, philosophy, film etc.) in their devices 3G is a disappointment. (They say 4G is better.) 3G is not consistent. Say you want to stream a movie. Sometimes it is there, sometimes it isn't. You wish you were home. I personally have never gone online at the airport for instance without wondering, whether 3G or wifi, what is going to happen now? I suppose it would be all right to do certain things, I guess, but I can't know. It reminds me of a novelty item that never goes away. And my files, even supposing they are valuable and sensitive to me alone, are valuable and sensitive to somebody. I don't see any improvement in this situation maybe forever. I am always surprised when I run across people who are completely careless of this situation. As one of them said, "If I get burned, I get burned."--a suicidal self-indulgence? Similar to smoking cigars or driving a 12mpg SUV? Ultimately, for people who either have to or want to use the cloud to serve multiple devices, for instance, that has to be their attitude. I don't think it is a very serviceable attitude. The SSHers and other cloud burners are creating a sort of class conscience. They are not concerned with the risk. Apparently living with that risk works (or does it?), but they get along in life and do all right, just as cigar smokers do. Either that or they know something I don't. Because I find that risk distasteful to the extreme. For some reason the cloud has fascinated me and I am writing about it a lot. Tell me honestly, how much do you really use the cloud? Or perhaps I am seeing something in it that isn't there?

All I can say is Orion

MadTom's picture

OK only JavaScript in browser editing and PHP soon I gather but it wont be too long before its 'any language from anywhere on any device you can work on'
As it should have been in about 1997 but for MS and jscript and other attempts at proprietising the internet - and that includes apple and adobe.
I've got a little viglen (about 1/4 the power of a RaspberryPi) that I use as a php based webserver and is surprisingly capable over SSH of running emacs as an IDE. I can imagine in a year or two ARM based fondleslabs with keyboard addons talking to ARM based clouds all for the price of a leather cover for your Ipad.

Yeah that sounds great

AnilG's picture

I've been wondering about an ipad for a while because the mobility attracts me, so I've also seen the need to move all my stuff to the cloud but then I thought you can't browse it in a GUI. You can easily download the subset you're working on though and push it back or rsync or something.

Vim is my number 1 tool and I love it's availability and almost as good on a terminal as in a GUI, so that helps heaps. I hate IDEs too so that helps also. I like BSD so FreeBSD in the cloud with Mac on my ipad client is cool.

I just worry about the screen size, but I'm not a monitor hog, I only need to see one page. The article is encouraging. I've got to try it! Thanks for sharing.

Linux and OS X

Paul Gigas's picture

Are you sure? Can I really believe this? Do you really do serious work? With that itty bitty screen you must have the eyes of a hawk. Or you have no real motive to finish anything. The miracle of GNU Screen? Vim? (I don't care how it is set up!) It takes a masochist. Truly! 1. Linux breaks. Something on Linux is always broken. The best I have found is Xubuntu. But Xfce is always breaking, so you put Gnome on it. Then on every update the apps break. And so on. 2. Linux is crude and flawed. No video editing, for one thing. It's all right if you don't mind engineering work arounds. 3. You must not go anywhere, ever. SSH or not, try that system at the airport or in a truck stop restaurant. Come on! You must be a monk. And what happens when there is no cloud? What do you do then? No problem for "months and months"? Good luck, dude. I take articles like this skeptically. I guess if I were a monk in a monastery and I didn't have to do any real work it might be nice.

Beg your pardon?

aygy's picture

> The best I have found is Xubuntu. But Xfce is always breaking, so you put Gnome on it.

You looked around a fair bit, surely?

If you want a stable system you get debian, if you want one with fresh packages you look for mint, aptosid, sabayon a hundred others. If you want to submit to mr shuttleworth's ideas you get *buntu.

> No video editing, for one thing...

I must be a magician then since I authored dvds that went into live shows and I am not even a semi-pro in such a field.

look for kdenlive and if you need more control cinelerra.

Linux breakage

Paul Gigas's picture

Debian used to be better as far as breakage goes, but it was always a task to stay up to date. Aptosid! I'm not even gonna reply to that one. For awhile Mint was okay. Helena I think was nice. Mint 12 is cool, but you can't do work on it. When 90% of Linux distros are just a bunch of guys sitting around a campfire and then they go to bed and the fire goes out, that is a problem. Ubuntu is a little better than most, I have found, though apps still break with kernel updates especially, of which there have been numerous lately. Unless Linux can come to grips with breakage and plain shitty operation, which means a tad more self-criticism, then maybe a serious person who does real work with deadlines and everything else can have fun with the flexibility and have good usefulness too. I don't see that in the near future with you guys slapping each other on the back the way you do. And it is true, you must be a magician. Good luck.


alcalde's picture

Try OpenSUSE and you might not have your system breaking on you so often.

You can believe it.

sledge's picture

You can believe it. I'd like a moment of your time to consider:

1.) Everything breaks, that's why I work in IT - I put food on the table because IT breaks
2.) There is a fair amount of video editing for Linux, when was the last time you checked? It's come a long way even in the last year. The best stuff is not available for free (is in beer) though.
3.) Linux goes anywhere. Setting aside Android (which is everywhere), it's possible to use 3G USB and PC Card for mobile connectivity, not to mention WiFi.

I am an avid enthusiast of skepticism and applaud your work, however I think you can expect more a few "me too' posts from the rest of us that work this way.

I love the reflexive

Confounding's picture

I love the reflexive assumption in this post - and many posts - that because someone has a different workflow than another person does, one of them "must not be serious". Since I use a similar system to the authors...

@Paul Gigas

- No, I don't have eyes like a hawk, and yes, I do have a very real motive to finish things. I've coded some decent simulations on an iPad, I've written two conference presentations and the better part of a peer-reviewed manuscript on an iPad. I assure you, it's real work. The small screen is occasionally irksome, but the reduction in distractions results (for me) in a decidedly zen like tunnel vision that is *massively* productive.

- You seem to have a hate on for Linux, which is really neither here nor there for this article, but probably indicates you may be reading the wrong website. If Linux is crude, flawed and always broken, then its going to be crude, flawed and always broken whether you have a desktop, laptop, or are SSHing from an iPad.

- Tried this system at several airports. Several conference centers. On an airplane before the preflight safety briefing. In the back of a taxi. The only place it wouldn't have been able to work as expected was in Uganda, and in all fairness, that site didn't always have electricity, so anything more complex than pen and paper was in trouble.

Zen with iPad

Paul Gigas's picture

Thanks for replying, Mr. O'Connor. The Zen thing is okay. The Vim thing is okay, I guess. Most people eventually evolve into the smaller and simpler is better BSD philosophy anyway. And it is easy to get hooked on Apple hardware. Everyone knows Linux is crude, but it's fun, has nice packaging, as you say, and I wouldn't be without it, and often I do my work on it. (My own personal Linux distro is a separate boot from OS X. I wouldn't mix them up with VMware.) What I am interested in is the cloud. Running Ubuntu for $20 a month (with 512mb of RAM!) on the cloud is strange. Everybody has their dropbox just like everybody has a flash memory device. Is the cloud part of the Zen thing? But it is a very hard sell for me, when there are so many much simpler ways to do it. Apparently you have been lucky so far at airports and such. Or at least you seem satisfied. Pen and paper? What's that?

It should be clear I'm not

Confounding's picture

It should be clear I'm not Mr. O'Conner, just a user with a very similar setup. My own "server" machine is an OS X box sitting beside my desk, though I'm partially reliant on "the cloud" because I access nearly everything via DropBox.

I agree with Kris. There are

Zachary Hodson's picture

I agree with Kris. There are plenty of OS agnostic technology magazines. This isn't one of them. Not only is Apple not Linux, but I would argue it's the exact opposite. There is nothing less "free" than an Apple product. I don't think that this belongs in a Linux magazine and I am seriously tempted repurpose my Linux Journal t-shirts into shop rags.

what about being practical?

aygy's picture

Let's assume your computing needs are satisfied by the linode.
Why a pad when a 199$ netbook has usb slots, keyboard, can do ssh-sshfs-screen whatever practically out of the box a (just add a usb live cd)? good battery life too.

Extrapolate, people!

Anonymous's picture

Seriously, just because this guys uses an iPad you can't extrapolate what he is saying to an Android tablet, or a small laptop like a netbook running Linux?

This would work on:
* Asus Transformer
* Motorola Atrix with the laptop dock (web or Ubuntu interface)
* How about one of the 10" convertible tablet/netbooks that will run any flavor of Linux you want to install?

Come on, people, think....

I feel the same..

MM's picture

Linux journal introducing or promoting Apple one-buttoned products? I am disgusted.

To the author: If the linux environment doesn't fit your preferences or needs maybe it isn't best choice. And so isn't writing articles like this one.

That's a bit dramatic. Isn't

Anonymous's picture

That's a bit dramatic. Isn't one of the great things about Linux the ability to use it however you want to use it? Might that include the flexibility that comes with interoperability?

If we declare that Linux is only to be used in a Linux-only environment, then are we not just as closed as Apple? I think the purpose of Linux enthusiast publications is to highlight all the cool things you can do with Linux, especially when that includes making otherwise closed devices more useful by adding some Linux to the equation.


shelley's picture

Good Article

Confounding's picture

I wrote a very similar blog post awhile back about cutting a laptop out of my computing universe, and going with an iPad, SSH, and a home server (in my case, SSHing back into the Mac Pro beside my desk).

It's been a liberating experience, and while I still do most heavy development work on my multi-screen desktop system, I've found the mobility of the iPad (for changes in scenery) and a weird sense of "tunnel vision" I get when working on it have led to some pretty major productivity gains. Combine with a fairly trivial setup of symbolic links and DropBox to access the most common parts of my home file system, and I've not looked back.

For the record, I too use my iPad to access and work on a university computing cluster.

Heavyweight C++/Qt code on Jaguar (200,000 cores)

ComputationalScientist's picture

I use the aforementioned Jaguar supercomputer that currently has 299,000 cores for actual work and not dicking around, especially from an ipad/iphone.

Anyone who actually uses supercomputers understands that you don't run Qt applications on them. I actually work on large scale scientific simulators in C, C++ and Fortran on Jaguar upto 250,000 cores.

You can love your ipad/iphone for all I care but don't it bring into the big leagues of supercomputing. ipad and a supercomputer like Jaguar don't belong in the same article.


Armand's picture

That's just so... childish. Please stop.

Mature much?

ComputationalScientist's picture

So I guess: the notion of encouraging people to use ipads to connect to large scale clusters to "get work done" is what exactly?

Virtual Machine

ris's picture

"My cursor still is in the same position."
The same result is on virtual machine.


Anonymous's picture

It's been shown several times over that the more screen real estate you have, the more productive you can be. Unless you know your language of choice absolutely perfectly, having the ability to crack open Google in another window without leaving your code is useful. How often do you compare two source files, or compare revision history with current code, or reference a database schema in a different window while writing code that interacts with it? I'd wager your productivity has taken a serious hit not being able to have a multi-window environment.

I have an iPad myself, and the appeal of using it more is always there - but it's just not practical to me to sacrifice the efficiency that a true computer gives.

You mention the jetlike fans on your MBP -- if you're just doing mostly remote editing with a thin client, I can't imagine it gets THAT hot, can it? I use a Mac Mini for most of my stuff (remote SSH and web browsers, mostly), and I don't think I've *ever* heard its fans turn on.

Just my $0.02 :)

How about we talk about Linux?

metalx2000's picture

Funny thing, I was just posting about this article today on Google Plus.

I hate to be a negative commenter. But, I really didn't like this article. I mean, there are plenty of tablet out there that you can run Linux on for real. Why is a Linux Magazine doing an article on how great it is not to use Linux?

"I enjoyed hardware with drivers that 'just worked'"?!?! Really? Linux drivers have worked on every computer I've owned since I started using Linux 7 years ago. Last I checked, Apple software runs on almost nothing. I have lest 5 computer in my house that are used regularly between me and my wife. I've run Linux on my lest 2 phone (currently N900 running booth Maemo and Debian) My Archos Tablet is Quad booting Linux (2 version of Android, Debian, and Backtrack 5), my Samsung TV runs on a Linux Kernel, My Pogo Plug is running Arch Linux, my router is running Linux, and my wife's phone is running Android. I would like to see Apple OS run on any of those and have the drivers work without jumping through a bunch off hoops.

Now, I wouldn't go to an Apple web site and complain that they choose to use Apple products, but this is suppose to be a Linux magazine. How about we talk about using Products that support Linux? As I said, my Archos tablet can boot multiple Linux Distros. And that is a feature that Archos gives you.

If this article was on how to remove the iOS and install Linux on the iPad that would be something I wouldn't mind reading.

Well, I just had to get that out. I'm sure that there are many people who disagree with me, but I'm sure there are some who agree.

Everything you ever need to know about Free Software.

I completely understand your

Webmistress's picture

I completely understand your feelings on this, but on the other hand, I also understand that a LOT of Linux users are also iPad users. I love my iPad, and in my house we have both iPad and Android tablets, a Nook, a Kindle Fire, a few Android phones, and assorted machines running multiple flavors of Linux, Windows and Mac OS. So, ultimately, I feel like helping Linux users integrate Linux into the rest of their technological life is just as valuable as singing the virtues of a Linux-only existence. Both are acceptable and even desirable, depending on your end goals and use cases.

Regardless, thanks for the feedback. It is always good to learn where our readers stand on these issues.

Katherine Druckman is webmistress at LinuxJournal.com. You might find her on Twitter or at the Southwest Drupal Summit

Ignore the hate

Christofer C. Bell's picture


Ignore the hateful vitriol in these comments. Let the malcontents leave. This was a great article I thoroughly enjoyed reading. We should be integrating Linux into our lives, being inclusive, not exclusive neck beards who ignore that the rest of the world exists.

Perhaps we will

Nerdfest's picture

A site that effectively advertises using products made by a company that is the very antithesis of free, open software is not something I'm willing to participate in. This is a company that has taken open formats (Epub, XMPP) and added proprietary extensions, blocked non "approved" software, and development tools and languages and in general, including "Scratch", a language to teach children how to write software.

On top of this, you add unspecified complaints about a couple of desktops, but go on to push the OSX desktop. Then, you push the actual iPad, but with enough external peripherals that you'd be better off using a laptop in the first place. You could have at least specified a non-Apple tablet.

To me, this is Apple advertising, and as someone who believes in open software and open formats, it's pretty offensive.


Confounding's picture

With enough peripherals that you'd be better off using a laptop? I *ditched* my laptop for this setup. The iPad isn't a one-size fits all solution, but neither is a laptop.

As for whether or not it belongs in this magazine...you call it pushing closed products. I call it adding relevance to a OS that's been struggling to penetrate home use at all for decades by showing how it, and one of the most popular consumer electronics products made right now, can be combined.

Vitriol Anyone?

Tuxy's picture

I do not think he is saying one should ignore other Operating Systems, I believe he meant one should not unfairly attack Linux in a Linux Magazine article.

"despite a decade using Linux, I never really was satisfied with either GNOME or KDE. In OS X, I hoped to find a slick window manager on top of a solid BSD implementation. I enjoyed hardware with drivers that "just worked","

This is certainly more hateful and vitriolic to me, also a tad unfair and incomplete as no other Linux desktops(KDE and GNOME are not the only desktops available) were mentioned. Honestly, should a paragraph like this be found in a Linux Magzine article?

"Let the malcontents leave." Vitriol anyone? You agree with the article others do not, please stop the nonsense. above all learn that vitriol begets vitriol.

sshfs a great way to remote edit

Barton's picture

I use sshfs to mount my remote system's filesystem on my local machine. Then I can edit the remote files with my favorite X11 editor just like the file were local. I don't know if there is a version of sshfs for the iPad.

I didn't find an sshfs client

sledge's picture

I didn't find an sshfs client but I found software that will browse via sftp and log in using and rsa key so it's pretty close. I never thought to look for an sshfs client though.


ris's picture

Where did you buy a remote hard drive?

By that he's referring to his

jonas's picture

By that he's referring to his linode..