Archive for the 'Lean IT' Category

What’s wrong with MBAs?

I know it’s popular for programmers to bash Managers, and MBAs. And I don’t want to jump on the bandwagon –especially since I’m also a manager.

But I know that the image of the pointy haired boss is pretty thoroughly ingrained in our culture, and popular mythology exists to explain a shared experience.

Clearly there are a lot of bad managers with MBA’s from prestigious institutions out there.

Henry Mintzberg does more to explain how this happened — and what we might be able to do about it — than anybody else I’ve read recently.

Managers Not MBAs: A Hard Look at the Soft Practice of Managing and Management DevelopmentThe central argument of Managers not MBAs is that Management as taught by MBA programs is a failure, because they:

  • choose the wrong people,
  • educate them in the wrong way
  • and produce the wrong results.

In other words, the selection process and educational format of most MBA programs actively undermines the practice of good management. MBA’s are a self-selected group of people who “want to get ahead in business,” and the entire program teaches them to compete rather than cooperate.

The result is that graduates of MBA programs have a pretty dismal record at actually starting, expanding, or maintaining stable, productive, businesses.

Mintzberg doesn’t blame MBA holders — they were taught strategy, and accounting, and analysis, but never management.

In particular, MBA programs never taught them the meaning of good management, or the skills they would need to actually grow and manage teams of real people. They aren’t even pointed in the right direction, the structure of MBA programs reward the kind of people who like to compete. And years of “case study” exercises have made them into the kind of people who make snap decisions based on limited data.

MBA graduates generally aren’t the kind of people dedicated to helping other people achieve greatness.

Instead, they want to achieve greatness on their own — which can be a worthy goal. It’s just a terrible goal for a manager. Good managers are relentlessly focused on helping the people they work for perform at their best.

I don’t believe an MBA degree is just a liability.

The MBA’s I know have learned useful terminology, analytical skills, and the training they recieved in in economics, accounting, and business law can be a huge help in the right moment.

An MBA can prove to be an net asset to a manager, but only if you unlearn some skills they teach you (snap judgments, and me-first competitiveness) and make it a point to learn the “soft” skills that are infinitely more important.

The second half of Mintzberg’s book is his proposal for creating better educational institutions, which can identify the right candidates, train them with the right skills in the right way, and ultimately produce much better results than current MBA programs. The broad outline of that plan seems right. But most managers need something they can use to get better at their jobs right now, without spending a lot of money.

  • Never stop learning from the people on your team – they are on the front lines learning every day, if you’re not working to learn from them, your loosing potentially critical information.
  • Always believe that there is more to their job than making money. Greatness comes from productive passion, and greed doesn’t inspire passion or loyalty.
  • Elevate the people who actually produce value — These people actually do the work, and they know infinitely more about the nature of that work than MBA trained managers, so they should be respected, valued, and included (or put in charge) of improvement processes.

Good managers care about people, not head-count, and they strive to make their job a meaningful contribution to a shared vision.

Hopefully I’ll have time to write more about good management tomorrow.

So what is vision?

It’s a shared look at the future, and it is a future filled with hope and promise.

If your future looks bright, make sure your team knows about it. Tell the story of how you achieved all this, thank the people who helped you get there.

If on the other hand your company’s immediate future is bleak you can still encourage vision, but you have to creatively and courageously tell stories. I’ve been through this kind of thing at work, and we did come out stronger.

Unfortunately I can’t tell that story.  Fortunately I thought of an even better story to articulate this idea of vision.

In a country where segregation was the law of the land, and racial hate was rampant Martin Luther King Jr, continued to tell the story of a future where people would no longer be judged by the color of their skin.  He continued to tell these stories in the face of economic hardship, and in under the the constant threat of assassination, and with the memory of attacks on his family still burned deeply into his memory.  It is context that  Martin Luther King Jr. made one of his most powerful speeches to his battle weary friends and followers:

Well, I don’t know what will happen now. We’ve got some difficult days ahead.

But it doesn’t matter with me now. Because I’ve been to the mountaintop…

Like anybody, I would like to live a long life. Longevity has its place. But I’m not concerned about that now. I just want to do God’s will. And He’s allowed me to go up to the mountain. And I’ve looked over. And I’ve seen the promised land. I may not get there with you. But I want you to know tonight, that we, as a people, will get to the promised land.

