Brad Dominy

Selected Work

The following are projects I have written and designed, most of which are based on Cocoa for MacOSX. I have also written AppleScripts and used other languages like Python, PHP, Perl, C, and Java.


I haven't done web work in quite a while, but after moving to San Francisco, the time seemed right to give it a try. My building came with great networking from Web-pass, Inc. and they had no problem with me running my own server over their connection. I set up our Mac mini as an email and web server and used DynDNS to get everything pointing in our direction.

The goals for the site were pretty straight forward. I wanted blogging and a way to showcase some of the work I have done as a developer, along with searching, archiving, and a contact form. It should have a secure administrative interface and be as flexible as possible. A lot of frameworks exist for doing complex websites, but I settled on using Django mostly because there is a large and growing community of developers and the design philosophy behind it is inline with my own. Also, there were lots of examples and tutorials available to help me out.

Django works by defining models for the items you want to show, and then creating views and templates to transform those models into web pages. It creates a administrative interface to manage those models, so once everything is set up adding content is easy. The views and template language let you keep everything very flexible without a lot of code re-use. Templates use inheritance so creating a general look and feel is simple, but as the need arises you can add specific elements, and the flexibility of the system encourages just giving things a try.

One very helpful tutorial was located at WebMonkey. They covered the basics of installing django and setting up a blog, but they also covered more advanced techniques like rss feeds and creating a tumblelog, which I use for the home page. For my portfolio, I came across Wilson Miner's site where he wrote up a guide for using django to showcase websites he had designed. Also, a lot of design ideas as well as some of the cool Web 2.0 features I got from Faruk Ates. There are a lot of really incredible sites out there and people willing to share what they have learned, so hopefully I will be able to give back as well very soon. It took a while to get everything working the way I wanted, but I am very pleased with how all the parts have come together.

Google Onebox Employee Search

Our internal website uses a Google mini for searching. One of the features of the box is the ability to create onebox modules to return specialized results. The technology is based upon XSLT and XML, so the first part was to create a php script that took in a search string and then did a LDAP lookup matching against name, email, phone, and other fields. Any matches are returned as an XML set.

All names and personal info in the above images have been changed to protect the innocent

The second part uses XSLT to transform those results into HTML. We didn't want to clutter up the page with too many results, so I also wrote some javascript code that would hide and show additional results if more than three results were returned. If only one result is returned, we present a full set of information and the employee's image.

About me

Brad Dominy


By Language

By Frameworks