|
I agree. We do offer a warranty for our software, and we also tests the software in many ways (we have a Beta Tester), but going deeply with unit testings and others will definitely change the delivery time. In my experience no real bugs but instead customers that want to change some screens and also the logic ... this seems to be minor but it introduced others bugs, and this is very annoying.
|
|
|
|
|
Let's face it: software is the only industry apart from medicine where nobody expects perfection (or even "actually works") and doesn't complain if they don't get it. Or indeed are even willing to pay again for the same experience!
Why? Why should we have a "special status" and "the right" to sell shoddy goods? If a car manufacturer makes a lemon, it's their fault, and their cost to repair. If the tin of beans you buy contains a mouse, they get sued.
How can we be expected to be taken seriously as a profession if we allow ourselves to release cr@p? Yes, I know, you don't have time. Yes, I know, management won't let you do it properly. So perhaps we need legislation to allow us to have a change of attitude: if management get charged each time we release buggy code, perhaps they will start listening and letting us improve the way things are done.
That and it might scare some of the absolute retards out of our "profession" - and if you don't think there are any, then I'm sorry - but you are in that group. See here: http://www.codeproject.com/feature/weirdandwonderful.aspx[^]
The only instant messaging I do involves my middle finger.
|
|
|
|
|
/ravi
|
|
|
|
|
OriginalGriff wrote: Let's face it: software is the only industry apart from medicine or law where nobody expects perfection (or even "actually works") and doesn't complain if they don't get it. Or indeed are even willing to pay again for the same experience!
FTFY.
|
|
|
|
|
I had forgotten the legal industry.
Gawd knows I try hard enough to forget it!
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.
|
|
|
|
|
Would you buy a car that was built off of the requirements that developers normally get?
I say the answer is "it depends".
Solid, known requirements, priced to support SDLC, then I'm inclined to give a yes opinion.
Otherwise, no.
Real life involves trade offs and equilibriums (of millions of software developers),
and the market has settled on the current state of affairs.
If customers could get warranties/guarantees for the same price,
they surely would demand it. Or they could offer developers a premium
for warrantees in the current environment.
But the defacto supply/demand has led to lower priced software (get it done!)
and the absense of guarantees (usually). So it really doesn't matter what I say/want.
|
|
|
|
|
"The difference between genius and stupidity is that genius has its limits" - Albert Einstein
He clearly anticipated the computer age and the infestation of mindless evil colloquially referred to as "users".
Now - on the other hand, some sort of warranty should be given about the quality of advice and frustration level occurred when the "help desk" is outsourced.
Note to Virgin Mobile: Die! Die! Die!
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "As far as we know, our computer has never had an undetected error." - Weisert | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
there are too many parameters at play.
what if the code is running on an unintended platform? do we ever get to end of life the code? how was the code being used?
in general yes you should be responsible for your code but you are also responsible for running a business as well.
you want something inspirational??
|
|
|
|
|
I agree. There are way too many variables in that equation.
"If you feel the urge to add complexity, just go home early. You ain't gonna need it." - YAGNI
|
|
|
|
|
A previous employer was very responsive to our customers. When something broke, we were on it ASAP. However, because we were so good at fixing stuff, some customers would blame problems on our software just for tech support help. Tech support would explain what the issue was with other software when they could. Occasionally we made a code fix to work around their environment.
While its good customer service, that amount of support has the possibility to break the bank. This is what service/maintenance contracts are for.
Hogan
|
|
|
|
|
Why should the kind and amount of support or liability be restricted by law?
It's up to the developer to offer a cheap product with bad support or an expensive product with a lot of support or support as an add-on etc.
If the product is not worth its money, the client should simply not buy it or complain about this and ask for another deal.
If the software is for free, why should there be any warranty?
So, generally speaking, NO, warranties should not be enforced by law. Whether it is fortunate for the developer to provide warranties, should be up to the developer.
|
|
|
|
|
Customers should undergo acceptance testing, once they sign the code off as "doing the job" then there should be no further requirement to maintain that code - not without additional cost anyway.
The reason is that there are so many factors that could change and break the code, many of which can be unknown during development. If customers want to ensure they are covered for those events then they can sign up for a support contract!
NOTE: I am looking at this from the point of view of bespoke development. I might take a different approach to some off-the-shelf product
There is nothing to see here, move along
|
|
|
|
|
There is no guarantee of how the code will be structured underneath as that can be counter productive.
But the customer should receive a piece of code that does the job they specified and paid for. This does therefore not cover any change external to the code that then breaks it i.e. changing infrastructure, windows versions, DB schema, etc.
You wouldn't accept it if you bought a car, tv, fridge etc that had a production flaw. Code is no different.
|
|
|
|
|
I agree 100% with AJ. Being both a developer and salesman of software products, part of the written agreement with the customers, was that it executed as advertised.
|
|
|
|
|
Code is very different because it is dynamic and running on top of a variable and changing environment, whereas a TV is static and only based on a few standardized connections (power supply, HDMI and some other standard A/V inputs and outputs). It's the same for your other samples.
Who decides where the base problem is located? Who is the one analyzing the problem? If I am the one who has to analyze it, who is paying me for analyzing a problem that is maybe caused by the user itself, by Microsoft or some external libraries (e.g. Developer Express)? What if it's not my fault? Does the user has to pay me if he broke my application? Is Microsoft in charge and has to pay me so I can pay the user because the forced upgrade to .NET 4.5 broke my .NET 4.0 application? What if the user installed .NET 4.5 using the automatic update function of Windows? His fault? Microsoft's fault? My fault?
Even if it is my fault, what is a valid solution and who decides if it is valid? What if my solution is a workaround which the user does not accept or the administrator don't want to apply because of some kind of paranoia?
There are too many questions, too many parameters, too many pseudo computer scientists (a.k.a. users).
|
|
|
|
|
--
If money is your hope for independence, you cannot reach it.
Being loved gives you strength,
while loving gives you courage.
|
|
|
|
|
We are responsible for that one client relies on us and its our responsibility
-ank
|
|
|
|
|
"Let's restrict it to just the code and not any loss or damage caused by bad code. If our code breaks should we be legally liable to provide a repair, a replacement or a refund?":
What exactly is meant by: "our code breaks" ?
In the case of specific statements of usability by the seller, such as "works with versions of Windows 7, and 8," yes, I believe there is a warranty "of performance" made by the seller, a warranty that probably gives the end-user legal rights. My impression is that in the U.S., at this time, different states may have different laws on the books regarding obligations of companies to provide refunds, and different legal remedies for purchasers (as in the so-called "lemon" laws for automobile purchase).
But, beyond such clear-cut issues is a kind of gray-area where, I believe, there's no consistent body of law. If I buy software, and it works, but has bugs, how "severe" do the bugs have to be before I have a right to demand a timely satisfactory bug-fix, or a refund ?
Typical software industry practice is to have some facility for accepting bug-reports, but, there is no standard definition of what, if any, is the responsibility of the seller to provide bug-fixes by a certain time after the bug-report is filed. Yes, many software packages offer a "premium support" option at purchase time that does guarantee you a response to a bug-report, or technical issue, within a certain time interval after you've reported it, but I have never heard of a software company offering to guarantee a bug-fix within a certain period of time.
There are certain categories where the law highly regulates devices controlled by software, as well as by human operators, such as medical devices, aircraft, etc. Defective software in a device for radiation oncology that led to cancer patients being seriously burned by radiation has been the cause of lawsuits against the device manufacturers.
If I were selling software ? Yes, I'd refund any customer who provided evidence that my product did not work in direct contradiction of my explicit statements about how the product worked, in what hardware contexts the product worked, etc. But, I would have to be able to replicate the bug on standard hardware, and OS versions.
If a purchaser(s) provided evidence of a "show-stopping" bug where a major functionality of my product consistently failed, and I could not guarantee a bug-fix in a reasonable period of time, yes I'd offer a refund, as a last resort.
If the purchaser(s) sent me evidence that my product was not performing as expected in unusual contexts, like, for example, when run on a Windows virtual machine, or run on the Mac: I would have to deal with that on a case-by-case basis.
From a consumer point of view, I believe we are all "damned" by the incredibly complex licensing agreements we implicitly accept with almost any software purchase. We don't "own" what we buy, we "rent." And, as consumers, I believe we have been "conditioned" to accept that the major software we buy is often buggy ... until the next update.
Google CEO, Erich Schmidt: "I keep asking for a product called Serendipity. This product would have access to everything ever written or recorded, know everything the user ever worked on and saved to his or her personal hard drive, and know a whole lot about the user's tastes, friends and predilections." 2004, USA Today interview
|
|
|
|
|
As it is now with the EULA, anyone can sell any piece of crap, tell the customer it will do what he needs, destroy his million dollar database. The software vendor says too bad, the EULA says I'm not liable for ruining you business, and strolls away to trim another sucker...
If the lawmakers weren't in the pocket of the software giants, software would have warranties, guarantees, and product liability.
|
|
|
|
|
Yes, at least is what we do, typically we test our devices for a long time, but if for any reason we have a problem that arises after a while, we will solve it for free if we are under warranty, if the problem appears after the warranty period, and it is clear that is our fault we also solve it for free.
|
|
|
|
|
Because what is good code and bad code It depends on all about situation...,
A good code can be behave like a bad code(due to some thing unethical)....
Yes Maintenance should be provide...
|
|
|
|
|
Then obviously the answer is a YES, but commercially is an extra-large NO just because the definition of ethos in commerce is abstract.
This is what happens in real life, no matter if we like it or not. I'm sure we all can (re)call good and/or terrible samples even with well known brands.
|
|
|
|
|
I think they should.
But I can see why a supplier would want to avoid it. To many customers bug means it doesn't do what I want even if I never mentioned it up to now.
|
|
|
|
|
My answer is YES. Like they should provide a contract or something that the developer must support his software done. "Maintenance"
|
|
|
|
|