Entries Tagged 'Software Development' ↓

The Technology Cliff: How Time Off From Programming Affects Your Chops

I received an email the other day asking how long it took to get my coding chops back when I moved from management back to development. The author asked:

Once you adopted your ‘Write Code’ mantra, how difficult was it to reverse the ‘management lobotomy’ (an excuse a prior manager had when he no longer could provide detailed technical value). Did you find yourself struggling to get back into ‘for loops’, ‘if statements’, ‘datasets’, and the like?

Continue reading →

Lessons Learned Trying to Scan for Viruses from ASP.NET

Every once in a while I find myself in a conversation about scanning for viruses from code (yes, my life is that exciting). The scenario often goes like this:

A middle-manager, having recently learned about viruses from his son’s copy of Wired magazine, realizes you’re saving user-uploaded files to your web server, and asks if you’re performing virus scans on the uploaded files. You panic, mumble something about how it’s “in the works,” and rush off to look for an open source virus scanning component.

You frantically search Google for “virus scan from [language of your choice]” but the results are dismal. You try 5 or 6 other searches and they all yield the same result: people like yourself asking this same question on forum after forum, with no helpful answers.

A while ago I went down this rabbit trail (sans the middle-manager) trying to scan for viruses from ASP.NET / C#. After working on it for a few days I arrived at the following conclusions:

Continue reading →

Make Your Next Technology Move 10x Easier

Regular reader (and former co-worker from 8 years back) Matt Youell posted the following comment on my post about moving to Boston:

Do me a favor and post on how you move your tech stuff. I just did a modest 600 mile move back in January and it was a pain in the ass. My computers made it intact but then getting set back up, getting services, etc. was a real struggle. Of course I hadn’t moved in almost 7 years, so I was pretty entrenched. I’d love to know how you manage with all your moving.

Matt and I emailed a few more times on the subject, and he brought up some specific problems he ran into during his move that I’ll discuss below. Having moved 9 times in 7 years I’ve gotten pretty good at staying lean in the “stuff” department, and staying mobile with my technology.

Continue reading →

Own Your Own Micro-ISV: DotNetInvoice is For Sale

I write this post with mixed emotions. I acquired DotNetInvoice (an asp.net billing system) 15 months ago, fixed loads of bugs, added 50+ features, provided support, turned the customer base around (they were close to mutiny), and grew revenue by 6x. This program has become part of me as much as any code you work with for over a year. My intent was to turn it into a full-time Micro-ISV, but it appears that life has other plans.

I’ve come to realize over the past year that the time I’ve spent developing and supporting DotNetInvoice (DNI) has virtually replaced the time I used to spend working on my blog. Long-time readers will notice that my posting frequency dropped pretty substantially at the start of 2007 (due to my acquisition of DNI).

Debating this internally for the past several months has forced me to evaluate my goals and plans for the future. Through this I’ve decided to invest more time into growing this blog, and into an opportunity that I’ve been chasing for years (more to come later)…all of this means I have to make sacrifices to create room in my life.

So I’m selling DotNetInvoice.

Continue reading →

Q & A: What Should I Put on My Programming Resume?

I received the following email a few weeks ago:

I graduated with an MIS degree while serving in the Military. I took some programming classes like JAVA, C++ etc… I am now back in Boston, MA and find it difficult to find employment where I can learn to become a better programmer. I don’t have the experience but I am willing to learn. Can you please provide me with some direction on what to say on my resume, to gain the experience in the civilian workforce so I can become a better programmer?

My response:
Continue reading →

Humor: Always Double Check Your Release Notes

Many a moon ago (nearly two years), I had a funny and somewhat sad email exchange with a co-worker named Matt. We had a lot of exchanges along these lines, and in a fashion atypical of this blog I wanted to share this one.

The situation: I made a mistake on a set of Release Notes and he let me know he’d corrected it.

Me: Aaaargh. Sorry about that. Getting sloppy in my old age.

Matt: Don’t sweat it. I’ll send corrections when I come across them. If this was the only thing wrong with any release notes I get, I’d be a happy man.

Me: Thanks…but wait, you forgot the protocol:

Continue reading →

A Fool’s Bargain: Building Software for Free (or, An Idea Ain’t Worth Squat)

I received this email the other day:

I’m looking for a software developer to build a simulator program.

Payment would be made from revenues after the product is available and producing revenues. The estimated market for this product is 100 million users with a target price of $50 per unit. After all your development costs have been covered from revenues, we would then share the proprietary rights to the product and net revenues on a 50/50 basis.

Are you interested in continuing?

My reply:

Continue reading →

The Fallacy of Management

In case you missed Gates VP’s comment about The Fallacy of Management on my recent post Q & A on Leaving Management for Development, I’ve re-printed it below:

===

I have a working theory that I’ve titled The Fallacy of Management.

The basic definition is that current managers would have us believe that the work they do is the very reason for project success and therefore they believe (and have convinced others) that their’s is the most important role.

The real truth is that most managers are just overhead, projects would likely self-assemble without them, especially with good devs on the job. However, companies do things like targeting management for bonuses and taking other steps to make management a “position of privilege.” The truth is, good managers don’t deliver projects on time, good programmers deliver projects on time and managers just guide the process.

Continue reading →

Q & A on Leaving Management for Development

I’ve received several emails about my post Why Good Developers are Promoted Into Unhappiness. One reader asked some interesting questions on his quest to decide between development and management.

Here are some excerpts from our conversation:

Q: Does leaving management for coding greatly cut your salary?
Going back to coding may cut your salary, but it’s quite possible it will not. In my case, the first time I went from management to coding I was fortunate enough to move into a higher paying development position. The second time I didn’t receive additional money for my “promotion” into running a development team, so going back required no monetary sacrifice.

Continue reading →

A Conversation with Joel Spolsky

I relocated from Los Angeles to Connecticut a few months ago, and a few of my geekier friends joked that I had to meet Joel Spolsky and Paul Graham before I came back to California.

Joel is in the midst of his 21-city FogBugz World Tour and one of his first stops was in New York City, where I saw him demo FogBugz 6.0 two weeks ago. In fact, in the picture at the top of Joel’s post about the session, you can barely see my head peeping out over the guy with the black shirt and white stripes on the left side. Those stinking paparazzi never leave me alone.

FogBugz 6.0
The demo went well; it wasn’t spectacular, but it was a good 40-minute overview of FogBugz’s main components: a wiki, forums, bug tracking, and scheduling. But it didn’t need a big flashy presentation – the application itself is seriously impressive.

Continue reading →