How to get paid for external progamming?
-
I should program some new functions externally into app I've made in previous job. I've never did this before so I don't know what to do if there will occur new bug in old functions because of adding new features? It could occur also later when some user finds it. Is it standard to fix it for free, or charge usual fee per hour? Thank you.
-
I should program some new functions externally into app I've made in previous job. I've never did this before so I don't know what to do if there will occur new bug in old functions because of adding new features? It could occur also later when some user finds it. Is it standard to fix it for free, or charge usual fee per hour? Thank you.
1. Make sure that your current job contract allows you to do such a thing. 2. If that's OK, and if you feel like doing it, charge them by your current rate. 3. Ensure that you and them (the ones you're doing this for) mutually and fully understand and agree upon what's expected out of you.
“Follow your bliss.” – Joseph Campbell
-
I should program some new functions externally into app I've made in previous job. I've never did this before so I don't know what to do if there will occur new bug in old functions because of adding new features? It could occur also later when some user finds it. Is it standard to fix it for free, or charge usual fee per hour? Thank you.
Get a contract that spells that all out. If they want you to add a feature, they need to pay for it. Now, the trick is how stringent they are on the needs. Where I work there was a contract that indicated a code port would have requirments. Speed would not be impacted. Documentation provided. Support at a specified rate for specific amount of hours over a specific time period. We also wanted bug testing. If your code might introduce bugs, let them know you will require a test environment to make sure any such bugs are dealt with and that will be part of the cost and time. If they want to be cheap about it, say that you will cut that point out, but will offer X amount of time to deal with any bugs that arise due to not being able to properly test the code with the system. But don't do it for free. They might claim something of your new code is the cause when it isn't and you will be doing work for free then.
-
I should program some new functions externally into app I've made in previous job. I've never did this before so I don't know what to do if there will occur new bug in old functions because of adding new features? It could occur also later when some user finds it. Is it standard to fix it for free, or charge usual fee per hour? Thank you.
rrrado wrote:
I should program some new functions externally into app I've made in previous job.
Why ? First advice, DON'T DO IT! Second advice, DON'T DO IT FOR FREE! Third advice, contract the work, have it on paper (signed by both parties) what are the changes needed, what support you will have to do, and more importantly, how much they are going to pay you (the amount and the "when" they will pay you). If you feel confident enough of the work involved, then you could charge them for the "task" (i.e. you know from experience it will take 1 day to do), if you go in unexplored territories, then charge by the hours; and follow due process for requirements, specifications, and design and coding and testing and validation.
This signature was proudly tested on animals.
-
I should program some new functions externally into app I've made in previous job. I've never did this before so I don't know what to do if there will occur new bug in old functions because of adding new features? It could occur also later when some user finds it. Is it standard to fix it for free, or charge usual fee per hour? Thank you.
Forget the bugs. First understand the legal procedures. Are even allowed to do this legally? Are you allowed to sell it in your name? Get the terms and conditions for the application read by a lawyer. Then, get a contract ready and then start selling your work.
50-50-90 rule: Anytime I have a 50-50 chance of getting something right, there's a 90% probability I'll get it wrong...!!
-
I should program some new functions externally into app I've made in previous job. I've never did this before so I don't know what to do if there will occur new bug in old functions because of adding new features? It could occur also later when some user finds it. Is it standard to fix it for free, or charge usual fee per hour? Thank you.
To be more specific, majority owner is my friend and my partner in another company. Nobody wants to cheat anybody, but we want to make clear agreement to prevent problems later. So it is little bit like moral question. He is not programmer and looks at it like when he calls somebody to fix his car and mechanic breaks something it is his fault and should fix or pay it. For me it is not like that, if I would be employee, I would fix it in my working time as any other task.
-
To be more specific, majority owner is my friend and my partner in another company. Nobody wants to cheat anybody, but we want to make clear agreement to prevent problems later. So it is little bit like moral question. He is not programmer and looks at it like when he calls somebody to fix his car and mechanic breaks something it is his fault and should fix or pay it. For me it is not like that, if I would be employee, I would fix it in my working time as any other task.
See, friendship is fine. But what you are doing is business. Make sure you draw lines before you put effort in programming. If you are doing business, make sure everything is testified by law of land. Otherwise you might get into trouble whether your friend wants that or not. Also, keep your friendship away from your business relationship. They must be two different worlds.
50-50-90 rule: Anytime I have a 50-50 chance of getting something right, there's a 90% probability I'll get it wrong...!!
modified on Friday, January 15, 2010 3:01 PM
-
To be more specific, majority owner is my friend and my partner in another company. Nobody wants to cheat anybody, but we want to make clear agreement to prevent problems later. So it is little bit like moral question. He is not programmer and looks at it like when he calls somebody to fix his car and mechanic breaks something it is his fault and should fix or pay it. For me it is not like that, if I would be employee, I would fix it in my working time as any other task.
Then you DEFINITELY want a contract. Any time you do business with a friend, it is dangerous to that friendship. Having it defined and on paper makes all the expectations clear. Have the terms clear, stick with them and be fair and he will do the same if he is a true friend. The contract will help settle any misconceptions or disagreements and make it so you too can be professional and still be friends. As many have said before for terms and get it in writing before doing anything. If he protests, explain this is to protect BOTH of you. If you mess up, he has a way of showing how and you will fix it, and how this is the best way for you two to work professionally while maintaining a friendship.
-
Then you DEFINITELY want a contract. Any time you do business with a friend, it is dangerous to that friendship. Having it defined and on paper makes all the expectations clear. Have the terms clear, stick with them and be fair and he will do the same if he is a true friend. The contract will help settle any misconceptions or disagreements and make it so you too can be professional and still be friends. As many have said before for terms and get it in writing before doing anything. If he protests, explain this is to protect BOTH of you. If you mess up, he has a way of showing how and you will fix it, and how this is the best way for you two to work professionally while maintaining a friendship.
-
Put in or paper, or not, is different question, first I should know, WHAT to put on it :) Question of bugs introduced into old code is the problem now :)
How could either of you prove definitively that the bug was not there to begin with and just exposed or made more likely by the new code? How are you handling bugs in the old code now - if you're fixing them for free after the product was accepted, then you are cheating yourself, as almost no-one does support for free.
-
How could either of you prove definitively that the bug was not there to begin with and just exposed or made more likely by the new code? How are you handling bugs in the old code now - if you're fixing them for free after the product was accepted, then you are cheating yourself, as almost no-one does support for free.
-
Put in or paper, or not, is different question, first I should know, WHAT to put on it :) Question of bugs introduced into old code is the problem now :)
Just fix the bugs and forget about it. But if he wants a new futures or support for this application – see the above posts.
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
-
Just fix the bugs and forget about it. But if he wants a new futures or support for this application – see the above posts.
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
-
The prove is that thing works in old version. Currently I don't make support, last version is pretty stable, but new functions are needed.
Sounds like the only way you can hope to protect yourself is either to price in the work required to write comprehensive unit tests for those functions you will need to modify to support these new features so that you can agree to fix any injected errors missed without charge, or not provide that guarantee. You will still be vulnerable to concurrency issues and other difficult to test for or reproduce bugs, but at least you will have a chance... The fact that you are worried suggests that you think the code is fragile, or at least sufficiently complex that there is high risk of breakage...
-
So would you fix bugs for free? In bad case it means you make new function and get paid for one hour, but later you can be requested to fix bug you've introduced into old code and it can take 5 hours :doh:
That’s why the new function should be tested and customer accepted; about the old recently detected bugs – MS also doesn’t charges you for the OS updates and patches.
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
-
Sounds like the only way you can hope to protect yourself is either to price in the work required to write comprehensive unit tests for those functions you will need to modify to support these new features so that you can agree to fix any injected errors missed without charge, or not provide that guarantee. You will still be vulnerable to concurrency issues and other difficult to test for or reproduce bugs, but at least you will have a chance... The fact that you are worried suggests that you think the code is fragile, or at least sufficiently complex that there is high risk of breakage...
Well there is no unit testing and I guess creating some would be 100x more expensive than later fixing of bugs. I haven't seen the code for a year, some parts for 8 years. So it's never 100% safe to touch it. Of course I can find some bugs right after code change and fix it. But some could be found by customers later. When I think of it, it just changes the moment when bug is discovered, so fixing should be paid. Or does/should somebody say to his boss, that today I've broken some function when working at another, don't pay me half day I've spent searching for problem?
-
That’s why the new function should be tested and customer accepted; about the old recently detected bugs – MS also doesn’t charges you for the OS updates and patches.
The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.
-
rrrado wrote:
I should program some new functions externally into app I've made in previous job.
Why ? First advice, DON'T DO IT! Second advice, DON'T DO IT FOR FREE! Third advice, contract the work, have it on paper (signed by both parties) what are the changes needed, what support you will have to do, and more importantly, how much they are going to pay you (the amount and the "when" they will pay you). If you feel confident enough of the work involved, then you could charge them for the "task" (i.e. you know from experience it will take 1 day to do), if you go in unexplored territories, then charge by the hours; and follow due process for requirements, specifications, and design and coding and testing and validation.
This signature was proudly tested on animals.
I charge per task in unexplored areas, and per hour only in well known areas. My reasoning is that I can't accurately give an hourly estimate for unknowns.