Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Teaching Linux/Unix Basics to Microsoft Junkies?

timothy posted more than 12 years ago | from the what's-the-best-candy dept.

Linux 570

flupps asks: "I've been asked to hold a two-day crash course in a class of students that currently are studying to become MCSD certified. I'm looking for ideas how to set this up. I was thinking about starting with some general file system descriptions, where to find what files, the man pages, the tab-button, etc. After that move on to some of the daemons and just explain what they do." He's got at least one idea to start with (below), but what must-have skills or demonstrations would you add?

I also plan to set a database program in VB (one of the certificates in the MCSD suite) against a MySQL or Postresql db and show that there are free alternatives that works as well as SQL server.

What would you think could be a good addition to teach them?

This is in no way meant to be a very advanced course, but I want to show some of the excellence of *nix and why you sometimes can save time and stability and maybe make them interested and read up more by themselves afterwards.

Any suggestions very welcome.

cancel ×


Sorry! There are no comments related to the filter you selected.

FP (-1, Offtopic)

Anonymous Coward | more than 12 years ago | (#3339548)

First Post.. I think

the best combo IMHO (5, Insightful)

Gavitron_zero (544106) | more than 12 years ago | (#3339555)

is teaching cat | grep . I don't think I use any command combo more than this other than ls -al. Piping and redirection is really important stuff for Microphiles to learn right away. It's a great way to show off the power of a CLI.

Re:the best combo IMHO (1)

orkysoft (93727) | more than 12 years ago | (#3339563)

Isn't just grep enough in that case? There are plenty of | grep combos, but cat | grep seems a little redundant to me.

Re:the best combo IMHO (4, Funny)

WWWWolf (2428) | more than 12 years ago | (#3339663)

Here in technical circles, cat | grep is known as useless use of cat [] =)

Re:the best combo IMHO (0)

SweetAndSourJesus (555410) | more than 12 years ago | (#3339724)

I really wish I had the time to write up web pages about how other people are using their shells. Unfortunately, I'm busy using my shell.

Sure, the cat process is unnecessary, but I don't understand why anyone would get so worked up about it.

Re:the best combo IMHO (2)

ethereal (13958) | more than 12 years ago | (#3339572)

Powerful, true, but on the other hand most of the power comes from regexp syntax that might be a little off-putting to someone who's never seen that before.

Re:the best combo IMHO (1)

Clived (106409) | more than 12 years ago | (#3339674)

Good idea ! Cat |grep are great commands to start off with and can be used to do a lot of things, look for files, search for text within files, etc. Also show them the vi editor, make sure that they know that they are going to have to learn to use vi. As my Unix prof used to say "Wherever you go with Unix/Linux, there will ALWAYS be vi"

Good luck :)

But (-1, Offtopic)

Anonymous Coward | more than 12 years ago | (#3339678)

what's better?

(a) a crash course in Linux/Unix


(b) sex with a mare

Re:the best combo IMHO (0, Funny)

Genghis Troll (158585) | more than 12 years ago | (#3339692)

You should try : cat file | xargs --null echo | sed -e "" | caesar 26 | grep word

That will give you an even more pompous feeling of self-satisfaction, while still doing the same thing as plain old "grep word file".

XFree Demo (1, Offtopic)

cfeagans (183944) | more than 12 years ago | (#3339557)

Show them Xfree... with either KDE or GNome.... let them look at the "windowed" environment of this desktop and see the simularities of Windows and the power that it really has especially with configuration.


Re:XFree Demo (0)

Anonymous Coward | more than 12 years ago | (#3339747)

how is this offtopic??? please, someone mod this underrated and metamod it as well. thanks. and i am not the poster of the original message.

First thing... (2, Funny)

ciryon (218518) | more than 12 years ago | (#3339558)

No, you don't need to reboot after....[insert any task here]

Yes you do need to recompile the operating system (5, Funny)

pommiekiwifruit (570416) | more than 12 years ago | (#3339593)

after [insert task here].

Re:Yes you _can_ recompile the operating system (2)

Dix_sw (410123) | more than 12 years ago | (#3339603)

after [insert task here].

Re:First thing... (0)

Anonymous Coward | more than 12 years ago | (#3339669)

linux is like your first car... a cheap disposable vehicle that you can use to learn driving.

then, when you know how to drive, you choose a real OS.
BSD Baby

awwww yeah []

Re:First thing... (0)

Anonymous Coward | more than 12 years ago | (#3339743)

5) I don't care how fast something is, if it comes at the cost of

security or stability it's stupid.

This statement implies that C is stupid. Not that I don't think that C is stupid, but I have a feeling the guy didn't mean to imply that.

good stuff (-1, Offtopic)

spm248 (552365) | more than 12 years ago | (#3339562)

good idea

man pages (5, Informative)

Arctic Fox (105204) | more than 12 years ago | (#3339564)

Show them how to use man pages (or what they are), appropos, etc....
man heir is a good start for disk structure. (if you're on a BSD, i'm not sure Linux distros have that.
/etc files should be covered... /etc/fstab etc...
Explain the Unix philosophy, with small apps doing one thing well, and how they can be glued together to do complicated things.

Re:man pages (1)

Faust7 (314817) | more than 12 years ago | (#3339621)

Dunno, just thought this was funny.

Foogtoot 48: I don't know why they something something something. Forgot rest of sentence.
Foogtoot 48: Oh yeah, man pages suck.
Ataraxia 7: Man pages?
Foogtoot 48: UNIX manual.
Foogtoot 48: Type "man ".
Ataraxia 7: To see something that sucks? Nah.
Foogtoot 48: Get what amounts to a readme file on the topic.
Ataraxia 7: But readmes are your friends.
Foogtoot 48: They are thorough and informative, but it's tough to find what you need.
Foogtoot 48: At least for me.
Ataraxia 7: See? Friends.
Foogtoot 48: I think there's a better way to use them though, some kind of search thing.
Foogtoot 48: But the fricking help system shouldn't have an arcane control system.
Ataraxia 7: Arcane as compared to...
Foogtoot 48: Windows Help of course.
Foogtoot 48: That index tab is my real friend. Dammit.
Foogtoot 48: The search option is useless, but the index, fantastic.
Foogtoot 48: aauooo
Foogtoot 48 signed off at 12:06:41 AM.

Not to discourage you .... (5, Insightful)

DrPascal (185005) | more than 12 years ago | (#3339568)

But as someone that has migrated a Windows 2000 Advanced Server box to Linux, I can say that the best way these guys can learn is to just USE it out of necessity. I had played with Linux quite a few times, and it wasn't until I actually had a goal/list of things I actually had to configure that I really learned what was going on.

If you're just trying to get them familiar with Unix, nevermind I guess, but I'm just saying that unless you give them tasks / goals instead of just 'showing' them, they really won't see the benefits.

You might also take into account their view on this class. Much like people that have to take a G.E. course in something they have no interest in, they may smile and nod, regurgitate, and retain nothing. Are they here to learn, or because they have to?

Re:Not to discourage you .... (2)

electroniceric (468976) | more than 12 years ago | (#3339668)

You might also take into account their view on this class. Much like people that have to take a G.E. course in something they have no interest in, they may smile and nod, regurgitate, and retain nothing. Are they here to learn, or because they have to?

Very good advice. I'd steer clear of the love or hate it dichotomy, though. Almost everyone can learn something of utility from what you're teaching (if nothing else, explaining the mail daemons will help them understand how their email works) and knowing their agenda will help you decide what a paritcular student might be excited by.

Try for more commonality... (1)

sultanoslack (320583) | more than 12 years ago | (#3339569)

In two days you can't teach someone the basics of using the command line in Unix. Sorry. If they want to do anything useful it will just take longer.

However, in two days you can get someone aquanted with something like KDE and try to remove the fear of Unix. That's all that you can really hope for in a couple of days. In other words, you can't get these junkies off of the smack in a couple of days, but you can show them what a better life is like. :-)

Do you type 80 WPM? (2, Funny)

Anonymous Coward | more than 12 years ago | (#3339570)

Coolness factor:
This is how you win 'em over. No x, not even texty vi or emacs. Nothin' but BASH.
Just sit there and do routine things moving thousands of files around your filesystem, starting a few web server processes, just random unixy stuff that it would take several hours to get done on Windows. I know windows junkies: they're always typing "cmd.exe" and acting cool about having a "tail" to look at logfiles.
Show them a thing or two.
Keep talking throughout.
And convince them that they're nothing.
At the end, mention:
"By the way, I didn't do all this locally. I'm logged in at a server I manage over in Canada. Check out the uptime". What? Longer than Windows 2000 has been out? (Nevermind that it's at Service Pack 2 already, and without that, your security's hosed).
Watch an evil, broad grin work its way across their faces.

Re:Do you type 80 WPM? (3, Interesting)

DrPascal (185005) | more than 12 years ago | (#3339601)

Although I think the sadistic tone of your post is very funny, it's realistically a bad angle.

One thing that Windows based users think of Linux users is that they are pretentious and cocky when it comes to using computers ... quite frankly, because that is how the [insert most appropriate word like "majority" here] of them are.

By zooming around and doing the amazing things one can do in Bash (I am a big fan), you simply alienate them, and push them away. It almost says to them "ha, ha, you CAN'T DO this." That's poor teaching. The message you want to convey is "You can do this too, and it's not too tough."

Another angle (!): Ever tried installing Cygwin/SSH on a Windows 2000 box? I have it running on a machine or two, and if you have the HOME set to /Documents And Settings/$USER, it really makes remote access beautiful. Maybe you can have them try this as well, and it might be a stepping stone.

Re:Do you type 80 WPM? (1, Flamebait)

mgkimsal2 (200677) | more than 12 years ago | (#3339655)

If it takes you a few hours to start a web server and move a few thousand files around under Windows, you don't have any business touching a computer.

Tell them about Open Source (1)

blogan (84463) | more than 12 years ago | (#3339573)

An ISYS instructor at my university has had me come into his Intro to Operating Systems class when they get to Linux. I usually have about an hour to speak, but I make sure to include the advantages of having source code (show them how it can be modified and portable), advantages of using programs that follow open standards, and some of the issues dealing with licensing compared to Microsoft products.

Microsurfs (-1, Flamebait)

Swix (456262) | more than 12 years ago | (#3339575)

What teach microsurfs to use unix? Thats like teaching a hamster to ride a bike, they can use one wheel not TWO!

-End Sarcasim

Re:Microsurfs (-1, Offtopic)

Anonymous Coward | more than 12 years ago | (#3339649)

You're a fucking idiot. Kill yourself.

Dont get carried away (2, Troll)

LadyLucky (546115) | more than 12 years ago | (#3339579)

show that there are free alternatives that works as well as SQL server.

Ive used all three databases you mention. Without a doubt, SQL Server is by far the "best" database. I think you do have to temper what you say, because if you run around making statements like that, then it puts doubt on the other things you say.

I dont mean to cast dispersions on MySQL or PostreSQL, they are very good databases, but not in the same league as SQLServer, IMHO.

Re:Dont get carried away (1)

MrEfficient (82395) | more than 12 years ago | (#3339612)

I'm not disputing your claim because I haven't used SQL Server enough to really understand it, but why do you think that it is by far the best database? I'm mostly concerned with why you think it's better than Postgres.

Re:Dont get carried away (0)

Anonymous Coward | more than 12 years ago | (#3339667)

SQLServer is certainly more sophisticated than PostgreSQL.

However, if you want to pay for advanced database, you would naturally be better off with DB2 or Oracle than SQL Server. At least you can choose an appropriate platform to run either on instead of being hobbled by Windows-only software.

Re:Dont get carried away (1, Insightful)

Cheesy Fool (530943) | more than 12 years ago | (#3339633)

Please don't use "SQL server" to describe "Microsoft SQL server". "SQL server" is a generic term.

Re:Dont get carried away (0)

Anonymous Coward | more than 12 years ago | (#3339641)


However for many of the uses where before they might have just opted to buy a server and stick SQLServer on it, a solution using Postgres would do just as well as a vastly reduced pricepoint on less powerful hardware.

And that is what you need to drill into the Microsoft people. That there are free alternatives to Microsoft solutions that work just as well, however the only cost involved is a $40 book on Postgresql or MySQL...

With Apache it is simple to sell that over IIS - everywhere uses it and it is easy to set up and run. Databases are harder, and you shouldn't state that the open source databases are better or more suited, but that they are more than adequate for the tasks that most databases are used for.

Just my opinion anyway.

Re:Dont get carried away (0)

Anonymous Coward | more than 12 years ago | (#3339691)

Hey cracksmoking mods, if you think this is a Troll you've never used MySQL/PostgreSQL/SQL Server.

The first is a POS non-db, the second is decent, but the third is by far the best of the three.

Re:Dont get carried away (1)

gd23ka (324741) | more than 12 years ago | (#3339696)

I hate Microsoft like the next guy, but M$SQL is light years ahead of MySQL. If you've got to show off a database alternative that's really ahead and kicks M$SQL's ass and runs on Linux then show them DB/2 [] . M$SQL is a toy database just like MySQL compared to DB/2.

Software Installation (5, Insightful)

Apreche (239272) | more than 12 years ago | (#3339581)

Make sure you teach them how to compile and install software. When I first learned *nix I learned how to navigate the file system, run things, edit files, move things around, etc. But it took me like a week to figure out how to install and set up new software. I remember having the hardest time with it because every single piece of software was different. There was no standard setup.exe or *.rpm all the time. I had to make, make install. And that didn't always work either. That, imho is one of the major differences and difficulties there is in moving from windows to *nix. In windows once you've installed one piece of software you've installed them all.

Re:Software Installation (3, Insightful)

bilbobuggins (535860) | more than 12 years ago | (#3339712)

yes, this and configuring software before and after you install it. i remember one of my hardest hurdles to get over was that windows had gotten me used to the installer always asking me questions.
'would you like XYZ support?'
'would you like the ABC option?'
where as installing under *nix is a self motivated process, i.e. if you want it, type it into the conf file yourself or pass it in as a param when you make.
the windows culture is one where you wait for the program to point and prod you, whereas under *nix you have to know what you can do before hand and then choose accordingly.

Re:Software Installation (2, Insightful)

tjcoyle (539228) | more than 12 years ago | (#3339734)

I would agree with the above 100%, and would also suggest you highlight the Windows Registry vs. Unix-style configuration through the liberal use of configuration files. As a VB developer (I know, haha) who develops and delivers a heck of a lot of applications, the WORST part of Windows is by far the interdependency of DLL's and OCX's and the obfuscation and/or complexity of their configuration. Make sure you clearly illustrate the open nature of Unix's insides, and drive home the fact that low-level configuration results in maximum control, and therefore, maximum ability to identify and correct problems when they do occur. Any VB developer knows the horrors of the old 'DLL Hell', and will FULLY appreciate this.

gone fishin (5, Insightful)

yack0 (2832) | more than 12 years ago | (#3339583)

instead of doing like MCSE and giving them fish, teach them how to fish.

"This is /etc - it's where most of the config files are.
This is /usr/bin - it's where most user programs live
This is /usr/sbin - it's where most superuser programs live

If you're interested in using a command and don't know how, use 'man command' and get them familiar with how to use commands. "

You've got two days - so some basic 'how to get info' and then examples of getting that info, would be good.

Possibly a run down of 'in Microsoft, you have IIS, in Unix there's apache, ftp, etc'. 'In MSFT, you have ipconfig /all - in unix we have ifconfig' some basic translations of basic stuff.

How about running through the 'Administrative tools/Common' menu in 2000 and showing them where all those toys live in *nix - or where they might be able to find them.

But make sure you teach them how to fish for themselves - I suppose MSFT has the help pages, but man pages are our best equivalent. Or homepages for the package in question where applicable.

Good luck!

There is no hope! (3, Funny)

lizrd (69275) | more than 12 years ago | (#3339584)

where to find ... the tab-button, etc.

If they can't manage that on their own, there's no hope at all.

In a more serious note, I'd try to focus on the similaraties between cmd.exe syntax and bash/sh syntax and possibly get a bit into basic shell programming.

Could this be my first one ever!?!? (-1, Offtopic)

Anonymous Coward | more than 12 years ago | (#3339589)

First Penis!

AC FPers rule!

Re:Could this be my first one ever!?!? (0)

Anonymous Coward | more than 12 years ago | (#3339684)


One of the biggest problems... (1)

KFK2 (23515) | more than 12 years ago | (#3339591)

From working with linux and dealing with fellow students that need to use it when doing programming assignments, I have noticed that a lot of them do not know anything about background processes and how to start a process in the background, especially when using X Windows programs on a Windows 2K based X server.. Most just have a shell and run the program they are going to run (xedit) in that shell and forget about it until they have to compile thier program, in which case they clost thier xedit window and compile thier program.
Another thing that I have noticed is a big help to me is just the fact that the shell is a POWERFUL scripting language and if you ever want to do a set of commands on a list of files, you can do so quickly.


gcc, vi/emacs, kdevelop (1)

jas79 (196511) | more than 12 years ago | (#3339592)

MCSD is for developers. There for it might be a good Idea to show them the development tools.

And you could always explain the what open source is.

SOAP & Tomcat... (2)

(H)elix1 (231155) | more than 12 years ago | (#3339599)

Set up tomcat /w SOAP [] , and show a simple VB app or ASP page interacting with a "hello world" SOAP call. Real world, simple setup, shows the potential to mix environments...

Keep it simple (and don't oversell mysql) (5, Insightful)

mgkimsal2 (200677) | more than 12 years ago | (#3339600)

I also plan to set a database program in VB (one of the certificates in the MCSD suite) against a MySQL or Postresql db and show that there are free alternatives that works as well as SQL server.

I would qualify that - you'll probably have at least one person in the group who's up on MySQL and/or PostgreSQL deficiencies (yes, they have them). Don't try to convince them that MySQL can be a drop-in replacement for SQL Server 2000. Both MySQL and PostgreSQL *can* be used in many situations, and should be considered along with other options re: price/performance, but don't go overboard and talk down to MS people saying MySQL is as good as (or better) than SQL Server. It does a disservice to everyone involved.

Covering RPMs and/or apt-get technology might be useful at the end of 2 day overview.

What would help more than anything else is showing people where/how to get help - online resources (RPMfind, for example) and whatnot. There's only so much you can cram in to two days - don't overdo it. Cover the basics in detail, and give resources to visit afterwards for people who want to learn more and/or experiment.

Re:Keep it simple (and don't oversell mysql) (-1, Flamebait)

Anonymous Coward | more than 12 years ago | (#3339683)

linux is like your first car... a cheap disposable vehicle that you can use to learn driving.

then, when you know how to drive, you choose a real OS.
BSD Baby

awwww yeah []

Re:Keep it simple (and don't oversell mysql) (1)

WWWWolf (2428) | more than 12 years ago | (#3339705)

...but don't go overboard and talk down to MS people saying MySQL is as good as (or better) than SQL Server. It does a disservice to everyone involved.
Precisely. MySQL is still definitely behind other RDBMSes. It's great for giving people who are used to MS Access some biiiig jaw drops, but I guess SQL Server users are probably going to laugh it out of the door after they type BEGIN; =)

I use PostgreSQL myself, and if people are going to make a big honkin' database, I just go "mmmh, there's Oracle, I hear it's expensive but also pretty good."

SSH/X-forwarding (3, Interesting)

OblongPlatypus (233746) | more than 12 years ago | (#3339604)

Just show them the beauty of ssh and X-forwarding. It never fails to impress my Win/Mac-using friends when I run the latest version of our Java project application directly from the unix server at school.

How about a course for MS users (not developers)? (1)

cyberformer (257332) | more than 12 years ago | (#3339606)

I'm not really a developer, but as a reforming MS user, I think there'd be a lot of potential for teaching people the basics of how Linux differs from Windows and why it's different (and in most cases, better).

The junkie analogy is pretty accurate here: A lot of people who use Windows actually hate Microsoft as much as or more than most Linux geeks, and would like to quit if only they could. I suspect most /.ers fall into this catagory, given the (often justified) MS bashing on the site combined with the high percentage of people using IE.

Many Windows users also like the idea of open-source (free beer and free speech are both seen as good things...), even if they don't personally want to look at or edit source code.

You need to do a VI vs. Emacs comparison (0)

Anonymous Coward | more than 12 years ago | (#3339608)

You should split the class in two, and make one side learn about VI, and the other side learn about Emacs, and then get them to discuss which one is better.

Then teach them about security, remote Unix administration using SSH, and how Unix users get more sex.

Re:You need to do a VI vs. Emacs comparison (1)

Warped-Reality (125140) | more than 12 years ago | (#3339704)

and then get them to discuss which one is better
This is a computer class, not a combat survival class :)

modules/objects (1)

ethereal (13958) | more than 12 years ago | (#3339614)

I know that a lot of people are going to say "show off command-line stuff", and I personally am Mr. Command Line as well, but that's not the direction to go into for this demo. Sit down in front of VB or VC++ for a while (if you can make yourself :) and mess around with creating forms, plugging in other people's objects, etc. That is what those guys are used to; you want to convince them that they can do that same sort of thing on *nix, often in a simpler way.

I'd say make sure to include a demo of Glade for building interfaces, and maybe some brief Perl OO training. Show that *nix doesn't have to be monolithic and inflexible, like they probably think right now.

Show how easy it is to find software for the types of system administration tasks that they would be doing, and how easy it is to configure that software to work exactly the way that you want. Play up the "openness" of it all.

Hand out a sheet with info on where to find help -, man pages, etc. Also, how to use "apropos" or "man -k" - because these guys won't know what man page they want right away.

Oh, and it wouldn't hurt to have a really sharp-looking window manager session running for the demo - you know, the ones like they demo on DO NOT just use the default RH 7.2 desktop. Appearance counts, even when it doesn't :)

Re:modules/objects (0)

Anonymous Coward | more than 12 years ago | (#3339698)

Sit down in front of VB or VC++ for a while (if you can make yourself :) and mess around with creating forms, plugging in other people's objects, etc.

A deceptively convincing statement. s/or VC++//g and you actually wouldn't have tipped your hand showing that you know absolutely nothing about using VC++ for Windows development. Which of course makes me wonder about your VB experience as well.

show how to start an app from another X-server (2, Insightful)

kilaasi (185006) | more than 12 years ago | (#3339619)

One of the first things I found cool on UNIX was being able to start Netscape on one machine and have the screen displayed on another. And explain that this IS NOT Netop, PCAnywhere or VNC or another 3rd-party tool, but a natural part of X. X was DESIGNED to do this whereas Widows (Windows) needs a thirdparty-tool to do a much a technically less advanced screencapture.

GUI vs CLI (1)

MoogMan (442253) | more than 12 years ago | (#3339622)

The fact that you dont need a GUI to acomplish something. Many things just get confusing when using a GUI in my opinion. A lot of the time it is more efficiant to use a CLI as well.

Re:GUI vs CLI (3)

3seas (184403) | more than 12 years ago | (#3339665)

There is the third UI that is hardly standard and user frendly or accessible. The side door port to controlling an application external from it's UI.

With the three you can begin to create automations regardless of what level of computer use you are at.

It's like having the three primary color of the rainbow and with them being allowed to create any color of the rainbow, but take away one and you are greatly constrained.

User Interfaces are like that, we generally only have two available, if even that, on the windows box but even Linux has a hard time providing a standard 3rd UI to applications, devices and libraries.

Watch out, wait to long and MS will figure this out and get the jump on it. That would be a shame.

Want to convert MS user to Linux? Then give them highly productive tools they cannot find on their windows boxes. And that would include general automation tools friendly enough for anyone to use.

Leave a lot of time for questions. (1)

Anderlan (17286) | more than 12 years ago | (#3339623)

Ask them what Microsoft's platform can do that they think Linux/Unix can't or can't do easily; What are the perceived shortcomings. Then you can calmly and easily blow any misconceptions out of the water.

Google and Nigger (-1)

Chinese Karma Whore (560174) | more than 12 years ago | (#3339624)

did you know that searching for 'nigger' on google returns the category Arts > Movies > Titles > W > Who Framed Roger Rabbit ??? See [] for yourself!

wtf? (0)

Anonymous Coward | more than 12 years ago | (#3339625)

I was thinking about starting with some general file system descriptions, where to find what files, the man pages, the tab-button, etc

There is no "tab" key in windows? Jeez, they're even more backward than I thought.

Show them the possibilities (1)

hhg (200613) | more than 12 years ago | (#3339627)

Show them the ease of modprobe, the powerfulness of iptables, the fun of piping and redirecting, mixing of filesystems and drives in the directory-hierarchy and mounting of ISO-images(!). Inprint in their heads that the machine does not need to be rebooted after updates and installations, ip-adress-changes and change of configuration. Show them the power of root, the joy of grep and the top of it all, the geniality of config-files, and NO REGISTRY.

Re:Show them the possibilities (4, Informative)

carm$y$ (532675) | more than 12 years ago | (#3339688)

Show them the ease of modprobe, the powerfulness of iptables,[...] mounting of ISO-images(!). [...]Inprint in their heads that the machine does not need to be rebooted after updates and installations, ip-adress-changes and change of configuration.

They are developers, for crying out loud. They'll start running after 5 minutes of iptables; why not show them gcc?

Show them the [...] the geniality of config-files, and NO REGISTRY.

Look, config files in /etc, /etc/sysconfig, /etc/$SOFTWARE_NAME, /opt / SOFTWARE_NAME, /usr/etc, /usr/local/etc, ~/.$SOFTWARE_NAME, /usr/share/$SOFTWARE_NAME ... but no registry. Woot!

Don't get me wrong, I'm a 100% unix guy; but it seems to me that exactly this kind of arguments makes people stay away from linux. You don't have to crush Windows, you have to give them reasons to make them beleive in linux, and to want to hop in the wagon.

Xplatform (2)

clifyt (11768) | more than 12 years ago | (#3339629)

I'd simply show them the Unix stuff that is cross platform. Start off with things such as Apache or even PHP.

More than likely, if they are going for their MCSE cert, they will be running Wind'rs no matter what you tell them, but showing them these cross platform apps might be the seed to slowly merge them to other platforms. For instance, I run both Apache and PHP on most of my servers...I run them on Wind'rs, MacOS X, Unix. They are VERY stable across platforms. I still run IIS5.0 on one machine, but thats because I have clients that NEED ASP. I use to develop against ASP, but now use PHP on everything because I never know what platform I'm going to be running on.

After that -- because everyone needs to know how to set up a web server -- grab the Posix Tools from Cygwin (??? I think thats where I get them...I just google everytime) and install them on Windows. You get all the nice commands that ya do on unix, but on Windows. Its VERY nice because Windows doesn't come with a very good Kill command (there is one on the Resource Disc...but I prefer these ones better)...sometimes you REALLY need a service to quit and their is no other way.

Start showing folks these xplatform tools and show them how they only need to memorize one set of instructions instead of a dozen that do the same things across a dozen platforms (the CLI stuff on Windows isn't the same even across their different platforms...they change the names of apps too readily). How do you get to a Command Line on Windows? Is is CMD? Is it Dosprmpt? Depends on the version. Things like this.

I install the cross platform tools so people can be familiar with the Unix stuff...hell I've got my boys so brainwashed that when I ask them to hit one of my unix boxes, they now tell me its 'just like windows'. Once you can safely work around a machine without having to stumble, you then feel a little braver and may actually explore a bit. Maybe then they figure out why a Unix box is so much nicer and more stable than the same PC...


Installations without reboots and system source (1)

div_2n (525075) | more than 12 years ago | (#3339631)

The infamous windows reboot is one of the most aggravating and time consuming things IMO. Show them how you can install almost anything without rebooting.

While your at it, show them how if they want to know the inner workings of a system function they are planning on using in their code, pull up the source and let them drool over it.

Re:Installations without reboots and system source (1)

xfs (473411) | more than 12 years ago | (#3339664)

I think I've seen two comments about this so far... It's really annoying. I barely EVER have to reboot my Win2k pro box. I know that with windows 98 I had to reboot every day almost, but Win2k has fixed this 99.9%

Re:Installations without reboots and system source (1)

div_2n (525075) | more than 12 years ago | (#3339733)

I work with Windows 2000 about 12 hours out of every day. I assure you that the reboot is alive and kicking.

Just a few examples of a required reboot:

-installation of a security patch. Any of the HUNDREDS. Pick one.

-USB stack corruption via bad drivers. Install an Alcatel Speed Touch USB DSL modem. You will be rebooting at least once a week. I promise.

-New versions of Internet Explorer. Install version 6. Watch what happens. Yep, the little "please reboot" comes up.

-Joining or removing yourself from a new domain. Reboots ARE required.

-Installing applications that install new services.

These are some of the highlights. I am sure if I thought longer, more would come. Reboots not required? As compared to 98, more true. As compared to Linux, not true.

Don't be afraid of "the curve." (2, Insightful)

ragnarsedai (43164) | more than 12 years ago | (#3339634)

The learning curve is daunting to newbies, so show them that a Unix command line is not something to be afraid of. How?

I'd suggest pointing out the local sources of information, "man", "info", the "--help" parameter convention, /usr/share/doc/*, the packaging system (in that order). That's to show that the blinking cursor of a shell is a possible place to start looking for help, in the same way that immersion in a foreign language is the best way to learn it.

Next, describe the "small tools, fitting together like legos" philosophy. Talk about the power of the pipeline, and illustrate shell scripts. Point out that shell scripts are themselves commands in a pipeline.

Describe how things are bug to run. manually, cron, at, inetd, at boot.

Point out the innate networkability of Unix. A lot of the time, one isn't sitting at the console of a box when administering it.

Talk about the source+compile+install procedure -- something that will be pretty foreign to microserfs.

Discuss the packaging system of linux distributions. Show the ease of administration that Debian (e.g.) allows, and the "freeness" of most software, and the license and budget problems that it can save.

Oh, yeah. Teach 'em that "vi" rules over "emacs", too. :)

[correcting typing mistakes] (1)

ragnarsedai (43164) | more than 12 years ago | (#3339646)

s/bug to run/begun to run/

s/shell scripts are themselves commands/shell scripts themselves can be commands/

duh..... (1)

rapid prototype (551089) | more than 12 years ago | (#3339637)

teach them how to set up and use SAMBA. this is at least one skill they will find useful when they have to administer a large windows network - file/print/domain servers which don't crash are kinda nice to have around.

A few suggestions. (1)

serial frame (236591) | more than 12 years ago | (#3339639)

If any of these guys do any sort of C development, teach them how to use Makefiles and whatnot.

However, more important than anything else would be to teach them that UNIX is completely modular, and that a collection of these 'modules' (shell scripts, system utilities, etc.) is what makes a UNIX system tick. They must understand how shell scripts can work with other shell scripts, and how nearly anything can be scripted, since UNIX provides the right set of tools. A great example to show them would be the init scripts. Let them know that there is not a magical, unexplainable force powering a UNIX box, but a logical collection of scripts interacting with each other. Knowing this is akin to achieving enlightenment. Once elightened, one is able to achieve anything within the boundaries of their efforts.

(might help if they knew about cron, as well as any tools/methods that have Windows counterparts.)

Re:A few suggestions. (1)

serial frame (236591) | more than 12 years ago | (#3339653)

(whoops, posted too quickly)...and most importantly, teach them to explore.

A few thoughts. (5, Interesting)

mrsam (12205) | more than 12 years ago | (#3339644)

Here are a few random suggestions, in no particular order.

* Open a relatively complicated page in MSIE, the same page in Mozilla-win32, and the same page agin in Mozilla-linux. Go to a bunch of annoying web sites, with Mozilla's pop-up/pop-down filters enabled.

* Use ssh to log in to a box halfway across the world. Demonstrate some simple system administration tasks, and the fact that anything you can do at the console you can also do remotely, via ssh.

* Run either Gnome or KDE. Change the themes, a couple of times, demonstrate the customizable UI. Switching between one of the mac Aqua-like themes, some star trek theme, and one of the Winxx-lookalike themes should be very effective.

* Install a distribution in server mode (no X11). Demonstrate the extreme modularization of Linux, such as you can complete get rid of all GUI support, and use only the disk/network services to turn a box into a network appliance.

* Install Windows and Linux on the same box. Boot into Linux; then mount and browse Windows partitions. Make a casual remark that Windows cannot browse Linux partitions in the same way.

* When the Linux box boots up, and is busy going through the initscripts, starting all the services, explain that if one service fails to start for some reason the boot process will continue and the machine should still be mostly usable. Ask if anyone experienced a situation where a Windows driver kept croaking during the boot process, and what happened alter.

I recall an incident about three years ago when UMAX shipped a buggy driver for their scanners. The driver was faulting on machines with USB ports, and CPU speeds over 400 Mhz (something about some timing loop), forcing a complete crash during the Windows boot cycle, with the subsequent reboot falling back into safe mode.

The Linux equivalent for this would be something like SANE, which runs completely in user mode, and therefore cannot crash the entire OS.

* Use samba to browse the local windows network neighborhood.

* If you have a fat pipe, forward X11 over ssh, and run remote X applications on the local terminal.

* Install a base distribution package right out of the box. I'll use Red Hat 7.2 as an example. Apply all the errata to bring the box up to date, except for the kernel, without rebooting. Even install a new version of glibc (the equivalent of msvcxxrt.dll) without rebooting the box. Install a new kernel on the remote machine, make sure that LILO or GRUB is all set up, then remotely reboot the box into the new kernel.

One MS student's experience learning Unix stuff (0, Offtopic)

Faust7 (314817) | more than 12 years ago | (#3339647)

Ataraxia 7: ?
Foogtoot 48: (broken another imaginary monitor with my head)
Foogtoot 48: Also, I am doing pretty well now.
Ataraxia 7: ?
Foogtoot 48: I keep running into technicalities is all, and they were not covered in class even though most of the special functions needed to make this project were covered only in class, is all.
Foogtoot 48: However, when I say "not covered in class" I mean "not covered during lecture while I was listening" which leaves out a fair amount of lecture and also recitation.
Foogtoot 48: CURSE YOU UNIX
Foogtoot 48: Not to mention the month or so during which I didn't start my project, I mean what was that about? It's crazy, but we have no control over these things so why worry?
Ataraxia 7: I sense tension.
Foogtoot 48: Yeah basically.
Ataraxia 7: Not gonna make it?
Foogtoot 48: Except I found out I have a SLIPDAY.
Foogtoot 48: I probably won't make it, because of one last little technicality, but I'm very nearly finished already.
Foogtoot 48: I can clear up that last bit tomorrow hopefully, and then turn it in using a SLIPDAY.
Ataraxia 7: TEMPUS FUGIT
Foogtoot 48: I'M TRYING
Ataraxia 7: Finished yet?
Foogtoot 48: No.
Foogtoot 48: Closer though.
Foogtoot 48: Hmm.
Foogtoot 48: I'm just tremendously close now.
Foogtoot 48: (breakthrough moments ago)
Foogtoot 48: This is a sort of decent shell even.
Ataraxia 7: Not one that meant completion, though.
Foogtoot 48: Nope, and I may not be able to figure that one out on my own.
Foogtoot 48: Taking a crack at it though. VIVE L'AMOUR
Ataraxia 7: 28 minutes and counting.
Ataraxia 7: 26 minutes.
Ataraxia 7: 16, I mean.
Foogtoot 48: I hope you did that deliberately because it was FUNNY.
Ataraxia 7: Oopsie.
Foogtoot 48: I am confused in FIVE WAYS.
Foogtoot 48: No wait, one.
Foogtoot 48: I'm tired and dizzy and I'm not even sure now whether there's a bug left, that's the problem now, not a bug but whether I even know whether there is one.
Ataraxia 7: What about that thing you were going to buckle screaming under and e-mail the TA about?
Foogtoot 48: SHH
Foogtoot 48: It's time to write comments and I'm looking over my functions and I'm not even sure what they do.
Ataraxia 7: 8 minutes.
Ataraxia 7: Though my VCR says 7.
Foogtoot 48: I can't afford to stay up much later.
Foogtoot 48: Well, except in the sense that I can mostly.
Foogtoot 48: Dude just shut my door.
Foogtoot 48: I was all dizzy at him.
Foogtoot 48: I wonder how loud my stereo is anyway.
Foogtoot 48: (these are all comments)
Foogtoot 48: There's like no way I'll comment all this and I don't even know whether it's working right, I threw in some little function called Fun() to fix everything and it might not even be running or it might be running a lot, I have no idea!
Ataraxia 7: 6 minutes.
Foogtoot 48: The final test: I put in a while (1) at the start of Fun() and see if my program locks up!
Foogtoot 48: BRUTE LOOP
Foogtoot 48: Never wrote a multi-process program before. Parallel computation is freaky!
Foogtoot 48: Okay well that takes care of that.
Foogtoot 48: SLIPDAY, take me away!

They'll Ask (1)

nevek (196925) | more than 12 years ago | (#3339648)

Why won't my windows key work?

make sure to stress ideology (2, Informative)

matusa (132837) | more than 12 years ago | (#3339652)

You can do it through anecdotes, or just regular asides, but I believe it is invaluable to divulge them a set of ubiquitous linux/unix principles.

  • I don't mean to list many, because I guess they're obvious, but some important ones are
  • **The functionally in unix is partially hidden functionality.. this means that a lot of times a program can do lots of things you want it to, but it simply isn't apparent like it is in windows. In windows a lot of the workings most people want are very accessible on the surface (though note that if you want it to do something uncustomary... then you're in a pit!), though in unix you usually have to dig some. This is a bad example, but yesterday I was writing some SNMP code using the excellent net-snmp (ucd-snmp) packages, and needed it done now, so to learn some variable structures exactly I used headers and gdb to dump some exact var info.. that's a linux way.

    many windows people when approached with linux view features they don't see as features that don't exist.
  • files. It's all files. devices, filesystems, directories (nothing unusual there), named pipes, etc. Maybe show off some fun stuff (like you can use mount [device] to mount a CD image file and use it is if you'd mounted a CD. showing off this type of stuff would make this concept stick I feel (and reiterate =))
  • Flexibility. different UIs are a nice way to show this easily
  • Make sure to nail some FUD too.

After The Basics... (2)

Etriaph (16235) | more than 12 years ago | (#3339658)

After you teach them the basics (navigating the filesystem, creating/editing/moving files) you should teach them the thing that takes most newbies a month to figure out (I mean really figure out) on their own. Compiling software. Now, this is not a small topic, it's a big one. If they wanted to install kdelibs from source, they would need qt, libxlst, libxml2, but they wouldn't know it.

The best thing you can do for a newbie is teach them how to find what they need to find to install or compile all the software they want. Start off with something simple like an Apache/PHP w/MySQL setup.

Give them the three tarballs (and they should know how to open them after the basics) and tell them to try to compile the three pieces of software together. With some tutoring they'll end up having something, more or less, working (hopefully) by reading README files and the INSTALL files after you've told them they use the configure script to start the ball rolling.

If they run into a rut, then you help them. Once they do get everything compiled together, get them on the path of figuring out how to install MySQL into /opt/mysql and apache in /services/www. This will have them reconfiguring and learning how all the flags work.

Finally, get them to install something that will rock their brains a bit. Once they realize that they're having a hard time, tell them where they can go to get libs, dependancies, etc. (freshmeat, rpmfind, etc.). Navigating the box is one thing, but knowing how to install software makes all the online docs suddenly make sense. Anyone have any comments about this approach?

Install Gnome (1)

icoloma (322750) | more than 12 years ago | (#3339660)

As soon as you can. Install Ximian (no less) and show them a desktop like they are used to, but better. Sure, you are going to work seriously with the machine, but ask yourself in first place why they are trying to MS certificate. They want productivity, and mostly for sure they are not used to editing text files by hand.

cat, grep, vi... If you try to make them understand that in two days you must be on crack. But show them Galeon working (man, by far more comfortable that Explorer), with the google search toolbar open, show them THEY CAN OPEN MOST WORD DOCOS, they can import their Outlook contents into a more comfortable environment and they should understand that Linux is not so hard to start with.

After that, learning all and everything is a matter of time.

An excellent book (4, Interesting)

SpookComix (113948) | more than 12 years ago | (#3339661)

I was born and raised in Microsoft land (MCSE since 1999), and although I've been playing with Linux for several years out of curiosity, I didn't get serious about it until a year ago. I've seen hundreds of books on Linux, and own several myself, but the one I recommend hands down over all the rest, especially in your case, is "Linux Administration: A Beginner's Guide" by Steve Shah. [] It's written specifically with your kind of users in mind. From the blurb:

Steve Shah writes to the millions of people who are familiar with Windows (and perhaps NT and/or 2000) but not with *nix. (He's even provided a 16-page blueprint section comparing how to perform common tasks in Linux and Windows 2000.)

It helped me over the hump when I became serious about learning Linux, and I use it as a resource still today. Even if you don't use it as a guide for your class, I'd highly recommend that you mention it to your students.


Not that hard (1)

ToasterTester (95180) | more than 12 years ago | (#3339666)

My experince has been easy to tach Linux to MCSE's. Have them do installs and read the "Purple" book gives them a good start. Key is just getting them systems to practice with. Linux is simple because it comes with most config' files with basics in it, unlike Solaris and other Unix's that many files have to be created from scratch.

For developer MCSD that is another story. Most Unix programmer don't understand Windows programming and visa-versa. Treat it like they are starting over and teach system architecture and C programming so they understand the platform.

Teaching Linux/Unix Basics to Microsoft Junkies? (-1, Flamebait)

Anonymous Coward | more than 12 years ago | (#3339687)

Teaching Linux/Unix Basics to Microsoft Junkies?

Don't bother, Microsoft junkies already use superior software.

Perhaps the question should be "Teaching Microsoft Basics to Linux/Unix Zealots?", judging from the huge misinformation Linux/Unix Zealots have: Open Source is better than Closed Source.

Don't try too much. Actually, don't try anything. (1)

eastern (92669) | more than 12 years ago | (#3339699)

Most people posting here need to to follow the link in the story and actually read the MSCD requirements first [] .

Note that these people (at least those who are actually likely to get the cert), are probably there to become programmers doing bread-and-butter database business apps, not Sysadmins doing cool things with Windows Terminal Server (it's possible).

They are going to do VB with SQL Server or local Jet databases, and there's nothing in the *nix world that can compete with that combo in time-to-first-pay-cheque. That's a combination of a lot of different factors (including market size) that do not exist in the *nix world.

True realization that *nix is better comes (as opposed to ./ing zealotry), zen-like, after many deep experiences. In a two day program, just read them excerpts from The Jargon File [] , and hope the better ones join the fold some day.

Reading (1, Insightful)

Anonymous Coward | more than 12 years ago | (#3339700)

Just make sure that they read: .html

It is a cool little short story that appeared in the Communications of the ACM. It will show them that there are larger issues at stake beyond merely getting their immediate tasks accomplished.

command line power (1)

simetra (155655) | more than 12 years ago | (#3339703)

exporting display is always neat, but the power of the command line is great.
Show them how to do with one command something that would take 15 minutes of cutting/pasting in MS Word.
Samba and regular NFS mounting is cool too.
Changing init levels manually is good to know.

Some thoughts (2)

robinjo (15698) | more than 12 years ago | (#3339706)

These people may only know about Windows and Microsoft solutions. If so, you'd better give real world examples of what is done with Unix now.

Unix is used because it scales well and is rock solid. With Linux you also get the price advantage, though that isn't so important in big projects. Quality and stability are and you should be able to show that Unix is high quality.

For a MS-only person it's important to be able to use Unix only in some places. Samba is a great example. Same goes with Apache. They might also like the possibility of producing cross platform solutions. Kylix/Delphi is a great example here.

Don't get into any religious fights. Just tell/show places where Unix is a great solution but do it without bashing Microsoft.

Some Suggestions (2)

cybermage (112274) | more than 12 years ago | (#3339710)

Speaking as someone who routinely uses, and actively advocates the use of, both Windows and Linux together, I have several suggestions:

First, don't make excuses for Linux's weaknesses. You may have students who criticize, quite rightly, the current Linux desktop. Rather than defend it, accept the criticism and move on. You don't want your students to make their conclusions about Linux based on how it looks on the surface.

Second, as you're planning with database services, show them the benefits of Samba and Apache. If any of your students are responsible for admining servers they should be able to relate to these services as well. One point of caution though: They'll be used to using GUI's to administer services and may be turned off by the idea of editing text configurations. I have explained, with great success, that good text configs don't obfuscate your options. Sometimes the most powerful options are buried in GUI's. In a text file, the option you want is just '/option' away.

Lastly, and most importantly, your students will need to know where to get help in the future. Some like to read books, so introduce them to O'Rielly's animal farm (as I like to call it). There's also web and IRC locations support options. Remember that the Linux community has won awards for support, so you want to play that up. Linux support is one of those free things where you actually get more than you paid for. Be sure, however, to advise on where to ask what level of question. Newbie questions often get ridiculed on IRC, for example.

Good luck with your class. I would suggest that once you've put together your materials, you may want to submit a follow-up story. Perhaps you'll plant the seed for a class LUG's can offer all over.

inodes, symlinks, shell, documentation (2, Informative)

schoett (98398) | more than 12 years ago | (#3339713)

Teach them about the difference between directory entries and inodes (hard links, files disappearing only after close) and show them how this allows one to replace files in use without reboot.

Second, teach them about symbolic links and how this makes it possible to separate logical from physical file locations.

Third, show them how to do tasks with shell pipelines (don't forget to explain that file globbing is done by the shell rather that by each command).

Finally, show them that there is complete documentation for everything.

hmm (2)

Iamthefallen (523816) | more than 12 years ago | (#3339715)

Being an MCSD student, I think you need to focus on what can be done with Linux systems and services, not how to do it. To me personally something isn't interesting to learn unless I have a use for it. While ls, grep and cat sure are useful, they don't tell me anything of what I can do with them or why I'd even want to learn a bunch of new commands on a new OS just to run some obscure a-patchy-webserver. Show them how MySQL works, show them how Apache with PHP works. Show them what they can do with a Linux box and when they might find it useful to install one instead of an expensive windows server.

So show not just how to grep, cat and ls, but give them enough info about what they can do with a Linux box so they might feel tempted to try it on their own. Go through the common services they might come across and what they can do and briefly explain the normal Linux commands as you use them.

Teach them how to install software. (1)

Morgahastu (522162) | more than 12 years ago | (#3339717)

I've taken unix/linux classes in college and I've seen the linux crash course books and they always focus on how to use grep and how to use kde or gnome but that will only get you so far. Like those people who say that they got their grand mother using Linux. Maybe so but I doubt that once she needs to install new drivers she'll be a happy camper. I suggest you teach them how to use "make", how drivers work in linux, how to install software, etc. I remember how frustrated I was after I tried to install software and my wireless network card without any rpms. I don't know why no one teaches that, its not like everything is available in rpm.

Keep a cool face until (1)

cOdEgUru (181536) | more than 12 years ago | (#3339718)

towards the end of the first session, play the LOTR theme in the background and start screaming like Gandalf, about to slip in to the bottomless pit.

"Run you fools...."

I've done this (2)

Beowulf_Boy (239340) | more than 12 years ago | (#3339719)

I've turned a Pro-microsoft Unix Basher around to the point at which they came to me and asked me to setup a *nix lab for them.
It was my Partner at my volunteer job thingy at school. I am the co-director of the CNE High school Tech Dept. There is me, and my partner, Rob. Rob lies, rob lies alot. At the beginning of the year, he had me convinced he has his A+, his MCSE, and an Associates Degree in Comp Sci, aswell as 2k$ in Microsoft stocks. Since then, I have found none of this to be true, yet he does know a damn lot about adminning NT and somewhat of 98. I take more care of the teachers computers, the lab computers, and stuff like that. I make sure defrag is ran in all the labs and on all the teachers computers monthly, etc, etc. I also upgrade, fix, and repair. I can strip a computer to the mobo and have it back together in 2 minutes, Rob can re-install NT from corrupted back-up tapes.
Anywho, I setup a linux lab (redhat 7.1 with XFS and icewm for those who want to know) as an internet surfing lab at the middleschool. So far since November all I've had happen is one X server crap itself, and I just re-ghosted it.
Rob manages the 98 lab (I keep it running, it just installs software and such.) Imagine 5 groups of 30 highschoolers a day in there. It is not fun. Stuff gets deleted, uninstalled, one machine had 10 copies of AIM installed, etc.
Then there is the 486 Lab, which is primarily for typing and some internet research. After seeing the sucess of my Linux lab (some students are supposedly confused by it, but I don't see how, Netscape is pre-started and that is all there is), he finally came to me and said, "I want to put linux in the 486 lab". know that any current distro would be slower than my overweight grandma, and that no older ones would easily allow a journaled FS to be setup, we are now planning on installing QNX R4, but its similar enough to be counted, eh?

bring them distros (2)

jd142 (129673) | more than 12 years ago | (#3339721)

Yes, you'll be out a few bucks for the cd's, but why not bring in a copy of red hat, mandrake, debian, whatever you want. Maybe two different distros to show the variety. Whatever distro you are comfortable with. Bring enough for everyone, that way everyone can walk out with the ability to do whatever you showed them.

Let them know about the local lug if there is one.

Make 'em "Think Unix" (2)

Big Sean O (317186) | more than 12 years ago | (#3339723)

Jon Lasser has an excellent book which assumes you're a computer user, but new to Unix. He starts out with "Unix Documentation" or "how to understand poorly written man pages" as I like to call it. Then he talks about "Files and Processes", "Redirection and Pipes", and "Networking". Later he gets into vi, regex, and shell programming. Finally he talks about the X Window System.

It's a good book. I learned Unix from reading it. The book would be a good starting point to creating an interesting class.

Great book - Linux for Windows Administrators (2)

Brento (26177) | more than 12 years ago | (#3339725)

Check out Linux for Windows NT/2000 Administrators by Mark Minasi with Dan York and Craig Hunt. It's from Sybex. Can't recommend it enough, got me started - explains everything from a Windows point of view, and doesn't bore you with things you already know from Windows experience.

You're getting off topic! (2)

ddstreet (49825) | more than 12 years ago | (#3339726) that there are free alternatives...

WHOA! Hold on there.

What is the course you are teaching? An intro course on *NIX? Ok, great - but why are you now trying to throw in Free Software? That is not what the course is about!

Forget trying to convert any of these M$ students. That is definately not what they are there for. What you should be doing is teaching them the basics of *NIX. Don't try to mix in political rhetoric. Whether or not MySQL/PostGreSQL can beat SQL Server is completely irrelevant to the course.

Stick to teaching *NIX intro stuff, don't get into Proprietary vs. Free. In 2 days you will not convert any MSCD students. Really.

No! Don't mention MySQL! (1)

Nicopa (87617) | more than 12 years ago | (#3339727)

MySQL is designed to appeal to sysadmins with no SQL or programming experience. They are surely used to Oracle and MS SQL server. They will expect views, transactions, foreign keys, stored procedures which are included in PostgreSQL but not in MySQL (unless you use experimental and beta code). They will laugh at you if you teach them MySQL.

The year is 2080 (1)

Tablizer (95088) | more than 12 years ago | (#3339728)

when MS is gone and Linux is the only OS game in town. Nobody cares about promoting it anymore.

You would tell them:

"Go read the f___ manual!"

Ok, but show them something useful (2)

KidSock (150684) | more than 12 years ago | (#3339729)

After you show them where the man pages are and how to use the tab key be sure to show them something useful or they're just going to ask "why do I want to do this?". For example, run through a simple shell script. Like this one that allows you to quickly update your web page:


rm -f ${1}.html && \
wget${1}.html && \
vi ${1}.html && \
exec ftp

Think of examples that do things Windows just doesn't let you do like running X applications remotely. Here's a must read regarding that topic:

Remote X Apps mini-HOWTO []

The Xnest script from the above would be good.

Side by Side (2)

ArcadeNut (85398) | more than 12 years ago | (#3339737)

Have two computers to demonstrate on. One is a Windows box and one is a Linux box.

Show them how to do something in Windows, which they should be familiar with, then show them the Linux way of doing things. This will help them remember it better and become more comfortable with Linux.

For example, something as simple as changing Screen Resolutions. It's a basic thing and it shows how the two are different.

Do they know DOS? (3, Insightful)

dsoltesz (563978) | more than 12 years ago | (#3339741)

If these Windows users also know DOS (I don't know if that's a fair presumption) one approach is the Unix Guide for DOS Users approach -- give them a list of the basic commands and their Unix counterparts. That combined with man/info can certainly give them a jump start. (Unfortunately, the book I'm thinking of appears to be out of print.) As for the basics, Windows users will appreciate knowing how to (ab)use ln.

I'm also assuming they don't need to know how to set up and install a system, just be a user. They should know how to configure their own environments, set environment variables, etc. System stuff should be limited to the software they might be using and managing -- where are the logs and conf files, how to install, and so forth.

Free alternatives to costly software is a great idea. What about a brief discussion of Apache, JavaServer/JSP, Xerces, Xalan, etc? No need to get into the nitty gritty, but let them know there are free, multiplatorm alternatives to everything. My alternative to Visual Studio is Visual SlickEdit [] .

Cygwin -- an introduction to cross-platform tools (2)

Spoing (152917) | more than 12 years ago | (#3339742)

Since they are going to be using thier MS certifications in an MS environment, it might be good to introduce some Unix-style tools available for Windows like those in Cygwin [] .

The only downside to this is that those unfamiliar with modern Unix-like systems might see Cygwin as all that Unix is. I've had some Cygwin users insist to me that Linux really should have a GUI, for example.

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>