Komodo vs. Coda

At the risk of starting the vim vs. emacs sort of flame war I'm curious what folks think about Komodo IDE vs. Coda for general use. I've been using Komodo for about a year and liking it but faced with two pretty equal prices for upgrading vs moving to Coda I'm starting to look at how I really use Komodo.

The main features I use are the dynamic function lookup and SVN integration. To a lesser extent I use the CVS integration but have generally moved away from this with the tendency to have confusion in the GUI over whether CVS or SVN is being used and some accidental commits etc.

It seems as though Coda has some friendlier features for FTP and managing sites on servers that aren't SVN capable. On the other hand Komodo has better debugging features, though I've often resorted to print_r vs the intricacies of making sure a xdebug environment is up and running. Wherever I am print_r and the devel module work, even when cool debugging environments do not.

So with that said I'm considering buying Coda instead of upgrading Komodo... What are folks' thoughts?

Category: 

40 Comments

Well, you probably know where I stand

I have used Coda for quite some time, as well as using Komodo Edit (not IDE) for some time. I have pretty much always gone back to Coda, simply because it works more fluidly.

Interestingly the feature I enjoy the most about Coda is the site management. At a glance I can zero in on the current project I am wanting, and double click to be in the editing environment exactly as I had left it. The same files open, the same terminal (though it doesn't save the terminal state).

Coda does have decent SVN integration now, and as configurable, and actually powerful, editing as most other editing apps out there.

Funny thing, though, I have actually moved away from both of these, and now pretty much only use a terminal, and gedit, or Kate, depending on my mood. Both editors now can work with SFTP, FTP, and of course the versioning commands are right there in the term. Site management, depending on my windowing environment, is taken care of by bookmarks in Nautilus or Konqueror. Feels pretty good actually :)

Pat

Coda would be nigh perfect if

Coda would be nigh perfect if only it were smart enough to automatically indent the next line when I open a function (when the last character of the prior line is a left curly brace) and to preserve a previous line's indenting when creating the next line. This is such an astounding - and frustrating - oversight.

I haven't used Komodo, but as a cross-platform IDE, I can't imagine it'd be very Mac-like - in products such as this, the UI of the Mac version is always an afterthought. Correct me if I'm wrong though.

For years I've been using the free and functional Smultron. It does automatic indenting, as well as syntax highlighting, regular expression find and replace, the ability to split the window vertically (horizontal splitting is useless to me), and pretty much everything else I'd like it to do save for syntax hinting.

Komodo is in Java, hence it

Komodo is in Java, hence it is slow and ugly, just like so many other bloated massive editors out there. Coda is Mac-native, so it's fast and svelte, and as of version 1.6 it's gotten really nice. Worth it. Just my opinion...

Good to know

So it is obvious I haven't spent much time with Coda because this would pretty much kill the deal for me... As you said an astounding oversight...

Java?

As far as I know it's not Java. It's based on the Mozilla suite. XUL. Compiled natively for each platform.

That being said, version 4 is a bit sluggish. 5 is way faster.

Should be Coda vs. Dreamweaver

Coda's great, and tackles a lot of the same problems as Dreamweaver. For example, the synchronized FTP uploading of changed files. Except Coda does that way better. Coda also has terminal integration, which is very thoughtful.

Komodo is a nice IDE, so you get some invaluable tools like a good code browser, function suggestions for both PHP and javascript, the ability to jump to a function declaration from a function call, the ability to re-order your project files without affecting the actual file structure (great for deep sub-theme folders).

So, I end up using them both. Komodo I use for serious development work, and Coda I use for it's terminal integration and for handling smaller changes to client sites. The flow for quick FTP-able updates is awesome. If I'm working on a version controlled project, Komodo is definitely my first choice.

Komodo

Version 5 has very good integration, uses all the Mac widgets.

The dealwinner for me is the ability to set breakpoints in the code, and step through / inspect the stack, etc. Sometimes you can't do a var_dump or print_r .. for example, in certain parts of the theming process (I think it's in the preprocess hooks, can't remember). This is where Komodo saves the day.

Also, the fact that it's cross platform is a big plus. Take it with you when you use Linux!

+1 Komodo!

Raymond Brigleb, do your research.

"Komodo is a professional IDE for open source languages, developed using the Mozilla codebase as an application framework."

