Think before you buy Coda for iOS

07/17/2015

Panic released Coda for iOS (henceforth: Coda) yesterday, and it looks pretty excellent (Panic are very skilled at making things look good). However, for a lot of people, it will be missing something huge - any kind of environment.

At Buffalo, for most projects, and certainly all new projects, we work with something like Capistrano for deployment (no CI, sorry) with at least two deployment environments: staging and live. This approach will make working with Coda very difficult, because it needs to connect to a remote environment to do anything of use. Your local environment in Coda is effectively an empty file system with a text editor. No Git, no RVM, no Composer, no pip, no NPM. But most people are going to need that to get anything done. So you're going to need an environment to connect to so that you can do something with the changes you make. For this, I recommend at least one VPS (when our stacks vary, they tend to conflict. YMMV) on which to do your dev work.

The way you'll use Coda is to connect to your dev VPS, download the file you want to edit, make changes, upload it, and if that change is good, you'll then commit on your VPS and push from there. Because things will be set up as a full dev environment, you'll also be able to run your deployment tasks directly from the app, which is great. If you have an iPad and a keyboard, this could pretty reasonably replace your laptop for dev work.

However, I don't think that Panic is putting enough emphasis on the need for this extra step. They say "it's truly pro", and it can be, but they don't really give you any indication of what you'll need to achieve a decent working environment. For some people, having to add the monthly costs and time maintaining your environment to make this viable will be too much, and I think everyone needs to be aware of that before they take the plunge.

If you are interested, I recommend using Linode (referral link) but people seem to love Digital Ocean (referral link) too.