Leonardo's Laptop Chapters 1-4
The book Leonardo's Laptop by Ben Shneiderman gives a great perspective on how technology should be developed. The book is even more interesting because of the way that it incorporates the genius of Leonardo into the ideas of development for a user centered design. Chapter 1 describes the differences between "old computing" and "new computing." Old computing involves a technical approach to computer systems and data structures. It discusses the power of computers rather than their practical application. Old computing stresses the importance of speed and capability. The faster the CPU, the better the computer. On the other hand, the new computing ideas would require a user's needs in mind while developing. Instead of the the quality of computing measured in megahertz and gigabytes, it is measured in how well the users are able to use it and the quality of software it uses. The speed of the computer meant nothing if the software on it was not effective. There would be visually appealing graphical user interfaces (GUIs). Information would be visual and easy to understand.
There have been many frustrating experiences I have had with technology. There have been so many that I have probably forgotten over 99% of them. Therefore, the following is not really an accurate representation of the most frustrating, but rather some that have haunted me enough to be in my active memory.
There have been many frustrating experiences I have had with technology. There have been so many that I have probably forgotten over 99% of them. Therefore, the following is not really an accurate representation of the most frustrating, but rather some that have haunted me enough to be in my active memory.
- Blue Screen of Death - The Blue Screen of Death (BSoD) is one of the most notorious computer error screens in the history of modern computing. Microsoft Windows has been known to have bugs that cause the entire system to become unstable and crash ever since some of their earliest operating systems. It is often caused by either the operating system or a client program attempting to access/modify corrupted memory that the kernel allocated, buggy drivers, etc. The problem with this error message is that it is too cryptic to be useful, even to experienced users. It will display the memory address at fault, but this is practically meaningless since the computer will then go through the process of a physical memory dump and clear the RAM. Note: These types of errors may be notorious for their occurrences on Windows, but they also can appear on a Mac OS, Linux OS, and various other operating systems involving memory allocation and bad programming.
- Cryptic error messages - While this is very similar to the first example, I placed it in another category because for this frustration there is only one program crashing or just an error message without the entire system restarting. For the average user error messages can be scary. Many people do no know if they lost data or if there is any other problems that they should attend to if an error message appears. I personally would want more information about why the program crashed or had an error. This would help in cases where I cannot repeat the error consistently in order to know what not to do. Even if the message is cryptic, the user should have the option at least to see it. My frustration, however, is that the messages are difficult to understand. The user should now have to know what the exact technical problem was, but rather that there was a bug in the program. The bugs themselves should be fixed quickly, but in the mean time a user friendly error message should be displayed.
- Compatibility - There are many programs that only work with one operating system and not another. There are also many programs that have conflicting settings with others. In my opinion, there should be standards (which I will discuss next) that a program should follow in order to have better compatibility. Anti-virus programs for example often have live scanners that monitor file activity. These programs conflict with each other many times and cause problems with security as a result. They have gotten better recently by alerting the user when there is such a conflict, but they should collaborate with the other program developers to further prevent such problems (despite the obvious economic disadvantages of this).
- Bad Standards - There is a constant need for standards to be created in order to help with comparability between different ICTs, but there are also many other reasons to use them. Coding, for example, is much easier to edit and debug if certain measures are taken to make consistent code. Also, wireless internet and other wireless devices are assigned certain frequencies in order to standardize them. Unfortunately, problems often occur when there is a conflict in standards. For example, many cordless phones run on a 2.4 GHz frequency. This can often interfere with wifi enabled routers. Also, when people do not follow standards early on in projects, it is increasingly difficult to perform maintenance and upkeep when the standards change.
- Security - Another thing that Microsoft Windows is known for is their security holes. They have sent out numerous updates and patches for their operating system as well as their many other applications and there are still known security flaws. There has been one such incident recently that caused what was predicted as the biggest computer exploit in history by finding a bug in the way images in a .JPEG format were rendered. This effected all operating systems back to Windows 3.1. These operating systems were no longer supported, yet they still were in use and were being attacked. Security experts had claimed that the bug was so large that they wondered why nobody had found it before and even speculated that could have been intentionally placed as a back door.
