Day 6 - 2nd day of practice

So I got to the school 15 minutes before class. Plenty of time to prepare for class and all. I got to the lab and, as always, it was filled with people. Most of them were checking their hotmail and stuff like that. I didn't want to kick them out of the lab just yet, because my students were nowhere to be found. I waited until the official start time of class. Still no sign of my students. Only a couple of them already sitting in front of the computers, some even with open sessions in the server, playing around with the commands I taught them. That made me happy. I started class with only 5 people. 3 minutes after that, a group of 5 students came in.
So I continued with the class, talking about how to copy files, how to move files, how to erase files, how to make directories, how to erase them, and so on and so forth. 10 or 15 minutes into the class, another student walks in. It was the guy that didn't show up last class. I gave him his user account, his password and told him how to change his password. On with the class. Later I found out that he was MUDding while I was teaching class. Fun, eh? Actually, most of my students were doing something else while I tried to make another student understand a concept or a command. That, my friends, is extremely frustrating. So the class went on. I can't remember exactly what was the commands I taught later. I do remember teaching them about Standard Input, Standard Output and Standard Error, and how to redirect them to files. I also told them about pipes and how to use them. What I do remember is that I started complaining (bitching would be the more accurate term) about the quality and quantity of their homework. They weren't exactly receptive. They weren't even looking at me. They were doing something else. Again, highly frustrating. I gave them double homework too. The results? Please see next day's post. Hint: nothing changed.

Posted by c at 1:37 PM 0 Comments

Day 5:
This was to be my first day with actual hands-on Linux practice. The lab/classroom I was using didn't have any connectivity to the LAN, so I asked the dean if I could use another lab. He said "ok, if there isn't another class using it". Luckly, there wasn't. So we settled in this lab. One of the PCs had a connection to an overhead projector that used the wall as a screen. I thought i was going to use it, but it turned out I didn't. First, I needed every PC hooked
up with PuTTY, a telnet/SSH client for Windows (because all the PCs in the lab had Windows 2K installed). A couple of my students had their laptops hooked up with linux, so no problem there. All I needed for the class was a working bash shell on linux. First, I tried downloading it to a floppy disk and try to distribute it on that. I didn't have a floppy, so I asked one of my students for one. It didn't work. While I was at it, another student offered an USB thumbdrive (a 64MB one, I think). That could work, I thought, and he and another student tried that option, while I decided to copy the URL of the PUTTY Download Page to an open shell I had open on the PC with the projector hooked up. That didn't work because of the font, the lighting of the room and the zoom thing. So, I decided to give them a longer method instead. "Log on to google.com, and search for 'putty'. Click on the 2nd link. Download the putty.exe file." That, surprisingly, worked better than I thought, because in a few mins, everyone had their copy of PuTTY working. The guys with the thumbdrive did a good job too, although they only copied the program to a couple of computers. BTW, there was this girl that wanted to enter my class "just as a listener". Turned out she wanted to surf the web on an empty PC I had. Now that I think about it, I should've kicked that girl's sorry ass out of my class, because one of my students turned out late and had to use the PC with the projector. Like I said, I wasn't really using it, but still... Back to the class... After everyone had their putty program opened, I continued to guide them thru the process of connecting to the server we were going to use. After they had everything set up, I had to give away their usernames and passwords to everyone. I had the brilliant idea the day before to do that on paper. But I used the default font and default size and the individual pieces of paper with usernames and passwords that came out were tiny! I put them on an envelope and took them to class. I started calling out their student ID numbers, and they stepped forward and grabbed the little piece of paper. Turns out only 2 of my students missed that class, which is good. Ok. Now I asked them to log on the server. From there everything went smoothly, I think. We only covered a couple of commands, directory navigation, environment variables, file creation with cat, file permissions, chmod, chown and chgrp. I'm basing my course heavily on the manual my friends Jorge and Paco churned out a couple of years ago. Pretty useful stuff. This was back when we were on the ITESM LUG. I gave them some homework too. Actually, this particular piece of homework is on the style of "ask something you don't actually know" kind of thing. Although I think I asked them so... convincingly that they didn't notice that I had no idea about that particular question. Hopefully, they'll get it right. I'm really looking forward to next class.

