Solutions for When Managers Hijack Your Code? 108
Chiggy_Von_Richtoffe asks: "Two friends of mine work at a warehouse distribution center. First, they are customer service representatives, not paid developers. Secondly, the are developing the software in their spare time to make their jobs easier using MFC and HTML. Their bosses have already talked up the idea behind their backs, and then came back to them with a deadline to release the (in-house) software, on a national level. However, they haven't had time to release their first version, and the bosses don't even know what the software can do nor even what it looks like. There is a feeling that the bosses may pat them on the head and run with the software for their own promotions. What should they do?"
hwah? (Score:5, Insightful)
I'm not even able to figure out what question is being asked here.
It sounds to me like they've created something, probably wanted to show the bosses to get some love pats (btw, DON'T DO THAT! HAVE YOU NOT BEEN READING RECENT /. ARTICLES?). And now, they're upset because the bosses want to run with the
stuff. That's kind of what happens. Sounds like the "service reps" were a little
naive, and the bosses were greedy and stupid.
(Aside: I used to work in IT, and if service rep people wanted to roll their own, there was little to be done to stop them. But PHB's who were gushing over these home grown "apps" that were successful talking the rest of the company to adopt and deploy ALWAYS ended up costing the company tons of money.... the apps were never scalable, maintainable, compatible with anything else. I'll allow that it's possible but I've seen this kind of scenario many times, and they've NEVER brought positive ROI.
Just Do It (Score:5, Insightful)
I say go for it.
Let your boss know that you need to dedicate more time to the project and cannot meet the deadline with the interuptions of your current job.
At 3/4 of the way finished send an email to your boss and copy HR on it asking to be reclassified with a different job title because the duties of your job have changed so much. (some companies call this a pay raise)
Never say it is done. We all know that revisions will need to be made and bugs to be fixed. Give it a long beta phase. I bet you will get lots of visibility because of the project. Once it goes to the support phase, you boss will still be clueless and you will be called for everything relating to it.
Now you have a internal project that the whole company depends on and goes to you for support. It makes your boss look good and gives you a great refference. You get exposure to the develoment process and customer side of programming.
Its a great resume builder and I am guessing this is just a temp job anyway. So once it feels stable, find another job. Then you can make more money when they contract you to fix, upgrade, redesign, or want to scale it.
Besides, if they are developers at heart, they would prefer to do the project than their real jobs.
Re:Just Do It (Score:2)
Re:Just Do It (Score:5, Insightful)
Yes. These guys shouldn't be focusing much on getting internal corporate credit for it. What they can get out of this is
But yes, their bosses will probably get a lot of the credit. Traditional corporations can be thought of a feudal empires. Once you're a knight with success in many glorious battles, the nobles will take you seriously. But a customer service rep in the warehouse equates to some peasant cleaning out stables. One day you might be a mighty knight, but for now you're dressed in rags and covered in horse shit, so nobody's going to listen to you. Make your bosses look good, and they can help you get promoted to squire. That's no great shakes either, but at least it's on the way to becoming a knight.
And yes, I agree that this sucks, but hopefully it sucks less than spending the rest of your life doing customer service.
Re:Just Do It (Score:1)
A good boss knows he needs good people and will keep them with him.
Too bad a good manager like that is hard to find.
Re:hwah? (Score:2)
Bargain (Score:5, Insightful)
Re:Bargain (Score:5, Insightful)
Unfortunately a lot of companies have IP clauses in ther contracts w/ employees. For example, I used to work for IBM and they had first dibs on anything I developed, whether it was on company time or not.
Re:Bargain (Score:1)
Re:Bargain (Score:3, Insightful)
In that case, a surprisingly large number of people seem to get screwed by unenforceable contractual terms. :-(
When my employer (after being bought out) tried to stick "all your IP are belong to us" terms into the new contract everyone got, at least half the dev
Re:Bargain (Score:1)
I think that includes anyone who has ever clicked a EULA.
A lot of the content in EULA are unenforceable even if clicking I Agree formed a binding contract between you and the publisher, but people still put up with the crap in the EULA and still try to play by it's rules. I;m also doubtfull that DRM if legally binding under copyright law, what happens when copyright expires on the DRM'ed data.
Re:Bargain (Score:2)
No offence, but you're not a lawyer, are you? Unfortunately, as much as I wish your beliefs and doubts were justified, a lot of what you wrote sounds very unlike what lawyers in prominent jurisdictions say on these subjects. :-(
Re:Bargain (Score:1)
Re:Bargain (Score:1)
Re:Bargain (Score:2)
How much "justice" can YOU afford?
Re:Bargain (Score:1)
Re:Bargain (Score:3, Interesting)
Re:Bargain (Score:2)
Did they assume legal responsibility and liability for anything you developed, company time or not ? Didn't think so...
Re:Bargain (Score:2)
I put in the stuff I'm working on on my own.
A previous possible job, I sold some old computers to my father's work for use as build machines. They then didn't want to tie up their expensive engineers to set them up - 1- they cost alot per hour. 2- they didn't quite know what they were doing. So I was go
Re:Bargain (Score:2, Insightful)
That's a good one. Without knowing which country the OP is talking about we don't know exactly what the deal is, but for a lot of countries everything created whilst working for your a company becomes property of the company. Even if it is in your own time. The only exception is when your job has no relation to your "hobby project". For example, writing some software while working as a waiter.
This clearly isn't the case as the OP states they are writing to make their job easier. It's sad but that's just
Re:Bargain (Score:2)
Unless they're using company equipment, in which case the company can make a strong legal argument that they financially supported the development of the software, and hence the ip belongs to the company.
If you're a developer working for a company and building your own software on the side and you want it to be legally clear that your side work belongs to you and not your employer, you can't use
I wonder. (Score:4, Funny)
Those people havent tested it upon anybody.
Those people probably havent debugged it well.
Those people arent qualified (Customer service reps).
The managers are supporting them.
Baloney Baffles Brains (Score:1)
Sounds like an excellent time to give them a good fahrenheit to kilometres conversion program. Then run.
Simple solution (Score:5, Interesting)
2. Play Xbox until deadline for "RTM" arrives
3. Deny and involvement with manager's pet project.
4. Laugh uproariously as former managers are escorted off the premises by security for their complete and utter failure to meet deadline
Personally, I would do my best to make them look as stupid and inept as possible. You might just be doing other underlings a favor in the long run. They'll be much less likely to use subordinates in the future.
Re:Simple solution (Score:3, Funny)
2. Play Xbox until deadline for "RTM" arrives
3. Deny and involvement with manager's pet project.
4. Laugh uproariously as former managers are escorted off the premises by security for their complete and utter failure to meet deadline
Step 5: Profit!
Re:Simple solution (Score:2)
Re:Simple solution (Score:1)
4. Get fired for ever disagreeing with the overlords. Remember, your bosses boss, his boss, and his boss, all the way up, are all managers. They stick up for their own. Not you.
Re:Simple solution (Score:2)
Their Time or Company Time? (Score:5, Insightful)
If they are doing it on company time, then it probably belongs to the company, and they are probably screwed.
Re:Their Time or Company Time? (Score:1)
And that is when things get nasty.
Re:Their Time or Company Time? (Score:2)
Re:Their Time or Company Time? (Score:2)
Backdoors & "Phone home option"? (Score:1)
Jail time? (Score:2)
Re:Backdoors & "Phone home option"? (Score:1)
Rm -rf? (Score:1)
Woops...
Sorry boss, for some reason the code's all gone. It might take a hefty pay raise or a nice licensing fee to get it back!
mwahahahaha
The bosses haven't even seen it? (Score:1)
End of problem.
Contract (Score:4, Interesting)
What they should do is draw up a contract/proposal, detailing the features, testing proceedure, launch proceedure, and compensation. If they don't actually want to do it, just put a huge price-tag in there. Of course, any price tag will probably make the manager balk as he/she probably thinks they're getting this new system/utility for the $9/hr they're already paying these guys.
Re:Contract (Score:3, Informative)
If they developed it on their own time (and preferably at home, not using company computers), then it's their IP.
It's not quite that simple. If they did it in the office, using the company's resources, then the company probably has a claim. It also depends on their employment contract. Some give the company rights to any material including software developed by an employee regardless of when or where it was developed during the period of employment. You can argue that such terms are unconscionable an
Re:Contract (Score:2)
Tell them it's GPLed (Score:2, Funny)
Give them what they ask for (Score:1)
Quit. Release the Software as Shrinkwrap Product (Score:2)
Then release the app as your own product.
Re:Quit. Release the Software as Shrinkwrap Produc (Score:2)
Re:Quit. Release the Software as Shrinkwrap Produc (Score:2)
While it's difficult to start a business, market a product, etc., etc., they might be able to handle that. My bigger concern is that their product is probably way too specialized to be marketable. These sorts of applications are usually one-shot deals, designed to fit into a certain workflow that only exists at their company.
So what they ought to realize is that there is probably only one customer for their application. You could suggest having them demo the product, quit,
It depends on their job (Score:1)
On every screen (Score:3, Funny)
Seriously... sit down with the boss and tell him your concerns. If he's a decent person he'll do something to alleviate them. If he's a shifty fuck then you need to realize that getting credit for software is not your largest problem.
no downside at all (Score:2)
if it doesn't work, stick the managers name on it.
What I would do... (Score:4, Insightful)
WTF? (Score:3, Insightful)
1. MFC and HTML? WTF? What does that even mean? How are MFC and HTML integrated at all?
2. "In their spare time?" What does that mean? Their "spare" time at work? Too bad. If you worked on something on your company's time, it is theirs. If you worked on it on your own time, it is yours.
3. Their managers don't know what the software can do but they're "talking it up" and releasing it across the country? Yeah....that's likely.
4. How can managers "hijack" your code? You work for them. Anything you do in their supervision is their responsibility. How is that hijacking? They may "run with it" for their own promotions? WTF!!!???? Instead of what? Promoting these guys to vice-presidents? Get real. Do you really think these guys should be revered as gods throughout the company, for writing this? All you will ever get, even as a developer, is a salary, and perhaps, if you're lucky, a "good job". You will NOT be promoted for coding anything.
Man, I am so tired of these whiny questions..."My boss blah blah blah". It's a job. Grow up, and figure it out.
Re:WTF? (Score:2, Insightful)
How about keep your fucking mouth shut until you actually have something? Sounds like the people who are really talking it up are the very people bitching about other people talking it up.
Re:WTF? (Score:2)
Duh. .NET
Re:WTF? (Score:2)
The lesson to be learned here is: if you automate your job, keep it under wraps. Sure as hell keep control of it.
Because jackasses like this would love to fire you or cut your salary for making your job easier.
Re:WTF? (Score:2)
Heh...
Re:WTF? (Score:3, Funny)
Dear Employee,
You will know that MFC and HTML form part of our synergy of vertically integrated products, allowing a shorter development timeframe, an empowering, scalable and future-proof across multiple client-based platforms.
This is just the tip of the iceberg in our results driven proactive marketing plan.
We're really pushing the envelope here, and it seems you are out of the loop. We really need you to ramp up your
they should (Score:1, Redundant)
make sure that it is known that the code is not meant for release, but is just an aid in their work;
include some serious backdoors into the code;
???????;
profit!;
What do you mean "spare time"? (Score:2)
Keep in mind, however, that that's not all there is to it. Is the software currently deployed/hosted on company servers? Are they testing it at work or on work-related files/datasets/etc? Can be it be used for any company or is it designed so specifically that the average person would realize i
Don't DO that! (Score:3, Informative)
You may think of it as a fun side project, but your boss will invariably think of it as overtime. Nowadays, it doesn't make a damn bit of difference if you did it from home, either. Everyone brings work home with them all the time, so if you try to argue that it wasn't something you did for work because you did all the programming at home, your boss is either going to laugh at you because you've done plenty of work at home for him in the past, or, if he's clueful, he's going to laugh even harder because he knows that installing this software on the company servers is not something you can do from home.
Now I'm all for putting limits on what work can ask you to do on your personal time, so the boss shouldn't expect you to start working mandatory overtime to complete this app, but if he wants to shuffle some duties around and make development of this your primary responsibility, well, tough luck, but you were asking for it.
Re:Don't DO that! (Score:1)
In the long run, your employer sets the terms of your employment, and if you have made it clear that you could do your job a little bit better by doing some side project or other, but y
A developers, and managers view point. (Score:2, Informative)
Assumption I am making:
1) There is a likely chance that you worked on this software durring office hours, after all, you developed it for this specific job. You are not a contractor, you are a full time employee. This makes it difficult for you claim it is yours because you developed it for your specific job. The only thing you really have going for you, is you are not a "developer". The assumption I will make here is that the company
Re:A developers, and managers view point. (Score:1)
In a proper
Let's get the blatantly obvious out of the way. (Score:4, Interesting)
I'm sorry, I just couldn't resist. Now, on to the thingy.
First, I'm going to work under the assumption that "on their own time" actually means "during down time when the reps were sitting in front of their computers but not actually taking calls." If that is the case, it will be hard for them to claim copyright on the application, because it was done on the employer's time and using the employer's resources. That just strikes me as the most likely interpretation.
Now, it's not fair for their bosses to be expecting them to do software developer work at phone jockey prices. When they set a deadline, this thing stopped being "a fun way to spend down time" and became part of their job duties, additional duties which require skills that most of their peers don't have, and for which they aren't being compensated. That isn't acceptable, and hopefully they'll be willing to stand up for themselves.
My suggestion: They should go back to these bosses, explain that their work up to this point has gone far above and beyond their actual job duties, and that if the bosses expect that work to continue then the coders should be rewarded above and beyond their actual paychecks. It's up to them whether they want this compensation in the form of money, a transfer to full time development work, prestige, scooby snacks, or glib promises that the bosses don't intend to keep.
If they can strike a deal, great. Tell them to get it all in writing, then build the software according to the highest standards of which they are capable.
But if negotiations fall apart, and the bosses come back with a "do it or you're fired" ultimatum, they're still in control. If they want, they can build InHouseApp 1.0, Teh Suck Edition. Random crashes, database corruption, an awkward, unintuitive interface... whatever it takes to embarrass the bosses who made such wild promises. Just remember that it has to be so sucky that the old way is far preferable, so they don't have to eat their own dog food.
Or they can build it nicely anyhow, and hope that their work will gain them some recognition. I wouldn't suggest this option, though. There is no reason for them to make it easy for the bosses to take advantage of them. For the same reason, they shouldn't even consider trying to take ownership of the application. Don't give them an excuse to file a lawsuit. That means letting management have the current codebase, rather than stripping out all the comments and adding a few judicious memory leaks.
Finally, in case of termination or threats thereof, make sure they know how to reach their bosses' bosses. They should have someone they can go to to explain their side of the situation.
Re:Let's get the blatantly obvious out of the way. (Score:5, Insightful)
If they want, they can build InHouseApp 1.0, Teh Suck Edition.
This is a bad, bad idea. Never do anything better than the best you can do under the circumstances. You'll never have the circumstances to do the best you can do period, but at least try.
I'll give you two reasons why. (1) you're not that kind of person. (2) it will come back to haunt you, either in job interviews, recommendations, or your some day in the future application to work on the team that maintains this when it's a multimillion dollar asset for the company (riiight).
Much better, in the long term, to take the "You're fired" route, unless you're totally living hand to mouth.
Finally, in case of termination or threats thereof, make sure they know how to reach their bosses' bosses.
Here's an interesting social psychology result that was published a few years ago. They had an experimenter describe another person to a subject. The subject was later asked to describe the experimenter and many of the attributes of the person being described were attributed by the subject to the experimenter. It turns out the human mind has a "birds of a feather" wired in: losers associate with losers, slimeballs with slimeballs. So you see, you never, ever build yourself up by tearing another person down.
At very least, the boss-bosses will conclude you're a loose cannon, and they'll be right.
So, no. Don't contact the bosses bosses unless there's something going on that is illegal or will get the company into trouble. You never bring your troubles to anybody but your direct manager, and then only reluctantly. Everyone has their own problems and would rather think about them than yours. Managers are looking for solutions, not problems. People are positively blind to problems until a solution appears. So, you gotta solve it man to man, right here at your level. The only circumstances you contact any higher ups is as the cavalry coming over the hill, never as the scout bearing bad news.
If you can't, and you are asked to do something you aren't willing to do, and you're sure the project has legs, then you resign, giving no cause at all for any dissatisfaction. This may do the trick in itself, but if not, then wait for your boss "Alice" to get in trouble. At that point, "Bob" realizes he's in trouble to. Then you approach Bob, and you do it this way:
"Bob, I hear the project's in trouble. I feel bad because the whole thing was my idea originally. Alice was gung ho about it, I know, probably too gung ho. I explained this was going to be a problem, but I think she must have thought I was maneuvering for more money. I don't blame her because she was trying to do the right thing by the company, but I felt under the circumstances I couldn't get behind the project as it stood. So we had to part ways -- amicably I hope. But I still feel bad. I'll be glad to come in and discreet look at the situation to see if I can't help you get things back on track. No, no, don't worry about paying me, I've got plenty of paying work, and it'll only be a couple of hours, and I can't promise anything. But I do feel responsible."
Now, isn't this a much more attractive scenario? Alice's perfidy and incompetence is exposed -- Bob has witnessed it with his own eyes. He also sees you're a decent upstanding chap. Alice has blamed everything on you since you left, but blaming problems on subordinates never cuts the mustard. She's been saying you're a slimeball -- if she only knew. You're not a slimeball, you're much worse: you're a cunning bastard who knows how to discreetly leave knives around where your enemies are most likely to pick them up and cut their own throats.
And while you can't count on being invited back, if you are you're in the catbird seat. If the project goes down the crapper, it's still Alice's fault. Of course, the project may go on to be a roarin
Re:Let's get the blatantly obvious out of the way. (Score:1)
Re:Let's get the blatantly obvious out of the way. (Score:2)
What they should do is take the compensa
This story doesn't make much sense... (Score:2, Interesting)
However, let's assume that the story is true. Let's make another assumption that the problem the submitter's friends is not that management is taking what the developers feel to be their IP, but that management is trying to release something cross-company that isn't remotely ready for prime time.
This seems to go against
Politics, job roles, and signing code (Score:3, Informative)
Many arguments have been made regarding the fact that we don't know much about the circumstances of these individuals and what kind of contracts they may have, when they've been working on it, etc. However, there are some things we can probably ascertain.
We do know that they are customer-service reps. Which means two very likely things. First, they were not hired for their programming skills, which means they are likely not being adequately compensated for this software. Second, they are probably not under a non-compete clause of any kind. While programmers and high-level managers are often put under such things (which in my experience don't hold up very well unless they are extremely explicit), customer service reps are RARELY if EVER put under such restrictions. Why? Because the industry knowledge is pretty well standard for most of those things, they rarely have access to real trade-secrets, and most of their skills involvin simply talking and entering data - mundane everyday stuff.
The problem is that somehow they worked on software in their own time, at the company or not, and their bosses are going to try to make a credit claim. If they want credit at the company, they need to start writing documentation, documenting out the development process, the origin of the idea, and so on. Get those documents out to the right people and let them look over them. Put down where the project stands, how many hours of work they estimate they need to get to a completed project, and what a reasonable compensation level would be.
Lastly, they should sign their code, so that when some stupid boss claims credit for it, they can point to the code itself.
The big question would be whether the whole organisation is made up of jerks, or just their immediate bosses who might try to claim credit for it. If they don't think there is any fair management there, they should just stop working on the code, or write some psuedo-modules that make no sense and if implemented by someone who can't write code proeprly would eat the system, or else mess up the logic of the app for the uninitiated. Then they should quit and get better jobs.
Re:Politics, job roles, and signing code (Score:3, Informative)
If the company is as riddled with jerks, then they already consider the codebase their property. From a legal standpoint, they're probably right. Any damage these developers do to the current codebase could be construed as vandalism of a company resource. If they decide to quit, or simply stop working on the project, it's already unlikely that management will find anyone who wants to finish it.
They might be able to get away with it, because management isn't familiar
based on first hand experience here... (Score:1)
Were you coding this stuff *really* in your spare time??? Did you do this at home or while in transit back and forth??? Then the company might litigate you over the rights to the code under the "inventions" clause in most employee manuals. Or did you do it on company computers and maybe over *your* lunch hour? Then they have the legal right to take it from you since you were doing it on their hardware.
It might be time to hand them what you've done and say; "Its now
find all the papers that you signed when you .... (Score:2)
Alternately they could f--- their bosses and release pornware ;-) and say their bosses made them do it :-O
It all depends... [IANAL] (Score:2)
1. Quit, sell back the code, get lucrative support consulting fees.
or
2. Do what the boss says, finish development, release, watch boss get credit.
The probabilities are very high that the 'spare time' that is referred to actually was on company premises and equipment, and that work usually belongs to the company as per the employment contract. So #2 is the most likely to happen. Trying to pull a #1 will probably get you sued.
Now, to mitigate #2, Attain high visibility, get involved. The best
Obvious... (Score:2)
Play Dumb (Score:2)
Then go home and write it in generic terms, copyright it, and make it available on their own terms to whoever they wish. That wish may be measured by monetary offers should they so choose. Anyone making such a monetary offer does not need to know how many or few others are making such an offer (or if others even exist), what those offers might be, whether the authors will settle for a lower offer from
Going "national"? (Score:2)
There's only one way to deal with this.
GO POSTAL!!!
About... (Score:2)
Re: (Score:2)
Obvious (Score:2)
Just leave (Score:1)
Delete the source code. If questioned just say, you didn't like the direction of the code and deleted it. Since you are leaving, you will not be working on the project anymore.
Its just a program. Big freakin deal. Any developer with any kind of experience has thousands of lines of their own code that they no longer use. No developer keeps around code written early in their career. Its just too damn embarassi
wiki (Score:3, Funny)
Similiar situation to mine... (Score:5, Interesting)
I fix show-stopping bugs (since I rely on the program, and major bugs make my job more difficult) as they come up.
I *really* want to do some more work on the program. Clean up the code (it is in PHP), comment it a bit, and fix some of the hacks that allow it to work to more permenant solutions.
I am not a developer for the company, though, and do not get paid to do development work. As such, as tempting as it is, I only touch the code if a new release completely breaks things. [Yes, I think it is possible the sole developer, who I think got a small contract from the company teo develop it, is not a developer either, and probably does not QA on any release].
Some things I could do would make my job easier, but I have no desire to do something "out of the kindness of my heart" for the company without some form of payment.
Sometimes I feel greedy for my position, but I also reaslize that if I write a good enough program to make my job 10% easier or faster, the company would be more than likely to cut my hours 10%.
I suppose that is a comment on company loyalty (going in both directions)
Shareware model (Score:1)
Screwed either way (Score:1)
If they truly did develop this on their own time, using the companies computers they are guilty of improper use of company equipment. If they did it on company time, then they are also guilty of getting paid for not doing thier job. Either way, the company owns the code. If they did this on their own computers, then they own the code and the company has the right to can them for installing and running unauthorized software. Anyone see any possible angle where the company doesn't have a good reason to ca
Could THIS work...? (Score:2)
contractors use tools that they provide for themselves,
- they are really contractors
- they own rights to their code
- get court to agree
- PROFIT
Slowpokes (Score:2)
Make sure to embed the Easter Egg that gives you extra credit for having written it. Then if they steal it, you could prove that you own it (at just the right moment, in front of official witnesses and l
Here's what to do: (Score:1)
Play the game (Score:5, Interesting)
Take the bosses aside, off-premises (lunch hour, after work) and have a candid conversation. They agree to a contract with you to code said software. Be nice and professional and all that, and don't threaten. If they refuse, tell them ok, they can have the thing as-is, but you won't work on it any more, since you don't want to be accused of using company resources for a personal project (which is what it is unless the company wants to pay for it). Then deliver the POS code listed in earlier post - the 'rigged demo' version. It should do something marginally useful, but as little as possible. If they gripe, tell them you hadn't gotten around to making it fully functional yet, as it was a 'personal project". This gives you plausible deniability. Playing stupid is one of the only defenses against a malevolent boss.
Oh, if they do refuse the contract, find their competitor and offer it to them. Since your current employer refused it, it should be fair game, and they can't sue you over something they can't even identify.
OK, for real... (Score:1)
Re:OK, for real... (Score:2)
I'd only like to stress your last sentence. Retaliation can only lead to bad things. These guys should get as much credit for a job well done as they can and use it as resume fodder to find a better gig - either in a different dept or a different company.
Re:I did this once (long story) (Score:2)
Um... getting a VB program to read input from a text file isn't all that hard. Open Somethingorother For Input, or maybe open a CSV file as a recordset... Plenty of ways. I know we hate a