Dirk Bergstrom
I am a professional computer geek and programmer, available for in-person gigs in Silicon Valley, the closer to Mountain View the better. I consider myself a software “craftsman” rather than an “engineer”, in that I strive to produce polished, simple, minimalist, effective and carefully built code rather than concentrating on explicitly technological solutions. I learned my trade on the job, by working with senior programmers and by reading and trying to emulate the code in successful open source projects.
Python is my current language of choice and my primary focus is web applications and data analysis & presentation; I’m also fluent in Javascript, SQL, and shell. I have skill and experience with the entire development process from server configuration to end user support. If you need an application built, fixed or improved, I can probably do it.
In 2009/2010 I developed a password safe app for Palm’s webOS platform. I put out roughly one release per month between September and February, and at its peak I had about 1500 users (and then Palm went under). The project is open source so you can see the quality of my work: I use version control and bug tracking, and I interact well with users.
Computers are my third career; previously I was a corporate librarian and before that a bench chemist. To get an overview of the whole story, read my resume.
I believe in…
- Short release cycles
Implement, communicate, improve, iterate. When the cycle is short users spend less time living with bugs and without features, while developers maintain familiarity with the code in question. - Direct communication with the end user.
It’s much easier to build software that delights the user if you can talk to them. - Avoiding expedient solutions. The long-term effects of short-term solutions are debilitating to morale and productivity. “Right. Now.” versus “Right now!”.
- “Reality-based” prioritization & planning
Make decisions based on data from metrics & instrumentation. - Source control, bug tracking, code reviews, coding standards and
comments.
“Best practices” don’t guarantee the best product, but it’s damned hard to build anything worthwhile if you skimp on them.
I’m not interested in…
- PHP
The language, standard library and much of the userbase worship at the altar of expediency. - C / C++
Memory management and bit-bashing are exactly the sort of difficult, fussy and tedious work that computers were designed to save us from. - Financial, Medical, HR or other legally sensitive data
I find Sarbanes-Oxley, HIPAA and the looming threat of humorless government investigators stifling. - DRM
Cory Doctorow’s 2004 speech still holds true. - A management position
I’ve been a manager (a fairly good one, I’m told) but I find hands-on work more rewarding.