Teaching and money
I have been teaching for almost my whole adult life.
My first real job was teaching assistant. I worked in a university for 10 years.
Then I started teaching Linux trainning courses for diverse companies (think LPI kinda stuff).
Then I stopped. Why? Because it makes no sense economically to teach in most cases.
The following is written in pesos, but the idea is probably about the same for other countries.
There are no money signs beause cheetah templates hate them ;-)
A trainer is paid about 35 per hour. If he's pretty good, he gets 50.
A course is about 24 hours, so he gets about 1200 (I am going for the best case scenario here).
Usually he has between 6 and 12 students, which are charged about 900 + taxes, so the gross is average 5500.
Of that, half (or a little less) goes to the classroom rent, leaving about 3000 for the training company.
Pay the teacher, and you have a rather pathetic amount for the training company that pays overhead, salespeople, taxes and whatever.
So, who makes any money out of this? The classroom renters :-P
So, if youa re going to work on training, please don't rent classrooms, it makes no sense.
Now suppose you have a consulting firm and you can do onsite training (at your clients), and just pocket the money.
If you have just three students, you need no facilities, you can charge slightly higher, because its onsite.
It's the same effort for the trainer, because you just change where you commute to (training center vs client).
Since you can make more money with smaller classes, you can still charge a little higher (more personalized attention).
Since the students are all from one company they have more in common and you can structure the teaching better, which makes it way less boring.
So, if you want to make a living teaching, here's how.
Market directly to companies, for onsite training.
Have your own materials.
Be flexible.
Buy your own classroom if you have to.
And most of all, don't worry. It's pretty much impossible to lose money training, unless you open a exclusively training company.
Kong at dawn
Last saturday I went to see King Kong with Rosario, and something happened I never saw before.
For whatever reason, we went at the 1:25AM session. I don't think I had ever been to one so late.
And then it lasted 3 hours. And it was almost the longest day of the year.
So when we left, at 4:30 AM, walking through a ghostly mall, it was dawn.
It's a small thing, but it was quite shocking :-)
The movie... she didn't like it and insists Naomi Watts is wearing, in one of the scenes, a Lurex dress, which couldn't possibly be the case in the 30s.
Me, I liked it quite a bit, perhaps my suspension of disbelief is not so easily taxed by textile issues, except for some serious moral trouble I got a day or so later.
You see, killing Kong on the Empire State building was right.
That damn beast had just stomped, thrown, smashed, chewn and swatted about 2500 people.
He was going all 9/11 on Manhattan, and just because he didn't feel like crushing one specific blonde (although he sure killed all her predecessors on the sacrificial girl job), we are supposed to feel sorry for him?
Cry me a river of giant alligator tears, I am not. I say we should bazooka the evil man-eating monkey, and put Denham in jail for reckless endangerment, along with all his accomplices.
AND he should lose his shirt (along with his theater bankrollers) in a civil suit to the family of the maori guy whose head got chewed by Kong, or Lumpy, the cook eaten by gigantic man-eating maggots.
At least in the original movie, the girl has the good sense to be scared senseless by the sight of a giant gorilla with romantic leanings.
Here? She laughs while they ice skate, I assume ignoring the blood stains all over the monkey's fur.
Forgotten Language: Jorf could have been Python (or Ruby)
A long time ago, there was no Internet.
Ok, there was an internet, but I lived outside of it. It was 1992 or 1993, and I only saw my first webpage and send my first email in 1995. And I was perhaps the third person to have an account on a permanently internet-connected box in a 150 km radius.
But that didn't mean I had no access to internet stuff! What I did was buy CDs containing mirrors of repositories like Simtel.net (it was a single CD, too!) and in there you could find hundreds of programs.
Most of them shareware, most of them crap, but every once in a while, there was something cool, like DJGPP (a whole gcc suite for DOS! A real C compiler! For Free!)
At the time, I had a side job writing data entry software for statistics students. They were simple programs that showed a form, where data was loaded, then it did some simple manipulations of the data.
The natural language for that was something like Clipper or DBase, but I didn't have access to them (or a way to learn it. Remember, no Internet).
On one of those Simtel CDs I found Jorf. (Josephine's Recipe Filer). It was a OO language, with an interpreter for DOS or Windows, and it supported stuff that was really advanced for the time, and it made my coding a lot simpler.
Out of nostalgy, I downloaded a copy (yes, it is still there), and ran it in DosBOX (yes, it still works), to check if it was as good as I remembered.
You know what? It is.
In fact, if it had come out 2 or three years later, and as free software instead of shareware... I think it would have been big.
Here are some highlights og the language:
OOP
Has integrated windowing toolkit (for DOS and Windows)
It had an interactive hypertext/windowing tutorial written in itself. In 1993.
-
It looks like a cousin of Python. A freaky cousing, though.
Comments start with |
Strings limited with single or double quotes
Automatic type conversions
Intentation controls flow :-)
No declared data types
Integrated editor and debugger
Sample Hello World:
Demo:Start Msg:Add ("Quick Demonstration","Ok") Sure you can say "Hello World" in one line of C code. But how many punctuation characters are required to display a dialog box like this? Return (Ok)
That piece of code showed a window with the message in it, and a Ok button.
The funky thing is: in the tutorial, you saw the integrated editor open, and the text of the example start to appear, and then it ran.
That looked like magic at the time :-)
The toolkit supported radio buttons, checkboxes, text entries, all the basics, and it was a thousand times easier than what Turbo Pascal or Turbo C guys battled with at the time.
The author was Wayland Bruns. He lived, in 1993, in Colton, Oregon.
He later seems to have become CTO of a company that designs sync software for Goldmine, Lotus and other such things.
So, he became a suit ;-). However, he was once a guy that wrote, in his software's manual, things like:
JORF Company is just me, Wayland Bruns. I have been working on JORF for six years, and ran out of money three years ago.
Or:
JORF(R) is a new computer language. JORF was created by a Grunt-programmer frustrated by low level math based computer languages that are inappropiate for business data processing.
And you know what? It was the right idea. If he started Jorf in 1987, that means he started it around the same time Perl 1.0, (and the syntax is much nicer ;-). He started it around the same time Guido started Python.
Here's a toast to JORF, which could have been Perl, or Python, or Ruby. But was not.
Rant: The problem with expensive linux
I always liked SuSE's Linux distros. They even used to mail me a box every now and then when there was code of mine in it. It always seemed nicely done, and well integrated. Of course I only used it as a workstation.
Recently, I had the displeasure of installing a SLES9-based server for a client.
I say displeasure, because it was by far the worse experience I had with any Linux distribution ever. It was worse than the time I had to install openldap on a P2 with gentoo that was connected to the internet over a 56k dialup and had only 100MB of free disk space.
And that one was a screamer!
What were the problems?
Well, for starters, it was a punishing throwback to the times of proprietary software installation.
I install it. Ok.
I try to update it. Not Ok.
The problem? You need to authenticate to the servers in order to get the updates. And there is no user/password anywhere in the box. You have a serial number (in a word file inside a CD, not on a sticker), and no explanation on how to go from one to the other.
It turns out you have to call Support to get the auth data, and that depending on how you do it you get data that lets you access to the novell servers or the suse servers (and not the other).
Then, after we got that (48 hours on tech support), I start installing the software I need.
The mission of this server is simple. It's a mail forwarding server. It handles outgoing mail, and it stores incoming mail for a few minutes until a CRM software (in windows) grabs it via POP3.
I can do such a server on CentOS, Debian, (hell, yes, even gentoo) in about 2 hours without counting install+updates, including migration of old data.
I install postfix and imapd (I think it's wu-imapd, which sucks, BTW, but the alternative was cyrus, which was gross overkill).
It seems to work. But the CRM can't fetch the mail. Outlook can, though. What the hell?
Well, SuSE decided to disable plain logins for POP and IMAP over non-SSL connections. And there is no way to enable it.
Since that's the only kind of connection the CRM will do, it will not work.
Mind you, in this case, it is absolutely no security risk whatsowever, since the mail server and the CRM are segregated from the user's network...
Ok, I will install courier-imap, which is better anyway. But it's not on SLES9 CDs, and the RPMs on the web are for every other SuSE and not SLES9. So I had to build it myself.
That is, of course, because there is no free repositories for SLES9. You have what comes with it, or what you can build yourself. Anything else, you are SOL.
The same thing happened for almost everything I wanted to install. Either it was not there, or it was for some other SuSE, so it was time to compile a RPM again.
It was like Gentoo, only without the automatical dependencies, and with no hope for future security updates unless I build them myself.
At that point I was already telling the customer that maybe I could just install OpenSUSE, which was free and would not have these problems (hell, I would even get apt4suse and avoid the damn novell servers).
Of course that means they would be a few hundred dollars poorer for no good reason.
But anyway, it took me roughly 3 extra days to set this up, which made me actually lose money on the gig. ANd I lost the time in the most pathetic way, sitting in a customer's office waiting for tech support, watching my money go away.
That had never happened to me before. I must say I am pretty disappointed.
But what was the root of the problems here?
There is no free SLES clone like CentOS
If there were, then there would be 3rd party repos. The customer would still have bought SLES9 because they are support groupies, but my life would have been easier.
Of course, it would probably cut into SLES sales, but hey, that is not my problem, is it?
Novell Argentina tech support sucks for Linux.
The guy on the phone literally had no idea what I talked about when I asked about how to get into YOU to update the box.
But don't worry Novell, I heard Red Hat Argentina's is quite bad too.
If you really want SuSE, buy a regular one, the ones with public FTP repositories, and avoid trouble. Or get OpenSUSE.
Me, I'm pretty bummed :-(