|
Part of a warranty program is deciding whether there is a problem with the product or if it is caused by user error or (as in your case) a malicious user. You did that investigation and found that it was not an error on your side, in which case it would not be covered under a warranty program.
Vivic wrote: This was an American. Wait till you get an Indian as a customer. You will all be singing a different song then! Why? I am not sure I understand what you mean.
Soren Madsen
"When you don't know what you're doing it's best to do it quickly" - Jase #DuckDynasty
|
|
|
|
|
SoMad wrote: Part of a warranty program is deciding whether there is a problem with the product or if it is caused by user error or (as in your case) a malicious user. You did that investigation and found that it was not an error on your side, in
which case it would not be covered under a warranty program.
But who pays for the time and aggravation to track down the malicious nature of the user?
Time, as they say, is money; especially so in the consulting business.
Disgruntled Indians would be even more malicious than this a***hole. And all Indians ARE disgruntled ALL THE TIME. Usually, one designs a product to be fool-proof. Then comes the level of idiot-proofing your product. The highest level is f***-up proofing. India is the Underwriter's Laboratory for testing for f***-up proofness.
Have you dealt with the Japanese? They just won't use the product for 2 years and when the software is clearly out of warranty, they would start expecting Six-Sigma level of performance. Not from the software but from the provider, in terms of responding to bug reports!
|
|
|
|
|
Here is a humorous anecdote for you.
I was working for a Silicon Valley high-tech company who had a factory in Japan. We had developed a home-grown software to test the network links to ensure that the network stayed up, and if it didn't, a sysadmin was notified by pager so that he could respond to it. One night at about 12:30 the sysadmin was alerted that the link to Japan was down. He signed on from his home PC, couldn't get the error fixed, so drove up the 4 miles to work and fixed the problem. It took the Japanese more than 30 minutes to consult with each other in the factory and finally gather the guts to report the problem to the Help Desk. When the Help Desk called the sysadmin, he decided to f*ck with the Japanese minds. He told the Help Desk that they could themselves verify if the link was down as there was absolutely nothing wrong with the network and they should tell the Japanese not to raise false alarms. I think now the Japanese take 2 hours talking to each other, convincing themselves that it is an error worth reporting, etc.
|
|
|
|
|
Vivic wrote: This was an American. Wait till you get an Indian as a customer. You will all be singing a different song then!
My experiences with working with Indian employers (as a contractor) is that they will haggle you to death, trying to weasel out of paying for anything. I would hear, over and over, "that feature is in the original contract" when it clearly wasn't, or some other dodgy excuse. Now, I understand that it's a cultural thing and I got used to it, in fact, I found it to be excellent training for learning to say "no", but it's also annoying to have to constantly be feeling devalued. It took me a while to recognize that the need to feel valued is probably also a cultural thing and to simply look at the process objectively. What did piss me off though was the blatant lying - sure, they would back down once I shoved the contract under their noses, but it was clear up front that they knew they were being deceptive in an attempt to get me to do work for free. And quite frankly, I found that rampant working with Indians, and I find that much less so working with Americans - they're deceptive in other ways!
Marc
|
|
|
|
|
If I code something in .Net and there's a bug in the library am I liable for that? Or what if my code is a third party piece of software being used incorrectly in the program that has the problem?
What if the user has downloaded and patched their OS which causes problems is that my fault or the patchers' or the people who made the OS?
If a bolt fails in a bridge who's at fault, the bridge builders or the bolt makers?
|
|
|
|
|
dimensionJumper wrote: If a bolt fails in a bridge who's at fault, the bridge builders or the bolt makers?
That's what they spend a lot of money finding out when the bridge falls down: was the bolt defective? Was it installed correctly? Was it the right bolt in the wrong place? Was it specified incorrectly by the designer?
Why they spend the money is to stop it happening again. We (as an industry) don't. We paper over the cracks or ignore it and carry on.
The only instant messaging I do involves my middle finger.
English doesn't borrow from other languages.
English follows other languages down dark alleys, knocks them over and goes through their pockets for loose grammar.
|
|
|
|
|
I just wanted to say that programmers arent the only one that gets off the hooks: How about Banks?
Quote: Why they spend the money is to stop it happening again.
We did spend a lot of money there, but I dont think we fundementally have changed anything that would prevent it from happening again.
For me this can get quite complicated, and Im still not quite sure how to answer this question. Yes it should work, and yes you should have personal responsibility, but what if both you and your boss makes a mistake? Or a different example, are the voters liable for mistakes that is made by your PM if you voted for him? In that case he takes the blame and you go free.
Not trying to make this into a fight, but just saying that a mistake seldom happens alone...
|
|
|
|
|
They don't, no.
But a blanket "No" is just saying "I don't care how good my code is - I've got the money (or my company has) and stuff the punter". To my mind that is the wrong attitude, but one that is prevalent in the industry.
The only instant messaging I do involves my middle finger.
English doesn't borrow from other languages.
English follows other languages down dark alleys, knocks them over and goes through their pockets for loose grammar.
|
|
|
|
|
I agree with your point, somewhere on the line within reason. I think I would like to say something along the line: It was better in the old days when people had honor and pride, as I dont really think its about that anymore, its more about the money, and thats sad.
|
|
|
|
|
With you there, brother!
The only instant messaging I do involves my middle finger.
English doesn't borrow from other languages.
English follows other languages down dark alleys, knocks them over and goes through their pockets for loose grammar.
|
|
|
|
|
From https://www.schneier.com/essay-228.html[^]
"There's no other industry where shoddy products are sold to a public that expects regular problems, and where consumers are the ones who have to learn how to fix them."
The whole article is well worth reading...
|
|
|
|
|
After development there is testing so if it passed development and testing no warranties should be on developer nick.
|
|
|
|
|
I think you are wrong: You are saying that if someone random tests a car I designed and didn't find any problems, then I shouldn't be liable for the brake system failing completely if you exceed 100mph on a Tuesday? Or the car overheating and bursting into flames[^] if you drive it too hard? Tell that to people who bought Ferrari F458s!
No, I'm sorry, but you have to accept responsibility for your mistakes. You can't just palm them off on the testers "not doing their job" because you don't feel it's your problem once you hand it over.
The only instant messaging I do involves my middle finger.
English doesn't borrow from other languages.
English follows other languages down dark alleys, knocks them over and goes through their pockets for loose grammar.
|
|
|
|
|
I remember a day at the beggining in the firm I work for. I cam one day to the office and one of the seniors was looking to the roof and playing with a touch panel. I asked him, what are you doing?
His answer... "playing dumb user"
That got me thinking for a couple of hours... and I took one of my current projects that day. I had tested it and was working fine.
Then I tested it blindy touching buttons in random order. I found 10+ bugs within 10 minutes.
Testing a program you have developed is a "tricky" test. You do things as they are supposed to be the correct sequence. But the biggest problems are always the exceptions and random clicks.
the conclusion... no matter how hard you test, there will always be a user that finds out how to screw it up.
So... if the problem is in your code... yes, it is your fault.
If I go to a mechanic and give my car to change the wheels and after 200 km one wheel gets out of the place because it was not correctly fixed, I will ask for warranty and a free fix and even an indemnization if I had an accident. If you program something, and there is data loss and the problem is in your code, then it is totally legitime that they ask for responsabilities. Another thing is that your code works good and they used it wrong. Then is as if I full my tank with diesel, but my car is benzin.
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|
|
Considering that developers have little to no control over the operating environment where the code is used, it is effectively impossible to validate the code will work as advertised everywhere. The possible interactions to consider are intractable.
I've seen code that has no audio features fail when the user played a music CD to pass the time!!!
|
|
|
|
|
Most of us can probably agree that it's our responsibility to close the entire loop with our customers. This would entail developing, documenting, and even training the folks who would be using the application. Because let's be honest -- if we don't do it, there are enough irresponsible people in the way who will drop the ball, and we'll look like the bad guys in the end. Go the extra mile - customers will appreciate it and you'll eliminate a lot of hardships on yourself and your colleagues in the future.
|
|
|
|
|
Needs the option "Depends" with ability to include free-text reasons qualifying the "Depends".
My Answer: DEPENDS
Qualifier(s): Just watch the movie "RoboCop" ...
'nuff said.
|
|
|
|
|
Then, again, if someone is programming robots for the outcome that such the robots in RoboCop can perform, the recipient of the robots would either be scared poopless to even dare make a claim on the warranty or wind up receiving the full capabilities of the robots should they invoke the warranty.
|
|
|
|
|
All software has errors. I don't want to refund money to someone who finds a one pixel off alignment. On the other hand, if the defect fundamentally prevents them from achieving the results they purchased the software for, then I'd be really unhappy that we failed them, and I'd be the first to offer a refund.
|
|
|
|
|
If there is a QA then the responsibility should go to the QA first. Otherwise it should go to the developper who wrote the code or who integrated the codes, based on the situation.
|
|
|
|
|
I am all for promoting honesty, cooperation, professionalism, clear and clean code that works. Warranties for code is a tricky topic. I see it as entwined with the contract, the project management, the project team, the technology base, the code base, etc.
If you are part of a team then how can you completely warrant your code? The result is only as good as the weakest link in the project. Maybe if you create a HASH of each file in your code and have that as a stipulation in the contract. I have done this and avoided recourse when the user group tinkered themselves or with a third party that did not have the skils to make the changes correctly.
If you are the only developer then what about the frameworks and assembiles, DLL, etc. that you use or are asked to use? They can be flawed or maybe incompatible or inappropriate in ways that you could not predict. They may change after your project is developed introducing problems.
If you warrant the code then the contract has to have a bunch of clauses on time periods, changes to frameworks, etc. It is a lot cleaner to just offer is as is (working to spec. of course) within the estimate and create new change orders for additional work. That helps keeps everybody honest and encourages building a cooperative relationship.
The best projects I have done included a lot of milestones and adjustments made at each point to the scope and costs. The worst ones were one estimate and all kinds of changes that were ultimately expressed with gems like "well of course it would have to do that also", "we expected you would have added that, any good system would have that", " I am sure we mentioned we would need that too", "Bill expects that to be in there though", ...
My comments are a bit broader scope than the question but I see this question as having that scope realistically.
Hope this is helpful.
"Courtesy is the product of a mature, disciplined mind ... ridicule is lack of the same - DPM"
|
|
|
|
|
You know... it really depends on the severity of a bug.
Just because a product could crash on some rare occasion doesn't mean you're not able to use it at all.
I agree, however, that you should be legally liable to provide a repair, a replacement or a refund, if you are unable to use the product at all, as long as you're taking money for it at least I believe in the EU there is a law that you can return a product for full refund within lets say 2 weeks or something like that (also applying to digital products), but I might be wrong about that.
For those who care that a product works like they expect it to there are already contracts called Service Level Agreement (or SLA for short), where you can get a warranty for paying money.
|
|
|
|
|
Yeah, we sell a contract with all of our software that will provide additional support when you need it. You'd be surprised at how reluctant people are to pay for it, then they get angry when they need something and they failed to pay for support.
|
|
|
|
|
First of all, developer's code is a fraction of code, involved in a whole process, from click on button till real click handler. How you can guarantee that your code works, when hindu dancers developed half of Windows?? I don't bet even a cent on Windows system, which worked at least a week - soon or later some sh*t happens and you need to restart it. Funny, but even Win8 cannot work without being interrupted by HDD! (when application does intensive access)
Until you wrote a whole system, you cannot guarantee any work. And even making that, you still not sure that you control all stuff - overflow, security, etc.
Modern systems are TOO BIG to guarantee anything at all, read MS agreements - ALL their software sold AS IS, means you pay, but use for your own risk. Period.
|
|
|
|
|
However, I always tell people I warrant my code for 24 hours. After that, I can't even remember what I did let alone guarantee it.
There are only 10 types of people in the world, those who understand binary and those who don't.
|
|
|
|
|