http://aspn.activestate.com/ASPN/Mozilla/

By your logic Mozilla and Firefox must be slow and ugly.

Besides, being written in Java doesn't automatically mean slow and ugly, any more than being written in PHP means spaghetti and insecure. Your statement just doesn't have much merit.

tutorial?

I am 2 days into my transition to linux (ubuntu) and installed Komodo today to use as my IDE. I have seen a few handbook pages about setting up Komodo... do you have any references for getting started?

I hope to get comfortable with Komodo- I would like to use an Activestate product since they sponsored our Drupalcamp

Komodo

I bought Komodo, and really _want_ to like it, but it's just too damn slow! Like unbearably unusably slow. Scrolling up and down a textfile is lumpy, dialogs take a second or two to pop up, etc. Also, it frequently hangs (consuming all the CPU), and needs to be killed. This is really dissapointing for a product that I paid a decent amount of money for.

That being said, I still use it, because of the PHP completion, popup help etc, debugger integration and project management. I use command-line SVN integration, rather than anything in IDE, since it doesn't seem to show up from the project-root.

Aieee!

Mozilla XUL not Java

Not sure where you got your information, but it's based on Mozilla XUL (just like Firefox, Mozilla). If anything I still find it to be a little bit of a resource hog, but I'm also on a laptop with only 1GB memory.

Komodo works fast for me on a PC

I've got 4 gigs memory - perhaps that helps, but I've never had a problem with the speed of Komodo.

Komodo myths

First of all Komodo is not written in Java. It is based on the Mozilla platform, so it is written in XUL, JavaScript, some C++, and Python. (Yes, Python.) As for performance, I really have to admit Komodo 4 had horrible performance on Mac OS X, which does not surprise me because it was based the same runtime as Firefox 2, which similarly had performance issues on Mac OS X. On the other hand, Komodo 5 not only is based on the same runtime as Firefox 3, which is way faster, Komodo 5 also has a new default theme based on Firefox 3's default theme, which means it looks way better than it did. Don't believe me? Take a look at this screenshot:
Screenshot
(My Komodo Editor with several toolbars turned off, vi emulation enabled, and custom syntax highlighting color scheme. The theme is the default Komodo 5 theme.)

Komodo 5 also comes with insanely flexible key binding tweakablility. You can set it to use Cocoa convention shortcuts, or you can set it to emulate Emacs or vi. You can even create your own scheme; for a while, I set Cmd-D to delete the current line and Cmd-/ to comment the current line like Eclipse does.

Lastly, since Komodo is built on Mozilla, it can employ extensions. I believe extensions are what made Firefox so popular in the first place. Through extensions, Komodo can support more syntax highlighting for more languages and other amazing things. Potentially, this means that Komodo has the ability to do whatever Coda can do, given that extension developers feel itchy enough to scratch that itch.

Eclipse

I considered buying Komodo or Zend a few weeks ago. Instead I've installed and configured Eclipse and PHP and SVN and Zend debugger plugin. Well, at first sight it looks complicated but now it works perfectely and is completely FREE !

Aptana anyone?

You should check out the Aptana IDE which is free and has all the bases covered.

