So this weekend I spent some time working on my dad's brand new computer...again. His main dos based business application will not work on his new Dell computer.
Now, my father can neither be classified as a computer expert or newbie. At this point, novice works well. He has been working on computers since 1985, but only enough to run his business on the thing. What type of business: a dairy. 1000+ cows, all with their names and life histories tied up in this thing. And at this point, with out the computer, the dairy will run (cows will still get milked, fed, and watered), but most other activities stop. Like parole, bills, and medical treatments get a little more interesting.
That said, the last time my father upgraded his computer was 1996. Maybe 1997, but probably not. And, just to make life more fun, his dairy program (what he spends a considerable amount of time in) was last updated in 1995, and is still dos based. I'm almost positive the program was written in Turbo Pascal 5,6, or 7.
Amazingly, it runs like a champ on any x86 computer running at least Dos 5 or newer (including WinXP)...so long as the CPU isn't faster than, say, 266 MHz. After that, you get a rather famous "Run Time error 200". Which, near as the oracle of Google will tell me, affects Turbo Pascal 5,6, and 7 programs the world over.
Great. No now we are left with either buying a new or competing product to run, or hack the sucker and try to convince the existing app that the sky is not falling and 2 GHz is not a bad thing. Easier said than done. There are applications out there that will modify the existing binary to make it work -- but they don’t work for this app (I tried). There is a TSR that you can install that catches the error and tells the application to ignore it -- doesn't work (do TSR even work with Windows anyway?). I found all sorts of code patches for this. But I don’t have the code. I'm stuck!
As I said earlier, my father is a computer novice. He knows how his programs work, and he knows them very well. And this program is essentially a data entry program. If there is one thing I am certain of: DOS programs can excel at data entry, and most windows programs stink at it. And now I think my father is going to have to find out how badly windows data entry programs can stink -- and he will blame me for it.
As his only son actively involved in software development, and the one who convinced him to get a new computer in the first place, I will get blamed. Not always directly though. It usually starts as "Why does this work this way?", followed by "Well that isn't very good." And the frustration grows. Luckily I have a good relationship with my father and the frustration doesn't last very long. I'll switch the topic to fishing or grandkids and then everything is fine.
Now I'm left with a couple of thoughts from all of this.
1. why does data entry on a windows app have to be so much worse than DOS? Have we regressed? Who thought that using a TAB instead of ENTER would be a good idea? Mainly because now I have to hard-code ENTER to do what TAB does every time.
2. Why don’t we ship more code with products? Or script them more? I've been toying around with making a new application framework using .NET (because I don’t have one right now and I'm too cheep to buy one). It is completely possible to script large chunks of the application. Like a scriptable add-in architecture. Right now I'm thinking of a cross between Microsoft Office VBA and ASP.NET without code behind.
3. Next time, if a family member asks me what computer to buy: I'm suggesting a MAC.
2 comments:
So Jim McKeeth sent me this URL: http://dosbox.sourceforge.net/news.php?show_news=1
I'm going to have to look at that now too.
DOSBox is an emulator specifically for games.
Post a Comment