This Site Is Such a Hack

Hacking in a suite at clarionPhoto © 2010 Johan Nilsson CC BY-NC 2.0

Hacking in a suite at clarion
Photo © 2010 Johan Nilsson CC BY-NC 2.0

I’ve been wanting to set up a software-development blog for some time. And for some time I’ve been wrestling with the pains of managing multiple WordPress blogs. Back in the day, when I had just my writing blog and a LiveJournal, it wasn’t such a big deal. Since then, I’ve retired the LiveJournal—sorry, LJ friends—and have set up a number of other WordPress sites, for different niches in which I write. In particular, I have a personal blog, a political blog (because I decided I should not pollute my personal blog with political posts), and now a software-development blog (which you are currently reading).

When I spun off the political blog, I got a taste of what it meant to migrate posts from one WordPress instance to another. And my experience with this SD blog was ten times worse, because there were 10 times as many posts involved.

The short version of the story: WordPress is broken, and it will always be broken.

The long version of the story… is a little more of an acerbic joke. Continue reading

Posted in Uncategorized | Tagged , , | 2 Comments

State-of-the-Art Computer Folklore (part 5)

Photo © 2011 Giuseppe Savo CC BY-NC-ND 2.0

This is part 5 in my series of how the Mac reminded me why I fell in love with software development, and why it still matters.

While reading Andy Hertzfeld’s anecdotes (and those of his colleagues) of designing the original Macintosh computer, I was inspired, inspired to take account of my own passions, the passions that these stories reminded me of. Today, I continue that list:

  • I love to create new patterns. I love solving problems through discovery, inventing that which has never existed before. (From part 1.)

  • I love applying principles in new ways. I love working with abstractions, and turning them into concrete expression. I love challenging the status quo, breaking through the limits of what everyone else says is “possible.” (From part 2.)

  • I love achieving status through collaboration, which is compassionate conflict. I am not a baboon. I do not achieve a sense of status by beating up (literally or figuratively) on my colleagues and friends. But I do expect to be recognized for the ideas I bring to the table, and I want to be taken seriously. (From part 3.)

  • I love moving in the right direction. I believe in making the world a better place, one step at a time, and that helps fulfill my need for purpose. Whatever I work on, it’s more than the work itself; it’s also how that work changes the bigger picture. (From part 4.)

  • I love taking time to think, time to learn. A relatively small portion of my day is normally spent actively producing output, whether writing or developing software.

Continue reading

Posted in Uncategorized | Tagged , , , , , | Leave a comment

State-of-the-Art Computer Folklore (part 4)

“I want to believe.”
Photo © 2008 Sunny Ripert CC BY-SA 2.0

This is part 4 in my series of how the Mac reminded me why I fell in love with software development, and why it still matters.

While reading Andy Hertzfeld’s anecdotes (and those of his colleagues) of designing the original Macintosh computer, I was inspired, inspired to take account of my own passions, the passions that these stories reminded me of. Today, I continue that list:

  • I love to create new patterns. I love solving problems through discovery, inventing that which has never existed before. (From part 1.)

  • I love applying principles in new ways. I love working with abstractions, and turning them into concrete expression. I love challenging the status quo, breaking through the limits of what everyone else says is “possible.” (From part 2.)

  • I love achieving status through collaboration, which is compassionate conflict. I am not a baboon. I do not achieve a sense of status by beating up (literally or figuratively) on my colleagues and friends. But I do expect to be recognized for the ideas I bring to the table, and I want to be taken seriously. (From part 3.)

  • I love moving in the right direction. I believe in making the world a better place, one step at a time, and that helps fulfill my need for purpose. Whatever I work on, it’s more than the work itself; it’s also how that work changes the bigger picture.

Continue reading

Posted in Uncategorized | Tagged , , , | 1 Comment

State-of-the-Art Computer Folklore (part 3)

This is part 3 in my series of how the Mac reminded me why I fell in love with software development, and why it still matters.

While reading Andy Hertzfeld’s anecdotes (and those of his colleagues) of designing the original Macintosh computer, I was inspired, inspired to take account of my own passions, the passions that these stories reminded me of. Today, I continue that list:

“The Team Pair-programming”
Photo © 2005 Michael Caroe Andersen CC BY-NC 2.0

  • I love to create new patterns. I love solving problems through discovery, inventing that which has never existed before. (From part 1.)

  • I love applying principles in new ways. I love working with abstractions, and turning them into concrete expression. I love challenging the status quo, breaking through the limits of what everyone else says is “possible.” (From part 2.)

  • I love achieving status through collaboration, which is compassionate conflict. I am not a baboon. I do not achieve a sense of status by beating up (literally or figuratively) on my colleagues and friends. But I do expect to be recognized for the ideas I bring to the table, and I want to be taken seriously.

Continue reading

Posted in Uncategorized | Tagged , , , , , , | Leave a comment

State-of-the-Art Computer Folklore (part 2)

This is part 2 in my series of how the Mac reminded me why I fell in love with software development, and why it still matters.

Remember 5¼″ floppy disks? And full-height floppy drives?
Photo © 2010 Rostislav Lisovy CC BY-NC-SA 2.0

While reading Andy Hertzfeld’s anecdotes (and those of his colleagues) of designing the original Macintosh computer, I was inspired, inspired to take account of my own passions, the passions that these stories reminded me of. Today, I continue that list:

  • I love to create new patterns. I love solving problems through discovery, inventing that which has never existed before. (From part 1.)

  • I love applying principles in new ways. I love working with abstractions, and turning them into concrete expression. I love challenging the status quo, breaking through the limits of what everyone else says is “possible.”

