Showing posts with label Computer Human Interaction. Show all posts
Showing posts with label Computer Human Interaction. Show all posts

Tuesday, October 5, 2004

We have met the enemy and they are us!

An article at msnbc.com states that software disasters are often people problems. The direct link to the MSNBC article can be found here. I was referred to the article by a posting in slashdot. Quoting the article:

Such disasters are often blamed on bad software, but the cause is rarely bad programming. As systems growm more complicated, failures instead have far less technical explanations: bad management, communication or training.



Although the article confuses what software is and is not (the SAP system is software, the application software added to it is not), the points it makes are still relevant. It refers to issues with requirements, stakeholder participation, operations, testing, end user training and inhomogeneity of technical understanding. Inhomogeneity of technical understanding is a multics term for a horrible project scenario which exists when managers do not understand software technology and developers do not understand the big picture, the context in which their software would run. Unfortunately this occurs all too frequently.



The article cites a National Institute of Standards and Technology study that software bugs cost $59.5 billon each year and a third of that can be attributed to inadequate testing. The pdf for the 300+ page report,"The Economic Impacts of Inadequate Infrastructure for Software Testing," can be downloaded here.



The title of this post was a quote from the comic strip, Pogo, penned by Walt Kelly which was an adaption of an Admiral Oliver Hazard Perry quote after a naval battle. You can find more information about the context of his quote here.



As always commenst are appreciated. Later!



Monday, March 29, 2004

Game Strategy

I have been a big proponent of learning from the computer gaming industry. Many industrial applications are boring and unnecessarily complex. It is difficult to make something simple, entertaining and comfortable. Ross's post provides some great heuristics for making the whole human computer interaction enjoyable. We both would be interested in your thoughts. Later!



Ross Arnold's post:



As I've mentioned in my other log book entries, I program many games for fun and for my eventual goal of running a small game company. I long ago came to a conclusion while coding games with respect to user interface - EVERY aspect of a game should be fun, not only the playing of the game. If 6 menu screens need to be traversed before the game can begin, then each and every one of those menu screens should be fun to look at, and fun to use. The buttons should be pleasurable to click on, visually appealing, smoothly functioning, and easy to use. I feel that game players often don't realize the joy they take in traversing well-laid-out game screens, instead focusing thoughts on the gameplay itself - but the joy is still present, and it still pulls people back to play a game again, even if they don't always consciously realize.



The same principle applies to my current project at work - a pocket PC used for mortar ballistic calculations. Since the screen is so small, the layout of the buttons and edit-boxes is even more important than it would be on a desktop or even a laptop computer. If a soldier is crawling along a trench in the desert, pulling out his pocket PC and plugging in a few calculations shouldn't confuse him or cause him undue stress because of a few poorly designed dialog screens.



Two web examples also come to mind: MSDN and google. If I type 'vesonder cs540' into a google search, Software Engineering Class Page instantly pops up in clear view as the 4th entry on the page, then one more click and I'm right where I want to be - it's quicker than using my bookmarks. MSDN, on the other hand, seems to be rather poorly organized (it might just be poor searching technique on my part, but isn't that what library organization is meant to counteract?). I must have spent at least 30 minutes straight the other night searching MSDN for the EULA for MS Visual C++ .NET Standard to see if I could use it to develop and publish progams for profit, and I was never able to find it (I don't suppose that you happen to know whether VC++ .NET Standard, as opposed to Professional which is $900 more expensive, can be used to publish?). In my opinion it was just absurd that the EULA wasn't readily available on the page that described the .NET software. I've had many troubles searching for similar things on MSDN, often items such as downloads that I am absolutely sure are present because I've seen them just moments earlier accidentally on MSDN, and then can't get back to the page I saw them on even if I type exact words that I saw on the page, or exact file names, etc, into the MSDN search engine. If I ever design a website for one of my games, which I'm sure I'll have to do at some point in the near future, I'm going to make sure that I have everything organized, readily available, and SIMPLE, so that I don't have people like myself bumbling about the site, lost somewhere in the bowels of cyberspace.