• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

University of California at Davis CS Dept. is all UNIX! :-)

Nighthawk69

Golden Member
'Evening all...

I learned a couple months ago that the college I will be transferring to in a couple years for a Computer Science major, the University of California at Davis, runs UNIX exclusively in their Computer Science Department. This actually gave me an excuse to start learning with Linux on my desktop PC and fileserver, but that's not what I'm posting about. Rather, I have a few questions...

1.) Do most other Universities use Unix in their computer science departments? I was told by UC Davis that apparently the UC system uses it in the CS department and they are trying to get community colleges and high schools to go that way as well.

2.) What sort of things should I make sure I know before transferring there? I am gaining a comfortable understanding of how Linux/Unix works and I feel comfortable working in it now--already more so than Windows and I've only used Linux for under two months and I was a Windows user since Windows 3.1.

3.) After graduating with a CS degree and going into the workforce, what environment will most programming be done in? I would assume Windows with VC++ since most retail software is for the Windows OS, but then if that's so, why would UC Davis use Unix exclusively in their CS department?

Umm, I think that is all I was really interested in at the moment, but I'm happy to hear anything else you might have on the subject.

Thanks all! 😀
 
1.) Do most other Universities use Unix in their computer science departments? I was told by UC Davis that apparently the UC system uses it in the CS department and they are trying to get community colleges and high schools to go that way as well.

Yes because it's been around forever and source is available for a lot of unix utilities, and with Linux, FreeBSD, etc the source for the kernel is available so it's a great teaching tool.

3.) After graduating with a CS degree and going into the workforce, what environment will most programming be done in? I would assume Windows with VC++ since most retail software is for the Windows OS, but then if that's so, why would UC Davis use Unix exclusively in their CS department?

C and C++ are standards, they already have unix boxes around with good compilers so why not use unix? Picking up a new IDE (VC) and C++ library (MFC) isn't that hard once you know the fundamentals.

I've heard of MS buying into schools to have C# taught and made a requirement for graduating, but a college that does that is f'ing you over teaching you a proprietary language owned by a single company.
 
Anyplace that teaches you C on a *NIX box is doing you a much better service than those that teach you MS languages. Our CS department teaches (or did when I was there) C on UNIX and then to Borland.... don't ask me why. But most of the CS profs had a Linux box in their offices. One even VNC'd in for a telnet window in class before I (really) knew what VNC was... pretty cool stuff.

Oh yeah, and that year of VB that I took for the business half of MIS, guess how much I used that after my internship.. still waiting to use it. I use C++ on a daily basis, actually, 80% of my hours are billable using Borland builder. If it wasn't that it would've been Delphi (pascal)

Up with the FSF, down with MS!
 
Here at UCI's main CS lab we've got a nice mix of Windows machines and UNIX machines (well, Sun boxes running Solaris).

As for working after graduation? It really depends. A good portion of the software being written isn't commercial off the shelf software. There's a good possibility that you could be writing in Java since many clients don't want to be limited to a single platform. C# may change that, but we'll have to wait and see how widely accepted it becomes. 🙂
 
A lot of larger or state schools will at the very least make a unix machine available and gear the class toward using the compiler on it, so that students don't neccisarily have to own thier own computer or buy thier own compiler software.

bart
 

OOps... don't start writing after getting back from tea night...

The point I was going to make but never got to was that when we were taught on a UNIX box, there was no X windows crap, no proprietary API calls, just bare bones C (and some C++) By teaching that way, we got ground level, language independant knowledge. Good algorythm design (maybe not good spelling tho 😉 ) good memory management and good problem solving. We however did not get any 'good use of hidden OS crap' or 'i don't know how to function without blah blah win32 API call,' you can pick that stuff up in a book AFTER you know how to code for real.

That is why most of the CS people I know of are doing real work, while most of the MIS people I know of (who took the VB with me) ended up working for our local MS tentacle. Sure they get paid more, but they are mindless support drones, and work for a company with $30Billion in the bank.
 
Do most other Universities use Unix in their computer science departments? I was told by UC Davis that apparently the UC system uses it in the CS department and they are trying to get community colleges and high schools to go that way as well.

A lot of them do. It's all about the money. On a side note, my univ. just converted all the FreeBSD boxes to Linux/2K dual-boot systems when they bought newer machines.

After graduating with a CS degree and going into the workforce, what environment will most programming be done in? I would assume Windows with VC++ since most retail software is for the Windows OS, but then if that's so, why would UC Davis use Unix exclusively in their CS department?

Well, I program in VC exclusively; most of what I write is always modularized into Windows components and OS-independent components. I have tried using the Linux compilers/IDE's but they suck compared to Visual Studio. When writing big projects, integrated debugging and dynamic compiling w/o stopping the running program are quite helpful 🙂 As far as what's available at the univ. labs, I couldn't care less since I never use them.

Oh, and C# being a "proprietary language owned by a single company", LOL 🙂 I don't have a sig, but I'm seriously considering putting that in there.
 
Do the college Unix systems usually have X setup with a desktop environment (if so, which one?) ... ? Or do they only let you use the console?
 
The ones here at UCI are all running CDE. But hey, the console's always there for people who can't get enough of the command line. 🙂
 