Posted by c at 1:35 PM 0 Comments

Day 4. The Installfest aftermath. I believe this day the guys at the front desk managed to produce the key to the lab/classroom on time. I really didn't know what to do this day because we were supposed to start practicing on a linux machine. But the server and the accounts weren't ready yet. So, I had to find out something to teach today. My approach was to try to extract and/or summarize last class' experience and go from there. I didn't expect a lot of responses. I mean, I know how groups like these work. But still, I had a small amount of hope that they would react and actually give me something. How foolish I was. As expected, when I asked them for their opinion on the installfest experience, all I got a lot of mute and confused faces and a couple of "it was ok"s. So much for that. Then I thought about teaching them about disk partitions and the way linux manages them. And so I did. The thing with linux is that there are so many concepts that are related, and this makes it very difficult to determine what to teach first and what to leave for later. I gave them some basic concepts about device files and all, before moving on to primary and extended partitions, logical volumes, and such. Then, I continued to explain more or less the concept of filesystems and how linux managed them. Then, using the mountpoint concept, I tried to explain a bit about the Filesystem Hierarchy Standard. After that, we went over the basics for users: username, password, home directory and shell. We talked about environment variables and such. And before I knew it, class was over. Thank God.

Well, the installfest thing. I managed to produce 3 copies of Mandrake 9.0 and 2 copies of Redhat 8.0. I told the class to organize in teams of 2 or 3. 7 teams were formed. So I was 2 copies of Linux short. I had more copies, but of older versions. I gave one of the teams (the one with a guy that already had installed linux several times) a copy of Slackware 8.1, and this same guy had a copy of SuSE 8.1 and lend it to the other team. This team was using a laptop for their installation (a Compaq Armada that looked kind of old). The Slackware team was using a really battered desktop computer, property of the 'linux expert' on that team. The rest used the computers in the lab/classroom. Generic brand PCs, P-III class. From then on, everything went to heck. I tried to keep everyone doing the install at the same time, but they were too many and I didn't have a clue on how to do it. I tried to stall them on the disk partitioning stage because it was the hardest. I told them to create a 2GB root partition and a 256 MB Swap partition. They didn't get that at first, so I had to be really, really specific. Specific to the point of telling them which button to press and what options to select and such. With that out of the way, everything else was pretty much "click on the Next Button and select the Default option". As they were clicking away it ocurred to me that they should do reports on the installation process, so I told them that. Everyone started taking notes right away. Many said "let us start over again". That means that they weren't paying attention and they were just doing the Wizard clicking thing. No surprise there, really.
One of the teams that were installing Mandrake had a problem with their machine: it froze in the middle of the package installing part. They switched machines and started over. All of the Mandrake installations finished with no further glitches. The Redhat teams, however, were a different story. One of them couldn't get to the package installing part, because the Anaconda (phyton, argh) installer crashed exactly on that step. I thought "it must be the "#$%#$ CDs". They tried twice on the same machine with the same results. The other RH team went thru the installation process without any problems, so I told the other team "watch how they are doing and take notes". But, when the working RH installation team's machine restarted, it froze right after the "Setting Kernel Parameters" line in the boot up messages. So that went to hell to. RedHat - 2, my class - 0. The Slackware guys installed it painlessly, mostly because of the expertise one of their members had. But, when they tried to boot up the new system, they got the dreaded "LI" message. Lilo was f**ked. Great. I didn't even want to bother with that so I said "it's ok, we'll fix it later". The SuSE team didn't have problems, other than they were installing a 7 CD distro on a Pentium Class Laptop. Result: S L O W installation. They didn't even finish copying the packages from the 1st CD when the class ended. They supposedly finished the installation later that night. And they did gave me a pretty decent report (the best I got, I must say).