A Web-Based Linux Training Course
Some time ago, I heard that success in mathematics means being able to formulate a good question and answer it. When I decided to write a book for Linux, the question I proposed was, “What is the best way to teach Linux to novice Linux users?” My answer was to write a course in Hyper Text Markup Language (HTML). HTML is cross-platform, so the course can be read on any PC: Windows, Macintosh, OS/2, BeOS, UNIX and Linux. HTML is the most-used language on the Web, where Linux users generally go to download software, browse and consult resources.
I also include the man2html program, so customers can:
learn Linux in a nice environment, such as a web site
browse Linux files on the Linux file system
consult Linux man pages
move quickly through the course
go directly to the Web or FTP site to browse for information or download software
My intention for this course was to support as many languages as possible. I regularly speak Spanish, Italian and English, so it was natural for me to write the course in these languages. Demand for German Linux technology is high from a commercial and a technical point of view, and France moved to Linux some months after the rest of Europe, so I also include these languages. Our contract with ADC Japan (http://www.adc.co.jp/) allows us also to include Japanese. Future languages will probably be Portuguese, Turkish, Hebrew and Chinese, but this will depend on the market.
I drew on my twenty years in computer science and my various technical jobs with UNIX to write this course. I organized the project into the following sections:
BASE: dedicated to new Linux users
WebMaster: for HTML programmers, webmasters and web-server installers
X Window: dedicated to X Window System users and programmers; also Tcl/Tk and Java X techniques
System Integrator: how to integrate MS Windows, Macintosh and other operating systems in Linux networks
System Administrator: the specific role of the system administrator in companies, includes in-depth shell programming
Programming: for C/C++ programmers, also network programming techniques
The BASE course was originally written for Caldera OpenLinux in Italian. I started to write it for OpenLinux 1.0 in 1997, slowly. The course has been updated to 1.1, 1.2, 1.3, 2.2 and now 2.3. The first edition, FTLinuxCourse 1.0 for OpenLinux 1.3, was released in Italy for the Italian market in December 1998. In February 1999, we released the version for the U.S. market.
The Red Hat course was written directly in English, then translated into Italian. The latest version, 2.3, covers the latest Red Hat, SuSE and LinuxPPC distributions.
I have developed some useful shells and samples that are included in the FTContribs directory. I also contacted O'Reilly & Associates to include all the examples from the O'Reilly book series in the BASE CD-ROM. My friends at Xi Graphics gave me authorization to include the latest AX and LX demo.
In addition to the 40MB of coursework (excluding the course material in PostScript and Adobe PDF formats), there are 10MB of shells, TeX, LaTeX and PiCTeX examples available, our contributions in the FTContrib, plus more than 250MB of ExternalContribs, including examples from books (such as the O'Reilly series and others), articles from the Web, Netscape checkers, RFC and other software.
The product is continuously updated and includes Linux news, free software and more. The latest decision was to include the Linux OS itself.
The WebMaster course is new and important. It includes HTML programming and Internet web-server installation.
The X Window System was created in 1984. After several years of use on expensive UNIX workstations, Linux helped move X to the desktop. Today, for less than $80 US, it is possible to design and write X programs. Understanding and learning how to program X can be hard work. The X Window course covers many topics including C/C++, Tcl/Tk and Java programming, from the command line or by using builders such as dtbuild or KDevelop.
Linux is free. People can download it off the Internet or install it from a CD-ROM. Each distribution includes a manual that explains Linux installation duplication. Users will then need a way to enter the Linux universe and learn the commands, how to search files, how to change the resource on an X application, how to create users, how to run a program in the background, etc. To supply tutorials for this method was the main reason I wrote the course.
This is another interesting question. The answer must be vendor-independent. Linux is not a single vendor, but comes from many working together. To be certified on Linux means to know Linux regardless of distribution. After learning the distributions, students can then study Networking (covered in the System Integrator course), X (covered in the X Window course), Programming (covered in the WebMaster: HTML Programming, X Window and Programming courses), System Administration (covered in the relative course) and so on.
Instead of becoming certified, the student must become a master or guru. The word “certified” means certified by someone or some company. A single, fixed choice in Linux is wrong. Linux is a successful operating system because it is horizontal; it is graphical, supports shell programming from the command line, supports binaries from other operating systems, includes games, is stable, is serious, is funny—it is everything. Having a certificate in Linux should mean knowing about all Linux topics and all Linux distributions, not just one.
A Linux expert may be a young hacker or an old UNIX expert. The UNIX experts need to know how Linux is different from UNIX. For example, Linux kernel compilation is completely different from any previous UNIX models. The concept of kernel modules and the kernel organization is new, so the “old” UNIX experts will need to learn it. From the other side, both the great and young Linux experts should study the UNIX story. Linux history starts with the UNIX story, not from Torvalds' first kernel release. The kernel was the conclusive link in a long chain including the GNU software, the X Window System, TeX and other freeware.
During the first months of 2000, FTLinuxCourse (also called Fast Training Linux Course) will reach version 3.0. In this version, we will expand the Linux Command Reference from 163 commands with examples to 1,000. We will also include a search tool and an analytical index. We will cover more on Tcl/Tk, Python, Perl and other programming tools.
At the moment, FTLinuxCourse includes the course on CD-ROM and a Linux CD-ROM. The GOLD edition comes with a course for Caldera, Red Hat and SuSE, along with their respective CD-ROMs. We are talking to an Italian publishing company about presenting FTLinuxCourse and to Sun Italy about including StarOffice. When this step is concluded, FTLinuxCourse users will have a complete course with more than 1,000 questions and answers, a Linux distribution and StarOffice. In February 2000, we will begin to develop a DVD version—a video course for Linux in all languages.
We are also working on a new project called “Linux Web Campus”. Like a university campus, we will recruit Linux experts as teachers and teach people from the Web. Linux enthusiasts can subscribe to a specific course from any city in the world and take classes on the Web. The campus is based on the original “Learning Networks” idea. In the beginning, we plan to use only HTML pages to teach Linux and test Linux knowledge with CGI exams. The final goal of LinuxWebCampus is to create Linux experts who can teach Linux to others, from the same web campus or elsewhere.
Another project is creating Linux Utilities (dedicated to Peter Norton), to simplify Linux tasks such as kernel recompilation. This project will also extend Linux from a UNIX point of view. These utilities will be offered for download from the LinuxUtilities.org web site or on a CD-ROM at low cost.
The last project involves teaching customers how to build their own Linux distribution. This is a very futuristic project. We will develop utilities to locate, test and install remote Linux programs. We will show how to create a minimal Linux distribution including the Caldera LIZARD (available for free at OpenLinux.org), the RPM from Red Hat, KDE, our LinuxUtilities and other FT applications.