About

James Duncan Davidson is a photographer, author, and software developer based in Portland, Oregon. Long a fan of the Renaissance Man approach to life, he has pursued, and excelled in, a variety of endeavors. Throwing himself head-first into whatever he's doing, he relishes tackling new challenges with the full toolkit of what his experience has given him. Duncan is also sick of writing about himself in the third person, so I'm going to break with About page tradition and switch gears to first person.

damon_quote.png

Photography

Since 2005, I have been working as a professional photographer. It all started with an opportunity to photograph conferences for O'Reilly Media. Since then, I've executed work for Apple, Salesforce.com, Pragmatic Studio, and many other clients.

Until 2007, I balanced my photography with my work as a software developer. However, over the course of the last year or so, I've switched the majority of my work efforts to photography. 

Before shooting professionally, I was an avid travel and landscape photographer and I continue to shoot the world as I travel, including a recent 5 week road trip through the American Southwest. One of the things I aims to do in my travel and landscape photography is document at least a small part of the world as it exists right now in the face of monumental changes of technology, climate, and politics.

Software Development

In the mid-90's, after spending eight or so years in school studying architecture, I turned my hobby of playing with Mosaic and the beta versions of Netscape Navigator into a full time job working the web. At first, I worked with HTML and JavaScript, but then quickly started to work with server-side software technologies to make websites do what I wanted them to do. During this period, I was part of the team that brought up the first versions of the Hilton Hotels website in 1995 and 1996. This site was one of the first that allowed you to book a room using a credit card and check your loyalty status completely online.

j2ee_cover_150h.png

In 1997, I went to work at JavaSoft, part of Sun Microsystems. I started out working on the Java Web Server and then later took on the task of formalizing the Java Servlet specification, including writing a reference implementation he named Tomcat, but which was released as the Java Servlet Web Development Kit.

To aid the process of building Java-based software, I wrote a build tool he called Ant. Yes, the story is true. I coded the essential bits of Ant on two international flights between the US and Europe. I also helped create the Java API for XML Processing. In 2000, my work on the Servlet API was incorporated into the J2EE Platform and Component Specifications book.

Before leaving Sun in 2001, I successfully argued for and managed the donation of Tomat and Ant to the Apache Software Foundation in the form of Apache Tomcat and Apache Ant. Although I'm not involved in the development of Tomcat or Ant anymore, I am incredibly proud that these two pieces of software are in active use by Java software developers all around the world.

Shortly after leaving Sun, I ventured out as an independent software development consultant. I have worked on a number of projects building software for Mac OS X as well as numerous web applications, most recently with the Ruby on Rails framework. 

Software Books

learn_cocoacover_150h.png runningpanther_cover_150h.png

Working with O'Reilly Media and Apple, I authored Learning Cocoa with Objective-C in 2002 and Running Mac OS X Panther in 2003. Both books are now showing their age as Apple has shipped two versions of Mac OS X since their publication. 

In particular, Learning Cocoa uses Project Builder in its examples instead of Xcode. However, the basics remain the same and Learning Cocoa provides a solid introduction to the fundamental principles of developing for Cocoa.

In addition to writing Learning Cocoa and Running Mac OS X Panther, I have collaborated with several different authors on multiple books. In 2003, I collaborated with Mike Beam on Cocoa in a Nutshell In 2004, I co-authored Mac OS X Panther Hacks with Rael Dornfest. In 2005, Jason Deraleau revised the content for Running Mac OS X Panther as Running Mac OS X Tiger. And most recently, in 2006, I contributed a chapter on deploying Rails applications to Agile Web Development with Rails, authored by Dave Thomas.

Currently, I don't have plans to write or contribute to any other software books. However, you never know what the future might hold. Never say never and all that.




Recent Entries

Control Your Autofocus Points
In conversations about multi-point autofocus systems, a frequent question that comes up is, "Why would you want all those points?" The answer is that if you select your point manually, you can use all those points effectively.
Focus and Recompose Exposed
Focus and recompose is a frequently used technique by many photographers. It is often used when a photographer wants to compose their subject in an area of the frame which doesn’t have an autofocus point nearby. It's use, however, is not without risk.
Source of the 5D Mark II AF Angst
There are a lot of people around the Internet that aren’t happy with the specifications of the autofocus on the new Canon EOS 5D Mark II. There are also a lot of people that have chimed in saying that it’s a bit too early to pass judgement. After all, the camera hasn’t even shipped yet.
iPhone Live Conference
O’Reilly has a new conference in the works coming up this November called iPhone Live. I’m sure the Apple NDA will get in the way of some things, but it’ll be interesting to see how it comes together.
Learning Cocoa
Six years ago this month, O’Reilly Media released my book Learning Cocoa with Objective-C. I won't be revising this book, but there are lots of great options coming on the scene, including a new book by Daniel Steinberg from the Pragramatic Programmers.
Digital SLR Video Convergence
The headline feature of the Canon EOS 5D Mark II is certainly its capability for recording video. Thanks to the full frame sensor and Canon’s extensive lens setup, the video can be shot with the kinds of depth of field effects that just, well, awesome to view. This is, however, just one step along a bigger trend line.