(The comments on this thread

(The comments on this thread seem to be totally buggered… I wonder where this one is going to end up. For the record, I'm trying to reply to kourge's post with the screenshot.)

Actually, that screenshot is a perfect example of a non-Mac app merely wearing a Mac skin. What's wrong with it?

  1. The yellow folder icons look more Windows-like than Mac-like. Mac folders are blue.
  2. The close widgets for the tabs are on the right side of the tab instead of the left. See the title bar of the window? Mac close widgets are always on the left.
  3. When a Mac application has a menu in a text field as in the three text fields along the top, there's no triangle on the right side. Instead, the triangle is smaller and is on the left side, integrated with the icon on the left side if there is one. See Safari's search menu/field thing.
  4. The code folding widgets seem to be using the same illogical plus/minus metaphor as Windows. The Mac uses "disclosure triangles" which point right (collapsed) or down (expanded).
  5. The status bar menus are all wrong (assuming those are menus). The up/down triangles are the wrong size and don't look right against the dark background, and they should have some sort of outline, even if they're not standard Cocoa pop-up menus.
  6. The status bar is also too thick.
  7. It also seems to me that the top part of the window has the same weird shading/gradient thing going on that Firefox 3 has.

Now perhaps Komodo is still usable and greatly productive despite all this. But the impression I get from that screenshot is that it still has a ways to go to be something that could be considered a real Mac-friendly app.

All good points

All good points; with Komodo 5 we spent some time making the OS X default look more Mac-like, but obviously not as completely native as some would like, This is very hard to do by the way, as Mac-ness is a moving target, and Apple is often the first to break their own rules. As well, we tend to go with what Firefox does, for example both Firefox and Komodo have icons in menus, something no native mac app does.

Some direct responses:

> 1. The yellow folder icons look more Windows-like than Mac-like. Mac folders
> are blue.

Agreed, this is mostly laziness on our part. I for one hate those yellow things.

> 2. The close widgets for the tabs are on the right side of the tab instead of
> the left. See the title bar of the window? Mac close widgets are always on the
> left.

This is intentionally the same as Firefox

> 3. When a Mac application has a menu in a text field as in the three text fields
> along the top, there's no triangle on the right side. Instead, the triangle is
> smaller and is on the left side, integrated with the icon on the left side if
> there is one. See Safari's search menu/field thing.

Ditto, see Firefox 3's Awesome bar.

> 4. The code folding widgets seem to be using the same illogical plus/minus
> metaphor as Windows. The Mac uses "disclosure triangles" which point right
> (collapsed) or down (expanded).

The choice here is to sue the same visual metaphor as the world's most ubiquitous IDE ( Visual Studio ) or use the mac-centric styling. I suspect this would be hard to style specifically for the Mac as it is in the Editor window itself, but you may have a point there.

> 5. The status bar menus are all wrong (assuming those are menus). The up/down
> triangles are the wrong size and don't look right against the dark background,
> and they should have some sort of outline, even if they're not standard Cocoa
> pop-up menus.

These are relatively new in Komodo, but they seem intuitive to me, even if they're not particularly mac-like.

> 6. The status bar is also too thick.

...but, we do a lot *with* the status bar, like Firefox.

> 7. It also seems to me that the top part of the window has the same weird
> shading/gradient thing going on that Firefox 3 has.

It has exactly the same weird gradient things as Firefox/Thunderbird 3, because we didn't want to bother re-inventing the weird gradient thing. Firefox is not a native app in the sens that it does draw it's own window from soup to nuts, and that is what Mozilla came up with. Doesn't look 100% authentic, but it is far better than FF2 or Komodo 4.

So, the trend in my responses you may have noticed is that we do a lot of things like Firefox does. This is completely intentional for two reasons:

1. it's much easier on us to not reinvent the wheel. generally Mozilla does a lot of hard thinking about what the right thing is to do for Firefox users, and we trust them enough to not second-guess every last thing they do.

2. A lot of web developers are already familiar with Firefox's interface/eccentricities, and we are trying to leverage that familiarity.

Comments should be better

Thanks Garrett for pointing out the comments were a little off. There were a couple of defaults I'd failed to set so it was a bit unpredictable to say the least. Hopefully all is well now.

NetBeans! (and I'm not trolling)

While its been over a year since I've looked at Komodo (probably closer to 2), this is coming from a guy that previously used Textmate, then Zend Studio 5.5, and now I'm on to NetBeans 6.5 nightlies, and rather happy.

Compared to Zend, I like having CSS and HTML syntax highlighting, and support for debugging with xdebug versus the Zend debugger. Overall the nightlies are very stable, and I prefer NetBeans to Eclipse for those that have tried Eclipse. NetBeans also seems to be rather compact and speedy as well.

The choice here is to [use]

The choice here is to [use] the same visual metaphor as the world's most ubiquitous IDE ( Visual Studio )

…And there's the rub. Too often open source developers copy what the most popular software does, instead of what the best software does or finding its own path. The result is that almost everything works like Windows or other Microsoft software without any concern for whether that's actually a good thing. Gnome and KDE and Xfce all have their own Start buttons and taskbars and menu bars inside windows - though thankfully KDE at least gives you the option to put the menu bar at the top of the screen, where it belongs.

Does Komodo at least edit text like a real Mac app? Does it use the standard OS X spell checking dictionary? Do Page Up and Page Down only scroll the window, without moving the cursor? If I click-and-a-half on a word and then drag to the middle of the next word, does it select both words, instead of just the first word and half of the second word? If the cursor is in the middle of the last line and I press the down arrow key, does it move the cursor to the end of the line instead of staying put? I'm currently using the OS X version of OO.o to write a users' manual for a site I'm developing, and though it's pretty powerful in what it can do, it's somewhat infuriating to use because it edits text just like a stupid Windows app! (It's also buggy and crash-prone.)

I agree with NetBeans

I am still trying to wean myself from Zend Studio 5.5 and have been trying Coda. I am VERY impressed with NetBeans.

I upgraded to Zend Studio 6/Eclipse which is utter garbage. 6.1 fixes nothing. To me Zend Studio for Eclipse is unusable.

Coda is good but it needs to provide site "insight" and class/function completion.

I am from the old, old school of the BBEdit 3 or 4 days so I've been through several IDEs and editors. NetBeans seems to have a lot of potential.

Aptana/Eclipse is simply too bloated and unstable. I have tried Komodo but it doesn't seem intuitive. I'm sure if I tried it longer it may be a different story but for now I'm still splitting my development between Zend Studio 5.5, Coda and NetBeans.

I gave NetBeans a try, but

I gave NetBeans a try, but couldn't stand its non-Mac interface. If I'm going to be seriously using a text editor, it needs to work as I expect it to, and I expect text editors on my Mac to work like Mac text editors… That's not unreasonable, is it?

Anyway, this post has inspired to write my own post on the state of Mac text editors from my perspective. Check it out here, if I may so spam.

Coda is great but..not quite there yet

I really like Coda and it shows great potential, I use it as my default editor. However it has several issues that keep it from being a serious code editor.
No auto indent (as was mentioned) in functions or in CSS code. No collapsing code blocks. Limited HTML code navigator. No PHP code navigator. And no integration between pages (this makes working on large projects a drag). Also in regards to projects, it would be nice to be able to move a file in the file manager and have the reference be moved as well. Also once you add a large number of Clips (code snippets) it gets very slow. As I say, it is an editor with good potential but not quite there yet to be the one stop solution.

I gave the whole set of editors/IDEs a test run lately looking for something better: Eclipse based IDEs are either too much maintenance (need to load a plugin for everything) or too bloated (as in Aptana). Net Beans had me very happy and I was settled on it. Then ran into Komodo Edit and like what I see so far, it is not a perfect mac look+feel but much closer than the Java based options. If Coda could get it together to offer the feature set (as in the editor) of Komodo Edit it would be a fantastic editor. At best it is a beta release of what a code editor for mac could be, without the basics that are in even the free Smultron it is hard to see why it is so popular (besides the pretty look).

They're all bad... and good as well..

as with most software (OS's included) most editing environments lack some major awesome feature that one of the others has.

If you take Dreamweaver's site/ftp and text search and replace, Zend Studio's REAL php debugging, along with Visual Studio's intellisense and code explorer views, add in NetBeans syntax highlighting and modularity features, and then use NuSphere PHPEd's UI (look and feel). That would be the ideal IDE for web development. Right now I use all of the above (along with Kate, Geany, Eric, pspad) across Linux, Mac, and Win...

Aptana kind of works, good try anyway - Eclipse? never had anything but nightmare's getting eclipse to actually debug php.

I haven't tried expression web

Eclipse and Aptana

I've tried to like Eclipse with both PyDev Extensions and Aptana and I just can't do it. I absolutely hate the Eclipse editor and wish I had not purchased Aptana (PyDev Extensions was OK).

I'm currently evaluating Komodo 5 and so far I like it infinitely more than any configuration of Eclipse.

Interestingly the feature I

Interestingly the feature I enjoy the most about Coda is the site management. At a glance I can zero in on the current project I am wanting, and double click to be in the editing environment exactly as I had left it. The same files open, the same terminal.

lumpy scrolling

bummer on the lumpy scrolling and hangs, get in touch with us, lets see if there's something we can figure out around that.
Shane - ActiveState

I'm trying to check out

I'm trying to check out Acquia Drupal via SVN using Coda.

Any tips on how to make it work?

Repository URL using: https://svn.acquia.com/drupal/branches/1.x-6.x/

and user/pwd blank

I get this error:

Could not checkout a working copy.

svn: PROPFIND request failed on '/drupal/branches/1.x-6.x'
svn: PROPFIND of '/drupal/branches/1.x-6.x': Server certificate verification failed: issuer is not trusted (https://svn.acquia.com)

oh...

"SVN checkout fails via HTTPS when server certificate is not trusted."

coda group:

http://groups.google.com/group/coda-users/msg/75bd2b95d6304525

Komodo Edit vs Coda

Coda:

+ Much better syntax highlighting out of the box (i use Smarty for templates)
+ Filemanagement its like in Finder, there you can dublicate folders
- makes . files

Pro Komodo Edit:

+ its free as freedome and free beer ;)
+ its plattfom indepent
+ knows user made functions, classes and the methods etc. (saves much of time)
- got a "strange" filemangement (not always delete files that i tried)

KOMODO vs Coda

I have been trying out a variety of editors, mainly Komodo, Coda, Dreamweaver and Expresso.
Neither Komodo nor Expresso allow me to connect simply to my MAMP dev environment. They both assume (and require?) a remote server. This is a deal breaker for me.
I need to develop on my MAMP setup before moving to my sandbox which comes before going live.
I do not want to edit directly on my live sites - which is what Komodo and Expresso seem to assume is the norm. If they can connect to my MAMP setup they are being very obscure about it.
Both Dreamweaver and Coda allow me to connect to my local site intuitively and quickly. Coda allows me to "see" my css classes visually but really it is 6 of one, half a dozen of the other.

I am still looking for a decent editor/IDE but so far the winner is Coda.

Komodo is great for local development

I'm not sure what issues you're having with Komodo locally. One of the great strengths is using it locally with my DAMP stack installer. It is very quick for adding a project file to a local code checkout and working with the local code. As a bonus if you also want to work remotely it works as well.

Komodo Edit Is Great!

I'm Komodo Edit's fan. The software is free. Very good debugger, with web viewer, color picker (manual install), and many addons.

Komodo 6.x: Lookin solid

Well the old "what's the best editor debate". Tortured days. It depends on the job you need to do. But it's damn hard to beat Komodo from what I'm seeing out there, unless you're doing serious front end stuff. Love the power of abbreviations, snippets, and macros. Multiplatform! Gotta love that. Hell, Steve Jobs could die and Lion could close in on us like iOS. Granted, they certainly pretty up Komodo a bit on the Mac interface and give a few more controls over themes would be nice. But check out Webstorm if you want a taste of Windows ugggly. The Webstorm preference pain (yeah). Check out Komodo's power of syntax checking, and very good context sensitive code completion, including smart variable suggestions and completion. You can't do that in Textmate. You can even set up tag wrapping like Textmate with a macro. One think I'd love to see is for it to be able to know when you're in a script and adjust the syntax checking accordingly. Currently syntax checking is dumb to context. Plugin support is sweet. Komodo edit is also free. Sure it's not as pretty as Coda, but the editor is much better. Proper smart indenting, great little indent guides like notepad++. If only it had matching variable highlighting it would be heaven. But you can use incremental search to find matching variables, etc. So, I think I'd have to say Komodo gets my vote.

Love Coda, but...

I really enjoy Coda, great for handeling sites, great ftp and it's completely "mac like". I'm relatively a new mac switcher, been using win and linux for 15 years, switched to Mac a year ago. Coda came as a suprise, great little tool. But it really lacks some basic things, so atm I'm using coda only for css and html. For php purposes I enjoy Komodo IDE, great tool. I'm PHP and .NET(C#) programmer, so i know my way around visual studio quite well. It's certinaly the best IDE out there, lots of great features. But it's also really ugly. I know that look of an IDE isn't really important, but it is to me. Best php/html/css IDE atm for me is PHP Designer 8, but it's only windows. Lots of features, and incredibly fast. On Mac, Komodo IDE is the best solution for me. Coda would be no.1 if they finally get their asses together and pull out Coda 2 with the really basic stuff it's missing right now. If you want to program in PHP, and have large scale project, avoid Coda for now. It's great hrml/css editor, but for anything else, shamefully, not. Sorry for my bad English, it's not my native language :)