If you are faced with a Death March style project, the only thing you can do is to hold out a vision for a better future and do everything in your power to make that happen. You can’t ignore the present, you can’t ignore the grueling overtime, the unrealistic deadlines, or the managerial mistakes that got you here — if you do nobody will listen to you, nobody will respect what you have to say.  Instead, you have to demonstrate that you have or can come up with a plan to get out of the desert into the promised land.   Compelling vision begins with the hard truth of today, but holds up an achievable hope for tomorrow.

Automation: Doing the wrong thing — faster!

Automation is like optimization, so I would like to invent a corollary to the Horre’s famous Maxim:

Premature automation is also the root of even more evil

If you spend time and money to optimize the performance of a particular piece of code, it will often become more complex, more difficult to understand, and more costly to change in the future.

The same thing happens when you automate a sales process, or the way you route phone calls. The process becomes less adaptable to change, sub-processes are invented to route around difficulties with the main automated process, and can get crazy.
Sure, you can get things done more quickly. But if you’re customers are routed incorrectly, they don’t care how quickly they get to talk to the wrong person!

And the danger is not just that you’ll get it wrong in the first place, but that you won’t be able to adapt to changes in the environment around you because adaptation would mean throwing out all the work that went into optimizing that process.

Some of this problem is economic.

The cost of automating a process must be repaid quickly for the automation work to be valuable. The exact ROI time is function of how much change happens in that area of your business.

But some of it is psycho-social.

Even if a particular automation project has already paid for itself, the fact that it exists makes the whole organization more likely to resist change, because you don’t want to ‘throw away’ all the hard work that went into automating the old process.

Not only that, if it’s not handled well by management, seeing a project you worked on for months last year being “thrown away” can be seriously demotivating to the automator.

Premature automation is the root of all kinds of evil.

A New Chapter

New Chapter

I’ve decided that it’s time to change jobs. I just finished the TurboGears Book, and several Python related articles, and all of that reminded me how much I love Python, Agile Development, and teaching people.

Unfortunately, I don’t get to do any of those things enough in my current job.

Don’t get me wrong Humantech is a great company, that helps prevent a lot of unnecessary pain and injury, and I get to work with some fantastic people. So, it pains me to leave, but I don’t get to focus on doing what I do best. Instead I am pulled in a million different directions, and I find I spend more time than I’d like on things like monitoring people’s cell phone bills.

My main goal in making this change is to find something that lets me enhance my software development skills, or turns me loose in the coaching/training/advocacy side of things — preferably something that lets me do both.

In particular, I’d love to work on an XP team that’s actually walking the walk, and not just talking about how cool Agile is. I’ve been a fan of the ideas behind the whole Agile movement, and I’ve implemented some at Humantech, but it would be great to work with people who’ve been there, done that.

I also love talking to developers (and managers) about stuff that could improve their lives. I love training, and I think one-on-one coaching is an amazing opportunity, and would be thrilled to have a chance to do more of that as part of my regular job.

I’m looking for something in the Michigan area (preferably Ann Arbor) but I’d definitely telecommute, and travel for the right job.

If you, or somebody you know is looking to hire someone, let me know (Mark.Ramm at gmail dot com), and I’d be more than happy to talk to you.

TurboGears in Linux Magazine

I’ve worked with Linux Magazine in the past, and it’s always a pleasure. But this time it’s been great, because I got to talk about all the cool stuff in TurboGears 1.0 beta. It’s only a few pages, so I couldn’t cover everything that I’d like to, but it should give people an idea of what they can do with TurboGears, and hopefully introduce a few new people to the project.

In the article I talk a bit about a project I’ve been thinking about for several weeks, which uses TurboGears to create a ticket tracker based on my ideas of how to use David Allen’s Getting Things Done system in a group setting.

Project-Page-01.jpgIt’s called Action Flow, and the idea behind it is to make it easy to capture all of the next actions for all of your projects in a simple system outside of your head. The difference between this and other similar systems is that it is designed to track actions and projects for individuals and groups in the same free-flowing self-organizing way that Agile Software projects are run.

I personally want to use it to run an IT department, and track all the various tasks and projects we have going. It’s not there yet, but as I finish up the final edits on the book I should have more time to work on this project.

I’m also hoping that it will be a good place for new folks to Open Source and TurboGears to get involved on the ground floor of a project that’s very welcoming to anybody interested, even if you don’t have experience. Learning experiences are generally effective to the extent that they require active participation from everybody involved, so I think this will a great way to learn more about web development and TurboGears.

So, if you’re new to TurboGears, new to Python, or just want to help, feel free to join the mailing list and introduce yourself. We’ll be nice, and help you get involved and get learning TurboGears the fastest way possible, by working with other people on a real project!