Category Archives: Technical

Backup your Gmail

Like all hosted services, you should never depend on one provider to both manage your data and also back it up. I have 15 years of email in my Gmail account (that I migrated from previous providers) and I’d be … Continue reading

Posted in Cloud Computing, Linux, OSX, Systems Administration, Technical | 1 Comment

Storing Git repositories in Amazon S3 for high availability

At VolunteerMatch we’re experimenting with using Chef Solo to manage Amazon EC2 servers. The catch is that if a server is going to rely on Chef to boot up, then the Chef Recipes (which we’re storing in a Git Repository) … Continue reading

Posted in Cloud Computing, Java, Linux, Source Control, Systems Administration | 2 Comments

Acceptance Testing non Ruby web applications with Cucumber

If you’re looking for the sample Standalone Cucumber Test Suite to get you started testing non Ruby based applications with Cucumber, here’s the source: http://github.com/thuss/standalone-cucumber. Sometimes you inherit a non Ruby based web app written in PHP, Perl, Java, C#, … Continue reading

Posted in Continuous Integration, Java, Quality Assurance, Ruby, Ruby on Rails, Testing, Web | 1 Comment

Code readability through conciseness

One of the things I love about newer languages like Ruby and Scala (and to a degree Python and Groovy) are the language features that allow you to dial conciseness up or down for readability. Take for instance the typical … Continue reading

Posted in Java, Ruby, Scala, Software Engineering | 8 Comments

iPhone development the easy way

Update 8/7/2010 PhoneGap apps are still being allowed in the app store! It’s not the right solution for every app (for example we went native with the Common Sense Media app), but I still think PhoneGap is really cool. I’ve … Continue reading

Posted in Ruby on Rails, Software Engineering, Web | Leave a comment

Production MySQL performance tuning

For the past 9 years I’ve been working almost exclusively with MySQL (with a little PostgreSQL thrown in) and while I don’t do nearly as much DBA work these days, I still find myself troubleshooting a query or tuning my.cnf. … Continue reading

Posted in Database, FreeBSD, Linux, MySQL, Systems Administration | Leave a comment

Selenium Continuous Integration Runner

At Common Sense Media I wanted to get some functional testing up and running that didn’t require a lot of user training for the QA folks. I also wanted those tests to run in our Rightscale/Amazon EC2 hosted Hudson continuous … Continue reading

Posted in Agile Development, Continuous Integration, Java, Javascript, Quality Assurance, Software Engineering, Testing | 4 Comments

Standalone Migrations: Using Rails migrations in non Rails projects

Update 8/7/2010: Standalone migrations is now a gem (sudo gem install standalone_migrations) so disregard the outdated installation instructions below Update 7/8/2009: With the latest batch of contributed patches standalone migrations now works just like Rails migrations Update 12/26/2008: I switched … Continue reading

Posted in Database, Java, Linux, MySQL, Ruby, Ruby on Rails | 5 Comments

Moving to 64 bit Ubuntu

After 3 Ubuntu upgrades on my primary workhorse (a Lenovo Thinkpad z61t) I decided it was time for a fresh install to remove all the cruft. In the past I’ve always used 32 bit Ubuntu (even though my laptop is … Continue reading

Posted in Desktop, Java, Linux | 1 Comment

Transcending CSS

Working at GreatSchools we do a lot of CSS work and we have a number of CSS books on our library shelf. However, last month we picked up a copy of Transcending CSS and it’s far and away the most … Continue reading

Posted in Design, Web | 1 Comment