E-Mail:

Users vs. Developers

In prepping for my talk at BloggerCon tomorrow, I thought I’d incite a riot tonight. Most of the world won’t be there, but you can tune into the live stream at some point right after lunch (when I’ll be leading the discussion). I put all of this in tonight’s Lockergnome report for the Windows Fanatics channel, but I figured it was worth repeating here… where I’m likely to get flamed out of existence.

What would the world of software be like if the inmates were running the asylum? I’d argue a lot more useful, and a lot more beautiful. But users are usually in the back seat when it comes to the evolution of a utility - from beginning to end. We have all the control in the world, but few of us ever choose to exercise that power. We are expected to treat developers like they’re gods - but they’re no more important in this cycle than the average user. Let me put it to you this way: software is useless if there isn’t anybody using it. There are certainly users who are content to take whatever programmers hand to them, but I don’t believe that this Utopian level of interaction will exist for too much longer. The world of software is getting larger by the day, and more people are finding new and different ways to improve lives with digital code. I got sick and tired of meeting programmers and developers with attitude, so I decided to get an attitude myself - as a power user. I expect better, I expect faster, I expect smarter, I expect more.

Base functionality is crucial - but I would argue that software should look twice as good as it runs (which should be fast to begin with). I’ve been labeled a “nitpicker” for pointing out font inconsistencies and pixel discrepancies. But if you don’t complain about the things you’d like to see change, how do you ever expect them to change? Developers develop, users use - but it’s up to both parties to communicate with one another. When I see a new piece of software that holds promise, I call out its shortcomings in the hopes it will be closer to perfection with the next revision. Programmers believe that they’re in charge - but I believe the true power lies within the user. Years ago, when I started Lockergnome, there were few people writing publicly about good (or bad) digital tools on the desktop or the Web. The blogosphere has since exploded with a flood of positive and negative opinions - and if you’re not a part of that revolution, then you’re missing out on an important part of history. I’ve seen countless developers struggle to get their apps recognized - but most of those same programmers suffer from an overinflated ego and miscalculation of a uesr’s wants, needs, and desires. Users don’t talk - but I’m asking you to start flappin’ your electronic gums for the sake of making the software landscape better for all of us.

FWIW, I love developers - couldn’t live without ‘em. Can’t live with ‘em, either. :)

34 Comments

[...] Chris Pirillo: Users vs Developers.   [...]

[...] Normally I'm not a real avid reader of Chris Pirillo however tonight Chris has expanded on something I've always felt was true. Anymore it seems like things are in a Users vs. Developers scenario. I've always been a large advocate about using the product you develop, and if you wont use it why do you think someone else will? That being said Chris makes very strong points, I wont steal his glory I'll let you read his article. [...]

Well, I happen to be one developer who believes that this ought not be an adversarial relationship. Does the conjuction between “Users” and “Developers” always have to place us in contention with each other?

I totally agree - If you are paying for software you should be able to have a say in what things get attention from the developers.

If you aren’t paying, letting the developers know your thoughts and wishes in a polite way is also good, because the developers then have some feedback about what the users like + dislike and the extras they would like to see.

In either situation the developers might ignore your pleas, but at least they have the chance to hear them.

As a developer with 5 or 6 games available for free on the web, the number of times I have heard back from users is very small, probably less then 1 reply per couple thousand downloads.

Shen

I can’t disagree with most of your points, but I’m not sure why you frame it as “versus”. Ok, software is useless if there isn’t anybody using it - but software doesn’t exist if no-one is developing it. Users and developers need to be on the same side.

I would suggest the situation is improving thanks to the Web (2.0). There is now a very direct feedback loop through the blogosphere (as you describe), and there’s been a general increase in the participatory nature of development. Virtually all developers are users in this environment, and thanks to the opening of information/source the barrier for users to be developers has never been lower.

We (users *and* developers) aren’t so much at the mercy of the big companies, and should certainly set our sights higher than ****** software.

Chris,

I have been saying this for a long time. In my field I deal with overblown ego’s that are more of a problem than part of the solution. I also agree with you on how software works and how we access it. Part of the discussion should be around deciding what as a “user” we want and get the developers to ask the questions that need to be asked but seem never to be asked.

What should this solution do?
How will the interface enhance my ablitiy to be productive, within the first 30 mins. of using said software. (This is a quality option, I chose 30mins to give them something to shoot for. I really wanted to say 1 min but felt that was too aggressive.)

“When technology becomes indisguisable and taken for granted you are close to being done.”

There are millions of users and thousands of developers for a reason. Not everyone can be a programmer. If you tried to explain to all the users about partial classes, threading, semaphores, concurrency, and pass by reference functions they would be mystified. I’m not saying all users are idiots but at the same time, it’s not something one could pick up in an evening. Programming is difficult. The vast majority of people tend to shy away from things that are difficult. That’s why there aren’t more programmers.

No flames here Chris.

You’re dead on. What’s the real purpose of software? Of hardware? Of any product at all? It’s to fufill the need of a USER somewhere. There are rare occasions where the user is also a developer. But the majority of users are people who need something to make their life easier, more managable, nicer and who don’t have the skills or time to do it themselves. I think developers lose sight of that while we whack away at the latest linked list or toolbar.

The philosophy of ‘release early, release often’ used by many in the Open Source movement helps connect the developers to the users. Get the rough draft of the program out there and start getting feedback, incorporate that feedback into the project and rinse, lather, repeat! Commercial software could benefit from using this method as well, it doesn’t need to be limited to Open Source.

bcl

[...] Chris Pirillo absolutely hits it out of the park on this rant about the chasm between developers and users, and why users should actually hold the power. I think he’s right in absolutely everything he says, and the best developers are ones that can think like a user (Nick Bradbury comes to mind). However, I think we’re years and even decades away from a time where the balance of power shifts to where it should be. [...]

Most of the world won’t be there, but you can tune into the live stream at some point right after lunch (when I’ll be leading the discussion). I put all of this in tonight’s Lockergnome report … Source: Chris Pirillo Author: Chris Link:http://chris.pirillo.com/2006/06/22/users-vs… View discussion

Users Vs. Developers by Chris Pirillo I love developers â€â€? couldn’t live without ‘em. Can’t live with ‘em, either.

This sounds like the logo on my website… “Your dreams. My creations” :)

Chris - right on! Except for the inmates running the asylum analogy.

The only problem is that many software developers (myself included) consider the user and the developer not as mutually exclusive beings but as a mashup of both.

The biggest problem that I face as a User Developer is what to do when something goes wrong.

From the front end of things, I *think* I can guage usability and flow pretty well. My bane comes in trying to figure out the best way to handle exceptions, when something doesn’t go as intended.

When something blows up, I have prior knowledge that allows me to determine whether or not my action would have been completed or whether or not I should try again or whether or not I have just killed the system. My user exclusive users don’t have the benefit of this prior knowledge, so I have to figure out what would make sense to them. Which is why cryptic errors and BSOD cause so much user exclusive dismay.

I’ll try to do better.

Marcelo R. Lopez, Jr.

June 23rd, 2006
at 2:43pm

Let’s see. You’re how old, Chris. Maybe mid 20’s. Well, probably since you were pampers ( like you didn’t see THAT comment coming ), I’ve believed very similarly to you. However, rather than sit back and nitpick, I decided to do something about it. I decided to WRITE software. I won’t go into the ad nauseum of things I’ve worked on, but I’ve worked on the User Experience of many ( too many to number, I’ve been at this a while ).

But anyway. I don’t disagree with the basic tenet that much of what’s out there is CRUD, CRUFT, etc. etc. But hey, let’s not just pick on software, why convine ourselves. Do you like drive-thru’s ? They infuriate me, but for some people, no biggie. The point is this. I guess somewhere some software ( or several ) have made you feel….well, less than appreciated. Maybe you wished some software better catered to how YOU, Chris, would do something.

Wouldn’t it be nice if a lot of things in life were like that. But, if you step back and put into perspective that you’re not the only person being catered to when you’re in that drive-thru lane, voila, instant understanding that the world doesn’t revolve old numero uno.

I can’t disagree with your argument at it’s core, because after all, software is useless if no one uses it ( and aren’t there plenty of examples of that out there ). But,( yes there was a “but” coming ) not all software is created alike. Sure, we can’t expect you to speak more specifically about what sort of software, or perhaps what “ABOUT” software is it that is of issue, but if we take the tenet about open versus closed sourced software, or agile versus cmmi, the subject becomes differently.

Everyone, and I mean, everywhere I’ve worked. Contractor or fulltimer, everyone thinks there’s a SINGLE “this is how we develop software” method. Well, wake up and smell the coffee Mary and Joseph, we’re not on Fantasy Island anymore. The idea of “release early, release often”, yeah, that’s worked for Microsoft. NOT ! For the vast majority of cases, most of the arguments for that “agile” ( and what a misnomer it is ) paradigm don’t cut the mustard in the face of the way most “users” think. Maybe if the target users ARE technically minded, then it does start to apply. But most user’s truly are neither interested, nor want to become involved with something that requires much more beyond simple mandates.

The subject is way, way beyond a simple, let’s wrap thing in an Open Source way of thinking. Yeah, sure, we’ll do develop agile, give’m lots of releases to give us gobs of feedback. Ennngh ! These are humans we’re talking about. Beings who most of the time are more concerned with issues more pressing than “did the check box uncheck itself when we select that email, and selected, “. C’mon, get real folks.

Chris has one bright idea ( I’m sure you have more, but you mentioned one basic idea everyone’s missed thus far in the comments ). Basic functionality. Start there. Don’t talk about what other whizz bang things you can code, we all know you’re a wizard at perl, a prince of python, because that’ll all be besides the point.

“Does the OS boot ?”, “Can I add a few numbers ?, “Can I write a letter to my mom ? Or better yet, could my mom write me a letter with this ?”. Answer those questions first. Then we’ll talk about adding that wonderful flip through applications like they’re pages on a screen, or how to make 1 = 2 ( for most values of 1 ) with Pivot Tables, or create FORMS ( which must be filed in triplicate ) with the word processor.

Now someone hand me bottle of insecticide, I think I see a “feature creep” over there !

He he! Well someone’s got to stand up against this ****!

I admire people like Winer (who’s link I followed over here). I like the notion of “users and developers partying together”. I think developers have a responsibility to give the users good things. And that developers can’t know what these good things are without paying attention to users.

But the idea that development is a *commodity* - which is essentially what you’re saying here -, that it’s like the water supply which can be turned on or off or piped-around at the will of the user, is wrong, wrong, wrong.

The reason is, that good software creation, like any other creative activity, requires a deep knowledge of the nature and constraints of the medium. You can’t invent the transistor without a profound understanding of physics. Nor write a great novel without being a master of your own language. Nor a great painter without knowing paint. Nor invent radio or television or the computer without a background in the relevant science.

Without knowing your material you’ll never see the statue in the block of marble. Never have intuitions about the *possibilities* that the medium holds. Users can, at best, offer advice for incremental improvements : “I want something like X but with these annoyances fixed.”

But that’s never going to give you radical new things. There are no great innovations in software that have been driven by user demand. (Name one!) They all come from geeks who knew what software looks like from the inside, who saw something in the computer and said “hey! I could make it do *that*, too. Kewl!”

Users and developers have common enemies : dinosaur software companies, companies who like to specify and buy software which they hope will *impose* particular work-practices on their employees, market-forces which require cutting-corners to get the product out of the door today rather than get it right.

Let’s work (and party) together to fight that.

But the other … don’t fool yourself. Users have been dreaming of getting rid of developers, like, forever. They never succeed.

Every time the users abandon us, we go away and create yet more cool stuff, on our own, for ourselves. And eventually the users come crawling back, because they want more of our pure, raw innovation, rather than more of the stale old fluff which is all that they and the marketing people (who “undertand real users” better than those disfunctional geeks) are able to come up with by themselves.

[...] Users vs. Developers Trolling Chris Pirillo wants some.He he! Well someone’s got to stand up and school the boy!I admire people like Winer (who’s link I followed over there). I like the notion of “users and developers partying togetherâ€Â?. I think developers have a responsibility to give the users good things. And that developers can’t know what these good things are without paying attention to users.But the idea that development is a commodity - which is essentially what he’s saying here -, that it’s like the water supply which can be turned on or off or piped-around at the will of the user, is wrong, wrong, wrong.The reason is, that good software creation, like any other creative activity, requires a deep knowledge of the nature and constraints of the medium. You can’t invent the transistor without a profound understanding of physics. Nor write a great novel without being a master of your own language. Nor a great painter without knowing paint. Nor invent radio or television or the computer without a background in the relevant science.Without knowing your material you’ll never see the statue in the block of marble. Never have intuitions about the possibilities that the medium holds. Users can, at best, offer advice for incremental improvements : “I want something like X but with these annoyances fixed.â€Â?But that’s never going to give you radical new things. There are no great innovations in software that have been driven by user demand. (Name one!) They all come from geeks who knew what software looks like from the inside, who saw something in the computer and said “hey! I could make it do that, too. Kewl!â€Â?Users and developers have common enemies : dinosaur software companies, companies who like to specify and buy software which they hope will impose particular work-practices on their employees, market-forces which require cutting-corners to get the product out of the door today rather than get it right.Let’s work (and party) together to fight that.But the other … don’t fool yourself. Users have been dreaming of getting rid of developers, like, forever. They never succeed.Every time the users abandon us, we go away and create yet more cool stuff, on our own, for ourselves.And eventually the users come crawling back, because they want more of our pure, raw innovation, rather than more of the stale old fluff which is all that they and the marketing people (who “understand real users better than those disfunctional geeks”) are able to come up with by themselves.Update : MP3 of Pirillo’s presentation at BloggerCon. Yawn! ;-) [...]

[...] Chris Pirillo: Users vs Developers.   [...]

[...] Most interesting discussion to me so far was centered around just how much of your personal life you blog about and some of the dangers associated with it. I also like Chris Pirillo’s stuff. [...]

Headstrong is good. Myopic is not. Designers and programmmers need to lead, but armed with an understanding of the user based upon reeal rsearch. The ‘I know what they need”, heuristic egocentric mindset must go away.

A tech support person I know fequently tells the ap developers about execution problems and the developers typical response is “the customer is using the application wrong.” I am soryy, but that is NOT an acceptable perspective. The customer can not by definition use the application wrong.

Everyone as Co-Creators: Harnessing Collective Innovation with W…

While Dave Winer’s BloggerCon takes place this weekend I’m still trying to rest up from the CTC conference in Boston earlier in the week.  I gave a detailed - and probably too information packed - talk about Web 2.0 in the enterprise that focuse…

[...] Users vs. Developers ~ Chris Pirillo What would the world of software be like if the inmates were running the asylum? I’d argue a lot more useful, and a lot more beautiful. But users are usually in the back seat when it comes to the evolution of a utility - from beginning to end. We have all the control in the world, but few of us ever choose to exercise that power. We are expected to treat developers like they’re gods - but they’re no more important in this cycle than the average user. [...]

end of my presentation, my top recommendation for was: And above all, provide a minimum structure and let users do [Enterprise Web 2.0] themselves. I bring up BloggerCon because along this same line of thinking, the always irrepressible Chris Pirilloplanned and delivered (more notes and the podcast from ZDNet’s Dan Farber) a similar view of things. In his session he discussed the platform wars and the all-too-classic tension between users and developers; both often feel entirely the hostage of the other

[...] ThoughtStorms: UsersVsDevelopers UsersVsDevelopersHomePage | RecentChanges | Preferences No diff available–this is the first major revision. (minor diff) ChrisPirillo? wants some : http://chris.pirillo.com/2006/06/22/users-vs-developers/ [...]

Six confirmed Wii games at Wii launch * PostApp launches WidgetBox, a marketplace for widgets * Hugh Jackman Home for Kidman Nuptials * Fla. police end dirty ‘grills’ dentistry * The Surveillance State Unveiled *Users vs. Developers

As a software developer, I agree with your assertion.
BTW, you misspelled uesr’s ;-).

[...] While Dave Winer’s BloggerCon takes place this weekend I’m still trying to rest up from the CTC conference in Boston earlier in the week.  I gave a detailed - and probably too information packed - talk about Web 2.0 in the enterprise that focused on collaboration and the shift of control from whomever is in charge (management, developers, etc.) to users.  At the end of my presentation, my top recommendation for was: And above all, provide a minimum structure and let users do [Enterprise Web 2.0] themselves.I bring up BloggerCon because along this same line of thinking, the always irrepressible Chris Pirillo planned and delivered (more notes and the podcast from ZDNet’s Dan Farber) a similar view of things.  In his session he discussed the platform wars and the all-too-classic tension between users and developers; both often feel entirely the hostage of the other and feels that the other doesn’t "get" it.  This is an emotionally charged topic and one that’s getting more and more interesting now that actual control over the creation of content and software really is becoming democratized, with the things most often labelled Web 2.0 leading the charge.Certainly, many of us can clearly observe sea changes in the industry.  There are  now truly massive amounts of user generated content flowing 24/7 from people into the Web every day all around the world.  This is increasingly making those same users the single most important part of the Web.  Then there is the mashup ecosystem, which is getting tantalizing close to the goal of entirely user guided experiences.  Even blogs and wikis are now almost totally self-service and that as-yet-unattainable nirvana exemplified by failed attempts at 4GLs, model-driven architecture (trying to put the power of software creation into the hands of users)  is finally starting to happen.  I recently wrote about Apple’s Hypercard software model from over a decade ago (use a hypercard’s functionality, or hit edit and change the way the card works, wiki-style) that will likely become a leading model for creating recombinant software that can be informally shared amongst users.  And yes, this will be almost entirely browser-based given that the browser is the most open, egalitarian place to do integration now.  And as the trail of innovation continues, the best and most useful user "mods" to both business and consumer apps will be shared and the best ones will spread quickly in a viral fashion.  And these mods can be any part of an page-based application: visual, the way the data flows in or out (with feeds and other external data sources interwoven), or even the very software itself, which can be increased customized by the user by adding new "widgets" of functionality, included like Google Maps.  And with initiatives like OpenAjax to make all the pieces easy to fit together and standardized, the road is being quickly paved for the first true browser-based component model for doing all of this.  What’s needed next are techniques for making Web-pages customizable in place (again, like wikis) backed by supporting , and likely informal, standards for making RIA-powered page-based apps easily changeable and shareable by anyone.  I would venture to say this is an nearly inevitable vision for the future of software, and also quite scary to those that are in charge of making software secure, tested, and policy-compliant.This implies that innovation in general will increasingly come from the edge, where all the people, energy, time, and creativity are.  Central command and control will be relegated to the tasks it does best instead of guiding innovation, which usually (but of course not always) comes not from the center.  It will be pulled out to people with the best motivation and context for making their software better, their way.  And far from a return to selfishness, innovation usually works better when shared, encouraging creators to share their work to use as a platform for further shared improvements.  Thus, opening up your customer base, employee base, user base or whatever to use your services, products,  and information as a medium upon which to create and share innovation is one of the most promising new models for decentralized, efficient commerce and business.Finally, here is the concluding slide of my Web 2.0 in the enterprise recommendations.  While it’s still too early to have a full list of how to exploit these new tools and techniques for something I’m starting to call "harnessing collective innovation", you can bet that this will become an essential technique for success in the marketplace. Those that figure out how to do it best will benefit the most.Do you plan on using Web 2.0 to let your users and employees innovate with your products and information? [...]

invited to provide input in every meeting on the UX, system flow and regular milestones on naming, branding, messaging, out of box experience and more.   Shifting gears for a second.  Looking to the development process we used as a case study,Chris Pirillo is still largely right in my opinion about the “User”. Except it’s users vs. the traditional development process that’s the issue- not the developers themselves.  PMs, Devs, Testers, and Marketing are still WAY too silo’ed from their customers and

[...] In light of the recent kerfuffle on this blog and elsewhere about bugs in Microsoft Word (a recurring topic, obviously), I’d like to point out this recent post by technology writer Chris Pirillo titled “Users vs. Developers.â€Â? Choice quote: [...]

I don’t know very much about computers. Like most people, I don’t have a high level of competency in any area of specialization; rather I know a little about lots of stuff. I stumbled on a discussion prompted by Chris Pirillo about the relationship between users and developers of software. Phil Jones in a pithy reply to Pirillo’s notion that users had better start telling developers to jump and that developers ought to respond “How high?” slaps down Pirillo’s pretense. On