Originally posted by: Nighthawk69
CDE?
Common Desktop Environment is the environment the major Unix vendors adopted as the standard GUI for X-Windows years ago. It's pretty ugly, but it gets the job done. By the time you enter the CS program, who knows though. Solaris 10 w/ the GNOME desktop might be standard by then. Theoretically it's possible to compile and use the window manager of your choice, but account disk space might be an issue.

UC CS labs tend to have a mixture of machines anywhere between 4 years old to brand new. By the time I left Cal Berkeley, Winblows NT Workstation had infiltrated a lot of labs. And Berkeley has as rich a Unix culture as anywhere.
 
According to Matt Welsh, well-known within Linux circles and a recent UCB CS PhD grad, Linux is a mainstay of graduate research in Berkeley's graduate program. This is a intriguing blurb from this interview.
Linuxcare: What if Berkeley were to partner with Microsoft like they did with Intel?

Matt: I would quit grad school. I seriously would. If the whole research program that I am in went over to Windows NT base, I would go to another university. It is that important to me that I sustain alternatives to Microsoft. They have partnered with a number of universities, and they have tried to do so with us. But I think that people realize that there is a lot of resistance at Berkeley to Microsoft. That is why I have that whole Boycott Microsoft website and everything up. It is something that I feel very strongly about. NT doesn't help to sustain innovation. You need people doing work that challenges the status quo. There are a lot of reasons why Open Source is compatible with computer science research. I am more worried about Microsoft coming in and dictating what the research agenda will be. When you change what the research agenda is there are long term ramifications for innovation. If the best universities are doing all the research based on Microsoft platforms, than the best research in the world is not being done in an innovative way. Unfortunately, universities are poor, so they have to take whatever they can get. Thankfully, Linux is free.

Linuxcare: You heard that Bill Gates is donating millions of dollars to MIT to build a new hall?

Matt: That's right. It just so happens that's the building Richard Stallman would be in! My advisor here at Berkeley came up with the idea of getting Linus Torvalds to donate zero dollars, and we would in turn name a room the "Linus Torvalds Lounge."
 
hehe, nice quote! 🙂

Well, I'm a KDE3 user (with mods of course!) so that's why I was wondering what they would be using. Although, when Red Hat is ready to release Gnome 2 officially for RH, I might use that, I don't know yet.

Thanks all!! 🙂
 
IMHO, a B.S. degree in computer science is not about learning a certain platform or language. If you want that, you can get certificates & AA degrees from your local community college. A B.S. degree is a higher level of understanding of computer science. Programming is just a tool in that pursuit. What tool you use is somewhat insignificant.

With that in mind though, a unix OS, particularly an open source OS is probably more appropriate because it allows you more insight & control of the system then a closed-source, gui-wrapped OS like windows.
 
Originally posted by: ergeorge
IMHO, a B.S. degree in computer science is not about learning a certain platform or language. If you want that, you can get certificates & AA degrees from your local community college. A B.S. degree is a higher level of understanding of computer science. Programming is just a tool in that pursuit. What tool you use is somewhat insignificant.
Completely agree. There are people out there who know a language's syntax like the back of their hand, but they can't program, per se. With some small exceptions, a CS degree teaches people the methods, algorithms, and theories that are independent of languages and operating systems. After all, once you've learned all that, it's not a long jump to apply it to any language.
 
Do the college Unix systems usually have X setup with a desktop environment (if so, which one?) ... ? Or do they only let you use the console?

At Duke University (and several other similar schools) the campus has public Unix clusters (almost invariably Sun systems) which run FVWM as a window manager (but it's very easy to install your own window manager). All students have 70 megabyte accounts which house anything from student work to their web pages. The accounts are stored on centralized servers which are mounted via AFS campus-wide so that you can sit down at any public Unix system on campus and have the same desktop, files, etc. It works well, and has worked that way for at least a decade.

The computer science department maintains its own private Unix clusters and gives its students their own accounts on this network, which I believe is NFS mounted but otherwise similar. They are mostly Sun boxes with CDE as a default desktop manager. Having a private network allows the CS department to maintain and configure its own software tuned to the department's needs (such as using compilers with specific attributes or libraries).

Similarly, the EE department maintains its own private Unix clusters but are mostly Linux machines. The few clusters that are Suns are for specific software (Synopsys, Mentor Graphics, Microsim, etc). The remote compute clusters are all Linux, for things like Matlab and scientific computing, but since they are not physically accessible they do not run X.

There are also public Windows and Macintosh clusters distributed throughout the campuses. They have MS Office, Corel office, and a few other programs for student use. They run Windows 2000 with a security wrapper that forces you to log into the machine with the Unix login and password so that they can track computer abuse. The Macs are set up similarly, but they're running OS 9 so I have no idea how it works (I can't stand Mac OS <10).

One of the coolest things about the computer clusters is printing. Printing is free for all students at any of the clusters. You can also set up your dorm computer to print to the cluster printers (there is almost always a cluster nearby), saving you from any printing costs. I hear that it costs the school a bunch of $$ each year, but they feel that everyone should have access to printers, and the professors don't want any excuses like "my printer ran out of ink..."
 
Thanks for the detailed reply. I didn't realize that Unix really dominates the Universities. I find that pretty cool 🙂

Thanks again!! 😀
 
Back
Top