Read my latest article: 8 things I look for in a Ruby on Rails app (posted Thu, 06 Jul 2017 16:59:00 GMT)

Request: Free OSX FTP Program

Posted by Thu, 31 Aug 2006 17:01:00 GMT

19 comments Latest by Danno! Tue, 05 Sep 2006 18:49:06 GMT

Sadly… I do find myself having to connect to a client’s FTP server. I don’t want to do everything from the command line, Finder’s builtin FTP sucks, everything else for the GUI seems to be shareware, and relying on FireFTP to not crash Firefox… you get my point.

Is there anything as simple (and free) GUI FTP programs for OSX?

Agile Interaction Design

Posted by Wed, 30 Aug 2006 18:36:00 GMT

6 comments Latest by Adrian Howard Mon, 04 Sep 2006 17:52:57 GMT

I would like to start some dialogue with all of you…

In a recent post, Jeremy Voorhis said the following about About Face 2.0 in his post announcing his Agile Book Club.

About Face 2.0 isn’t bad; it’s full of some great advice. My biggest gripes with it are the follows:
  • It declares that programmers are just unfit for interaction design.
  • It advocates for waterfall development.
  • Cooper has a defensive tone whenever discussing his beloved discipline of interaction design.
  • The web chapter is dated.
If you can get over all of those things, it is full of great ideas, specifically about working with personas, and data entry and retrieval.

I disagree with a few of these conclusions. In particular, that Cooper advocates waterfall development. I’ve been hearing a lot of developers throw the word, “waterfall” around… but why?

Take the following excerpt from this great conversation between Kent Beck, the father of XP, and Alan Cooper.

“During the design phase, the interaction designer works closely with the customers. During the detailed design phase, the interaction designer works closely with the programmers. There’s a crossover point in the beginning of the design phase where the programmers work for the designer. Then, at a certain point the leadership changes so that now the designers work for the implementers. You could call these “phases”—I don’t—but it’s working together.”[1]

I’m curious as to how anyone would consider this to resemble Waterfall, which might imply that Cooper’s approach to Interaction Design is incompatible with the principles behind the Agile Manifesto.

Dave Churchville posted an article last year titled, Agile Interaction Design?, which discussed how the role of an Interaction Designer (ID) can be compatible with Agile methodologies. “An ID team probably becomes the voice of the customer in Agile methods, and as such should be working closely with the development team as well as the users. In that sense, the ID role may be more of a liaison between customer and developer.”

So, do you think that Interaction Design as described by Alan Cooper… is compatible with the principles of the Agile Manifesto?

UPDATE It looks like this conversation was picked up on the Joel on Software discussion boards.


Knowing Me, Knowing You, part 2

Posted by Wed, 30 Aug 2006 00:16:00 GMT

12 comments Latest by Robert Treat Wed, 30 Aug 2006 19:47:23 GMT

Earlier this month, I posted the first in the series of Knowing Me, Knowing You. In this second post, I would like to take you inside the PLANET ARGON office. More specifically… I would like to list all the books that I found on peoples desks. These aren’t books that are sitting on the bookshelves… but books that are sitting within arms reach of the employees at PLANET ARGON.

Here goes with some links to our favorite Independent bookstore, Powells.

Care to take a guess at who is reading what?

Your Turn

Take a look around your workspace... which books are within arms reach. Right now. :-)

Testing Cookies in Ruby on Rails

Posted by Mon, 28 Aug 2006 12:27:00 GMT

Over the weekend, Brian Ford released a useful plugin for testing your Ruby on Rails applications called, assert_cookie.

Brian likes his cookies…

“I love cookies. There are, of course, tons of varieties and I’m no connoisseur but I love the soft chocolate chip right out of the oven, hot and gooey. But, if you’re like me, you don’t want your Rails code to be gooey.” -Brian Ford

To use assert_cookie, follow these steps.

  1. Install via, script/plugin install
  2. Fill your tests with some cookies
  3. Test your cookies!
