With apologies to Gerry Weinberg, author of The Psychology of Computer Programming, what is the psychology of non-programmers, folks who would never call themselves developers, but are using new-age tools like BPM or mashups to create business solutions? I’m not sure, because although I work for Forrester now, I used to be a programmer, years ago, so I am forever cut off from knowing what it’s like not to be a programmer.
Why do we care? Well if you’ve been following the posts to our blog, you know that non-programmers, who we might call "business developers" (although they would probably hate that term) or "super users" are a central theme in the future of application development. My colleague Mike Gualtieri has outlined two scenarios for the future of app dev, and future 2, the "Dynamic Business Developer," is all about business people who have a day job in the business, but who are also doing some of what we might call "development."
But What Do "Real Programmers" Think About "Business Developers"?
Another member of our team, John Rymer, recently gave a keynote at the Spring Experience in Florida. As part of that session John presented the vision that he and Connie Moore have developed of Dynamic Business Applications, and included some of this discussion around the role of business analysts or business developers in our vision of the future. Later on after his session, John sat down with some Java developers, avid users of the Spring framework from SpringSource (formerly known as Interface21). They said:
"I wish business managers would stop trying to micromanage our work. They should get out of the way and let us create value."
Not a very collaborative attitude, but not uncommon. Why do some developers think this way? They live in a world that values the ability to craft a better algorithm more than the ability to solve a business problem. Well, perhaps I exaggerate. I know plenty of developers who really get off on making business people happy (and I was one of them, back in the day). But the dirty little secret is that our universities and other sources of entry-level developers are still cranking out lots of this other kind of developer. Exactly the wrong kind of developer to work with the business in a collaborative fashion.
Why Are Developers So Cranky?
It takes a certain kind of person to have the concentration and focus to sit in front of a computer all day and crank out code. Some of the folks who are good at this are not so good with their social skills, nor are they really interested in the business except as a source of funds for their paycheck. Folks from this mold can make great engineers, but unless they are that rare individual who combines those qualities with great right-brain visual acuity and strong social and verbal skills, they will have a hard time communicating effectively with the business, or truly empathizing with the goals of business people.
Hey, Gene Leganza (VP and Research Director of the Enterprise Architecture team) told a funny joke the other day at our Enterprise Architecture Forum – well, it was about architects, but I think we can use it here, too:
"How can you tell when an enterprise architect is an extrovert? When he looks at your shoes while talking he’s talking to you, instead of his own!"
So What About Business Developers?
I said I wanted to talk about business developers, or non-programmers, so why so much time talking about programmers? Well, other than it being the world I know, and having that joke to tell, I think one of the key issues around growing more business developers will also be the psychology of this role, both the way business people perceive it, and the way current developers perceive it. What motivates a business person to learn how to do this work? What kind of person is good at it? Some ideas:
- Perhaps the best business developers, or non-programmers, will be similar to those folks who can craft amazing spreadsheets in Excel. I’m not one of them! But for the right person with the patience to learn how all those formulas and features work, you can do some pretty amazing things.
- Will business developers even want to be called something with "developer" in the name? Probably not! The best business developers identify much more with their business peers, than with IT folks. They don’t want to be labeled a geek – whereas I fully embrace my geekhood!
- The motivation to develop in this career will have to include wanting to be a member of the club. They don’t want to be a member of the programmer / geek club. So what are the attributes of the non-programmer club? Is their favorite sport more likely to be golf than cycling?
Please Give Us Your Feedback!
We’d love to hear your stories, your jokes, your ideas about business developers or non-programmers!
- Do you know a business developer, or are you one? What are they (or you) like?
- How should enterprises think about finding and growing folks like this?
- Is it crazy to think developers and non-developers can get along? What do you think these roles will look like in the future?