 talk to us about Linux at different regional universities. Hello. So I'm going to talk about three different universities and how we use Linux. And I thought I would start by showing some national statistics. You might wonder things like what percent of all students use Linux in the classroom? What percent of all students have even seen a command line before? How many different universities use Linux in their curriculum? The statistics are summarized. But if you actually have any of these numbers, then I will buy you a beer and you can tell me about them. So I can't provide those numbers. What I can do, I should tell you why you care. So there's three universities that I'm going to talk about and why you should care about these three universities. First of all, sort of reflective of what's going on across the planet. I mean, if we don't have national statistics, then what you do is you look at your local area and you hope that your local area is sort of similar to what's going on generally. You might also be interested because maybe you've been out of school for a while and you're just curious what the hell the people are doing in school these days. And I will tell you, by the way, that it's reflective of the future. You know what's going to be 10 years from now? It's what college kids are sort of learning now, kind of. That's probably what the future holds. So with three universities, I live, well, I live, wouldn't it be awesome if my mouse worked? I live here. This peninsula is about 300 miles wide and about 150 miles up and down. And that's Lake Superior and that's Lake Michigan. So we're sort of this one little unit and we all talk to each other. The whole place has about the population of Christchurch, if you were curious how big it is. It's snowy and it's cold. But in particular, we have one very serious research university and we have one sort of mid-level, mid-sized school. That would be me, thank you. We have a small regional university and we have a community college. So we have about one of everything. So it's a good place to do this sort of anecdotal data gathering. Like I said, I live up there. This is the map that our tourist board puts out. You'll notice there's moose and deer. There's no shopping mall anywhere in the peninsula. It's 300 miles this way, 150 miles this way. No shopping mall. I'm not bitter. And this is why I'm in Auckland right now. By the way, if you want to be a university professor and you want to be totally cool to your students, do the thing on the left. And that's for real. We have waves, we have surfing. Do that, take a picture of it, show your students and oh my god, they will think you're the coolest thing ever. So three schools. The first school is Michigan Technological University. And these are very serious school. They hand out PhDs. They do world-class research. They would tell you, we're as big as Harvard. And I'm like, okay, well yeah, you're a very nice school. You can see what their favorite sport is. They have about 200 CS majors, which is fairly decent sized. They also have lots of system administration majors. And you know where Linux lives? Linux certainly lives in the computer science department, but Linux also lives in the College of Business where they teach lots of system administration stuff. So if you're looking for a Linux university, you should check both the computer science and the College of Business because they do it there too. And they have a PhD program. And so I just went over there and I'm like, hey, tell me about your Linux. Okay, well, they have in particular two serious, straight up system administration and Linux courses. And those courses are required for every College of Business computer major, not required for the CS majors. And when they say something like computer networking, computer networking for the College of Business over there is how to set up a computer network. It's a system administration course, not a programming course. That was silly. And that, by the way, is also taught in Linux. So they have the two system administration courses. They also teach how to do networking. They teach how to do networking in Linux, and that's a third course. They have a security course. You know how to keep the bad people out. Sometimes they even tell you how to keep the good people in. And that's taught in Linux too. It's partially taught in Linux. It's, of course, also taught in Windows. I don't think they do any Macintosh stuff there. And they do a lot of research. I think I said they do research. Their researchers use a lot of Linux. So I said, you know, hey, how many of your professors use Linux? And they're like, well, it's not like we have a club. We don't all get together on alternate Tuesdays. We don't have a count. But we use Linux a lot. And that is, by the way, about as the goodest statistics as you can get if you ask around. They have a Linux users group. It's got a web page. It's inactive. It's not really a resource. So if you were to ask, do they teach Linux at Michigan Tech, you would say yes. They teach a lot of Linux at Michigan Tech, especially in the College of Business and some in the Computer Science Department too. You'd see it in the Computer Science Department in some of the upper level courses. You'd see it in the College of Business all over the place. This is, by the way, the course description of the first Linux system administration course at Michigan Tech. And you can read it. I mean, the second sentence is, topics include users and process management, backup and restore, adding devices. Okay. It's a three-hour lab period per week, which didn't seem like very much to me. And you get a certificate, which I thought was kind of cool. And none of the other schools would you ever get a certificate. These people give you a certificate. Good for them. But that's what Linux system administration means at Michigan Technological University. And by the way, they also teach lots of scripting languages. If you're a computer science programming major at Michigan Tech, you will get Python. You will get Perl. You will get all those sorts of open source things. And the teacher will not care if you run it on Linux or Windows. We are teaching Python, and then what you run it on is up to you. Okay. So second school, this is a regional university. This is where I teach. We have a favorite sport, too. We have our computer information systems major is, again, the College of Business. And it used to be 150 students. Then it was 50 students, which will make administrators crazy. And now it's growing again. And if we're famous for anything, a lot of the American winter Olympic programs are housed at our university. That's probably what we're famous for. Linux at our school, and like I said, our goal for our school is to be, you know, we want to make everybody happy. We're not the top tier research, but we're certainly good at what we do. We want to be a middle sort of place. Every sophomore who learns how to program at Northern will learn Linux. And they will learn Linux to this extent. They will learn how to compile my code, how to run my code, how to stop my process when I have an infinite loop because sophomore programmers do infinite loops. And then again, every senior will do it again. Every senior will take advanced networking and it'll be how to write servers, how to write clients, all in a Linux environment. Then we do Linux instead of Windows in the networking world. Because near as I can tell, a lot of servers are Linux. I mean, maybe the desktop is Windows, but I'm pretty sure a lot of servers are Linux and we want to teach what people really do. We have an optional Linux system administration course. We just have one instead of the two like Michigan Tech and I teach it. And we have a Linux users group that used to be very active. They were awesome. They would put signs all around campus and they would say, if you want Linux on your computer, come to the lab and we will install it for you. And they would get like 30 people and there were donuts and there was Coke and it was sort of awesome. It's maybe it'll come back uphill again. We'll see. But the Linux user group was an important feature of our department for a while. So the Linux system administration course at Northern, it's got one main teacher, me. And by the way, that can sometimes be a problem. If you're at a smaller university and you're the Linux guy, I mean, it's fun to teach the thing, but sometimes you want to break. Sometimes you want to do something new and one way to make it be better would be to have two Linux guys at your school. So you could alternate who has to teach what class. That would be like cool. And the way I do this class is basically the first week is learn the command line. And after that it's app of the week. We're going to do Apache and maybe to do all of Apache takes more than a week. And you install Apache and you configure Apache and you set up various things on Apache. And then you do the same for NFS, you do the same for email. And you just basically grind through what a normal stack, server stack would be one app at a time. And you sort of look at your kids and you're like, wow, they seem to be doing okay. Let's put in something about catching spam while we're doing email. Or man, they seem to be struggling. Let's skip this catching spam thing. And you sort of go through and you do your best. I've argued with myself, which is never very fun. Should I teach shell scripting at the beginning or the end? Say what? Okay, I've done both. If you teach shell scripting at the beginning, they don't know any of the commands. Like you know how like when you're shell scripting, you might need to know what LS does? Well, they sort of learn that as they go. So there's a problem with that. If you teach shell scripting at the end, well, they have all the stuff they could have been doing with shell scripts, but they didn't know about it till it was too late and the class was over. So there's problems both ways. And I'm totally willing over the course of three beers to argue either side, whichever side you'd like me to argue. I'll tell you the funnest thing about that class, how to teach to some administration if you want to be a good teacher. Make a list of every possible thing you could do with a Linux computer. And I will give you 10 points for this and five points for that and seven points for that and 12 points for that. And when you got 38 points, your big final project at the end of the semester is done. Go pick whatever is fun for you. And oh my God, that is so much better than we will now do email because it turns out some people think email is boring. I give one point for installing TuxRacer. If you're curious how much a point, a point is worth TuxRacer. And if you compile the kernel, that's, I want to say there's a list, I want to say that's worth seven points. And if you can compile the kernel and make it really small, I'll give you bonus points and you sort of, you end up negotiating with a whole bunch of people. You end up negotiating with 25 people. If you ever teach Linux to the university setting, you will not have a problem picking a distribution. You're the teacher. Just say Ubuntu. And then if you do that, somebody will say, I want Gen2. And that, what you should do with that kid is you should stand back. He's probably going to be fine without your help. Just go put him off in a corner. Tell him to learn some stuff on his own. He'll be okay. Go to the rest of your class. There's no problem. The list of topics you could teach is much larger than the amount of time you have time for. So to some extent, do what students like. It turns out, students do better if you teach them stuff they like. I never know if I should be teaching theory or just how to do it. That's another, you know, we should have beer and you could tell me the answer sort of problem. And the huge problem is, and this goes back to how much Linux is at the university. There are some students who totally already know Linux. They show up. Hey, I got my Gen2 installed. What are we doing next? And I'm like, LS stands for how to get your file names. And there's other kids who have never seen a command line in your life. It is totally possible to be at sophomore in computer science at a modern university and have never seen a command line. You showed up your freshman year. They gave you a copy of Visual Studio C++. You hit the magic button, your code compiled. It didn't work. You fixed it. Where was there a command line in your life? And so for some of these kids, system administration Linux class is not really about Linux. It's about command line. What the heck? So you have problems teaching class with two disparate sets of knowledges. I have tried to teach kernel hacking. Hacking is a big word for what we're really doing. We tried write a device, driver, change in it, you know, sort of the sort of easy things you might start with. And I'll tell you what you do for this class. You find the absolute smartest kids you can find. You say, hey, this is a challenging class. Would you like to do something hard? And it turns out your average student will feel sort of honored and special, and they will go sign up for your class. And then you do your best to teach them how to write code in the kernel. And it's a doable thing at the undergraduate level. It would help if you picked only smart kids, but it's doable at the undergraduate level to teach a little bit of how to program the kernel. I said the best students did great. You can't only teach to the best students. You have to teach to everybody, not just the best students, so that's going to be a problem. And what you do for that is you tell them, hey, this is a really hard class. Are you sure you want to be here? And then give them the eyes and see if they get a hint. Lake State is a small university. I mean, 2,600 students is smaller than any university in New Zealand. They have 70 majors. We still have our favorite sport. And they're going through budget cuts right now, so I'm not sure if that affects the things I'm about to say, but it is a true thing. And it happens lots of places, not just Lake Superior State. And they're famous for, they put out the international words, list of words you should not use anymore. So if you've ever seen like on the newspapers like two weeks ago, they said, um, cray-cray. We are done saying cray-cray. That was them. And if you've never heard of cray-cray, you're not hanging out with 19-year-olds. So at Lake State, they have one professor who does Linux. His name is Evan. And Evan's a cool guy. I like Evan. And Evan teaches the system administration class they have there, which just like at Northern, is optional. Have you know why students take the system administration class both here and at my school? If for every once in a while, you've been programming for like seven straight semesters, you just want to break. You want to do something with computer science, but maybe you're getting a little tired of programming. We just want to give it a pause. System administration will fill that need to. And some people just like Linux. They don't have a Linux users group, and they don't do lots of research there. So I can't really tell you what their researchers use Linux for. What I haven't talked about is huge, huge universities. I wrote that I haven't talked about community colleges, but I'll tell you the answer. Our community college does not have any Linux at all. None 00 nada. And I haven't talked about the high school. The high school doesn't do Linux. So maybe the most interesting thing I can tell you about Linux is what do students pick when they have to do their senior project? They have to do a senior project. Do they use Linux for their senior project? And the answer of course is some. If you're going to do some cool robot thing, you're going to have an Arduino, and you're going to use Linux for your robot. If you're going to rewrite Gmail, not scalable, just rewrite Gmail that like 10 people could use it once, that's a senior project. And you'll probably do it in PHP and Linux or some jQuery in Linux. A lot of people are doing iOS and Android. And my students do not think of Android as Linux. Android and Linux are two different things to them. I know you can make video games in Linux, but no one ever does that. At least in my experience, lots of people do video games. They're all on the iPhone or Android. And the predicting football games one, he did that on Linux if you were curious. Okay, now if you want to talk about infrastructure, every university's website is on a Linux host. Every university's grades are in a Linux host. Every university's payroll is on a Linux host. All of the back end and non-academic stuff, that is all Linux. And I say all Linux except that some of it's actually BSD. No, no, no, we have Linux, we have BSD, that is our world. It's okay, that's true, some still. And of course, we have bail with clusters, those are all Linux. I've never in my life seen a cluster of Windows machines doing computing. Must be one somewhere, I don't know about it. If you wanted to have more Linux, well, there's no usage of Linux in the high school and that's probably not changeable. It's not changeable by me anyway. One problem we have is this is the laptop that the university gives out. We give out 8,000 of these to 9,000 of these to 9,000 students. It comes with Windows, they will not support Linux. If you want to put Linux on your own, that's fine, they won't help you. But the people who run the help desk totally know Linux. Their servers are Linux, but they're not going to help you put Linux on the laptop. So maybe that's the problem. And the other question we would have is, so these system administration courses, if you're a computer science professor, you might think your goal is to teach red black trees and pair programming and that kind of stuff as opposed to system administration thing. And to the extent that system administration becomes a core concept of computer science, Linux does better, not worse. Okay, so what would make it better if you wanted more Linux? Well, really, I sort of think it's okay. We have some people who use Linux. Everybody who wants to do a server is doing a server in Linux. And everybody who's doing some desktop thing probably isn't doing Linux, which might describe how the world really is. Maybe our university system is reflecting the real world. Oh my gosh, we do not need another distribution. Do not make me an edu distribution. Please don't. I hope somebody cares that if you did it, I think you're a wonderful person. Really, I think what would get Linux more popular is something easier than Eclipse, better than Visual Studio. Something I can give a freshman where you type in your code and you hit a magic two button combination and your code runs and the error messages make sense. And by the way, if you can add system administration to the computer science core, that will spread Linux all over the place, too. If you guys, I'm getting the look like I'm out of questions, I'm out of time. So if you have any questions, come hunt me down. And I would be happy to talk about this stuff. And thank you very much. We can take one or two questions while Steven's just sitting up. I taught sysadmin in Hong Kong for a few years. And my son has used Fedora for about eight years. And now he's wanting to install Windows. And why? The reason is that at school you are required to submit your assignments in Microsoft Word. The requirement specifies that you need to use Microsoft PowerPoint. There's no other infrastructure for these kinds of things. And basically, he's fighting against the system if he uses anything else. I think a big problem in Australia could be the locked in. We're locked in by, I don't know. Well, if it helps, up in the great white north, we are locked into. And we give a laptop, like I said, to every student. But if you put Linux on their laptop, you'll piss off their English professor. Their English professor, just like you said, would like something submitted in Microsoft Word. And we were told very clearly just don't put Linux on the laptops. Now, of course, you can dual boot. Dual booting is obviously a thing, but it's an additional sort of annoying step. What we do in real life is we have lots and lots of servers all over the place. If you're a computer science department, I hope you have hardware just lying around. And we give people accounts on that. That's the best we've done to overcome the problem you're describing. Right up there. So my question, because I think you and I probably have similar jobs, is what about the attitude amongst your colleagues in your computer science department? Okay. So the question is, what about the attitude of my colleagues? They seem to like me. They are totally okay with Linux thing. And in fact, they encourage it. We have one guy who is all Windows all the time. And what he wants from me is to not do Windows. He does Windows. He would like me to not do Windows, because we both think our students should see a variety of stuff. And to the extent that I'm the designated Linux dude, I'm helping increase the variety. And I think all of my colleagues think that's a plus, not a minus. So in terms of culture, and what do my fellow professors think? They're all on board with me doing it. So just to follow real quick, you are the Linux dude, however. There are no secondary Linux. I am the Linux professor. We certainly have the Linux students, maybe three or five of them. And to the extent that you're not asking me to help you with your stupid problem, you're probably asking one of them. And that whole idea of the professors think there should be a variety, and we each have to do one, and I'm the Linux one. That goes over really well. Okay. Great. That's all that we have time for. Please join me in thanking Randy.