Monday, May 11, 2009

Programming...

    While I realize that most people who read this blog probably don't program, I had an awesome idea and felt the need to share it. At my current job I, well, program, but the thing that always frustrated me was the way we get paid. Not the amount by any means, get paid well for Waco, but the fashion, namely, hourly.

    Hourly wages always annoy me. If I work my butt off I get paid a certain amount, if I work a regular day, same amount, if I stand around and count ceiling tiles for most of the day...you guessed it, same amount. I suppose it all kinda balances out in the end, but it frustrates me. So the solution? Pay for work completed!

    For most jobs this has some issues. First: If I work retail and people don't come in and buy, IE: No one wants a hamburger on your shift, then I kinda get screwed, and everyone fights over the busy shifts and refuses to work the slow ones. Second: Most people don't have projects they have to complete on a regular basis, usually it's more along the lines of "go straighten those shelves" or "stand at this assembly line for the next eight hours". And who wants to go through the trouble of figuring out the monetary worth of straightening shelves?

    So it's not perfect for everyone, but it works nicely for my job! At my work everything we do is in "projects". Some department will decide they need something changed, and then submit a project request to my boss. My boss will look at the request, look to see who is busy, and assign it to someone based on whatever. My thought? Have a que!

    Now is where I start relating this to games. In WoW in order to do a quest you have to have a certain level AND a certain rep requirement (though sometimes it's just friendly) to do something. For the *really* good rewards you have to have faction specific rep. So how would this work for programming? Assign people "levels" (IE: how capable are you with your program) and "rep" (IE: What departments do you work for) and let people choose there own projects.

    You'd also have a few rules, such as: You can't pick up more than x projects at a time, or: If you don't finish a project on time you lose the "reward" for finishing it (or some sort of measurable loss for slacking). You'd prolly need more, but an interesting idea no?

    Oh! But you ask "Why would you help your co-workers, aren't they just your competition?" Well why do you see waiters helping other waiters? Because they know they'll need help as well. And if they do some huge favor for them they'll usually slip them a few dollars. You could do the same for programmers, that or maybe when the project is ended they could let the other guy have some of the exp. 

    Someone not helping out? Or not reciprocating to people helping him? Those sort of people are already here! And with this system, they'll weed themselves out, maybe faster than they do now.

~joe

No comments: