During the last of our IM discussions related to the theme upgrade, I told Preshit that I worked my bit of the upgrade entirely using MacRabbit’s Espresso. He was surprised, to say the least. Everyone knows me as a Coda fanboy, so did I ditch it just like that? I’ve always seen Espresso as sort of the underpowered in comparison with Coda. Coda is feature rich, has a splendid user interface, so why switch to something sub-standard? Lately though Coda has been showing its age, especially improvements in the world of HTML and CSS, and its user interface felt a little too heavy, given the current trend towards minimalism. Moreover, with Espresso’s 1.1 update, things were looking good for this new kid on the block. So I gave it a serious run-through by doing the theme upgrade entirely in Espresso.
I like Espresso
The Espresso way of doing things take time getting used to, especially for someone moving from Coda. Once you get the hang of its workflow though, it’s surprisingly adept at organising code. Let’s take writing a CSS file for instance. The moment you define your style element and insert the bracket “{“, it immediately enters the closing bracket, adds a paragraph return, and indents the first line so you’re ready to enter code. How is this different from Coda? Coda adds the closing bracket alright, but it doesn’t add the extra line, nor does it have any provisions for indentation. This is just one example of the numerous instances of Espresso actually working behind the scenes making the process smoother.
Espresso’s navigator is also really help, be it a PHP, HTML, or CSS document. It identifies everything just right, making the process of navigating through a document very quick. Coda does have a navigator for CSS, but it only shows up in the CSS view. One can then split the view, and have the lower section show up code, but that’s a lot of space wasted on having the CSS controls showing up unnecessarily. Moreover, Coda’s navigator doesn’t expand horizontally, so if it’s a long style declaration, you’re stuck to hovering over them. There is a killer feature here though, and that’s CSS grouping. Just add a comment with ‘@group groupname’, and it’s automatically enclosed in a folder in the navigator. The big missing feature that everyone (including me in my screencast review) gripe about, is the absense of a visual CSS editor. After all, MacRabbit is known to make CSSEdit, one of the best CSS editors out there, so why does a user have to shuttle between two apps? Then it struck me. I can’t remember the last time I needed to write CSS and needed the editor. At the risk of sounding like an apologist, writing it in code is so much faster than to twiddle around, that I finally realise why it’s not there to start with. Of course, for those who need a CSS editor, CSSEdit is well integrated with Espresso. One final code related feature is code collapsing, which lets you hide unnecessary blocks of code so the view is cleaner. Unfortunately, it doesn’t carry over the next time you open the document, or Espresso, even for items in the workspace.

Espresso’s FTP handling capabilities are also far superior to what Coda offers. First, you can have multiple locations, including Amazon S3, saved for a single project. This means very little back and forth, and you can have just one window open with all your sites showing. Espresso also has some superior updating and merging capabilities. I can’t tell you how many times I’ve had to restart a Wordpress upload because the FTP cut off midway. Espresso reviews files, suggests changes, and then takes care of it with little effort on your part. Some files you may not want touched, so you can skip them forever. Espresso’s FTP manager remembers.

Here’s the big workflow change that Espresso’s superior FTP capabilities allow. I’ve edited files remotely for as long as I’ve been using Coda. To review changes on site, and have everything available anywhere I have FTP access certainly seems better than setting up a local Apache server and then moving files to the web after I’m done. But with Espresso, I can work on files locally, but still have them saved to the web at the same time. A single command triggers two actions. If I ever edit files somewhere else, I just hit the update option in FTP browser, and my files are downloaded after a quick review. And since Time Machine backs up everything on my local drives, it means I always have access to a series of files, should I have the need to look at an older version of a stylesheet.
Lastly, Espresso’s ‘Workspace’ view is in many ways quite different from Coda’s tab bar—maybe not so different in functionality, but in the way it feels. Unlike tabs, which feel like open documents (which means you instinctively close them when you’re done), Espresso’s workspace allows you to keep important and frequently used files always hanging around. If you have two files of the same name (style.css for instance), it will add a little runner letting you know which location it belongs to. Espresso’s workspace is also much more flexible than Coda. You can pull out windows, and use the brilliant style overrides—a feature first seen in CSSEdit 2—to make live edits to a web page. It’s definitely a superior workflow.
The thing that bothers me, is that I’m beginning to like Espresso more than Coda.
Coda is fantastic. Its one window interface allows you to see your local or remote files, and split panes allow you to edit multiple files side by side—a great way to use all that wasted horizontal space on widescreen displays. You can even be editing a CSS file while having a live preview of your site on the side. The ability to jump between ftp locations by Cmd+clicking the tab titles, to switch between code and preview modes with an easy keyboard shortcut, a much better notifications system, and even the never-used live collaboration feature. Coda has everything.
Still, I’m somehow more comfortable with using Espresso. Jan Boghout has taken what’s most important in a developmental workflow, and really pushed the limits. It’s kind of like the story of the missing copy-paste on the iPhone. Espresso’s barebones ‘underpowered’ look ends up being one of its strong points, as you focus more on writing code rather than trying to fiddle around with features. And once you get used to how the application behaves, workflow ends up being just as efficient. I’m by no means an expert in web development, and this is by no means an extensive review of Espresso’s or Coda’s capabilities. I’m not even saying Espresso is better for you. This is just my sudden change in preference from the biggest name in Mac web development, which I’ve loved for as long as I’ve used the Mac, to its biggest competitor.
I hereby resign from the Coda camp, and raise high the Espresso flag. That is, until Coda 2.0 shows up.













