How Should Companies Grant Recognition To Developers?
Ken Broadfoot asks: "I work for a major computer chip manufacturer and we are recieving input (patches and code) for some new Linux device drivers (network cards). How would you, as an open source developer, like recognition for the valuable work you are doing? My suggestion to the Powers That Be was to offer credit on the web, some network interface cards, and perhaps a credit file along with the source code for the driver, however there may be other ways to thank developers that we haven't thought of, and were looking for readers thoughts on the matter." It's always nice to see large corporations willing to take the time to thank individuals for making their products better.
Give 'em hardware - the latest stuff, put them on hardware beta tests, etc. Don't worry if they'll agree upfront to do anything with it - my guess is that if they've done it before, they'll do it again. Low risk, high reward investment.
I know that doesn't give credit to individuals, but it does credit the open-source movement.
What about a share or two of your companies stock? It is a great way to get someone interested in your stock (helps the company) and also gives the developer more reason ($$$) to develope for you.
"If ignorance is bliss, why aren't there more happy people in the world?"
The best way was already suggested in the article: give them more nics. But hey, why stop there? Hire them (perhaps on a part time basis) to write drivers for you. Even if you have to put them under an NDA for the specs to your cards, which seems unlikely as they've already made drivers, you'll get high-performance drivers in return and the Linux community might buy your cards before someone else's if they've got a Tux on the box.
:D)
(Of course, this assume that your company is named 3com...
If only there were some kind of symbolic object the corporation could give the developer to indicate their appreciation. But not some dead trophy-style object--something dynamic and useful. Something where they could keep the value even if they lost the physical medium (via the use of trades, say). In fact, we could expand this usage from corp to developer until everyone could trade these objects to each other in exchange for goods and services. But what'll we call it?
--
MailOne
Non-meta-modded "Overrated" mods are killing Slashdot
(Hey Ryan! Here's your proof!)
There are some problems with that.....
1. If someone is not happy with the tech support weenie (meaning their response is format and re-install), they get your name from the about box and call you.
2. If you leave the company and the product turns to garbage, do you want your name associated with it?
Fight Spammers!
You could bring a couple of these developers in, turn a camera on, and ask just why they decided to contribute to the project. Voila! Instant promotional material for your product, your company, and your relationship with the open source community. Give them a reasonable fee for the promotional spot, and make a donation to a charity of their choosing in their name to boot.
Stop by my site where I write about ERP systems & more
A company actually wants to give credit for work they could have for free. Cool. I would say definately add some extra credits in the source code that they contributed. The cards are a great idea, above and beyond expectations. Also a credits page on the website is good. What else could work you ask? If they are repeated contributors you may want to contract with them for upcoming products.
As x approaches total apathy I couldn't care less.
-henrik
Credit in the code is worth more than credit on a web page. That just needs a one liner - what, who, email, date. (That line will probably already be in the patch) Hardware is good - especially new hardware that nobody has yet. A 'come see me at XXX trade show, I'll buy you a beer' is worth more than you can imagine. Best of all has nothing to do with giving credit - just make sure the full specs of the hardware are published on the web. Thats the best thanks of all.
--
Life's a bitch but somebody's gotta do it.
Have the CEO call them personally and sing the GPL license's text to the "We Will Rock You" melody.
I think that you've already taken the biggest step: Acknowledging that open source developers are making useful and valuable contributions. For the most part, open source developers (or at least all the ones i know) are always happy to work/play (often it's the same) in an environment of good will and openness. I think that is the most important thing. For instance, if a hardware company doesn't produce a linux driver for their XYZ widget, it would be nice if they made hardware specs and possibly the code for their windows driver available so that people could work with it, and soon enough the XYZ widget would be supported under linux and BeOS and probably some other OSs nobody's ever even heard of...
---
Play Six Pack Man. I
The best way a company can reward open source developers on a project is to allow them to keep
working on them or other projects. Convince upper-brass to release more information ethier openly or with reasonable NDA's (ones that allow production of open source drivers and allow developers to work reasonable non-competitive jobs). Example Linus doesn't have a IA64 box because he works for transmeta. Give the people reasonable access to information no matter what there background.
"Sometimes it's hard to tell the dancer from the dance." --Corwin Of Amber in CoC
Call their parents and tell them "I am calling from [a large computer hardware company], and just wanted to tell you what a helpful and intelligent programmer your [son/daughter] is. Don't be too concerned if they'd rather play on the computer than watch TV like everyone else."
I think I'm just kidding, but you never know.
- Hearing the president of the company mention me, by name, during his state-of-the-company speech.
- Letting me get published. Many companies don't the engineers do things like this, but it's a great way to be recognized in your industry.
- Letting me speak at conferences. Another big recognition factor.
- Letting my name show up in the press. The most hated PHB in my company right now is the guy who, while he was here, instituted the "My name and my name only shows up in the press releases" rule. He once even referred to me as "The Wiz" in an interview rather than say my name. UG.
- Random bonuses. It's always nice to just get a big wad of cash, especially when it's not on a fixed company schedule. It says "You're so appreciated that we're breaking the rules."
- On that same note, anything that feels like "Well yes, we have rules, but we're breaking them for you."
Things that don't work:- Embarrassing displays. At the christmas party don't have an awards ceremony and make your best engineers stand up in front of all their coworkers. No better way to say "Hey, you people sitting down, you're not doing a very good job!"
It was one thing for the president to mention my name -- most of the hundreds of people listening probably don't even know me -- but if he'd called me up on stage or something that would have sucked.
- Anything that blatantly mucks with team morale. While walking over to a team outing and crossing the street, a VP once yelled "Ok, everybody form a circle around Duane in case a car comes!" That's charming -- telling people that they have value as human shields. Not too funny. I don't know if any of the other guys cared, but it made me feel lousy.
- Non-perk perks. "Have a PalmV with Omnisky!" doesn't really work if it's just a loaner, and worse if you have to sign up for the service yourself and then request a reimbursement check every month.
Duanewww.HearMySoulSpeak.com
I guess you've already ruled out the obvious.
Oh well, too bad.
There is scientific (psychological) evidence that proves: if you reward someone for doing something that they do for free, there is a good chance that they will stop doing it if you stop rewarding them.
(off the top of my head, some details are fuzzy) A priest at an inner city church was having trouble in his neighborhood with graphitti. His solution was to call together a group of the 'best-known' graphitti artists in town and pay them to do a mural.
they did . . . he recieved some major flak from the community but continued on with his plan. He wound up paying for a small handfull of other murals, the kids were starting to really enjoy this job (BTW i might also embellish a little)
finally, the kids came back and asked for money to do another mural, the priest told them that the money was all gone, he could no longer afford to pay them to do their graphitti.
the kids, to get even with the priest, stopped doing the graphitti (which of course was his goal in the first place)
at the same time there is evidence that if you pay someone a meere pittance, ($1 vs. $20) they will find an intrinsic motivation to do perform a task.
a study found that if someone was given a mind-numbing task to perform for an hour, they would be more likely to give a positive evaluation of the task if they are paid $1 at the end of it vs. $20
what does this mean? (and now for the unpopular opinion) DON'T REWARD THE COMMUNITY AT ALL . . . but if you must, make sure the "recognition" is more a 'pat on the back' or a cheap, crappy, low-level gifts etc... if you "pay" people too much to do this stuff, you're likely to extinguish the behavior or be stuck paying these people
just so you know that there's SOME validity to ny little stories, I've got an undergraduate degree in psychology from Carleton University (Ottawa) the annecdotes are ones that i remember off the top of my head from classes
and i'm NOT an anonymous coward ... i just don't have my password at home
- Sheik Yerboutii
Secondary to that, I and other developers would feel rewarded if the company's policies were in general supportive of free software - for example, their patent policy - do they use patents abusively? Are they willing to blanket-license their patents for use in GPL code? That's more important than my personal credit.
Regarding personal credit, most developers are satisfied to have their name attached to code where the other developers can see it. A "credits" file is nice, and it makes sense for large projects like the Linux kernel where there would otherwise be a different name every two lines of code. For smaller projects, it's nice to have a credits file on your web site and distributed with your software in its documentation directory, but it's optional.
If your developer liason is able to seed effective developers with new hardware versions, they'll appreciate that and you will get more help for your efforts.
Thanks
Bruce
Bruce Perens.
If a company wishes to encourage certain behaviour which is beneficial to its business activities, there are a number of things they can do (including non-monetary rewards). Take a look at how some of the more innovative companies operate and feel free to toss in your ideas.
- (Wall Street bonus pool) announce that a certain percentage of sales will go into a bonus pool which would be divied up to customers (and internal staff) that contributed good suggestions (sorta the hi-tech equivalent of cereal prize-draws)
- (philosopher in residence/patronage) announce that the best person has been selected to serve as some honorary role in independent committee/oversight e.g. Stallman or Bruce Perens
- (MLM) offer freebies like tickets to a MICE (meeting/incentive/convention/exhibition) the company sponsors or open tour of their labs to meet the principles. Good for identifying good techies with potential on reducing recruitment costs (see those OpenSource projects can come in useful afterall)
- (SGI) offer to sponsor OpenSource projects that puts the client in charge. If motivating geeks is akin to herding cats, the smart money goes to whoever provides the best catnip.
- offer to fund downstream activities or co-marketing strategies (e.g. VTK and add-on modules) or even provide small research funds to help them along. This requires some degree of trust which may not always be available in PHB managers.
- include their names prominently in internal newsletters or external reports (peer recognition). This is based on the observation that in today's celebrity driven world, fame is harder to achieve than money.
It should be noted that many OpenSource projects are merely concentrations of dedicated users. Enlightened alpha-architects (e.g. Perl community) that aim to empower the end-user create a win-win situation for everyone provided they don't attempt to be greedy and screw the staff/users over because the prime users are just as clueful (if not smarter) than the original programmers.
LL
If the work preformed justifies the reward the following are so simple but nice ways to do it.
1. Write a letter of commendation praising the excellent work done.Here's the trick don't use a form letter take the time to write one and actually sign it.
2. Have the the big wig boss make a personal apperance and thank the individual personally in a public forum. Nothing was a bigger head rush than the CEO of a major stock firm personally telling me he had heard about the work I had done and very pleased with the results at a major shindig. I was also told my contract would be renewed with an increase.
3. Money, This is always well received and fits all sizes. Stock options are ok but the consultant may also recognize that the company is going down the drain no matter how nice his work is and stock options may be worthless next week. Also Gift certificates work if cash is to avant guard. Be classy with them, a nice resturant, Theater,ect.
4. Referals, In a highly competive industry this may seem way out, but there are plenty of other businesses that work with other businesses in a symbitoc manner. The ISP buys there equipment from a supplier, Tell the supplier hey I have a great person doing some work for me, I think he can do great work for you.
5. Hey about a nice break from work,I live in Florida did a job and as a bonus got four one day passes to Disney. It wasn't a trip to Tahiti but cool just the same.
It is well and good that you want praise well done work never forger when doing that to add the personal touch of telling someone " You did a good job,and we appreciate that."
In addition to many of the things already suggested, my recommendation is: recommendations.
When one of those coders needs a new job or is applying to a school, they should be able to get a letter of recommendation from a contact they worked with in your corp, or be able to list that contact as a professional reference.
Since they might not even think to ask (since you are neither employer nor teacher), take the initiative of offering this service to them.
And if the coder says "Gee, thanks, but I don't plan on needing any recommendations in the next 6mos", say "OK, we'll write something up, for you to hold on to for when you do need it."
Telling someone you think he's a great coder is nice. Telling potential employers/professors he's a great coder, now that's worth something!
-*- Any technology indistinguishable from magic is insufficiently advanced -*-
There's nothing more frustrating than trying to code for a piece of hardware that lacks documentation, especially if it's for a non-technical reason (like nondisclosure paranoia).
These people wouldn't be volunteering patches if they didn't enjoy working with the stuff, and you could make it even more interesting by going out of your way to provide docs, specs, and development support. That's a good way to make sure that freelance developers stay loyal AND that your products are among the best supported.
Some companies are already good about this, more of them aren't.
Little-known but somewhat related fact: the Linux drivers for many 3Com cards are inferior to the Windows drivers, because 3Com declined to provide specifications for the "Parallel Tasking" feature of the cards. Open source drivers are forced to bypass this feature, resulting in lower performance.
-John
I'll second what Bruce said. You want to reward the activity, not necessarily the people. So make it even easier the next time. Commit to sending some of those extremely valuable and rare pre-production prototypes to free software developers (presumably but not necessarily the same people who helped you this time). Put your hardware documentation up on the web in a .PDF file.
That should be step #0, even before you think about rewarding the current effort. If you think that what happened now was good, then Make Sure It Happens Again. Even better, make a big stink about it. Tell everyone "Hey, we worked with free software developers [insert names here], and we got these drivers for it."
Because there's still a lot of advocacy needed. For example, I bought an IOMagic digital camera. Serial port interface. No hardware documentation, though.
-russ
Don't piss off The Angry Economist
there may be other ways to thank developers that we haven't thought of
Bill Gates thought of many thousands of really great ways to thank his developers year after year.
Nevermind easter eggs and trinkets. Give me a cut of the gross.
For all intensive purposes, "whom" is no longer a word. That begs the question, "who cares"?
You are not remembering significant details of this study. Volunteers were drafted for an "exciting and interesting" study. The volunteers were told by the subjects just before them about how interesting the study was. The subjects were then giving a boring and repetitive task to do. After rating the task on how interesting it was, the subjects were either given $1 or $20 to hang around to tell the next subject how interesting the task was.
In follow up interviews, the people that were paid $1 rated the boring and repetitive task as being more interesting than they did in their original evaluations.
Dissonance theory explains the behavior because the people that were paid $20 felt justified in lying about how interesting the task was because they were paid quite well to lie. The people that were paid only $1 did not have a good justification for lying, so their brain went into revision mode to overcome cognitive dissonance. These people remembered the task as being more interesting because they didn't want to think of themselves as liars.
Therefore, companies that have boring open source projects to work on, should give minimal rewards to open source hackers to recruit other hackers by telling them how interesting the boring coding is. ;^O
have a day,
-l
Uh I wonder how anti patent some of you would be if you could get an upfront cash award + royalties.
I just got the best idea for giving credit to a coder where credit is not traditionally given. Create a 2x2 pixel magic dot, hide it somewhere incredibly obscure in the application, and allow the user to use this dot in conjunction with 2 other items to enter a secret "room" or area in the program that credits said coder.
I have this sinking feeling it would be considered cool for years to come....
Impliment a company policy that states that they will continue to provide open source drivers for all their hardware in the future. I think most developers would appreciate this and it would prove to those on the project that their contributions were more than just the one driver they were working one. They'll know they've helped the open source community as a whole.
Oh yeah, give them coffee too. I hear they like that
Woody
Free hardware, although it is nice, if you consider the time needed to get said card working, you are paying a $$$ per hour rate approaching $0 an hour.
Most of the people doing 'the opensource thing' are in it to scratch thier own itch. Mostly it is to have it work for themselves. Sometimes it is giving credit.
If they ask for hardware, and have done something for you in the past, give them more hardware so these past workers can be your future workers. Stroke thier ego with a credit or 2 in a file. Such gestures can only effect your bottom line in a positive manner.
But, consider making your drivers under a license that is useable by EVERYONE. I note how you mention Linux, and ignored BSD. By slapping a GPL license on your code, or some other license not compatibile with BSD, you lock out the BSD users, forcing someone to re-write the driver so it *IS* compatible with BSD licencing. If you are worried about your competition 'taking' your driver code, guess what....the GPL or any other license does not STOP someone from 'taking' your ideas as expressed in code. So why not make sure your code works with the 20% of the open source OS market you otherwise ignore if you don't license your code under a BSD compatible license.
If it was said on slashdot, it MUST be true!
How about it show your initials after the user destroys all his cities without firing a shot?
God forbid they would thank the hard-working folks who _ACTUALLY_ run the service. Thanks Eddie, the about box in Beta8 was everything you said it would be! :-)
--jordan
Most credit goes "unwritten" and hence can be withdrawn at any time -- especially if the manager on the project moves on to another company. Having a sequence of credit memos in your file; ones which you can take with you on job interviews both internally and externally is an execelent compensation since it enables you to work on more projects which personally interest you.
If you are interviewing which would you rather have, someone with 10 signed memos of recommendation from various managers or someone with a long resume listing phone numbers of managers who have moved on....
In the early days of Java, Sun used to give out a T-shirt with their mascot "Duke" holding up a surf board with a spider on it, as thanks for finding a confirmed bug in Java. Within Sun, a big status thing used to be those leather jackets with the Java logo (which can be bought for some $200 to $300) Put your logo on something that looks professional, and make it exclusive. Bingo, it gives thanks, and maximally targets an advertisement for the Tech crowd!
On a related not, speaking of keeping a contract open source friendly, this is an initiative started by the System Administrators Guild of Australia (of which I am a member). The Open Source Developer's Agreement "provides suggested variation to employment contracts that would allow employees to develop Open Source software without encumbrance from their employer, where there is no conflict of interest." (from the FAQ).
If it is a printer, or something similar a bit more expensive, a discount or rebate coupon at their favorite geekstore or supplier. This would have to be known in advance.
In a game, a copy of the Game at least, along with maybe putting a developers face on one of the NPCs, or whatever as appropriate.
gee, I wonder if anyone has put BGs face on an NPC in some shooter?
"It is a greater offense to steal men's labor, than their clothes"
I have no idea what Linus' visa status actually is, and I suspect he's already a US permanent resident, but if he wasn't he could easily qualify for permanent residence as an "alien of exceptional merit and ability". He doesn't have to rely on Transmeta for work permits.