I jumped into Coda 2 while it was on sale for $50. It's sort of exactly the kind of app you'd write if you started writing an app to do a few menial tasks for AMP stack development but had it grow out of control. Except that Coda 2 is much smoother than your hackarific app would've been, with the downside that it unfortunately also exhibits Cabel Sasser's idiosyncrasies instead of your own.


It's not as useful a daily editor for me because of its relative lack of quick keystrokes, as I'm a pretty hard and fast VIm user. But for mousing around, none's better. The new file navigation is incredibly fast. You can click any folder in the pwd of your current file and bam, instant navigation from there. You can navigate to different child folders than your current file and bring it up very quickly.

The code folding, where it'll fold up whatever's between brackets and hide that text from you, is also the most intuitive I've seen. The cool, Atari 2600 like gradient on the left side of the app shows how deep you are into the code's folds (darker is deeper) is also very cool, giving a quick visual of where you are and what a fold will take out of your way (example on the left of this post).

As a PHPStorm user, I'm also very happy that this (seems) native. Very quick editing.

If you are AMPing it, the MySQL tools will keep you out of phpMyAdmin, which is nice. Previewing websites is pretty painless. I haven't tried SFTP yet, but am a Transmit user, so I'm guessing it'll be pretty solid.

The one feature I wish I could see as well implemented elsewhere is code clipping. You can create snippets of text with hotspots inside and tab from one hotspot to the next. You can also insert these code snippets with hotkeys, so with very little energy, you can slap in a complicated text block with multiple function calls and tab from parameter to parameter to enter each quickly. For me, the real "slick" icing was the discovering that you can shift-tab back to your last hotspot even after editing it. A video would explain better, but for oft-used blocks of text that require a touch of change each time, Coda 2 is wonderful.

On the down side, the autocomplete isn't real hot (okay, it stinks), and there are serious issues with use over Samba shares (not that I've lost data, but if the share drops, you're in an annoying amount of trouble; there's no real restart. Coda just drops the files and makes you set things up again). There's no alert for errors in javascript like PHPStorm, which stink0rz hard. Nor is there the ability to jump to the declaration of a javascript function or variable, which slows me down. It's not a hard core javascript editor, and with more and more jQuery and ExtJS style javascript apps with very little html online now, that's a real stumbling block.

You get the feeling Panic.com isn't a javascript intensive site, so neither is Coda. This is potentially an example of eating your own dogfood and paying for it. Remember how I said this is kinda like Sasser's app written to help Sasser code for the web? It's slick, but it's not my set of priorities.

That's why, ultimately, I get the feeling I'm living in someone else's workflow. I'm sure Sasser can code like a man possessed using Coda to make sites like Panic.com, but without a manual or intro video, etc, I'm mostly in the dark. Lots of great stuff, but much of it is initially inaccessible to a new user, and much of the must-have stuff I've come to expect from my use of PHPStorm is missing. It took me years on top of years to use VIm efficiently. I'm not sure Coda has the same staying power or is worth the same sort of investment, or even if I did give it that investment that I'd be as well rewarded as I am now in PHPStorm.

That is, PHPStorm has the features a Sasser-like or mfn-like coder needs to get the job done. I'm afraid Coda might only really have the former.

So far, though, Coda provides an idiosyncratic yet enjoyable vacation from my normal tools when I want to "take a break" of sorts from the usual grind. It can't yet replace my use of PHPStorm with the IdeaVIM plugin, but Coda 2 is solid enough now to provide a nice alternative in ways Coda 1 didn't.

Labels: