I’ve come to realize that when I think about some tool I want to build, it’s typically driven by that “scratch your own itch” idea, where a developer does something because they want to solve their own problem. You’ll most often hear this idea attributed to open source software. Often my ideas come about when I think about who controls my data, or the software that I use. I tend to work towards maintaining my own freedom.
But there’s a whole other side… There are developers who develop something, and it’s not because a client hired them to, but because they think it’s a great idea, and sometimes they do follow the “scratch your own itch” idea, but they also think there’s a great money making opportunity worth exploring. Some developers within this realm are fine with creating something, and either selling it off, or letting it die if it “doesn’t work” or doesn’t become popular.
I’m not suggesting that one idea is better or worse than the other, it’s just an observation. I’m really interested to hear what others think…
4 replies on “Developer Perspective”
I’ve definitely seen examples of the two types of developer you described. What intrigues me is the growing number of developers who fall equally into both camps: they develop something they personally find useful and open it up to the greatest audience for collaboration, but they also aren’t afraid to build a business around the project through support contracts or consulting. The Mongo team at 10gen is a great example.
I think, for me, for the most part, the tools have already been built. If they haven’t it’s because I’m using old and outdated software. Being a Drupal guy, I have to work with all different versions and installations and sometimes what may be available for Drupal 6 (having been around for almost three years now) just never existed for Drupal 5. This is just my perspective, anyway. As the technology progresses at such an overwhelmingly rapid pace, people stop being afraid; “What if we can’t accomplish this?!”; and start to just build whatever it is they want anyway. This doesn’t mean that the tools don’t have to be updated constantly; developers do exist for a reason. :)
As to this “other side” you mentioned. I’ve found it beneficial that with my clients I’m not afraid to suggest something outside of the scope. They, more often than not, appreciate my creative input even though that’s not ultimately what I’m there to do. By expressing this creativity simply because it IS a great idea, it turns into a great money making opportunity through the client. I say through the client because I’ve never been good at marketing myself and they usually know better in this arena.
“You’ll most often hear this idea attributed to open source software.”
That’s the only part of this I’m having trouble with. That’s the romantic myth of Open Source, yes, but I’m not so sure it’s true. Most of the truly big money-making ideas came about through the very same process — somebody looked at something they needed to do and said “there’s *got* to be a better way!”
Now, if the developer was poverty-stricken or commercially-minded (and often the second trait comes swiftly after the first) the next question asked was “would I pay money for this?” That answer will mark the difference for the commercial project.
I’m reluctant, however, to claim Open Source projects are substantially different from the commercial ones, as the only noticeable difference lies in the coin the developer is getting paid in. Can we really say that Dries Buyteart, to pick just one example, is receiving nothing at all for Drupal?
Some of us want to be paid in the coin of the realm. Others receive payment in the recognition of peers or in doing something to benefit others. Still others of us could no more stop coding than stop breathing — we find our payment in the solutions to challenging problems.
And most of us take our payments in some blend of these wages. But, in every case, we get paid.
Arlen, I’ll agree with your idea of “getting paid” but you did use Dries Buyteart as an example, probably one of the “big names” in open source (I’d say “household name” among web devs) while there are thousands if not millions of small projects run by people who we’ve never heard of, and may be known by just a few dozen people.
Maybe it’s my lack of abilities to commercialize things that taints my vision, but I still think a number of developers start with the idea of “How can I make money with something?” though your idea that even then they may have started with a “scratch their own itch” foundation is interesting.