190
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
You might not enter random values into fields of a web application, but there certainly people out there that do just that.
Some people enter random by accident and others do it intentionally trying ...
101
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
Never Assume Anything
You cannot assume that any user will not do something "dumb" with your software by accident or on-purpose. Users can accidentally press the wrong button, the cat can ...
94
votes
Accepted
Software bug vs. software corruption
Software corruption is the contrary of software integrity. It's the same thing as data corruption, except that the data is the software code.
It can affect:
the software binary stored in memory: ...
60
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
There are several factors to take in account. To illustrate those points, I'll use an example of a field where a user should enter a percentage in a context of a quota defined for a specific task in ...
34
votes
Accepted
What to do if a core function does exactly what you need to do, but has a bug
I suspect this is a fight over a name.
Option 3 (create a separate function) is absolutely the best. Provided you can think of a good name for the new function. But I suspect you can't. That's why ...
32
votes
What to do if a core function does exactly what you need to do, but has a bug
Option 4.
There is no bug in the core function.
I find a function which does exactly this. Its description explicitly
says that it normalizes input to our desired format.
this function has test ...
28
votes
Software bug vs. software corruption
You can fix corruption by restoring from a good back up. Corruption means some of the bits somehow got changed from what they were meant to be.
You can fix a bug* by doing more development and ...
20
votes
Software bug vs. software corruption
A bug is when a software does exactly what the programmer told it to do, instead of what the programmer wanted it to do.
A corruption is when a software does something else than what the programmer ...
15
votes
Software bug vs. software corruption
Presumably what they mean by "software corruption" is unintended changes to the contents of an executable file due to things like a failure of the storage media.
A "bug" would mean ...
14
votes
Can Rust replace the C or C++ programs in the Future?
Actually, the bug in the Generator Control Units that you refer to is not the kind of memory handling bug that Rust (or any language with fixed-size integers) can protect against. An internal counter ...
12
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
There are a lot of good answers here that describe why this is important, but not a lot of advice on how to sensibly protect your application. The "standard practice" is to use robust input ...
11
votes
What to do when third party won't fix bug
This is one of the drawbacks of using third-party libraries: as you get more and more dependent of them, you're at the mercy of the company which develops those libraries. Not only they can set the ...
11
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
Usually the 'random' values are not random. You are attempting to capture edge cases, the "unknown unknown".
Say for example the # character will crash you app. You don't know this in advance and it ...
10
votes
Accepted
Should one create a new git branch for each issue?
Use one permanent dev branch per user
Can it happen, that whoever manages your project comes in and decides that another feature is more important, or that you need to fix a bug first? Then one branch ...
9
votes
What to do if a core function does exactly what you need to do, but has a bug
Out of your 3 options, I would only reject #2 out front. Adding a flag argument often leaves the complexity in the code and forces future readers to understand both options before choosing one. This ...
8
votes
Accepted
Are there better alternatives to debug level logs to investigate a bug in a production environment?
When you cannot reproduce a bug like a broken command scheduler outside of a production environment, and cannot mirror the production environment in your testing environment in a "similar enough" ...
7
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
I once wrote a program, which I live-tested in a lab with 60 students. I was standing behind the 60 computer screens and saw them use it. The amount of ridiculous things they did was hair-raising. I ...
7
votes
Accepted
Informing Users of Outstanding Bugs
This depends very much on the kind of software, the kind of bug and the possible impact of not telling your users about it.
For the majority of bugs, the only reasonable place where users need to be ...
7
votes
How should support/bugfixes work in a larger organisation?
In my experience, bugs come in two variants:
Needs to be fixed like... yesterday. Red blinking lights. Sirens. Bosses demanding a status.
Oh. Yeah. We are gonna fix it. At some point. Maybe.
In the ...
7
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
What you're describing is Fuzzing or Fuzz Testing: throw random and invalid input at a system and see what happens. You don't do this because you expect a user to do it. You do it to expose your own ...
7
votes
Software bug vs. software corruption
I write a program, it gets compiled, sent to you, you install it on your computer. But a few bits have changed on the way. That is software corruption.
6
votes
What to do if a core function does exactly what you need to do, but has a bug
You really should go with #1. Having a utility that doesn't do what it's documented to do is a ticking time bomb that will only continue to make things harder in the future. What happens if one of the ...
5
votes
Accepted
How should support/bugfixes work in a larger organisation?
I am another supporter of "Total Ownership".
I think that helps drive quality. I've worked in an organization where there were "feature teams" and "bug teams". It seems like the bug teams were ...
5
votes
Software bug vs. software corruption
A bug is a mistake made by a software developer.
Corruption is not a mistake by a developer; it is when something alters the program after (or during) delivery — even something accidental/benign like ...
5
votes
Accepted
How to explain a software bug to a child
When I buy a house or a car, the product is already completely ready. It's very seldom that an error will be noticed later by the customer.
That’s a wrong assumption. In all the countries I have ...
5
votes
Rapid rate of merging new code with minimal testing
There are a lot of things that can be the difference between a smoothly operating team and chaos.
Enough testing is done to ensure a working project, and it's automated so it's not apparent that is ...
5
votes
What to do if a core function does exactly what you need to do, but has a bug
I would suggest that quite possibly what you have here is down to the poor naming of the code that exists.
The method name normalizeCssColor doesn't really mean that much to me
What are we ...
4
votes
Can we assume while testing software that a user wouldn't perform such silly actions on software?
If your aim is to create a quality product then test every possible type of input that a user will be physically able to submit. Otherwise you're just waiting for the day when someone submits that one ...
4
votes
Why "typeof null == object" will stay in javascript?
Making breaking changes to JavaScript has serious consequences. There are millions of sites out there which run code that may have been written years and years ago, and will possibly never be touched ...
4
votes
How to privately track issues?
Use the same tools as you would for a team
Without suggesting specific tools, which is fairly out of scope - the main thing to focus on, is you are never an "individual" engineer on any project.
You ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
bug × 142debugging × 21
testing × 16
issue-tracking × 15
terminology × 7
scrum × 7
programming-practices × 6
development-process × 6
code-quality × 5
bug-report × 5
maintenance × 4
qa × 4
support × 4
features × 4
design × 3
c × 3
agile × 3
compiler × 3
teamwork × 3
productivity × 3
history × 3
software × 3
theory × 3
defect × 3
javascript × 2