end of my presentation, my top recommendation for was: And above all, provide a minimum structure and let users do [Enterprise Web 2.0] themselves. I bring up BloggerCon because along this same line of thinking, the always irrepressible Chris Pirilloplanned and delivered (more notes and the podcast from ZDNet’s Dan Farber) a similar view of things. In his session he discussed the platform wars and the all-too-classic tension between users and developers; both often feel entirely the hostage of the other

[...] Users vs. Developers ~ Chris Pirillo: “” [...]

[...] While Dave Winer’s BloggerCon takes place this weekend I’m still trying to rest up from the CTC conference in Boston earlier in the week.  I gave a detailed - and probably too information packed - talk about Web 2.0 in the enterprise that focused on collaboration and the shift of control from whomever is in charge (management, developers, etc.) to users.  At the end of my presentation, my top recommendation for was: And above all, provide a minimum structure and let users do [Enterprise Web 2.0] themselves.I bring up BloggerCon because along this same line of thinking, the always irrepressible Chris Pirillo planned and delivered (more notes and the podcast from ZDNet’s Dan Farber) a similar view of things.  In his session he discussed the platform wars and the all-too-classic tension between users and developers; both often feel entirely the hostage of the other and feels that the other doesn’t "get" it.  This is an emotionally charged topic and one that’s getting more and more interesting now that actual control over the creation of content and software really is becoming democratized, with the things most often labelled Web 2.0 leading the charge.Certainly, many of us can clearly observe sea changes in the industry.  There are  now truly massive amounts of user generated content flowing 24/7 from people into the Web every day all around the world.  This is increasingly making those same users the single most important part of the Web.  Then there is the mashup ecosystem, which is getting tantalizing close to the goal of entirely user guided experiences.  Even blogs and wikis are now almost totally self-service and that as-yet-unattainable nirvana exemplified by failed attempts at 4GLs, model-driven architecture (trying to put the power of software creation into the hands of users)  is finally starting to happen.  I recently wrote about Apple’s Hypercard software model from over a decade ago (use a hypercard’s functionality, or hit edit and change the way the card works, wiki-style) that will likely become a leading model for creating recombinant software that can be informally shared amongst users.  And yes, this will be almost entirely browser-based given that the browser is the most open, egalitarian place to do integration now.  And as the trail of innovation continues, the best and most useful user "mods" to both business and consumer apps will be shared and the best ones will spread quickly in a viral fashion.  And these mods can be any part of an page-based application: visual, the way the data flows in or out (with feeds and other external data sources interwoven), or even the very software itself, which can be increased customized by the user by adding new "widgets" of functionality, included like Google Maps.  And with initiatives like OpenAjax to make all the pieces easy to fit together and standardized, the road is being quickly paved for the first true browser-based component model for doing all of this.  What’s needed next are techniques for making Web-pages customizable in place (again, like wikis) backed by supporting , and likely informal, standards for making RIA-powered page-based apps easily changeable and shareable by anyone.  I would venture to say this is an nearly inevitable vision for the future of software, and also quite scary to those that are in charge of making software secure, tested, and policy-compliant.This implies that innovation in general will increasingly come from the edge, where all the people, energy, time, and creativity are.  Central command and control will be relegated to the tasks it does best instead of guiding innovation, which usually (but of course not always) comes not from the center.  It will be pulled out to people with the best motivation and context for making their software better, their way.  And far from a return to selfishness, innovation usually works better when shared, encouraging creators to share their work to use as a platform for further shared improvements.  Thus, opening up your customer base, employee base, user base or whatever to use your services, products,  and information as a medium upon which to create and share innovation is one of the most promising new models for decentralized, efficient commerce and business.Finally, here is the concluding slide of my Web 2.0 in the enterprise recommendations.  While it’s still too early to have a full list of how to exploit these new tools and techniques for something I’m starting to call "harnessing collective innovation", you can bet that this will become an essential technique for success in the marketplace. Those that figure out how to do it best will benefit the most.Do you plan on using Web 2.0 to let your users and employees innovate with your products and information? [...]

What Do You Think?