Here are a few examples that Brian posted.
  assert_cookie :pass, 
      :value => lambda { |value| UUID.parse(value).valid? }
  assert_cookie :yellow, :value => ['sunny', 'days']
  assert_cookie :delight, :value => 'yum'
  assert_cookie :secret, :path => lambda { |path| path =~ /secret/ }, 
      :secure => true

For more information on other plugins and tools that PLANET ARGON is releasing under open source licenses, visit

Also, be sure to subscribe to Brian Ford’s feed as he says he’ll be announcing more plugins and tips soon. :-)

Have Fun!

Dialogue-Driven Development is about Listening

Posted by Fri, 25 Aug 2006 23:11:00 GMT

3 comments Latest by Stephen Waits Sat, 26 Aug 2006 16:23:04 GMT

I know. I know. I recently wrote that Dialogue-Driven Development was about rounded corners. It just happens that I also think that d3 is more than that. d3 is focuses on the conversations between various stakeholders within a project.

What is dialogue?
an exchange of ideas or opinions on a particular issue, esp. a political or religious issue, with a view to reaching an amicable agreement or settlement1.

What is a conversation?
informal interchange of thoughts, information, etc., by spoken words; oral communication between persons; talk; colloquy2

Let’s focus on a really important side of the conversation, which is the art of listening.

In Information Anxiety 2, Richard Saul Wurman lists five tips for being a better listener.

  1. “Having two ears and one tongue, we should listen twice as much as we speak.”
  2. “Don’t try to formulate your reply when the other person is speaking.”
  3. “The person who starts a sentence should be the one to finish it.”
  4. “Don’t let your fear of silence propel you to fill it with air. A moment of silence can be the most revealing part of a conversation.”
  5. “Remember that listening is not a passive endeavor, but an activity that requires great energy. Try to listen with the same intensity you use to talk.”

The Value in Face to Face

It’s been a while since we at PLANET ARGON have started working on a project that we didn’t get a chance to meet face to face with the client. For projects that we know will involve a lot of dialogue, it’s an absolute must at the beginning of the project. This is exactly why Brian and I fly across the country to meet our clients in person.

Wurman writes, “Time and time again, studies have shown that the best communication occurs face to face.”

“Precision of communication is important, more important than ever, in our era of hair-trigger balances, when a false, or misunderstood word may create as much disaster as a sudden thoughtless act.” – James Thurber

Our team is still shaping how best to encourage and facilitate valuable patterns of dialogue with our clients. One aspect we are certain of is that all interactions should be clearly documented, including the subtleties of body language and how the client’s team works together.

Two Ears, One Mouth

There are many benefits to having two ears. We should all try to listen more. I’ll be the first to admit that this is one of the most difficult things to do, especially when you’re opinionated.

“We have two ears and one mouth so that we can listen twice as much as we speak.” -Epictetus

The next time we find ourselves in the middle of a conversation, let’s try to listen more. :-)



FeedBurner and lighttpd redirects

Posted by Tue, 22 Aug 2006 19:28:00 GMT

3 comments Latest by Shane Vitarana Sun, 27 Aug 2006 23:14:42 GMT

I haven’t been using feedburner to track counts of subscribers to my feed. I didn’t want to tell everyone to switch their feed URL… so I found this solution for handling this transition through Lighttpd.

First, make sure you are requiring the mod_redirect module.

server.modules              = ( "mod_rewrite", "mod_fastcgi", "mod_compress", "mod_redirect" )

Then add the following… to your lighty configuration.

$HTTP["useragent"] !~ "FeedBurner" {
  url.redirect = (
    "/xml/rss/feed.xml" => "",  
    "/xml/rss20/feed.xml" => "",
    "/xml/atom/feed.xml" => "" 

Works like a charm!

Thanks to Damien Tanner for putting me on the right path.

Older posts: 1 2 3 ... 5