Ease of use vs ease of learning
Investing a little time in learning to use good tools now can save you much more time in the future!
From: r.e.ballard@usa.net Subject: Re: Ease of Use vs Ease of Learning Date: Wed, 26 Nov 1997 14:43:02 -0600 Message-ID: <880576844.24090@dejanews.com> Newsgroups: comp.os.linux.advocacy [Edited by Tracy] If you want "Easy to use out of the box, try Caldera 1.1 BASE (not lite). It's pretty easy to deal with, but you will have to learn a few new pictures - very MAC like. With NT you get easy to use Office. That's it. I can create applications that use ActiveX which is essentially pieces of Office. If I don't have office (I don't have it on my home machine), there isn't much to build with. With Linux, the initial GUI and window manager is like the tip of the iceberg. There are over 20,000 companants in a full Linux distribution, including about 8000 shell commands, several thousand C functions, a few hundred "Widgets", and 200 languages to pull them all together. Not bad for under $60. Will you use all of those toys. Probably not. You'll have some favorites, and you'll have some likes bash and PERL that you will use because everybody else does. I've been programming for UNIX for almost 20 years and I still haven't mastered all of the languages and utilities. Often, you'll have a problem you want to solve, like "how can I scan this CGI pattern to break out the arguments. You could do it in C, but a search of the documentation shows that you could use PERL, AWK, LEX, or SED to parse streams of text. You can then look at the see also references and see that there are routines in C called regex which handles regular expressions. You search the web and discover that lots of people are getting pretty good results in PERL. When you start studying PERL, it seems new and hard, but as you learn things like regular expressions, packf, and associative memory arrays, you can relate some of it to what you've learned in VB or Java, or you just find that it's pretty neat. You browse a few libraries of source code and see that you can write what you want pretty quickly. Once you have a little (very little) mastery, you start whip up a few PERL scripts. Or if your really lazy you browse the web searching for "cgi and perl" and find yourself references to about 1200 free to use PERL scripts. You pull a few down, change a few names to protect the innocent, and you suddenly have some quick and easy "forms" and "applications". You can go shopping for PERL scripts, PYTHON scripts, TCL/TK scripts, or scripts for just about anything you like. If you write a neat script, you can even add it to the pool. And when you're finished playing, you can always go back to that glitzy word processor, spreadsheet, and graphing tool, but then you realise that your spreadsheet can have it's values set by a shell script. You realize that you can change the value every few seconds if you like. Before long, you have a shell script that can pull down quotes for you 20 favorite stocks, or parse them off of a feed using PERL, and plug the numbers into your "animated spreadsheet". Before long, you are using tools that were originally used to monitor the flow of traffic on a wide-area network, to monitor the cash-flow of your multibillion dollar corporation. Just a visioning exercise. Pull up the NT system monitor. Pull up a few statistics (Context Switches/second, system calls/second...) and watch them scroll by. Now, imagine those are summaries of all the orders coming in from your sales force, and the value of products being shipped, and the values of the receivables payments. Imagine being able to watch all of this and getting updates with the entry of each transaction, along with averaging over a 1 hour period (you don't want to miss something while you're in the bathroom do you? Now imagine that your customers could be entering their orders via the WEB and your could graph that activity, as well as the activity of each sales representative. When the boss calls, you know exactly, to the minute, what the company is doing and where the bottlenecks are.