The following email went out at the office: Please stop by and say hello to our newest Project Manager Skip Intro [names changed to protect the guilty]. He is a great person, lives in [a nearby city], tons of experience, and has two black labradors. What more could you ask? Leicester Dedlock Director of Project Management What more could I ask?! We’re hiring project managers and can’t think of anything more to ask them than what kind of pets they have? This explains a lot . . . Thus spoke The Programmer. Related Links Hiring the Best Explained Guest columnist: Céline Read more →
Author Archive: The Programmer
Take a Hike!
According to the email, our (former) COO “is no longer with the company in any capacity.” There’s a phenomenon at our company, of which he was a perfect example: People get excited and animated about a variety of things — their cars, their pets, a TV show, binge drinking, etc. — but never, never about their jobs. In his case, the favorite topic was hiking. Since we’re in the winter months now, you could frequently hear him among the cubicles elucidating the finer points of crampons: “The thing about crampons is you have to be careful where you put your feet. It’s not like walking around the living room in a pair of loafers.” I did not know that! Of course, if I were interested in crampons, which I’m not, I could research them on my own time. I would have much rather overheard him saying something like “I read… Read more →
Radical Notions Debunked!
The big controversy at the office this week was a “radical” idea offered by one of our developers regarding data collection with a series of web-based forms. The idea was that rather than just pouring the data into a relational database like everyone else does, we’d build up an XML tree, essentially a gigantic (in this case, ~200K) string, and pass that around from form to form. The advantages of this, if I understood correctly, would be to simplify the data model design and eliminate the need for table joins. Of course, it also violates every known rule of efficient data access and ratchets up the processing requirements by several orders of magnitude, but that didn’t stop one of the development managers from throwing his full-fledged support behind it. I TA’ed undergraduate software engineering classes for a year at USC, and every so often an underclassman would advance some… Read more →
Who Wants to Be a Salesman?
Our new Sales VP came down from his office on the 7th floor to the development area on the 4th floor. He was gripping and waggling a golf club, a driver. As you might imagine, we don’t have a golf course on the 4th floor — so why is this jackass holding a golf club? Does he want to be a golfer? Could we possibly find a salesman who wants to be a salesman? Not coincidentally, our booking of new business since his arrival has been nonexistent. He only seems to be able to keep one piece of information in his head at any given time — and usually that piece of information is his next tee time. We got an email from him the other day stating that anyone who brings in a qualified sales lead that is subsequently closed and billed will be paid $1,000. Honestly, if I… Read more →
A Bad Review
Resemblance to persons living or dead is statistically probable. Name: Snopes, Flem Title: Software Development Manager Developing Others Flem was not effective in giving team members an opportunity to be successful or to do high-quality work. The project development process was limiting and frustrating. Rating: Did Not Meet Expectations Integrity Good work ethic. Big problem here is that Flem didn’t seem to see how poor project outcomes were a direct result of anything he did or didn’t do. He seemed to feel that he was a victim primarily of bad technology, as well as bad clients, bad luck, bad karma, etc. And while there were some unavoidable setbacks on the project, as there are on any project, Flem didn’t seem to see the human decision points in the process where he could have made a difference. Rating: Met Some Expectations Change Management Flem was slow to react to changing circumstances.… Read more →
Profiles in Management: The Intrepid Imbecile
We have some vending machines at our office, in a small alcove off the development area — the kind that have the snacks lined up between spiral rods, so when you buy something, the appropriate rod rotates and the snack drops down for you. This is obviously a horrible design for a couple of reasons: I don’t want my M&Ms dropped from a height because it breaks them; and Sometimes the packaging of the snack gets hung up on the rod and the snack doesn’t drop. When that happens, the victim usually rocks the machine back and forth trying to dislodge the snack. This often works, but not on the first couple of tries. It also makes an incredible racket. I’ve heard that vending machines are extremely top-heavy and tip over easily, but so far — despite my fervent hope that someone will be mashed flat as a lesson to… Read more →
N-Tear Development
And there was sadness round, and faces bowed, And woman’s tears fell fast, and children wailed aloud. — William Cullen Bryant, “The Old Man’s Funeral” On any software project, the development time and cost, as well as the amount of weeping and gnashing of teeth, will increase geometrically with the number of abstraction layers. That’s why it’s called “n-tear development.” Thus spoke The Programmer. Read more →
Integration Chickens
Men at some time are masters of their fates: The fault, dear Brutus, is not in our stars, But in ourselves . . . — William Shakespeare, Julius Caesar, Act I. Sc. 2 The Programmer finds that the integration chickens have come home to roost . . . I remember when Vignette first arrived at our company and the people who had made the decision to buy it would show up at meetings in their complimentary Vignette polo shirts and explain that the project was going to be delayed just a bit more because they still couldn’t work the bugs out of the Vignette installation — but hey, willya look at these free shirts we got?! Well, we’ve been trying to work the bugs out of it for three months now, and to integrate it with IBM’s WebSphere for a client project. We tried Vignette 5.5 with WebSphere 5.1, which… Read more →
Profiles in Management: The Protector
Cast of Characters Manager, the leader of a software project that is floundering because his needlessly complex design cannot actually be implemented. Programmer, a programmer on the project. Manager: Keep working hard, and I will protect you should things break down. Programmer: Protect me from what? That sounds kind of ominous. Manager: Some people may be worried that if the project fails, they may get a bad review, or not get a bonus. But I’m looking at whether or not people are working hard, even if the project isn’t going well. So as long as you’re not goofing off, and you don’t have a bad attitude, you should be all right. A “bad attitude” in these cases is defined as pointing out that 20 people have been working on the project for two months without producing a single working line of code, because they’ve been asked to yoke… Read more →
Lead Web Developer: No Experience Required
Who’s TheMan? I’d never heard of TheMan.com until yesterday, when I read that the site had shut down, and replaced what I assume must have at one time been content with the resumes of its out-of-work former employees. You can get a good feel for the company from this Sept. 27, 1999 Time magazine article. Cringe in horror as moronic 27-year-old CEO Calvin Lui closes meetings by barking “All right, dudes, let’s rock and roll!’ Gasp in amazement as he draws analogies between TheMan.com and one of his former employers, the Walt Disney Company! “This could be a major, major public company,” he says. Not a major public company, but a major major public company! Feel his soul-stirring passion to recruit “the A people” for”‘below-average salaries”! Lui was right about one thing though: “I understand that right now we’re a zit compared to everybody else. But in a year, we’re… Read more →
Action is Eloquence
Action is eloquence. — Shakespeare, Coriolanus Vicious, despicable, or thoroughly disliked persons, gentlemen, and ladies can be project managers. Lost souls, procrastinators, and wishy-washies cannot. — Jerry Madden, “One Hundred Rules for NASA Project Managers” You can have a lot of bad qualities and still be an effective project manager, but you can’t be indecisive. Work out your personal insecurities on your own time. Make a decision. Move on to the next problem. Thus spoke The Programmer. Read more →
The Programming Circus
Most of my illustrious career has been spent working or consulting for Fortune 1000 companies. These companies are fundamentally dependent on their computer systems, particularly their online systems, to transact business. If the systems are down, the business stops running. In fact, the systems don’t even have to be down to create havoc. What if the response time is too slow? If you’ve ever done user testing with people whose job it is to enter money-making financial transactions for large corporations, you may have been amazed, as I was, at how fast they are. Obviously then, the software you build for them has to be even faster; split-second response time is required. If your software is slowing people down, the business is losing money. Or what if people are sitting around staring at their monitors because they can’t figure out how that great new interface you gave them is supposed… Read more →