Hacker News new | past | comments | ask | show | jobs | submit login
23 Essential Tools For Web Development on a Mac (webjackalope.com)
45 points by tomh on Aug 20, 2008 | hide | past | favorite | 37 comments



I wasn't impressed by this list. There were no hidden gems. Most of this stuff is extremely basic for any Mac developer, there were also glaring holes in the list.

Examples about how to get things like Bazaar VCS installed from Macports would have been a lot more interesting for people I think.


I found this list a little contrived. These tools are not ALL essential, are they?

No mention of source control, either. Yikes.


I agree. I'm not convinced that many editors are essential. I only use emacs...

It seems to be written by someone just getting into the world of development and they're excited about it. Not particularly neat for us older hackers.

AND, phpMyAdmin is not a mac app...


15 years ago, my CS202 professor was asked:

Q: "Dr. Anasastio, can you recommend a different editor from emacs? It's so hard to work with. Can we use pico or jot?"

A: "No. Emacs is THE editor. If you plan to work in computer science, you have to know it."

Though I personally use TextMate for most coding these days, I can certainly see his point. 15 years later, emacs is still relevant and powerful (and free).

Find me another editor you can say that about, and I'll pay you $5. (vi doesn't count: it's only relevant because sysadmins could fit it on a floppy, and now it's vim anyway.)


:%s/emacs/vim/gci


Agreed.


Agreed. Plus, I've found the crescent wrench and bicycle maintenance manual to be a bit superfluous for my needs.


> For those Mac users who think BBEdit is better than Textmate, it’s usually because BBEdit is a Cocoa application, and TextMate is a Unix application.

False. TextMate is a Cocoa app and BBEdit is Carbon.


Forget MAMP. Install Vmware Fusion and run your server environment of choice in a local virtual machine.


I've thought about this. How do you transfer files between the host and the guest? Do you develop in OS X, transfer the files and then run them? If yes, isn't this a little time-consuming?


Pretty much every desktop virtualization package supports setting up shared folders to facilitation moving files between the host and guest OS. I know for a fact that VMWare Fusion on OS X does this, though the preference tab to enable it did take a little bit of searching to find.

That being said, if your goal is to develop in an environment more like your production system(s), you're going to need to work out your automated deployment model sooner than later, anyway. You may as well do it locally, where the cost of a screw-up deployment is effectively nil.


You can mount your VM locally by running something like Samba on the VM side, then open stuff normally with TextMate or whatever.

It's a bit slow and has some quirks with huge projects, so I stopped doing it, personally. Mounting with ExpanDrive or MacFuse(SSH) were slower when I tried.


Personally, I just setup an rsync share on the VM, and then run a script on my local machine that rysnc's the project directory just checking timestamps for changes and ignoring all scm folders. It's super quick after the initial sync, since all your usually changing anyway per testing iteration is just a few small text files at a time. Works great for big projects too.

Although nowadays, I'm finding the 'separate VM & host os" for development a bit tedious. Even executing that script to see code changes vs. just saving the file and seeing it right away is a drain on productivity. And doing remote editing put's a noticeable lag to my editing.


Very true. Why not just setup a staging server on the VM and use MAMP and benefit from the quick save and preview. Then sync up to your VM for staging to test your deployment.


This sort of setup is great for working out server configuration kinks during development. To do it right, you need an editor with remote file support and a way to interact with a remote process.

Lisp development in Emacs supports this setup.

http://bc.tech.coop/blog/051227.html


Just about all of the text editors on the Mac that are oriented towards web development have support for automatic sftp/ftp/scp of files to a server, so use that route. The virtualization tools also support sharing folders/directories with OS X, so you could use that path but since the eventual goal is deployment to another server using the sftp option means that going from testing to deployment consists of changing the name of the server you are pushing to.


I'm doing some kernel development at work right now, so I test my code in a virtual machine (VMWare Fusion). I use SSH to both copy files (via SCP) to the VM and run things on it, and automate those actions with a Bash script or Makefile rule.

That way, the only direct interaction I have with the VM is to to click "revert to snapshot" whenever I mess it up.


You could use subversion or git, or if your a man you could cvs or perforce. that last bit was just a joke. Even though you can setup a shared drive between the two, I found that checking out a subversion repo is a lot easier then moving files around.


lol, I just see a page full of crap.

Not anymore. The page works now.

So let me put something useful here.

My list of tools:

vim


It's back to being a page full of crap... just symbols for me... http://img.skitch.com/20080820-e9u8x5grdwdqbt6dk2wdq4e74e.jp...


If you need 23 essential tools then you're doing something wrong. When the article says "5 essential tools" then I'll be interested.


How's 4 tools sound instead? I could add one more, but I wouldn't consider it "essential".

  1. Some sort of text editor that you know how to use.
  2. Some sort of versioning that you know how to use.
  3. Some sort of way to transfer files offsite that you know how to use.
  4. Some sort of way to run the code. A local copy of the server environment that you use should do.
I can't think of anything else that's essential. Some things might help make you more productive, but you could easily continue working without the likes of Quicksilver or Spaces.


My list:

* an editor, source control, firebug, parallels.

23 is sort of a lot. And as for ftp???!!!?


"And as for ftp???!!!?"

Actually, Transmit's a pretty awesome little utility. It supports ssh (scp) and more importantly, it supports AWS S3 so you can explore and modify your buckets with it. There's a Firefox plug that does similar thing but it's horribly buggy.


But why? I don't know of anybody that deploys by copying files to their server manually. There's always something else that needs to be done and it ends up getting scripted away. Even the most basic deployment usually involves a copy and telling the server to restart or refresh itself.


I guess if you're shy of scp/ssh from the command line, but it's quite useful to get used to using it. It's everywhere.


Cyberduck does all that for free.


A list for those just who haven't found Eclipse and it's plugins: SQL Explorer, Subclipse, PHPEclipse,CFEclipse, EPIC. and Firefox and it's plugins: Web developer, Firebug, FireFTP I'm sure there are many more that I have forgotten.


PyDev Extensions for django developers!

He also forgot the scm utils, like Versions or Cornerstone. GitNub seems to be more a GUI for GitHub than git unfortunately :(


::sarcasm:: This blog is a goldmine of lists--just what we love on HN!

    23 Essential Tools For Web Development on a Mac
    15 Quick Ways to Shrink Page Load Times
    12 Ways to Design For the Fickle Web User


cocoamysql and phpmyadmin can easily be replaced by navicat or navicat lite (free), which is available for linux, osx, and windows. ive found it pretty handy.


6 of the 23 apps are not free. Whats up with that?


God forbid we actually pay money for apps that help us make money...


There doesn't seem to be as many good free apps on the Mac as there are on Windows. However, most of the really good Mac apps are relatively cheap and high-quality.


WebKit


If you’re looking for a way to ease the pain of using the command line and Terminal, try iTerm.

Probably not aimed at this crowd.


Can't see it with ff3




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: