Ask HN: What tools do you use?
What tools do you use for web development?
I'm not referring to languages (PHP, Ruby on Rails, etc), but to the tools, like Emacs, Basecamp, Eclipse, etc.
Personally, to develop my website (mentioned in my profile), I use bare-bones stuff: * ssh via xterm * Emacs for editing PHP and CSS files * FileZilla * Firebug for debugging * Gimp & Paintbrush for image creation and editing * svn
I'm wondering if there are some high-productivity tools that I am missing out on.
What do you guys use?
68 comments
[ 4.8 ms ] story [ 109 ms ] threademacs is my favorite, and I learn more about it every day.
nano for editing files server-side
Git/Github (work) and Mercurial/Bitbucket (personal) for version control and deployment
scp for those rare instances when I need to transfer files manually
Windows XP in VirtualBox for IE testing and Photoshop
I'll add files by dragging and dropping into Aptana, or I'll use scp to upload through terminal.
I'm a designer by training, so I just know a little command-line and emacs, so I'll use that for quick edits from time to time.
I also use the Adobe Suite for image editing and creation. I haven't dove into Fireworks yet, but I keep meaning to as I hear it's great.
I know you said not languages, but I see Python more as a tool since I can use it to hammer out code to convert data and the like.
General: Firebug, Dropbox (automatic backups!), Git, Photoshop, Customized .bashrc, .irbrc
Ruby specific: Sketches (with the default sketches dir symlinked into Dropbox)
These are probably 95% of where I spend my time. My workflow is generally: I use Spotlight and Finder to find things and then DTerm to interact with them or launch TextMate. If I want to dink around in Ruby I will go into irb and start a new sketch which will pop up TextMate and away I code.
Fabric / rsync for deployment.
Sphinx for documentation.
IPython for my python shell.
Screen for terminal persistence and management.
http://github.com/rupa/z for directory navigation. Also, learn how to use your shell. It probably does things you never thought possible.
In Snow Leopard, I use X11 to interface with the shell (256 colors yo, makes syntax highlighting SO much nicer).
Spotlight for finding things.
Firebug and Flash Player Debugger Version.
http://github.com/brodie/terminalcolours/downloads
http://news.ycombinator.com/item?id=937855
Filezilla to upload files to the server, but the constant annoying popups ("a file appears to have changed, would you like to resend it?" and "this file is already open (hint: it's not), would you like to open it again?") are making me think about switching to something else.
Starting to use Git too, but I'm afraid of what will happen with the *.fla files (huge binary blobs).
I'm stuck with Windows because of Flash.
I tried to emulate it with Wine and others, but they all failed miserably.
For versionning i use Git and for Project Management i use my own web app. (soon to be shown here)
Modify the kw's and you can get some good info.
Pixelmator is very good for quick graphics. It's on par with Photoshop 5 (version 5 from like 1998, not CS-Whatever).
On specific client projects, I also use Mercurial, SSH and SSHFS.
Three monitors on one space are devoted to fullscreen putty terminals. Each one is running in "screen -x" with 8 terminals opened up mapped to my F1-F8 keys. That's plenty of terminals for this or that. If i need to move what's on one fullscreen'd monitor to the next then I just click on the monitor and press the function key for the given terminal session I want. This lets me move them around without dealing with window positioning.
Nearly all code is written with Vim. Plugins include FuzzyFinderTextMate and BufferExplorer plugins mapped to hotkeys. Netbeans is absolutely essential for J2EE apps. Unix and Vim are for everything else.
I can explain any of this in further detail if anyone wants my configs.