Tell HN: My horror story as a student dealing with my University computer lab
There has been some discussion here recently about the value of computer labs in universities. This is my experience with the university computing facilities as a CS graduate student at the University of Texas at Austin. While it is a personal perspective, it is also pretty representative, as you will see.
When you walk up to one of the machines in our lab, you are greeted with a text login. I guess that separates the men from the boys right there--if you aren't l33t enough to know how to run X, you can't even get started. And X is set up to run fvwm2 by default.
No, that's not a typo. I really meant fvwm2.
If you haven't used it, you really can't even imagine how bad it is. It's one of those Unix beasts from the 80s which uses desktop metaphors that aren't in use today. Mostly it just draws windows, everything else is up to you. Windows gets focus when you mouse over them. Things we take for granted in a desktop like the task bar aren't available. You need to right-click to do anything, but the right click menu isn't stable--it disappears when you release the click. I could go on, but you get the idea.
Here's the kicker: since most students have never used Unix before, they assume that's what Unix looks like, and they spend their entire college years dealing with this shit. Our department has been expending major efforts to increase computer science enrollment; I'd say everything they're doing is a rounding error compared to the effect that students' first impression of being a CS major will have.
Often, I'd be working in the lab, and some kid will come up to me and ask something like, "hi, I downloaded this text file, now I have no idea how to edit it." The really ironic thing is that all the machines run Ubuntu, the whole point of which is to have Mac OS-like usability! Note that Ubuntu doesn't even ship with fvwm2 by default, which means they actually went and installed it. They are not lazy or incompetent, it seems they are actively trying to hurt their users. (To be fair, they have an FAQ that tells you how to start other window managers, but of course no one's ever read it, and even if they did it wouldn't do them an ounce of good because they don't know what a window manager is to begin with.)
One time, when a student asked me a question about the window manager I showed her how to edit her .xinitrc to start Gnome instead. She was like, "Oh my GOD!!" and wouldn't stop thanking me. After this happened a couple of more times I felt heartbroken and powerless to stop the atrocity and stopped going to the lab. I mean, many of them are 18 and 19 year old kids, they shouldn't have to suffer like this :-(
By the way, you might wonder how the professors put up with the admins (their machines are also set up to start fvwm2). Since most of the professors graduated decades ago, fvwm2 is probably what they used as students. They don't seem to find it all that painful, since they probably never upgraded from pine and fvwm2.
After a while, I got my own office, which meant I could go and work there without having to see the other students and scream silently to myself. But that didn't last long.
There was no sound on any of the machines, even those in semi-private offices. I don't mean no speakers--they removed the audio drivers from Linux; /dev/dsp didn't exist. While that was mighty annoying, it was nothing compared to my troubles when my research started to involve writing code. Other than the fact that our disk quotas were 1GB, that is.
They wouldn't let me run jobs overnight. I had to get some kind of special permission; the reason was apparently "security." I have no idea what that had to do with security. I bet the character "Mordac, preventor of information services" was based on these guys. It was truly a synthesis of everything that's wrong with academia and everything that's wrong with corporations.
Apart from security, the only other thing they cared about was covering their asses. (Now that I think about it, their emphasis on the former might have been merely a manifestation of the latter.) If I went down to their office to ask a question, they'd say "send an email." The idea being they'd have a record in case of a dispute, I guess.
One time I needed a package installed. After a week of passing the buck, they said they couldn't do it. The worst part? It was something that was available in the Ubuntu repositories! But apparently they don't install things using aptitude, the easiest package management system in the world; they have a policy of installing everything from source (!!)
That was when I gave up; I worked from home after that until I graduated. I would still occasionally go in to use the printers, which gave me a chance to observe things deteriorate even further. At some point, campus IT removed the guest wireless access. As for the authenticated access, I don't know why they couldn't authenticate you through your browser like everyone else, you actually had to install their crypto shit. I got it working on Windows after some hair-pulling, never did on Linux (which is what I was on 90% of the time).
The incredibly ironic thing about this is that since Austin is #1 in the country in Wi-Fi hotspot density, you can get wireless from somewhere as soon as you step out of campus but the campus itself is a Wi-Fi wasteland.
While my experience with IT might have been exceptionally bad, many a time, when I complain to students in other universities, the answer I get is, "oh my god, I know, right?" I have some first-hand experience of it since I travel a lot for research. When I go to Berkeley, for instance, I know that the campus Wi-Fi AirBears is nearly unusable, we just go to Brewed Awakening and use the free Wi-Fi there.
So there. I hope this adds something to the discussion of whether Universities should have computer labs. By far the best approach, IMO, would be for the department to buy the machines but let the students run them. Of course, this leads to questions of who gets to be root and so forth, but that's kinda the whole point: working together, building trust, resolving conflicts, and administering networks of computers are all vital parts of the education that CS students should receive but currently don't. Some Universities may not be bold enough to go this route for fear of lawsuits. The second best option would be to scrap the labs altogether, rather than prolonging the insanity.
I went to Southern CT State University, which is basically a glorified community college. ("I went to college in New Haven." eyebrows "Oh, Yale, huh?" "No, the New Haven college you HAVENT heard of.") I left in 2002, so maybe things have changed, of course.
For a college that felt a lot like a high school with dorms, we had fantastic computer labs.
In two of the dorm buildings, there were labs full of Macs and PCs (20 of each in each lab). There were another 3 PC labs in the science building, and another PC lab and Mac lab in the library. In the CS department, there were 2 unix labs, one with about 20 BSD+KDE machines, and the other with 10 SunOS+OpenWindows. There was also the VAX/VMS system that anyone could use from anywhere via telnet, and provided access to all university services (including the ability to ssh into the Unix mainframe.)
Though I didn't really appreciate it at the time, the computer science education I got there was fantastic. I've talked to friends and coworkers of mine who have masters degrees from "good" schools and I'm aghast at the gaping holes in the curricula. Many of them never had to compile a program until they entered the work force, had never seen O() notation, and so on.
I think the moral of the story is that you should be wary of judging books by their covers: the campus might be beautiful, and the reputation might be sparkling, but take a look inside the buildings before choosing a school.
You do not really appreciate the quality of universities in the USA. Even the university that you view as "second tier" is excellent by world standards.
Also - smaller universities that focus on undergraduate education often provide a better education than large research oriented universities.
But yeah, there are lots of very good, very cheap schools in this country. I have almost no student loan debt to speak of, and I got a great education. Not to mention that you can watch a lot of lectures on youtube and whatnot.
The main advantage of a prestigious school seems to be that you get to rub elbows with rich people's kids.
Another advantage is that you can casually mention it repeatedly on HN (casual university name dropping).
And the non-university people.
And all the people who ignored nicknames changing colour.
But I'm sure it'll impress everybody else :)
Get together, schedule a meeting with whoever has the power do put a stamp on whatever draft you can write before the meeting. Make sure there are some admins and the head CS department in the meeting too. I bet it's a nice feeling to write here about the situation, but HN can't do much to help you. If you see the problem - go now - book a meeting room if you have them. If it's that bad, do you have anything to lose?
* I had to pick my battles when I was there and this wasn't one of them. I've emailed this to friends who are current students; hopefully something will come of that.
* I wanted to confirm that this wasn't just a UT CS thing. As I expected, there are a bunch of responses attesting to similar experiences at other places in the comments below.
* I was also curious to see the discussion on what people think would be a good way to run the labs (or at all.)
For anyone who wants to take the lead in trying to get things to change at their univs, I hope this post will serve as a confirmation that you're not alone and you should be able to find many other students to join you in pushing for change.
A good university does not coddle up students like kindergartners, feeding them pap. It's more like boot camp - in the mud, on foot, carrying a heavy pack. Apparently, it's pointless, sadistic, exercise: the 'product' of the work has no value. Except for the connections your synapses make ...
Frankly, it's hard to feel sorry for students who will not 'read the FAQ', or do anything to improve their conditions by themselves, if they feel it's important. It either is not important, or the culture of helplessness has reached too far.
Also: C.S. is not about this week's 'state-of-the-art' tools - as the late Dijkstra (who taught at U.T.Austin) put it, it's like astronomy and telescopes.
P.S.: in any organization with more than a few dozen people, support staff will ask for emails or web-tickets. That's for two reasons: accountability and knowledge sharing.
At MIT, the computing infrastructure is largely a collaboration between students and admins. This has worked incredibly well, and led us to have a continually evolving system and created a great system for tech support.
Right now we're in the process of testing Athena 10, a ubuntu-based overhaul to our old redhat system. It's a huge task, and a majority of the bugfixes and patches have come from student hackers.
You're running linux, so that's a start. I'd suggest seeing if you can get some of the defaults changed (such as fvwm2), and maybe start a discussion about moving to a more user-friendly distribution.
#
Here's a few resources about Athena@MIT: http://web.mit.edu/ist/isnews/v24/n02/240203.html http://blog.spang.cc/2008/01/10/mit-athena-not-dead-yet
This is a major software issue. In the happy land of Ubuntu, I can just use "./configure --prefix=~/myroot", and everything will work out more-or-less fine. On MacOS I'm just dragging around application bundles. But on Windows this whole process is colossally painful, and the situation would probably be dramatically improved if you gave everybody the damn Administrator password and carte blanche to use it responsibly.
They installed some sort of batch render daemon on the lab computers (windows) causing them to take, and I kid you not, 1 hour to log in. We essentially don't have a lab anymore. Your experience might make the computers seem unusable, but mine truly are for a while.
IMHO what you're describing is a clear manifestation of oldskool 'computers are complex systems and are to be used by professionals' ideology (as opposed to 'computers are easy tools for everyone').
Maybe it's different in England, but I've found my university's computer labs (Uni. of Warwick) to be useful, and not insane. I know from experience that if I didn't have my own computer (as was the case when it was broken during my first week), I could get by without too much frustration using the university systems. I can even use dvorak.
(Noone else seems to have problems with them either, so it's not just that the admins are as insane as I am.)
Not that this is meaningful data. But I'm not sure your experiences are either. Whether computer labs provide value depends on the labs and the students. There's no answer that will apply to all universities.
You're accustomed to using a command line, you probably chose fvwm2 because you were looking for a no-frills window manager, and Gentoo's emerge system makes basic installation from source as easy as using apt-get. People who aren't as nuts as you and I have every right to be ticked off at computer labs that act like your computer rather than computers for mortals.
Whatever technology you grew up with, you're bound to think of that as the natural interface. That's exactly the point I was making about the professors.
There was a time when you had to do typesetting by typewriter. There was a time when all cars were stick-shift. There was a time when farmers had to plant seeds manually. That doesn't mean it's a good idea to do any of those things today.
I'm not sure if you were claiming you will learn linux better if you use fvwm2, but that's simply not true.
But that is not the main point I'm making. What you need to understand is that no matter what you, the admins or anyone else might think of fvwm2, it's turning away the students in droves. This needs to be stopped.
Why ? Is the school losing any good computer scientists ?
I'm pretty sure most of the money saved by ditching the CS labs would go towards Unix classes and a 24/7 support hotline.
Granted, there are obvious upsides to forcing people to learn systems other than Windows for their own use, and I think enough people would eventually adapt, but I think the initial hurdle would just be too much to overcome in a decently sized department.
Yes, there's some stuff you probably should have had available -- automount and a better print manager come to mind. But, really, what are you doing in CS classes that can't be done well using fvwm?
I totally agree with you about the Linux setup. The first time I start fvwm2 I was like wtf is this. That actually encouraged me to figure out what a window manager was and how to start a different one.
You are wrong about the overnight jobs (at least when I was there), you can only run them on certain servers that are designated for overnight jobs. For most cases you did not have to get permission.
UT has enough money and computers that each student should be given their own vm.
I recall reading that universities are doing away with dorm phone lines -- between cell phones and VOIP, students have no use for them anymore.
There was a famous story about some University's computer lab (I forget the details) where they got fed up of the coffee machine. There was a perfectly good cafeteria close by where the students could get coffee. Plus they had to keep the machine stocked, service it, etc. It was just a pain in the ass, so they got rid of it.
Within about a week, their TAs were swamped with demands on their time from students. They had to take on like 2 extra people to meet the demand.
Turned out, that coffee machine was a social hub, and people would chat about their problems, ask each other for tips and advice, and solve a large percentage of their problems on their own.
So they bought a replacement coffee machine.
Now I'm imagining those students doing all the work on their computers in their dorm rooms on their own. Hmm.
Sure, there's lots more connectivity these days and places you can ask for help, but when learning/starting out that sort of personal contact etc is quite useful.
It also comes down to standardization - if I'm marking circuit layouts, I want everyone to use the same version of Electric that I did, so it's easy for me to deal with fifty submissions. I want everyone to compile their code using the same environment, so that I can simply recreate that environment and know that the code should compile.
All they have to show for themselves is a flawlessly running system, which, to Those That Make The Decisions, is all that counts.
I am very satisfied with our computer labs. We're having 7 labs with about 10 PCs each, all of them equipped with recent Intel CPUs and quite a lot of RAM. Windows or Linux (Debian or SuSE I think) on all machines. Possibly all apps that you're ever gonna need installed (ranging from python+IDEs to MS Visual Studio, Qt, Gimp, MS Office, Open Office, ...). No hard disk quotas are enforced, instead there's a fair use policy. Admins are very friendly and talkable to about anything...
And if you don't like the machines in the lab, grab an ethernet cable or use the WiFi available all over the campus.
The labs are used by many students, even though I'm not aware of anyone without a laptop or a machine at home. It's just too comfortable... sit down, have all the apps, all compilers you need for your studies ready for use.
In my opinion, this is how you should run a computer lab - user friendly policies that encourage the use of the public machines. After all that helps the students to get to know each other better and help each other.
For the record, I study at Hasso-Plattner-Institute in Potsdam, Germany.
I'm pretty sure the reasoning for this is as follows:
1) Computer science and software engineering students prefer to use their own computers
2) Digital media students can't afford the expensive licenses for the software they need to use (Maya, Max, Photoshop, etc)
3) Typical personal laptops aren't powerful enough to do proper rendering work
4) You can always SSH in, use VIM, and compile from your personal laptop
Oh yeah, there was a PC lab. Running Windows 3.1. That was a place to type your paper. You couldn't do real CS there.
And I had to bike uphill to class both ways in the Texas heat. :)
I think if you can take busted up hand-me-downs and backwards old crap, make it work & explain how to others, and learn how to sidestep a lazy/stubborn/indifferent IT (build your own stuff in ~/local, etc.), you can adapt and do fine anywhere.
While its not ideal, I thought the cs computer lab was fine. It's not meant to replace your main computer, as a CS major you should probably have your own computer. Its meant more as a place to hang out and work on class projects together and for that I think it does fine.
Also, if you are a cs major you can probably figure out how to 'startx gnome'
Also, for many research groups they have their own computer labs that are not restricted like the main cs lab. I know at least that in the robotics lab they gave out root passwords to their ubuntu machines and you could pretty much do as you like.
Don't imagine yourself at a computer, think about the marginal user. That is, the kid who could be a good CS student but doesn't do it because the first class' experience is extremely frustrating not due to programming, but due to stupid computer admin shit.
The argument is that the unnecessary complexity and intentional backwardness of the computer labs is pushing away marginal CS students, not that it's a system that's impossible for anyone to figure out.
Well, it would be nice (no pun intended...) to force people to run long MATLAB jobs with nice, but oh well.
If you had an office you probably should have just put your machine on csres and run it yourself.
The window manager was CDE by default, which sounds about as bad as fvwm2. You could run Gnome but I don't think most of the software worked very well with it (ePD! Cadence!)
Fortunately most CS projects could be developed locally on any Unix/Linux/OSX machine, then thrown up on the time sharing machine for testing.
All true, up to the point about package management, which didn't quite take a week.
But as a result I use fvwm2 as my coding WM of choice. It's distraction-free!
I used to run the gnome panel with it and found it much nicer than metacity+gnome...
But of course, fvwm is good only if well configured and I doubt they took the time to do that. And I do agree that most people will not see want to spend hours configuring it...
All this crap makes the machine maddingly slow. Then they mount network drives on the machines (20 or so). This means that if you use a flash drive you must start unmounting the network drives until your flash drive appear.
While you log-in 10 or so programs give you error messages (for which you must press the Ok button).
The quotas are still a problem – why must we have 100MB quotas? Hard-disk space is cheap – google gives me 7GB for email.
The worst is the internet costs. They give you 200MB for a year. After that you have to pay R2 (20 US cents) per M.B. That price is four times as expensive as GPRS through your cellphone.
Oh – it is crap working on CRT screens with a burned in log-in bar.
---
Ranting aside – the admin for the clusters in my dept. really knows his stuff.
I just logged into my account (I graduated more than a year ago but I guess they forgot to deactivate my account...) and it looks like they bumped the storage quota from 100MB to 200MB. Yay.
Considering the difficulty of the entry-level classes (weed out) and the fact that students often have 3-4 extra classes just like it, having them spend hours upon hours of admin work. They're training to be computer scientists not admins.
My school runs RHEL/gnome on some beefy quad-core machines. Whatever is needed for a class is installed immediately and just works. No need to spend hours hunting down packages and installing them, and then no need for the professors/TAs to spend hours upon hours of duplicating configurations in order to make sure that everything can be graded.
Students will acquire enough Unix knowledge throughout their 4 years by using a well-maintained system. Most of them spend about 10-20 hrs/week using it for development -- no need to add another 30 for sysadmin work.