PDA

View Full Version : Product Recomendation for CS major


asiananimal
Jul 16, 2004, 06:35 AM
Currently I am a University student majoring in Computer Science. Lately I've been thinking about getting a laptop and was very intrested in the iBook/PowerBook due to OS 10's Free BSD under the hood. I've heard a lot about it, but I am cirous to find out if OSX can do everything Linux/BSD, i.e. Could somebody who's in a related field who's had experience about using OSX for their professional life enlighten me on the pros and con. :)

On the other hand my economic mind is telling me to get a intel based laptop to save money and have more fexablity in what OS i want in it. Why should i not go this way, ie buy from dell?

I am expecting lots of Mac recomendations, if so what model / config should purcheses. I'm looking for the max of budget saving and power/utility.
Currently , i'm looking at the G4 iBook 14" 256mb ram(buy more later, it seems cheeper to buy from crucual and install it yourself) and superdrive.

It would be wonderful if all you apple geniouses can enlightend this young grasshopper in the ways of buying mac product.

With great thanks...

Macs R Us
Jul 16, 2004, 06:41 AM
Well, I'v used OS X and the UNIX commands and there the same as on my NeXT and Network Server 700. The worst thing you could do is buy a wintell computer, the upkeep cost is way more of a Dell Latop for example. My brother uses his PowerBook at School on there network and does unix and C++ no problems. I'm also useing a iBook for school with OS X and I'm upgrading my 700mhz iBook to a ni PowerBook. So OS X would be great for you.

federalists
Jul 16, 2004, 07:15 AM
i'm a CS major at GA tech, and i just recently bought a powerbook. it's great! i think you'll find that they are highly valued in the geek community. plus, if you do want choice, you could always install a linux distro on your PB/ibook like yellowdog, maybe debain, etc. i know a few people in the dept that use linux on their PB. i think you'll find that it does everything you want in os x, provided you install the developer tools. it has gcc, gdb, and all the standard unix tools. plus it comes with 3 shells already installed: bash, tcsh, and zsh. and if you need more unix compatibility, download and install an X server. i recommend apple's X11, but there is also darwinX and one or two others.