Ha! Continue reading

Posted in Uncategorized | Tagged , , , , , | Leave a comment

State-of-the-Art Computer Folklore

1984 Macintosh © 2011 Steve Garfield CC BY-NC-SA 2.0

1984 Macintosh
© 2011 Steve Garfield CC BY-NC-SA 2.0

A couple weeks ago, I was reading through Andy Hertzfeld’s anecdotes at FolkLore.org, about how he and his colleagues developed the original Macintosh. These stories brought me back, first to nostalgic times, then to a nostalgic purpose. I remembered all the reasons I first fell in love with software development, many of which are also true of my writing, and I finally understood what I would need in order to rediscover that lost love.

(He’s also collected these stories in paperback: Revolution in The Valley: The Insanely Great Story of How the Mac Was Made.)

The Macintosh was originally a tiny research project tucked away in a corner of Apple, still riding off the success of the Apple II home computer. The project was always up for being canceled, but the people working on it believed in it, and believed that it would change the world. They were bringing features years ahead of their time to a “low end,” common man’s computer, inventing new technology in the process.

I started a list: Continue reading

Posted in Uncategorized | Tagged , , , , , , | 3 Comments

Depression and the Software Developer: Smiling in the Piss Pot

Happy Smiley Face from Urine Samples
Photo © 2011 epSos.de CC BY 2.0
Click here for original image.

Developing software is supposed to be one of the best jobs available, because it uses creativity, and it requires professional independence. And those software jobs are out there. But some of us are not currently working one of those jobs.

In early 2009, I wrote a post entitled “7 Best Things About Being a Consulting Software Developer.” In that post, I talked about how the world does not end just because I had one really, really bad job (or a whole string of them, as the case was). I should have listened to myself. That project I talked about in that post was the NOKWID project, which I told about in the previous part of this series. (So named because No One Knew What It Did.) This is the project that threw me into a deep depression, a hopeless depression, the straw that broke this camel’s back, which no amount of positive thinking could make up for. Continue reading

Posted in Uncategorized | Tagged , | 2 Comments

Software Development: a Love-Hate Relationship

Photo © 2011 Dennis Skley CC BY-ND 2.0
Click here for the original photo.

I wasn’t intending to post anything today. But catching up on blog comments, I read a comment thread between Darryl (whom I don’t think I know) and David (whom I do know, in real life), comments on a post about what’s wrong with the software industry.

And I began writing a short follow-up to their comments. And I discovered that I had used up over an hour, and it was turning into a 500-word post of its own– I so miss writing! But I also am discovering that I still love software development, when it’s done right. Continue reading

Posted in Uncategorized | Tagged , | 1 Comment

Depression and the Software Developer: The Last Straw (Conclusion)

Photo © 2007 Jason Eppink CC BY-NC-SA 2.0

Another part of this series of posts, “Depression and the Software Developer.” This latest story I started on Monday, part 4 of “Depression and the Software Developer”.

[Note: You can read the story from the beginning in order to catch up.]

No client or employer will ever admit to you that he doesn’t want to deal with reality. What he really wants is for you to just deliver what he needs, with zero effort on his part, in zero time, for zero dollars. If he gives you any more than that, it is only in grudging acceptance of the fact that you are not the omnipotent God. But a surprising number of project managers still act as though developers are superhuman, even if they accept that we are not divine. And a surprising number of developers are willing to accept that they are superhuman, even if they can’t deliver the actual goods.

And that was the case with this project. So I had no idea what made up the NOKWID feature that I was supposed to be developing (called NOKWID, because No One Knew What It Did), and Pointy-Hair 1 (the developer-turned-manager) and Pointy-Hair A (the manager-turned-developer) both seemed to be going out of their way to keep me in the dark.

If I were a voice talent, it would be like giving me a stack of ill-digested notes scribbled on sticky pads and saying, “Okay. Here’s the voice-over script. We need this by Thursday. When can you have it recorded?”

Needless to say, it stressed me out. Continue reading

Posted in Uncategorized | Tagged , , , | 13 Comments

Depression and the Software Developer: The Last Straw

Photo © 2007 Jason Eppink CC BY-NC-SA 2.0

Here’s a story I’ve been keeping on the back burner for almost a year now. I haven’t published it until now, because it still hit too close to home. But this week, I’ve scheduled an interview with Sharon Cathcart, author of In the Eye of the Beholder, which I am currently reading, and a memoir Les Pensées Dangereuses. And parts of her story reminded me of certain elements of my story.

This is the story of the software-development project that plunged me into a deep depression (a continuation from part 3 of “Depression and the Software Developer”).

[Note: You can read the story from the beginning in order to catch up.]

It was only a couple months long, but it was the straw that broke this developer’s back. It was the project that made me realize how much I enjoyed making a difference, as I did in my first job after college. It made me realize how important it was to make a difference, rather than just being a cog in a useless, corporate, perpetual-motion machine. Most development managers simply don’t know how to let their developers make a difference, possibly because they’ve never known themselves what it feels like. And to this day, the memory of this painful project keeps me from taking the software-development industry seriously.

The project itself wasn’t that bad. I joined it as a consulting developer, along with a couple other consulting developers. The client had been desperate for short-term help, and I took on the project as a favor for a friend, who was already hip-deep in it. They were also on a limited budget, and so I offered a reduced rate, again as a favor to my friend. That was Idiotic Decision #1. Continue reading

Posted in Uncategorized | Tagged , , , | 5 Comments