Soap box:
I've been scouring the net for programs that will allow your computer to serve as an electronic test instrument, eg. use the sound card as a combination Function-Generator, and Oscilloscope, there are many freely down-loadable programs that do this, for Linux, however, Window$ is another beast altogether. I have tried to write programs in Window$, I wrote a series of interesting probe utilities, that displayed system resources in use, and details of what programs were using them, in realtime, pretty cool, but also pretty slow. In Linux, to do very much of anything, as an end user, you are required to get the basics down pat. The system doesn't do things for you, you are responsible that. It's a completely different mind set from the Window$ way, where as an end user, associations between data, and the programs, are automatically done for you. Window$ relies on this so completely, that programming in Window$ is orders of magnitude more difficult, so much so, that most of what programming in Window$ is about, is consistently re-learning new variations of all the stupid tools, that are continuously being re-invented to get around the problems created by the ease of use modality that is Window$. Many, if not most, Window$ end users, scarcely know where all of the files are, for any given project they are working on. Ask them for a zip file of the project, and unzip it on your machine, you should be able to pick right up and continue working where they left off. When was the last time you seen that work? Back in the DOS era I'll bet. Linux makes no such excuses for user stupidity, you are expected to understand what a filesystem is, what a program is, what the command prompt is, how the basic user, and system privilege levels work, before you even do any real work. The payoff is enormous, the end user is, with only a minimum of effort, empowered to take control of his own computer. Only the most seasoned Window$ users ever reach this level of control, and then only for one design cycle, the next version of Window$ to hit the streets, is a complete up-turn of everything previously learned. Thus Window$ discourages end users from trying to learn to control their machine. A seasoned Window$ user, knows better, and pushes on, in spite of the difficulty. Programmers, are ofcourse, seasoned users, they have to be. The Linux world of programming, is only slightly more difficult than using the machine for day to day work. In Window$ the bar is slightly higher. As a Window$ programmer, you need to spend about a thousand dollars, every couple of years or so, just to buy the tools, that are free in Linux. Then as a Window$ programmer because things change so much, you must spend couple of years getting acquainted with the eccentricities of your shiny new tools, before you become comfortable with using them. By that time, the new version is already out, so you are using programming tools, that will generate executable end user products, for a market that is being phased out by planned obsolescence. This frenetic pace of useless non-productive change, results in a lot of buggy software, that is very expensive to develop. As a result, what free down-loadable Window$ software you do see gracing the net, tends to be of low quality, and often have cripple timers, that require you to purchase the product, just to keep on using it.

It is with great regret, that I am unable to point you to anything more useful in the Window$ world, than a program written in Basic, that generates dot wav files, that is also likely to stand the test of time. Any program written for Window$ that is interactive, is also, for the reasons stated above, unlikely to work in ongoing versions of Window$, short of a total re-write, and that as I have indicated costs the developer, lots of time and money, that most, can ill afford not to pass on to their end users.

To be fair Linux changes too, but the difference is, that as an end user you are expected to run the make program, on the original source files, to create a customized executable, that works properly on your machine. The compiler may complain, about problems with the source, and if you use the mouse to scoop up the complaints it generates, and E-mail them to the author, he now has a good idea, of what the problem is, and can much more easily fix it. When have you ever heard of end users in the Window$ world, being employed as part of the debugging process. The running joke is, that the bugs in the Window$ world, are simply documented, and claimed as "features". In Linux, the compiler tells you what file is causing the trouble, what function inside the file, what line number you will find the problem on, and what exactly the problem is. Often a fledgling programmer with nearly no experience, can identify, and correct the problem on his own, atleast well enough to get the program working, thus the E-mail he sends back to the author, is of immense help, even if done poorly. Thus Linux end users rapidly segue into the world of programming, once this happens, you're hooked, no going back to kicking the dead whale that is Window$, down the beach. For the first time in a long long while, your computer truly belongs to you.

If something I've said, piques your interest in Linux, I will say the following about the time you will invest, assuming you are, a diligent, computer novice. Acquire some good books on the subject, and an old computer, you probably have one of these in the closet, or know someone who does. Load Linux on it, the modern installations are easy, even for neophytes. Start working through the examples in the books, at the command prompt, not the GUI. Learn how to use man, and apropos, maybe even the info system. Time to get this far, two months. Find some experienced Linux users, who are willing to spend some time helping you, you will find a great majority are, they remember that when they started out, someone helped them. Time to accomplish this, depending on your social, and networking skills, two weeks, to four months, if it takes you longer than that, move to another city :-) one with lots of sunshine and pacific ocean view... I hear Tokyo is nice this time of year. Next learn about all those command line programs, I have a file I call things to know that shows numerous examples of stringing several of these together to accomplish various tasks, at some point I'll clean it up, and make it available online. Time to achieve working command line competence, one to two years. Start dabbling in programming, bash, and or Perl scripting. Time to start writing useful programs, three to six months. Learn 'C' Time to start writing useful programs, nine to sixteen months. Don't at the early stages spend time on learning any language, or subject that is in transition, when I tried Java, it changed so much by the time I got up to speed, that my knowledge was already obsolete, to be fair to Java, it has stabilized somewhat, but it left lasting emotional scars, I'm still licking my wounds, and haven't programmed in Java for years now. Well it's up to you, if you think Linux is for you, and you have the determination to see it to the end, go for it.


Back to Lesson 012

The large print Giveth, and the small print Taketh away

CopyLeft License
Copyright © 2000 Jim Phillips

Know then: You have certain rights to the source data,
and distribution there of, under a CopyLeft License