Ship It! LIVEShip It! LIVE
home about services writing contact

We develop, test, and create fine software products, and design creative solutions to your problems.
The development of software is an intrinsically creative process. We are dedicated to improving our mastery of the art.
Links · RSS Feed
Popular Pages

I was amazed that these five chapters only take about 160 pages and yet tell you all you need to know about successful projects. I’ve experienced a lot of these problems myself, and so did/do you, ...
-Javaddicts.net
...Much like the Mac, this book “just works”, because it takes the best from lessons learned from team leaders and team players and takes the mystery out of the project management processes as appl...
-Robert Pritchett
It's rare to have this much fun reading a book about software. The ideas are smart, relevant, and fundamental. I can be a better programmer today because of the things I read today.
-Joe Fair

Ken Sipe Tonight at AgileRTP: Iteration Zero (Jun 3)
Ken, one of NFJS's best speakers, speaks tonight at Agile RTP. He'll be giving his well-known Iteration Zero talk.

I may not be there (my wife's under the weather), but Ken's a great speaker. If you're in the RTP, NC area, I'd encourage you to come out.

Category: Agile

OTP on Rails (May 27)
Joe Armstrong's blog entry has some great quotes and insights. This type of thinking is exactly why you need to learn another language.

The Road we didn't go down

If you don't learn to think in a language like Erlang, you'll never be able to fully bring those idioms and paradigms back to your day job language. I'm simply repeating the advice of the Pragmatic Programmers from nearly a decade ago, but learn a new language every year.
And as any weightlifter will tell you, if you're not sore when you're done, you weren't working out. You were coasting. No pain, no gain applies to your brain as well as your back. So if you pick a new technology too close to what you already know, it might feel too easy. If so, back up and adjust your technical workout plan. Hit the muscles you haven't used in a while.
Feel the burn! ;)

Category: Erlang

Nginx Logging Format and Awstats (May 24)
When I set up my stats I looked around a few times for some examples and never found anything. I finally got mine working recently, so I posted my formats as much for my own reference as anyone else.

First, this web server is nginx. Changing the log format is trivial. My nginx.conf log_format block looks like this:

    log_format  main  '$remote_addr [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent"';


Then awstats has to consume the log. Of course it doesn't use the same configuration language, but it's not too bad. My awstats.conf looks like this:

LogFormat = "%host %time1 %methodurl %code %bytesd %referer" 


No rocket science here, but maybe it'll save you some time figuring it out for yourself. I haven't run this format long enough to be sure I won't add something to it. If I do, I'll update here.

Quick update, I forgot to add, to get nginx to re-read the config files on the fly, use this:
kill -HUP 1234
where 1234 is your pid. You can have nginx recreate the log files (if you've moved them during your debugging cycle) with
kill -USR1 1234

I pulled the quotes from the return code. doh!

Category: Misc

Trip It is an Awesome Web Site (May 22)
First, Trip It has no relation to Ship It! :) Seriously.

Trip It is a great web site that aggregates your travel itineraries. You can forward them (at plans@tripit.com) your Orbitz confirmation (or hotel reservation or car reservation, etc), and they'll automatically parse it, and put it in your account. They attribute itineraries based on the email account you send the notice from.

The first time I realized this has a "must have" service was a trip to Boston. Someone in Boston wanted to pick me up at the airport, but lost my flight information. While I was in the air, they called my wife, she logged into Trip It and pulled the info. She had my flight number, arrival time, etc.

Then I realized that Trip It also lets you add contacts and shows you 'near misses'. If you and a friend are in the same city, it'll notify you and you can see about scheduling dinner. I'm slowly adding friends and colleges to my contacts. No near misses yet, but I'm still hopeful.

They finally won me over completely when I sent them a format they didn't parse, and they took the time to add in support for an entirely new travel agency. Just based on one user!

They're still in beta, and free. If you do any travel, I highly recommend it. And if you're a friend of mine, add me as a contact. Maybe we'll share a meal in Milwaukee!

Category: Misc

Career 2.0 at RTP JUG tonight (May 19)
I'm giving the Career 2.0 talk tonight at the RTP Java User's Group. It's got a lot of material feeding into the book of similar name.

Please come out and let me know what you think. Here's the description.

Has your career been a random product of your manager's whims or company's needs? Never rely on your company to keep your skills current and marketable. Take control of your own career with a proven strategy. These are solid, repeatable steps to get your career in the trajectory you want. The first step is deciding where you want to go. We'll walk through creating a long-term plan, then break it down into manageable steps. Learn to lead within your own company, then stretch out to your local, regional and national community, building your reputation as you go. From coding to writing to speaking, each step will move you closer to where you want to be: in a position of having options and in control of your career.

A number of people have asked me if the talk is about quitting your job. Absolutely not. It's about keeping yourself up to date so that you have options, inside or outside of your current job.

Category: Misc

Previous page Next page


© 2007 Agile Artisans.