... and why it might make sense to migrate a 
legacy DOS system to it or use it in lieu of a
Windows or X-based environment.

After successfully redeploying a curses/python
based inventory tracking program (a client program
accessing a database server) for our organization
(in only 2 weeks plus versus 1 month for the Delphi 
version), reviewing old copies of Byte (back when 
Windows/386 was just introduced) and looking at the 
state of the art then (third party implementations of 
DOS that allowed multitasking), and thinking about my 
experiences with development environments under DOS vs. 
Windows, I was struck by how much needless complexity 
has been forced upon users and application developers 
by the transition to a pure GUI environment. There are 
many situations when a GUI and the many extra complexities 
introduced by the abstractions of a high level environment 
like the Windows API add very little value but end up 
confounding the development process, severely impacting
development time and racking up a lot of extra costs.

Our organization has been using a text mode DOS-based 
Clipper system for the last 10 years and it has been able 
to cope through years of intense growth (sales which 
put the company in the top 500 category). Despite its
running in text mode, it is pretty complex and to this 
date, no one has been able to successfully migrate the 
system to a Windows-based one (i.e. VB-based).

I believe this is a story that has been repeated many
times for many organizations for which the transition 
to Windows from DOS-based systems have ended as failures 
or brought dubious benefits (i.e. greater cost and 
complexity headaches for little or no real additional
functionality).

I remember many developers (like me) had a great resistance 
towards moving to Windows from DOS, one of the most important 
reasons being the added complexity. Mastering the critical 
APIs (user input, screen display and printer output) is a
lot harder with Windows than with DOS and I believe this 
is one of the most direct reasons for so many failed/unfinished 
Windows projects. Ironically, despite the supposed advances
of Windows, most of these difficulties have little to do with 
the task at hand (business logic) and are instead concentrated
on wrestling with UI and printing issues. What makes life 
difficult for developers also end up hurting end-users in the 
form of more bugs and longer development cycles.

Considering that Windows' graphical environment and 
business-oriented development tools and APIs are already 
a lot more mature and problem free than those available 
for X/Linux (I specifically have Kylix CLX vs. Delphi VCL 
components in mind here), deploying a GUI app on the latter 
would likely be even riskier.

Linux has a pure text mode and direct device access 
(like for the printer) and offers the same kind of immediate 
simplicity that the DOS environment used to offer. In
addition it offers all the important OS features (preemptive 
multitasking, a real 32-bit kernel, and true protected mode 
stability) that Win 3.x to Windows ME paid only token
attention to. NT, 2K, XP and beyond FORCE you to give 
up the simplicity of the old DOS programming environment in 
order to take advantage of these 'real 32-bit' OS features,
but with Linux, you don't have to.

Moreover, there is no shortage of very powerful and effective 
software, open-source or otherwise, in both the language (Perl, 
Python, gcc) and data management (PostgreSQL, Firebird, MySQL) 
areas. Because of this, the Linux text mode environment offers 
the improvements that DOS database developers were asking for 
while not only retaining the old simplicity, but actually improves 
on it! (i.e. SQL is both easier to use and more powerful than 
Xbase, the same applies to Python vs. Clipper) Moreover, it 
does so with little onerous additional hardware requirements so 
that you can often continue using your older hardware when 
converting over to new Linux-based ones.


_
Philippine Linux Users Group. Web site and archives at http://plug.linux.org.ph
To leave: send "unsubscribe" in the body to [EMAIL PROTECTED]

Fully Searchable Archives With Friendly Web Interface at http://marc.free.net.ph

To subscribe to the Linux Newbies' List: send "subscribe" in the body to 
[EMAIL PROTECTED]

Reply via email to