Double Shot #779
More sunlight, please.
- Re-thinking Software Development Education - Chad Fowler discusses the thinking behind Hungry Academy.
- JRubyConf 2012 - At least they've got a splash screen, and a date (May 21-23 in Minneapolis).
- Poltergeist - A PhantomJS diver for Capybara. The amount of effort we put into test tools continues to astound.
- Coffee Cereal - Just what it says.
- Sprite Cow - Very cool; give it a giant image of CSS sprites and then visually pick chunks to get the necessary CSS for each one.
- Soda Theme - Custom themes (dark and light) for Sublime Text 2.
- Customise Sublime Text 2 - Suggestions on starting points to make it a better editor.
- Open Source Code - Some ideas on how to make your projects more useful to other developers.
- Zucchini - Visual testing framework for iOS applications.
Double Shot #778
Time Machine may quite possibly be the worst backup software I have used in the past 20 years. And that includes things that backed up to QIC40 tape.
- ffaker - Faster rewrite of faker, with more utility methods too.
- Rails/master is now 4.0.0.beta - If I get one Christmas wish, it'd be for Rails 4.0 to dial back some of the refacturbation.
- SublimeText2RailsRelatedFiles - Another plugin for the Rails dev exploring ST2.
- pismo - "Web page content analysis and metadata extraction." Currently saving my bacon on a prototype.
- janky - GitHub's CI server, built on top of Jenkins with GitHub and Hubot integration.
- Writing forward-compatible websites - Lots of good advice from Mozilla. I wonder how much of this better tools and frameworks can automate?
- RailsConf 2012 - April 23-25 in Austin. Y'all have fun there.
- pen.io - Easiest way I've seen yet to get a page on the internets. Well, PenZen makes it even easier - type, click save, boom it's posted.
- Parse - Server-based data storage, push notifications, user management and social integration for iOS and Android applications.
Double Shot #777
Jackpot!
- Smooth CoffeeScript - Free ebook that also brings in a batch of other cutting edge stuff like Canvas and WebSockets.
- Getting Started with JRuby and Java 7 - Some day I'll have a good excuse (ie, one paid for by a client) to get back into JRuby.
- Attacking NoSQL and Node.js: Server-Side Javascript Injection (SSJS) - With new hotness come new vulnerabilities.
- simplecov - Code coverage for Ruby 1.9. Looks substantially nicer than rcov.
- Fabrication - Wide-ranging factory gem for Ruby that I hadn't run across before. Handles plain old Ruby objects and Mongoid Documents as well as AR objects.
- Rails 3.2 RC1: Faster dev mode & routing, explain queries, tagged logger, store - Time for another Rails release with the usual assortment of yummy.
- My Ultimate Developer and Power Users Tool List for Mac OS X (2011 Edition) - A selection of links and short reviews from Second Gear's Justin Williams.
- A Case for Using CoffeeScript - A response to the opposing blog post from last week.
Double Shot #776
- Textmate 2 Tips - A collection of info from help files, figuring stuff out, and other sources.
- DCI for dummies - In case the Wikipedia article I pointed to on Friday made your eyes glaze over.
- Introducting Graphiti: An Alternate Frontend for Graphite - This looks like a pretty nice way to generate graphs from Ruby + Javascript.
- SOLID JavaScript: The Single Responsibility Principle - First of a series on the SOLID design principles and their use in structuring your JavaScript.
- bahia - Some sauce for adding acceptance tests for command-line utilities.
- tabulous - Nice little gem for tabbed navigation in Rails projects, though the configuration is a bit…different from that for most things.
- statuscats - Hopefully this will pass quickly, but until it does, here's Rack middleware to serve pictures of cats corresponding to HTTP status codes.
- riaknostic - Diagnostic tools for Riak.
- Sleep Deficit: The Performance Killer - No matter how much I understand this, it's tough to act on. One thing I have found useful is to play something like Tetris or Bejeweled for a few minutes when I'm feeling tired. If I can't get anywhere near my usual scores, I know I'm too tired for client work.
- A Survey of the Rails Ecosystem - Dan Adams offers his opinions on what's out there. Plenty of links to choose from, too.
Double Shot #775
Maybe, just maybe, the year is ending on a high note.
- In Major Shift, Microsoft Will Auto-Update Internet Explorer Users - Good news, IE9 is going to be shoved down users' throats. Of course there will still be some escape hatch to let ossified organizations run IE6, which we are doomed to put up with forever.
- Clean Ruby - Site for a forthcoming book by Jim Gay (lead developer for Radiant CMS) about enhancing MVC design with DCI to make code more readable.
- Data, context and interaction - Wikipedia on DCI, in case you haven't run across it before.
- The Command Line Crash Course: Controlling Your Computer From the Terminal - Zed Shaw takes you from pwd to chown (plus their equivalents on Windows).
- 9 reasons you must install Sublime Text 2. Code like a man, man. - Good introduction to fast productivity features.
- rubygems-sandbox - Install command-line tools (rdoc, flay, etc.) in their own private rubygem repository so they don't have to be global.
- Riak Handbook - $29 ebook on Riak that's so far getting positive press.
- CoffeeScript Cookbook - A bunch of sample code to run you further up the learning curve.
- Beta Bait - Service to match beta testers with startups. You can sign up as either one.
- Too good to be true! Twitter Bootstrap meets Formtastic and Tabulous - How to merge together three different UI chunks into a Rails application.
- vendorer - Gem to manage vendored code somewhat similar to how Bundler manages gems.
- sprocketize - Command-line interface to the sprockets gem.
- Map of CPAN - Zoomable look through the universe of perl modules. It'd be fun to see this for Ruby though I have no idea how you'd organize it.
- The smallest possible valid (X)HTML documents - Of no practical use whatsoever.
- MongoModel - Ruby ORM for MongoDB designed to fit in with Rails 3.
- Wheelhouse - Rails CMS built on top of Rails 3 and MongoModel.
Double Shot #774
Hard to stay one jump ahead of the customer when you oversleep by a couple of hours.
- The Problem with CSS Pre-processors - Some thoughts about the drawbacks of using LESS, SASS, etc.
- GoToSpec - The very start of an RSpec helper plugin for Sublime Text 2. Not much here yet, but a data point for something I've noticed: Sublime Text 2 is getting a bunch more attention now that TextMate 2 alpha is out.
- SublimeERB - Another Sublime Text 2 plugin for Rails devs. Again, pretty sketchy so far.
- Ruby on Rails in Windows Azure - Part 1 - Setting up Ruby on Rails in Windows 7 Machine with test Rails Application - Um. No thanks.
Double Shot #773
Pondering the easiest way to blackhole sites that enrage me every time I click through to them.
- New - SMTP Support for the Amazon Simple Email Services (SES) - Looks like this makes it pretty trivial to send bulk or transactional email via Amazon's servers.
- Hojoki - Sort of a meta-application that merges activity streams from a bunch of different places - Dropbox, Twitter, Google Docs, Pivotal Tracker, and more. Sort of Growl for the web.
- Shunning Facebook, and Living to Tell About It - And here I thought ignoring Facebook made me sensible, not part of some strange subspecies worthy of a NY Times writeup.
- Turnapi - Site to help build good-looking version-controlled API documentation sites. Plans from "free" and up.
- Ganglia - Distributed monitoring system for clusters and grids. Recent features allow comparing hosts and Nagios integration.
- Mozilla Labs App Developer Preview and documentation are here! - Mozilla's take on app development for mobile and web using HTML5.
- sinatra-rabbit - Sinatra extension for designing REST APIs easily.
- TextMate 2.0 Alpha - The editor upgrade that many people had stopped expecting. Release notes are here.
- TextMate 2 + rmate = Awesome - Wiring up TM2 to let you edit files on a remote server via SSH.
- Sparrow Lite 1.5 - All the features of the Sparrow desktop OS X email client, for free, as long as you can tolerate some ads. Here's the release announcement.
- A Case Against Using CoffeeScript - I've looked at CoffeeScript, and I find myself strongly in agreement with the points made here. I might just be too old to learn new tricks though.
- Bfxr - Online sound effects generator with enough options to drive my dog completely bonkers. And if you should happen to need a ray gun or whatever, you can export any sound you create as a wav file.
- U.S. Safety Board Urges Cellphone Ban for Drivers - Personally, I hope I live long enough to see using phones while driving viewed the same way as drinking while driving. I think it's more likely that some housewife texting her friends will run me over first, though.
- Geek Gift Guide 2011 - From PeepCode. Some nice products here, though as always you should remember that all geeks are not created equal.
Double Shot #772
Winter is settling in. Time for a hot cup of bits next to the fire.
- Use jQuery - Newly-revamped site tracking all things jQuery.
- Writing Ruby Scripts That Respect Pipelines - How to make your stuff play nice with the Unix toolbox.
- Tddium - Ruby testing/continuoue integration, automatic deployment, git integration, and build notifications as a service.
- Programming with Nothing - Stripping down Ruby to just Proc and then showing it's enough for the lambda calculus.
- Create - HTML5 in-browser front-end for any CMS.
- Introduction to Composite JavaScript Apps - Some examples of how to structure large JavaScript codebases, with pointers to more information.
Double Shot #771
Two Christmas parties this week. Be still my beating heart.
- Google Currents - Yet another entry in the "Build your own news magazine" app space.
- Bullet - Gem to watch for inefficient N+1 queries, now updated for Rails 3.1.
- What you should know about rbenv and RVM - From one of the RVM contributors, so take that into account.
- Arcadia - IDE for Ruby in a cross-platform gem.
- Forbes is wrong about "Developernomics" - Yeah, they are. Especially amusing to read the comments, where people who don't know him assume Larry O'Brien isn't familiar with the field.
- Caterwaul - "a Javascript recompiler that lets you change the semantics of functions." Personally, I have enough trouble with normal Javascript.
- Web Applications - Stanford Open Classroom course from John Ousterhout that uses Rails in its syllabus.
- repmgr - Replication Manager for PostgreSQL 9+ clusters.
- TonidoPlug2 - "Cloud in a plug" for your own network sharing.
- Vim: revisited - My brain clearly does not work like Mislav's, but if yours does there's plenty of advice on effective Vim fundamentals here.
Double Shot #770
I declare tomorrow to be 'fix the backup strategy' day. Feel free to join me.
- Amazon S3 - Multi-Object Delete - This should be especially helpful for cleaning up old backups and such.
- Paving the way for open games on the Web with the Gamepad and Mouse Lock APIs - Wacky; there's a Firefox experimental build with APIs for building games.
- The Bastards Book of Ruby - Early draft of a Ruby book for programming beginners.
- smooth_s3 - Gem to add easy backup syntax to the s3 gem.
- turnip - Testing extension that lets you run Cucumber features with RSpec.
- What is Happening to the JQuery Plugins Site? - They screwed up, and now you need to use your Google skills if you need to find a plugin.
- api_guides - Static documentation generator designed to help document HTTP APIs.
Double Shot #769
Have I mentioned lately that I'm looking for work? Feel free to make me an offer.
- Ruby on REST: Introducing the Representer Pattern - If OOP purity floats your boat, here's an attempt to clean up document parsing and rendering.
- Kinzaa - Care for an "infographic resume"? Get one here.
- Evernote Food - Evernote is still quietly executing on their strategy to store everything about everything, and building out their own app ecosystem.
- Fake It - Testing file system interactions with the fakefs gem.
- Rein - Database constraints for ActiveRecord, including support for constraints other than foreign keys in PostgreSQL.
- Shoehorn - New gem for interacting with Shoeboxed. Not ready for production use yet, but I'm still allowed to mention it because I'm writing it.
- Email Yak - Service that implements a JSON API for your application to send and receive mail.
Double Shot #768
One of these days I should teach the dog to code. At least on the simpler projects.
- Humans TXT - Standard for putting credits on web sites. Might be getting some small amount of traction.
- serve - Rack-based web server that implements the views portion of Rails. Meant to allow designers to work with ERB/HAML in a prototype project, with views then delivered to the developers.
- The Durable Document Store You Didn't Know You Had, But Did - Quick tutorial on native XML storage in PostgreSQL. I remember happily using similar features in SQL Server.
- node-spdy - SPDY server module for node.js. Just in case you weren't feeling sufficiently bleeding-edge this morning.
- dochub - Pretty formatting for CSS/HTML/JavaScript/DOM help from MDN.
Double Shot #767
It's easier to imagine a world with no countries than a project with no meetings.
- Zapier - Synching service for web apps like Dropbox, FreshBooks, Highrise, Pivotal, Stripe, and many more.
- Bug 707662 - spdy null deref - Aw, my very own Firefox bug.
- TorqueBox v2.0.0.beta1 Released - First beta of the next version of TorqueBox, a JBoss/JRuby application server for rack applications like Rails and Sinatra.
- about:about - Firefox at least has an about page to list about pages. I didn't know that.
- Scalable and Modular Architecture for CSS - Interesting looking ebook, with free and paid versions.
- Knyle Style Sheets - A gem and specification for writing machine-parseable CSS documentation. Looks useful.
Double Shot #766
Another Monday morning bumper crop of links.
- Tidy views and beyond with Decorators - Applying patterns to Rails views. I'm not convinced that pushing CSS class names into the model is a win.
- Self-published and awesome - A list of Rails (and related) books you can pick up online.
- Netspot - Wi-Fi mapping software for OS X. Free, too.
- Airdroid - Nice app for working with Android devices from your desktop browser.
- How to use Firebug on your iPad and iPhone - Well, Firebug Lite, anyhow.
- What Powers Instagram: Hundreds of Instances, Dozens of Technologies - Tech porn for the cloud crowd.
- Markdress - Display any Markdown file with a URL as a nicely formatted page.
- RubyConf 2011 - Confreaks has all the sessions online now.
- Sprintly - Software project management software designed to allow non-technical users to participate. Now accepting beta applications.
- Bueller - Offshoot of Jeweler designed to better integrate with Bundler.
- Hubot (Ted Dziuba's Fork) - Rewritten in bash instead of node.js.
- single_instance - Gem to make sure only a single instance of a code block is running (useful for cron jobs that might run long).
- PSA: The number of gems installed on your system can impact rails boot time - Because god forbid Rails, gems, and Bundler should all work right together.
- Implement SPDY Protocol - Looks like Google's SPDY protocol is coming to edge Firefox. "To use it right now you'll need to set network.http.spdy.enabled to true in about:config." Unfortunately, for me at least it also makes edge Firefox rather crashy.
Double Shot #765
I may have to write in a required 24-hour notice of meetings to my standard contract.
- methadone - Framework for writing command-line apps in Ruby.
- CoffeeScript Means Giving Up on JavaScript - An argument that we should all go back to working directly in assembly.
- jQuery flavored CoffeeScript - A quick example.
- Loadtimer: A mobile test harness - Pure HTML way to look at page component load times on any device.
Double Shot #764
The months, they just keep coming.
- SlickEdit for Mac Beta - SlickEdit used to be one of my favorite editors on the PC. It'll be interesting to see how they translate to Mac.
- Behind the Curtain: Grape API Versioning - A look at part of the Grape framework for building restful APIs.
- Recipes with Backbone - Intermediate guide for people who want to get serious about backbone.js.
- Slowy app - Connection simulator and bandwidth limiter to let you see how your code behaves on suboptimal connections.
- Move the Web Forward - Link-filled site that gives you a raft of ways to get involved with the web development community.
Double Shot #763
- nO_op - "Judgmental tap" for Ruby. Deserves a place in ActiveSupport.
- US judge orders hundreds of sites "de-indexed" from Google, Facebook - Might as well have been headlined "US judge is clueless about the Internet." Stuff like this makes me think that within five years I'll have migrated all servers and services I depend on to some other jurisdiction.
- Capified: Painless Deployment for Free - A basic Capistrano tutorial. If you're looking to extend cap, check out rubaidhstrano and superdeploy as well.
- noeqd - Slightly-less random GUID generation - yes, there are reasons you might want your GUIDs to be sortable.
- Alfred 1.0 is here! - The task launcher (and more) that I'm using now hits a milestone. Definitely worth paying for.
- Getting Started with Sass - A fairly deep dive, for people who already know CSS.
- The State of Ruby ORM - A quick look at the leading contenders, with some thoughts about the future.
Double Shot #762
Ready for the end of the month. Oh wait, that just means the start of another month.
- Whittle - Pure-ruby LALR(1) parser. Nifty even if it is something I hope I never need.
- Method chaining and lazy evaluation in Ruby - A straightforward tutorial.
- Doorkeeper - OAuth2 provider for Rails, still a work in progress.
- Python Ecosystem - An Introduction - If I was going to switch to Python, this looks like a quick way to get the lay of the land.
- YaCy - Decentralized open source search engine. A valiant quixotic effort.
- Watch a VC use my name to sell a con - I've been through the "work insane hours, sleep under your desk" phase myself. Didn't get me jack shit in the long run.
- Asciifi - Browser-based image-to-ASCII conversion. Pretty darned fast, too.
Double Shot #761
4AM really is the best time to be awake in the suburbs.
- PageKite - Another service to make a personal server available to the wide wide Internet.
- fancyBox 2 - Complete rewrite of this jQuery plugin for image zooming with new features and a new (non-commercial) license.
- hub - Gem that wraps git in GitHub-specific functionality (like cherry-picking from GitHub URLs).
- Relish - Online "living documentation" by organizing and prettyfying your app's Cucumber features.
- Dillinger - Open source cloud-enabled HTML5 Markdown editor.
- Firebug 1.9b2 - New beta for your debugging pleasure. My experience with Firebug betas is that they've been very stable, so give it a whirl.
- rails_mongo_blank_project - A quick start with Rails 3.1, MongoDB, MongoMapper, Devise, CanCan, OmniAuth, and Twitter Bootstrap.
- Moxy - "Programmable mock proxy", that is, a Rack-based server that lets you tell it what to return for testing purposes.
- Felix's Node.js Guide - Lots of material here, including a beginner's guide and a style guide.
- snowday - Test result formatter for RSpec featuring snowmen.
- Jenx - OS X monitor for Jenkins with Growl integration.
- Direct Post Method - Authorize.Net's equivalent to the Braintree transparent redirect.
- Debugging with Pry - A technique I keep meaning to learn. Pry is also usable within Rails.
- powser - Browser-based UI to the powder CLI to manage the Pow web server.
- Tasks - Review of to-do apps that run on IOS/OS X. Tempts me to go back to OmniFocus again, but…this piece of paper is doing pretty well for me right now.
- Choices to make in a new Rails project - My own opinions. How about yours?
- Firefox - tons of tools for web developers! - A list of extension goodies.
- JSON Builder - Gem solution similar to the existing XML Builder in Rails.
My Tools of the Trade - 2011
I posted this list in mid-2008 and updated it in late 2009. So it's overdue for an update. Here are the tools I tap most often these days in building web sites and doing my other work.
Hardware
My desktop box is overdue for an upgrade, and I'd like to treat myself to an upgrade, but I can't quite justify the cost yet. On the other hand I have added a couple of other Macs in the past two years, so I haven't exactly been skimping. I do the bulk of my work on a 4-core Mac Pro with 24GB of RAM, a 100GB SSD, a 240GB SSD, and two 750GB hard drives, as well as external 500GB and 1TB drives. While the Mac itself came direct from Apple, most of the extra bits did not. I've never complained about spending money on upgrades that make me more effective, but compared to the competition I find much of Apple's peripheral lineup overpriced. So apart from the core box I have:- Extra RAM from Crucial. I've never had a problem with them, and these days they even have a system scanner for Macs that makes finding the right memory sticks painless.
- The SSDs are both Mercury Extreme SSDs from Other World Computing. So far they've been extremely reliable. I keep my home and apps on the SSDs and data on the hard drives for the most part. Makes a world of difference in application launch times.
- Both hard drives are Seagate drive sourced from NewEgg. There are cheaper sources for drives, but NewEgg's service has always done right by me in case of problems. I've probably used every major manufacturer of hard drives over the past 2 decades, and Seagates have consistently been most reliable for me.
- The 500GB external drive is a G-Drive from G Technology. Their pricing is better than some of their better-known Mac competitors, and it's been quietly reliable.
- The 1TB external drive is a LaCie Quadra purchased from Amazon. It's had some issues - in particular, the connection between the power supply and the drive is flaky - but I only use it for Time Machine so it's acceptable.
- Dual 24" monitors from Dell. Apple's Cinema displays are prettier, but I'm not willing to pay that much for pretty.
- Matias Tactile Pro 3 keyboard. The stock Mac keyboard is crap (as are just about all stock keyboards these days). I type faster and more accurately on a keyboard with good click and spring feedback, and this is the best I've found for the Mac - nearly as good as the Unicomp keyboards for PCs. This is my second Tactile Pro, and I'm happy to say it fixed all the issues I had with their 2.0 version.
- Logitech Cordless Trackman Optical trackball. The stock Mac mouse is also crap. I've also found over the years that I have a lot fewer RSI symptoms with trackballs than with mice. I do switch back to the stock mouse on those rare occasions when I have finicky photoshop work to do. I used an Evoluent VerticalMouse for a while, and liked it, but it broke after a few months and I wasn't inclined to spend the money again.
- Fujitsu ScanSnap S510M desktop scanner. This has finally let me get to a near-paperless office. It's showing its age a bit - the paper feed jams on large stacks - but it's still essential.
I also own three other Macs:
- A 17" MacBook Pro with 8GB of RAM for the rare (these days) times that I travel. As with the desktop box, the extra RAM came from Crucial. There's a random Chimei external 22" monitor to give it additional screen real estate, and a Logitech VX Nano wireless mouse, which is a fabulous little device that appears to have been discontinued.
- A 15" MacBook Pro with 3GB of RAM. This was my old travel box; I now use it to record screencasts.
- A Mac Mini with 8GB of RAM (yes, also from Crucial). I just picked this up a couple of weeks ago to serve as a continuous integration server, and it's happily chugging along in my garage.
Backups
I use a multi-tiered backup strategy:
- The second 750GB drive in the box mirrors the first. This gives me reasonably instant protection against a single drive failure.
- The external 500GB drive holds nightly SuperDuper backups. This gives me protection against complete computer meltdown.
- The external 1TB drive holds Time Machine backups. In my experience, Time Machine isn't 100% reliable, but I don't need to recover accidentally deleted files often so it's worth filling otherwise-unused space with its work.
- Servers at Amazon S3 hold yet another backup of my most critical files via Jungle Disk. This is my "in case of house fire" backup.
- I use Dropbox to mirror code and documents across the desktop and the laptop. It works great, and gives me yet another layer of redundancy for things like my open-source projects and customer code.
Yes, it seems like an absurd number of copies of data. But over the years I've learned that combined failure modes can take out more copies than you might think. Apart from the recurring Amazon S3 charges (about $20 per month) all that went into this was one-time costs and a tiny bit of configuration time. It's cheap insurance.
Software
I use a lot more software than this, so I'm only listing the ones that are most-used and that have a direct impact on my development (or that I have otherwise strong opinions about).
One thing you won't find here is a to-do manager. I've tried to manage tasks with iCal, PostBox, OmniFocus, The Hit List, Things, TaskPaper, Remember the Milk and a few more. In the end, they all make me focus more on fiddling and less on actually getting things done. Now, I just use a paper notebook that sits on my desk.
-
Firefox - I live in the browser - and the browser I live in is not Safari (and not, for the love of God, in Internet Explorer). I use Safari and Chrome when I'm developing browser extensions, but almost never otherwise. These days I'm running Firefox 11.0 alpha builds and finding them fast and reliable. The wealth of extensions for Firefox easily tips the balance for me. Among my most-used addons:
- 1Password - With the number of sites I use these days (that's another discussion), password management is a necessity. Though I'm leery of locking up passwords in a proprietary database, synchronization with their online My1Password service removes some of the worry for me. I'm starting to look for alternatives here, though; recent 1Password addon builds have taken a huge step backwards in usability as far as I'm concerned.
- Adblock Plus - The main reason the internet is littered with ads is that everyone is playing "emperor's new clothes" and doesn't want to admit that they don't work. Soon enough the entire model (and Google's share price with it) will collapse. Meanwhile, I don't feel any ethical duty to look at them or let them take up my bandwidth.
- CS Lite - Everyone can use a cookie manager. This is the one that I like.
- Firebug - If I had been using any other browser, this would have been enough to make me switch to Firefox. HTML, CSS, and JavaScript debugging rocks. I still find it more usable than the similar tools in Safari and Chrome, though the gap has narrowed in the last year or so.
- Ghostery - Web bug and tracking detection and blocking.
- Greasemonkey - I only run a few Greasemonkey scripts, but when the design or layout of a particular site pisses you off, it's the easiest tool to reach for.
- HashColouredTabs+ - If you want to faviconize tabs from sites that don't supply favicons, this is an easy way to make them more visually recognizable. One tip: make localhost:3000 something like a red circle so you never again mistake it for a production site.
- NoScript - JavaScript and Flash blocking by default. I sleep a lot more easily knowing that random sites can't just serve random JavaScript to my computer.
- QuickDrag - Mouse-gesture searching. Saves me ten seconds at a time a dozen times a day.
- Web Developer - Thanks to Firebug, I don't use this nearly as much as I used to, but there are still tools here (like outlining tables and cells) that come in handy. Add-on Compatibility Reporter - A necessity when running nightly builds, this one also lets you install extensions that haven't been marked as compatible yet.
- TextMate - I used to be a heavy-duty IDE user, but that was back in the old days. With Rails, I'm much happier close to the code, in a text editor. This is the text editor to use. I've tried a couple of the IDEs out there - RubyMine seems to me to be the best of the lot - and haven't found any reason to switch to them. I am decidedly not a vi/vim/emacs person.
- Vienna - I am a heavy, heavy RSS consumer. There are not many clients that work when you get up into the hundreds of feeds and hundreds of thousands of stored items. I've been using Vienna for a couple of years now. It's still under active (though somewhat slow) development, which is a plus.
- Twitteriffic - I've recently returned to Twitter, but I still think the web user interface is pitiful. Fortunately, thanks to desktop clients, I don't need to put up with it. I used TweetDeck for a while, but these days I obsess less over the whole Twitter thing.
- Postbox 3.0 Apple's built-in mail.app drives me nuts; I finally gave it up entirely and switched to Postbox, which does a much better job of searching and presenting my mail. It's not perfect, but it works for me.
- iTerm2 - In Windows, I tried to avoid the command line. In OS X, I embrace it, often having half a dozen ssh sessions running at once. Perhaps I've matured. This year I switched from the build-in OS X Terminal to iTerm2, which looks nicer and makes it easier to script a bunch of stuff to launch whenever I start up the machine.
- MarsEdit - I do a fair amount of blogging. I can't say I'm in love with any of the desktop clients, but I'm at least in like with this one. It beats the hell out of WordPress eating yet another post.
- Navicat Premium - None of the cheap or free database clients for OS X come anywhere near Microsoft's tools in terms of functionality and usability, but Navicat is not bad (it's also not cheap). I've upgraded to the Premium version because it supports both MySQL and PostgreSQL.
- CSSEdit - CSS editor that simply blows away the competition. I never found anything even remotely comparable for Windows.
- EagleFiler - OS X has way too many applications for organizing heaps of miscellaneous information and documents. This is the one I use.
- Changes - Paying for a diff/merge application seems absurd, but I like the looks and functionality of this one. And no, I don't really need all the extra features in Beyond Compare.
- GitX (L) - Native OS X GUI for git repositories. I don't use its commit features, but I am constantly in its browse view.
- OmniOutliner Pro - My brain often thinks in outlines. This makes them prettier.
- xScope - On-screen design and layout tools. The radar/lasso dimensions tool is the killer here.
- Pixelmator - Graphics apps are another area where OS X is oversupplied. I use PhotoShop (grudgingly) for heavy lifting. Pixelmator is the one that I reach for for light editing.
- Transmit - My FTP client of choice. Yeah, I don't much like the command line or the browser for FTP. It's all about shaving seconds off my thinking time.
- Evernote - This is my solution of choice for dumping pointers to things I want to remember, little code snippets, and even photos of the kids. Painless sync to multiple computers is a winning feature, and if they can carry out some of their more grandiose plans it'll get even better. I pay for the Premium level happily.
- Balsamiq Mockups - I don't do a lot of user interface design, but when I do, this is my usual starting point. Having mockups that don't look like a "real" user interface is a good way to keep clients focused on the issues at hand.
- DropSend - Easy way to ship large files around without running into email limitations or having to teach the technically-challenged how to use FTP.
- EditiX - I've had to do a couple of jobs involving heavy XML lately. While XML editors are another area where OS X is far behind Windows, this one is good enough to pay for and use.
- SQLite Manager - Given the ubiquity of SQLite databases these days, I wish there was a really good GUI for them. This one reaches the "nearly acceptable" level.
- Skitch - Easy screenshots with web sharing or drag-and-drop to other applications. Comes in very helpful when you're working as part of a remote team. I paid for a copy before EverNote bought them out and I don't regret it at all.
- Teleport - Mouse and keyboard sharing for multiple Macs. With this installed, I very seldom even touch the laptop keyboard.
- Alfred - My current application launcher of choice. I used QuickSilver for quite a while, but Alfred is under much more active development.
- Charles - Great debugging proxy for the Web. When the FireBug network view doesn't give me enough details, Charles is where I turn to see what's actually going on between my computer and some cantankerous server.
- DaisyDisk - There are a bunch of disk space analyzers for OS X. This is the one I like, both for speed and for looks.
- DropCopy Pro - I've tried a bunch of ways to get clipboards and files easily shared between the various Macs here. This is the one I'm using right now.
- HazeOver - I'm not a big fan of full-screen apps or stuff like Dark Room. But I also like to focus a bit. HazeOver just highlights the current window by slightly fading background windows, which works for me.
- HoudahSpot - Spotlight by itself is pretty awful. HoudahSpot raises searching on OS X to at least "tolerable."
- ScreenFlow - I'm dinking around with some screencasts these days. Maybe you'll eventually see some of them.
- Soulver - Nice little app for messing around with numbers, easier to use than most calculators.
- SyncMate - Best tool I've found for synching my Android phone with the Mac. Not that I'm a big fan of either phones or synching.
- TotalFinder - Tabs and other goodies for Finder. Well-integrated and well-designed, I won't use Finder without this if I can help it.
- Wuala - Secure file-sharing tool that actually does client-side encryption. I use it for sharing things like passwords with other team members.
- Communications - 90% of the time I'm devoting the laptop to nothing but staying in touch with the outside world and team members. This means I'm running:
- Skype - Skype is pretty sucky, especially in the way they make it easy for spammers to interrupt your day. And my hearing loss makes it tough to put up with their poor-quality voice calls (so I refuse to use it for voice whenever at all possible). But it's the choice of chat applications of several of my clients.
- Adium - This is a lifesaver, bringing together my AOL, Yahoo, GTalk and MSN chat accounts into a single UI. I tried their Twitter and IRC integration and didn't much like them, but for the rest it's gold despite the occasional efforts of one server or another to block it.
- Propane - I've got a couple of Campfire chats that I need to monitor occasionally. Propane makes Campfire somewhat less painful.
- Colloquy - No one has really done a killer IRC client for OS X yet. Colloquy is the best I've found. And yes, I've likely tried whatever alternative you were going to recommend. Single-window UI with custom stylesheets and the ability to suppress noise like join/part messages are key here.
Hosting
- PairNic - I've been using Pair as a registrar for roughly forever. They're not the cheapest by any means, but they give me good service and let me manage my DNS, and their tech support has been superbly responsive when I've needed them. Plus they don't waste my time trying to upsell me.
- RimuHosting - Linux servers with root access and the Rails stack preinstalled if you want it. $30-$50 per month depending on your needs. I've got a bunch of machines here at the moment, between my own VPSs and customer ones, and I've used them for physical computers as well. And their customer service is absolutely superb. I can't recommend them highly enough.
- I've also had customers put applications at WebbyNode, Heroku, and RackSpace, and they're all reasonable places to host things.
One of these days I'll update my entry about the various web applications that I use constantly, but this one is already long enough. In the meantime, if you want to post your own similar list, I'd love to know about it - leave me a note in the comments. And feel free to compliment my choices or call me an idiot while you're at it.
(hat tip to Kevin Skogland, for kicking this off in 2008 by posting his tools of the trade)
subscribe via RSS