i would go with a powerbook over an ibook, but i deliberated over the two for a long time. i eventually went with the laptop that had more screen real estate (15"), faster processor (1.5ghz), and faster memory bandwidth (ddr 333).

DGFan
Jul 16, 2004, 08:02 AM
CS Major?? I would recommend buying this (http://www.amazon.com/exec/obidos/ASIN/019864339X/qid=1089982892/sr=2-2/ref=sr_2_2/102-7453547-6332950) book.

:D

iBert
Jul 19, 2004, 11:08 PM
I bought my Powerbook around xmas. best money ever spent. If you can afford it got with the powerbook, whatever size you like. i have a 12" because, i travel some. and is very comfortable on the planes. Also, whichever you get make sure to install Xcode, i love it. You'll be able to do all sorts of projects with and also you'll be able to create your own template projects. I'm on the works of selling my P4 to get a G5. Can't wait to get that monster. As for trying to install linux on it, have some quite a few distros. If you know unix or linux command (duh, same thing) you'll feel right at home with the terminal and will be able to do developing with either pico, vi or whatever your flavor of text editor is. One thing, i'll recommend try to get as most RAM as possible, cause once you start running things you might end up running to many things at the sametime.

hope this helps in any way.

iBert

jamdr
Jul 20, 2004, 12:40 AM
CS Major?? I would recommend buying this (http://www.amazon.com/exec/obidos/ASIN/019864339X/qid=1089982892/sr=2-2/ref=sr_2_2/102-7453547-6332950) book.

:D

Heh, heh. That's pretty funny.

As for the topic poster, if you do get a PowerBook or iBook, you will get some weird looks in the CS department and some of your professors may be a little unflexible ("Hmmm, your code doesn't compile? Maybe it's because you have a Mac..."). However, it's easily worth it and you should be able to do anything on your Mac that your classmates do on PCs.

bousozoku
Jul 20, 2004, 01:17 AM
In my Java classes, the first 3 weeks were wasted with setting up the environment on Windows machines. I was already finishing assignments.

Having used various UNIX shells and tools with C since 1985, I find that Apple supports everything well and it's less of a risk than trying to work with the Cygwin environment on a Windows machine. The only thing I don't like is that Apple's version of gcc is slightly out of sync with the rest of gcc.

I can't imagine any reason to put Linux on an Apple machine, except to experiment. You can do anything you need to do with Mac OS X.

As far as machines go, I would not put the money into the 14 inch iBook unless you just have to have a SuperDrive and can't afford another option. I know that the 15.2 inch PowerBook with SuperDrive is expensive but the 12 inch is nicely priced and has good power.

Besides, Java applications running on Mac OS X look so good that Windows users drool over them. ;)

bastardx
Jul 20, 2004, 01:22 AM
CS major eh? I guess it depends entirely on what your program does. Or, more specifically what Language /API you are forced to use, if any forcing occurs. Here, we are forced, when in the introductory core, to learn Java, so using a Mac would be the exact same as a PC, except you are doing it in a much better Operating System on the Mac. I am currently a CS major, and have programmed in Java,C++,Objective-C, and Python for my classes, and have had no problems. Although I also haven't used any platform-specific libraries, with the exception of Cocoa, but that was of my own design. As for hardware, I would say, it really doesn't matter, just pick the Mac that you like the best. If all you are going to do is CS, and the occasional Office/web/email stuff, then an iBook would be perfect for that. If you think that you may want to start to develop/play higher end games on your Mac, you may want to look into a PowerBook, more specifically a 15" or 17", specifically because they have better graphics boards, and it would be nice for a CS major to have more room for IDE/Text Editor windows. I currently have a 12" Rev A PowerBook(867 Mhz, Superdrive, 640 MB RAM), and it works perfectly fine for all of the CS stuff that I do, I mean a Gig of RAM would be useful for running multiple applications at once(Xcode or IDLE, and Safari, iChat, iTunes, Entourage, etc...), and a faster processor would help with compilation times, but for most CS projects, compilation isn't that time-critical, since the projects are small. Also, if you aren't familiar, you can get a student Developer discount, at developer.apple.com, for 100 USD, you can get up to a 20% discount on your hardware that you want, which could afford you a little bit better system than in the Educational store, or retail stores.

MacFan26
Jul 20, 2004, 01:44 AM
I'm a CS major as well :D. I have a 15" tibook and for the most part it was great for my classes. I was a pretty big newbie to programming, so it was kind of tough getting started, but once you figure out how to use things it gets a lot better, but I'm assuming you already know what you're doing from your post. I suppose it sometimes depends on the CS department, for example, the program that our classes were supposed to use was Windows only, but I just used NetBeans instead.

note: first post back from vacation :rolleyes: :)

jtgotsjets
Jul 20, 2004, 02:06 AM
I'm in similar situation (main difference being that I already bought a laptop).

One of the biggest selling points coming from a CS perspective was xcode. While I haven't had time to mess with it or even learn to use it (it's a lot different than visual studio, as far as I can tell), the fact that OSX comes with a C++ compiler was pretty cool.
I was assured when I visited KU (where I'm going to college) that while I might be in the minority as a mac user, that I would be absolutely fine.

Timelessblur
Jul 20, 2004, 02:01 PM
I have some friends that are CS majors. Some of them use macs. From what they are telling me is for the most part it trouble free. Now there are times that you will run into problems on running OSX when coding in C because it will compline on the mac but it will not run on a PC like it soposed to. Take the same code and you put in on a Wintel computer and general recompling it there will fix the problem some time it requires a little editing

w00tmaster
Jul 20, 2004, 02:29 PM
Heh, heh. That's pretty funny.

As for the topic poster, if you do get a PowerBook or iBook, you will get some weird looks in the CS department and some of your professors may be a little unflexible ("Hmmm, your code doesn't compile? Maybe it's because you have a Mac..."). However, it's easily worth it and you should be able to do anything on your Mac that your classmates do on PCs.

Heh, well since Macs use gcc/g++ to compile stuff, you would have a hard time writing something on a mac(that doesn't use mac specific libraries of course!) that wouldn't compile elsewhere.
You can(and on occaision I do) compile OSS apps you find on sourceforge rather easily.

asiananimal
Jul 21, 2004, 06:56 PM
From what i hear there seems to be a bit of trouble converting C programs from mac to windows. At UCR, the school i go to, everything has to compile with linux, has anybody run or herd of anybody having problems moving code from mac to linux or is that smooth.

My other concern is with Vurtual PC, sometimes you just have to run windows for some stuff. Hows vurtual PC's proformance or is it still kinna sketchy.

This is off topic but whats everybody's experiences with the superdrive, good, bad. Is it worth it to buy it, or should i wait for the next update for dual layers. Perhapse an external is more worthwild.

Apple Hobo
Jul 21, 2004, 09:13 PM
I think the Mac makes a very good development platform.

Here's why I think so...

The OS is based on UNIX/FreeBSD-based technologies. It's good to learn how a *nix OS works if you want to be a certified übergeek. :D

You have a ton of free developer tools that you can download and use. Some of these tools were just designed for *nix, but you can actually use them on a Mac.

You have acces to X Windows and everything that is involved with it.

You now have access to a HUGE amount of open source apps that you can install and tinker with since they come with their source code. I've downloaded so much professional-quality software for free. If I knew what I was doing, I could even modify the source code for the apps.

Mac OS ships with a complete package of quality developer tool at no extra charge. You can compile C, OBJ-C, C++, Java, and a bunch of other stuff. The dev tools even ship with a ton of source code examples, so you can see how Cocoa, Carbon, OpenGL, sounds, etc. work.

Mac OS has many standard tools at your disposal: GCC, Apache, FTP, Telnet, SSH, etc.

For more info, check Apple's dev tools page (http://www.apple.com/macosx/developertools/) and Apple's Mac OS X page. (http://www.apple.com/macosx)

You might have some trouble if your school teaches some crap like .NET. It's a shame that many schools have abandoned the teaching of standard C or C++. Now you learn .NET from the beginning and that's all you know. :( You can do .NET in Virtual PC (I did), but it's a pain sometimes. Thankfully, I was able to mess with quality, non-MS programming stuff in my spare time.

iBert
Jul 22, 2004, 12:33 PM
I guess it won't be a problem as long as you use the terminal to do all your compilation. If you want to develop unix program in your mac, you'll have to stay away(probably a little, not too sure about this) from Xcode. I think even using Xcode you might be able to export you code and use it in unix. Again i could be wrong with this.

Anticipat3
Jul 23, 2004, 12:15 PM
I'm also a CS Major, and also a fan of the Mac. Before I discovered OSX I was mostly a Linux user... once you discover the joy of the command line, you never really want to lose that power. I'm not a fan of the "Fat" IDEs, I do all of my programming with two tools - a text editor and a compiler. I was mostly an emacs fan when I used Linux, but I've really come to love SubEthaEdit on the Mac. It's definately my favourite text editor for any platform, even though I don't use most of the sharing features too often. It does everything I really like - syntax highlighting, showing when brackets and parenthesis are closed, showing current line and column, and having good indent features, and nothing I don't. All of the useful compilers are available on OSX, including javac, gcc, and (if you do a lot of java) jikes. If you ever do any web dev, you'll find it's also very handy to have an apache server on your machine, as well as easy to install and configure php modules and mysql databases.

Overall, unless you're going into a Business/IT style program, where they teach knobs how to use Visual Basic and other such garbage, the Mac will be far superior to a Windows machine, and if you're thinking about getting a laptop, you'll also find that the mac will cause far less headaches than an x86 laptop. Your power management and sleep functions will work and be reliable, it'll be really easy to join or change networks (read: wireless), and you also have no need to dual boot in order to use MS Office, Dreamweaver, or any Macromedia or Adobe apps (Yes, I know there are programs that allow these to be run on Linux, but they're still very rough around the edges.) You also won't have to spend nearly as much time patching, reinstalling Windows every few months when it gets hosed, or playing around getting Linux to work right on your setup (Redhat, Mandrake, etc. are a joke, if you're going to use Linux you gotta do it from scratch or use Gentoo or Debian... which is going to require you to do manual kernel configuraton).

All said, I'm on my second powerbook, and I plan to get another once they release a G5 model. If you're strapped for cash, an iBook is a great option, but I would generally suggest the 12" model. The 14" has the same screen resolution, and it's going to be harder to drag around. That said, I have a 15" powerbook now, and used to have a 12", and I haven't found the extra size to be all too troublesome, so if you'd like something that's easier on the eyes (and I believe the 14" actually gets a little more battery life too), it may not be a bad plan :).

Go for the Mac. You won't regret it.

dethl
Jul 23, 2004, 01:58 PM
Seems to be an endless supply of CS majors, I myself being one.

I got an iBook (G3/900), and its been serving me very very well. If you college uses linux for most of the programming projects, you will be many steps ahead of the windoze people. In my experience, Windows C/C++/whatever programmers have to modify their code quite a bit just to get it to work in the linux environment.

You really can't go wrong with any of the macs.

j_appel
Jul 23, 2004, 04:03 PM
Definately get a Mac. I was a CS major last school year, and I had no trouble at all with my iBook. The only thing was that one of my teachers made us turn things in on a floppy disk as well as email. XCode handled Java just fine, and everything else I had to do. I'm sure any model you get will work great. :)

JRam
Jul 23, 2004, 06:02 PM
I would definitely recommend the apple over a pc laptop any day. One of the major advantages, that has already been talking about is how unix is the backbone for macs. This is good because, at least in my programing courses, you have to know how to work with unix and being able to practice on your own computer is very nice, instead of having to rely on any computer labs or connecting to the school unix machines. And once you get to know the terminal its a very powerful tool that makes your mac a lot more controllable.

A little side question I was wondering...
Does anyone have any advice on what some of the differences are between codewarrior and xcode? Ive been tinkering around with xcode for a while now and find it alright although I was wondering about peoples general experiences with codewarrior. Also if anyone else knows of some good sites or tutorials for learning how to work with the either of the two programs.

JRam