Monday, February 10, 2014

What are the most common errors in software?

The following will be a log of errors I run into while developing software. Hopefully to find ways to reduce these types of errors.

Infinite Loop

1. You code a statement
2. You do some work
3. Go to step 1

Dropping Records

This error occurs in SQL statements where you do an inner join as opposed to an outer join. 

Logic Error

A logic error means the statements you entered aren't producing the correct result. This is usually found during testing. 

Timing Error

These are very hard errors to solve as they tend to be due to some sort of timing issue. Sometimes adding delays to your code will fix these.

Duplicate Error

This can occur any time your system doesn't deal well with duplicate values. Could be you included something twice that doesn't belong.


Syntax Error

I got this error 3 times today. You're telling software to do something and it doesn't understand what you want it to do. The most common reason is mismatched parenthesis or quotes.

Dialog opens off visible window

3/11/2013 I'm getting an error where I can't see a window because my screen resolution at home is different from the resolution at work. When opening a form you should check whether the dialog is within the visible screen.

Window isn't sticky

This occurs when you position a window in one place on your desktop and software doesn't remember it's location or setting.

Spelling Error

Today (2/10/2013) I was getting error messages at work and it was due a spelling error. I spelled the word response as reponse. I did a search of other code and work and found this to be a pretty common misspelling.

Permission Error

Also I ran into a Permission Error in a Sybase database. A SQL query had worked but something changed that caused it to fail.

Null Error

I had a report that failed because a table had unexpected nulls after a new system stated generating data. The temp table didn't allow nulls on the column so the error was raised

Case Error

This error occurs when you type upper or lower case and system doesn't properly handle it. One thing I dislike is software programs that are case insensitive. This causes so many errors when the variable ThisVariable and thisvariable are different. I do like that VBA is case insensitive.

Report Failed to Run

A daily report that worked previously wasn't running even though it was supposed to. Report failed but there wasn't a good method to detect this failure.

Poor Exception Handling

This happens when you don't handle an exception properly and code gets executed that misleads you. I recently was developing python flask code that was giving me an incorrect error message until I properly handled the error and saw the actual message.

try:
...
except Exception as e:
     error_data = ""
     for s in e:
            error_data += s
     return Rest.response(error_data)

TempDB Errors

Temp db can fill up and cause unexpected errors. We have Java code that is getting Out of memory errors because our tempdb is filling up.

Quote entered as input

I've run into many errors where you try to execute SQL but the user inputs text with a single quote like "Teacher's Insurance" that can cause the query to fail. You need to usually convert these to two single quotes for the query to work.

Formatting Errors

I often see Excel spreadsheets that have #,###,##### listed in a column or 1234E+27 or 1381737412342.878

These are all formatting errors. 

Sticky Error

This error is caused when the application doesn't save your last settings. It's as if you put a document on your desk, go away and and the doc ends up in your draw.

Too Much Information

Whether it's a PPT presentation or a web page, often there is too much information on the page.

Hidden Information

This is where you look to contact someone but can't find their contact information. Could be any important information.

Too Complex

This is where your system requires a document to allow someone to use it. At work we often have to follow a 10 page document to enter a request.

Lack of Documentation

Sometimes documentation is needed. I find at work a lack of documentation to help me get the job done.

Memory Errors

Out of memory. These can be very hard to diagnose. We've been having issues with Websphere and memory errors.