When I wanted to buy my first “dedicated” machine for computer science…
I was confused..
I thought I would need the biggest and most bad ass machine with the latest CPU and GPU on it.
I’d have to have the best of the best to tinkle around with hardware and somehow improve that hardware’s performance through my awesome code.
I was dead wrong…
Most computer scientists don’t need that much hardware to do that. In fact, most computer scientists don’t even do that.
In fact, you might be OK with a cheap ChromeBook from Wallmart.
I’m not going to post cheap laptops from wallmart. I’m just making a point here. I know it’s hard that you don’t have to spend that much on computer hardware.
There’s one thing you should spend your money on a laptop: user experience & accessability.
Wait what do you mean?
I mean making sure you buy a machine that can give you access to every OS and IDE you may have to install on it (I’ll get more into it later)
And since your eyes will be staring at the screen and your fingers glued to the keyboard for days!
Why not invest on a nice comfortable keyboard and an easy on the eyes screen too?
Recommended Specs for Computer Science
If you still don’t believe you don’t need hardcore hardware, check the section at the end where we go through every single class, your curriculum and the specific software you’ll be using at your school.
You can also go to reddit or quora to ask actual computer science people about this and and you’ll get the exact same response.
In fact, they’ll probably tell you to use a potato to code because programming is the least hardawre demanding task. I think they’re wrong you should still focus on the following:
RAM was the limiting factor for developing/coding however most laptops today have way too much RAM.
For simple coding and school projects: 4GB.
For IDEs(Eclipse, Xcode, Visual Studio): 8GB.
Virtual Machines: 8GB. 16GB in very specific cases (not you student!)
Like I said you’re going to be staring at this thing everytime you step outside a lecture so be kind to your eyeballs if you still wanna have them shiny and without glasses after graduation of course:
Resolution: FHD 1080p to use split screen & and see more chunks of code at a time (to follow code logic).
Finish: get an Anti-Glare or a Matte screen. If not, buy an accesory.
Size: at least 13”. 11” is going to take a huge toll on your eyes but the FHD/Anti-Glare can offset this.
If you come across a laptop that has many reviews about having a lousy keyboard, run like Forest Gump on black friday. You’re going to be typing your eyes out on this thing and the last thing you want is a messy keyboard to mess up with your flow.
A Solid State Drive is a must. Don’t worry about capacity. 128GB-256GB is fine. It’s better to have loading & running apps & IDEs instantly than having hundreds of extra gigabytes you’ll never use.
Any modern processor with the latest architecture from AMD/Intel is okay.
Make sure it’s recent and avoid: 6th,7th gen processors from Intel, Celeron, Pentium, MY/Y5/Y3 and AMD A9/A6/A4 or ARM/MediaTek/Atom Chips.
Only useful to speed up parallel programming. Don’t pay attention to it.
Top 5 Best Laptops For Computer Science Students
All of these computers can run every CS software or IDE you can think of and all the programming languages you have in mind. What’s goinna make them expensive is their weight, thinness, build quality and display.
Remember the more you invest on one the more comfortable/easier it’ll be for you to be productive when coding and programming.
1. MacBook Air
Best Apple Laptop for Computer Science
Intel Core i5 2.9GHz
8GB RAM LPDDR3
13” 1440×900 TN
This might come off as surprising if you are freshman…
But the fact is that a MacBook, especially the Air, is the most popular laptop for computer scientists and anyone involved with programming.
If you have the chance just try and go to a programmers meeting, you will see A LOT of shiny apples all over the auditorium. Not only that, some of your professors probably will have one too.
1.A Macbook can give you access to akk three OSs: Windows, OSX and Linux. You don’t even have to install Linux on it, being a Unix based machine you can run Linux packages natively.
2. And any other code or software that may not be compatible with either Mac or Linux (.NET, Visual Studio) will simply require you to do a quick dual boot to launch Windows.
3.Another cool thing is that it has a lot of programming languages natively installed too (C, C++,Python,Java) so you won’t have to go through the painstaking task of installing an IDE to start coding.
4. Because you have access to OSX and Windows, you can also program for Android and iOS devices.
The hardaware on it has several different configurations, you can choose an Air with a Core i7 and 512GB with 16GB if you want but I think any configuration with 8GB RAM should be enough even for Android Development which I found to be the most hardware consuming resource.
You may need 16GB if you are using third party software that requires it or if you plan on running a dozen VMs on it but if you are a student this is super unlikely and who wants to give their shiny pretty MacBook Air that much workload?
Display & Design
The coolest thing about the design is that it’s so thin and lightweight that I don’t care what you got in your bag, there will always be space for the MacBook Air. When I bought I was able to bring it everywhere with me and the battery can last you up to 13 hours on a single charge. You might bring yours to places you don’t actually need it but hey it’s always to have your laptop right next to you if you feel like coding.
Although the keys have low travel they are very responsive and make virtually zero noise. The best keyboard I’ve had the pleasure to type on. It also has an adjustable backlit feature so you can code in dark and adjust the brightness levels to save yourself battery life.
It would have been the perfect machine save for one small detail, the resolution. It isn’t the ideal full HD everyone recommends these days but it doesn’t have the lowest resolution cheap laptops with TN displays have either: 1366 x 768 but it’s actually 1600 x 900.
The resolution should pose no issues for coding or reading any documentation for your assignments, if it weren’t you wouldn’t see so many programmers using it.
The recent 2020 MacBook Air though will have a much better resolution making it the perfect laptop but it’s just too expensive and we know nothing the keyboard yet. Past MacBook Airs that have added more resolution didn’t have good keyboards imo, they were good but not as good as the this model’s.
If you can’t afford the full blown new 13” MacBook Air, you can always get a refurbished model from amazon like I did.I can tell you from experience : in the apple world, refurbished pretty much means new but cheaper.
Heck you might even end up reselling yours after you graduate (macbooks usually last you a lifetime).
Core m3 , Core i5, Core i7
128GB-1TB PCIe NVMe SSD
12” IPS 2736×1824
The Surface Pro isn’t a good choice if you are a developer already but it’s probably one of the best choices if you are still a student .
If you are willing to give the stylus a try, OneNote with the Surface Pro can replace your entire library of books along with all of your school supplies because you can directly take notes on it as if it were a real notebook, even mathematicians and graphic design students use the stylus.
OneNote helps keeping every note/pdf file you have neatly organized for you to easily access quickly. In computer science, this means being able to read documentation or look up a piece of code/function quickly.
Another reason why it made it to the list is the price. It’s not cheap but it’s configurable to tons of different specs which you can adjust to your budget.
Again you have to make sure to grab one with 8GB RAM, the rest will take care of itself.
If you must know what the difference between what you can do with each here they are:
Core M3 Processor, 4GB RAM
You can run pretty much any code editor with no issues. Visual Studio also runs fine.
Core i5 Processor, 4GB RAM
Similarly as above but more multitasking. You can also run Virtual Machines but limited to one or two.
Core i5 Processor , 8GB RAM and beyond
More ideal for several virtual machines. You can run App development environments such as Android Studio without lag too.
Display & Design
The display is only 12.5” but boasts more resolution than your average premium ultrabook: 2,736×1924 vs 1920 x 1080. This means more screen space and less need of scrolling down to pinpoint bad code.
The keyboard might take some time getting used to, it doesn’t feel like a regular keyboard when you put it on your laptop. But if you position it in any other place it will feel like a real laptop.
3. Asus ZenBook
Core i5-8265U 3.4GHz
8GB RAM DDR4
512GB PCIe NVMe SSD
13” full HD TN
Hardware this model here has better specs than the MacBook Air. The design is almost a replica, it’s thin, lightweight and with great battery life but with Windows on it. Even the trackpad is just as big.
In fact, it might be a little better because it has a FHD resolution screen.
But the keyboard is just average and maybe good but not MacBook Air like and the chasis is not made of full aluminium but a combination of plastic/aluminium at best.
Nonetheless I think it’s a great option if you’re looking for something like the MacBook Air but you hate the Apple logo.
Best Windows Laptop For Computer Science
8GB RAM DDR3
Intel UHD 620
13” full HD 1080p
The Dell XPS 13 is a lot closer to the Airin all aspects of the design. It’s thin, lightweight, has a great trackpad and keyboard and it’s made of full aluminum.
There’s one more perk about grabbing an XPS and that’s the fact that every piece of hardware will work flawlessly with most Linus Dixtros. From the speakers to the trackpad and even the touchscreen feature if you get a model with one.
Unfortunately, it’s almost as expensive if not more than the MacBook Air.
It gets even more expensive if you try to get it with a Core i7 and the 4k resolution display. Again you should configure your pick to just have 8GB RAM and an SSD (all models have an SSD but getting a PCIe NVMe will make your PC look up a piece of code just a tad faster).
Best Cheap Laptop For Computer Science
Core i3-8100U 3.4GHz
8GB RAM DDR4
128GB PCIe NVMe SSD
15” IPS full HD 1080p
The Acer Aspire 5 with the Ryzen chip on is currently the best selling laptop on Amazon and for good reasons.
For 450$, you’re getting all the specs updated to their latest tech: DR4 RAM, PCIe NVMe SSD, FHD and a 3000 Ryzen AMD chip.
And compared to last year’s model it’s not too heavy. It’s relatively thin (not MacBook thin but thinner than the average 15” laptop) and it doesn’t weigh 5lbs anymore.
Also unlike last year’s model, the RAM is upped to 8GB so no need for upgrades.
What may need an upgrade is the storage, if you start installing games on it you’re definitely going to run out of it pretty quickly. This is a great oportunity to finally dissect a computer for you and add another storage with 1TB on it if you want (it’s not that difficult realy, you just have to remove two screws and place the storage in it).
Unfortunately, unlike last year’s model this is no longer 350$ but 450$.
There is a model that costs 350$ with exactly the same specs but without Windows 10 on it, what you can do is either get a copy of Windows from somewhere and type the key in it and it will automatically update to the full version of Windows.
If that’s not possible, then you can install Linux on it and save yourself the hussle and 100$. I’m going to write a tutorial on how do this soon with this model so subscribe to our mailing list if you are interested.
How To Buy A Laptop for Computer Science
The following section will go over the CS program, curriculum, software and the classes you will encounter so you can comfortably make the decision of which laptop to buy to understand the reasoning behind the choices given above.
The Computer Science Department
It’s very crucial to check what your specific department has to say about laptops. Do that now if you haven’t.
What exactly do I need to check?
Ask what OS they use and recommend. Some schools are Microsoft all the way, but some schools teach more on the Linux side right off the bat. Either way no matter what OS, you can’t go wrong with a MacBook as you’ll see soon.
All good CS institutes and departments out there offer awesome 24/7 labs where you can work as much as you want on your homework assignments, watch youtube videos among other things…
Truthfully speaking, it’s way better to work and study on these labs since you’ll be entirely focused on your work.
If so, you might not need a laptop at all since you have lab access 24/7. But who wants to spend the entire day in a lab? If you do, by all means do it save yourself some money.
As a computer science student however it becomes extremely important to be able to code whenever and wherever so you should still get a laptop even if it’s really cheap and slow.
You won’t be compiling the next Microsoft Office, Firefox or Windows. Nothing you’ll code will take time to compile or run. There might be an instance when you’ll need to compile something heavy. Probably for independent research (if you choose to do it) and even then it’ll be a one time thing where you can use the lab for it but even then it is extremely unlikely to get assigned such a project.
Software & OS
1.Although most computer science majors will only use vim/emacs(code editors) for courses and homeworks , you should find out what specific software they might use anyways and check their compatibility with your OS of preference (Linux,Mac,Windows).
2.Speaking of computer power and how heavy a software is, as you’ll see soon virtually every CS software (99.9% of them) will run with no issues on any modern laptop.
3. Don’t go around buying all the software you’ve seen on your school website in advance, they’ll be provided for free to you.
What is it?
You can basically use your desktop or whatever laptop you currently have to connect to your school’s lab computers and use them remotely from the comfort of your door room.
Yes that means you can also run heavy software that wouldn’t otherwise run on your laptop or desktop. I know my school didn’t have back then but today I am sure it does and most schools, if not all schools, do as well.
ChromeBook + Remote Access
In theory you could just buy a cheap tough Chromebook like the ones shown here to take notes, do some research here and there, etc, and use it to remotely access any other laptop, desktop or your school’s computer labs.
In fact, you can throw in some coding with a chromebook too and you can start coding with it for every class except for the few instances in which you might need a heavy IDE such as Visual Estudio or Eclipse.
What are classes like in the CS Department anyways?
Do you really need to take notes with your laptop?
As far as I am aware, classes are still being carried the old fashioned way. That is , class hours are lectures where you listen to a professor speak and watch a presentation as you take notes with a pen and paper.
There will be some drawings here and there so taking notes with a laptop can be time consuming and difficult unless you have the Surface Pro 4 or any other laptop/tablet with a stylus.
You’ll also be given practice questions and quizzes during class and these will still require pen and paper.
There might , yes might, be classes which require you to bring a laptop. This will depend on the specialization you’ve chosen by the 2nd or 3rd year or if you got a cool professor who doesn’t mind his students not paying attention and checking on facebook.
What about Labs?
You’ll be given an assignment to complete during lab hours, this is the only instance you’ll definitely need a machine but even then you won’t need your laptop just yetn because a computer will always be provided for you.
But it is more than likely you won’t be able to finish your assignments during lab hours and you’ll end up submitting it online after class is over.That’s where a laptop comes in.
Will laptops be required to take to classes?
If you are a freshman, you’ll find out during your first semester that the time you’ll spend on computer assignments will be much less than the time you’ll spend reading, taking notes, doing your homework and studying without a computer.
Even exams are written with pen and paper .
Why are not laptops required in class for us?
As I mentioned before you’re more likely to be on facebook and checking your email than listening to what your professor has to say.
As you’ll see for yourself during your freshman year, most CS classes involve a lot of math rather than coding and you’ll be using computer programs to solve problems much much later and always away from lectures.
You’ll notice something interesting too. Unlike most of your professor for other classes, your CS professors will be more likely to have ugly-looking and cheap laptops . You can probably guess why by now, if not keep reading.
These are more or less the classes you’ll find in a typical Computer Science Curriculum that do need the use of a computer.
|Introduction to Computing||Learning advanced coding skills (might be for a device or even a robot)||Python|
|Object Oriented Programming||As the name suggests…||Java|
|Data Structures and Algorithms||You’ll learn what these are in OOP.||Java|
|Computer Organization||Learn how computers work with C .||Optional|
|Digital Design Lab||Design and implement digital devices||DAQ Board software|
|Design Operating Systems||Build an operating system with labs and/or projects||C|
|Computer Networks (Elective)||development of network applications.||C/C++, Java, or Python|
As you can see only a few classes will require you to use a software (out of the 32 you’ll have to pass).
I know I know, I didn’t specifically put a software(just a coding language). But whatever IDE you use to run your code, they will all more or less require the same specs from a laptop.
Note that professors can get very picky on what language/IDE to use too: one could be using C++ with Eclipse and another one can entirely rely on Python even though the same subject is being taught.
Luckily, you’ll find that after a few semesters down the road, the choice will become yours and you’ll have the freedom to choose whatever programming language you want for your assignments.
Anyways, whatever you code, with your IDE & language, will not require a powerful laptop to compile & run.
However you might run into heavy software such as Unity (for Animation) and lots of data analysis (for research or a crazy elective) but these projects are very unlikely to be required by your department unless you ask your professors/advisor for them.
Even if you encounter such projects, they will most likely be a one time thing and I doubt you’ll want to make your laptop more heavy and way more expensive for all four years of just for one assignment or two.
Recommended Specs for Computer Science
I suppose you get the point now, you don’t have to worry about computer power at all. You should invest your money on portability, comfort and aesthetics more than anything.
My job is now to close the deal and convince you to leave performance aside and focus on portability starting with the display.
This is probably the most important feature for a computer science student even more so than processing power and storage.
There are two things to worry about as far as display goes.
You’ll be staring at the screen a lot. Especially after the first year because you’ll end up sitting in front of the screen for hours trying to figure out what’s wrong with your code. So you may want to take care of your eyes and prevent straining them.
The best way to do it is by choosing a good resolution display. If you ignore this feature, you might need a new pair of good working eyes after you graduate.
1366 x 768 (HD)
Most cheap laptops on the market today have a 1366 x 768 widescreen resolution. This is not optimal for reading code, it’s very wide which means you see a lot of whitespace at the end of code lines (very long lines of code are frowned upon) and you don’t get a lot of vertical viewing to see multiple lines of code.
As a result you end up having to scroll a lot to see code logic. And when you’re trying to follow a logic structure , this can get inefficient making understanding your own code very difficult. To counter this get a laptop with at least a 1920 x 1080 resolution (one step below might be the limit: 1,440 x 900 ).
A huge screen is a bonus though (paired with good resolution) but it’s not necessary. In fact, it can be counterproductive as the size will affect portability.
It’s a personal preference because it’s you that’s got to carry it all over the place . Small is good because you will be more likely to have your laptop with you when you need it but too small can also kill your eyes.
Unless your are Shaquille O’Neal and don’t mind carrying a 17” screen, don’t buy a huge screen.
I started out with a 17″ laptop and ended up not even bringing it to school. Not going to make that mistake again.
What about weight? Lightweight of course this allows you to bring your laptop everywhere, in and out of lectures and to do throw in some code anywhere and anytime.
Personally I found it most important feature, even 1lb will make a huge difference because you’ll have to carry it all day.
However this might not be feasible if you need a high end laptop which is very unlikely (if you’re doing Animation as part of your CS degree). Even then you can always rely on computer laptops for any class that requires heavy duty 3D software.
But always try your best best to keep it light even if you have to sacrifice performance or pay more for it (lightweight laptops with a great performance are not cheap at all!).
Usually your classroom will have outlets for you to charge your laptop. Unfortunately not all of them will be available to you. Now that everyone has a smartphone and sucking the batteries dry faster than a girl untagging herself from a photo that makes her look fat, it will be difficult to secure one outside of classes too.
Luckily most lightweight, small laptops today have enough battery life to last an entire school day.
On the other hand heavy overpowered (for gaming machines or serious 3D work) will run out of juice by the time you get to the next lecture.
A long battery life will let you find study/work areas that are far away from outlets.This becomes very handy around exam time when libraries turn into a zoo.
Also handy for you to code wherever and whenever: in the bus, subway, the gym, hallway, etc.
There are even times you may need to go the entire day without recharging.
Also swapping out batteries cells means more to carry and interruption of work.
CPU & RAM
As a computer science student you’ll be limited to Java, Python, C++ and the like and not much more than that unless you specialize in other areas (Animation, 3D Modeling, Parallel Computing, etc).
So you are more likely going to use that ultra fast processor with 16GB for gaming than anything else because your coding assignments are unlikely to exceed more than a 1000 lines. In fact even a project in the workplace area can be several thousands of lines and still take seconds to compile on a regular modern and cheap laptop.
*(even an Intel core i3 might do the trick or a Chromebook with plenty of RAM)
But I heard I need a crazy amount of RAM
There a few rare instances in which you might need a powerful processor coupled with more than 8G RAM
Android/iOS Apps Emulation
You can still run emulations on a regular laptop (i5 Processor w/ 4GB RAM). However it will be much faster and less frustrating to run them on a high end laptop.
Try to get as much RAM/CPU power as you can without compromising the battery/weight and screen size which are much more important for a student.
Compiling Monstrous Size Code
A faster CPU and more RAM will improve compile times and make you less frustrated for sure but unless you’re building huge projects you won’t notice the difference at all and I can assure you won’t be doing those projects in school.
In the unlikely case you encounter a class focused on animation(in 3D). Animation software generally will require a far more powerful computers than the ones shown here. You’re better off reading my article on it.
Coding with Web servers and Databases
For any serious coding though (outside of school work), you will need to run IDEs regularly and database/web servers at the same time. (netbeans, eclipse, VS all take up between 500MB – 1.2 GB RAM alone) .
You should try to get a gaming laptop with a good cooling system because these tasks can run for several hours or even days.
All of the above are very unlikely for a regular computer science student.
So unless you know for sure you’ll be doing any of the above on a constant basis and away from home there’s no need to go further than i5 core and 4-8GB RAM.
It might take a few more seconds to load up and compile a program but that’s no reason to spend much more money, weight and battery life for that alone (higher end CPUs eat up battery life faster).
SDD or HDD
If there’s any money left, get an SSD instead of a HDD, it will speed up your workflow tremendously.
It is extremely crucial for a computer science student.
- Searching through all files to reuse a piece of code will be several times faster with an SSD. It was totally not doable when I tried doing this back then with an HDD when I still developing android apps of the same genre.
- It will also tremendously speed up heavyweight IDEs by loading them much faster. Yeah it’s not a must, but if you have to use large programs such as Microsoft Visual Studio (which you will), you will realize it is such a bliss to have things load up really fast.
There are also other advantages for a programmer to consider:
Regular hard drives can fail when dropped, bumped, moved while running, and when operated within 30 minutes after having been in freezing temperatures (not good in the winter).
Besides being a lot faster, lighter and more reliable, SSDs consume less power too(which translate to longer battery and less fighting for outlets).
Unfotunately, their price is still the main (if not the only) reason why we are still using old school hard drives.
If you decide to buy a laptop with an SSD, don’t worry too much about the capacity. You can always get an external hard drive for your files.
External Hard Drive
In fact an external hard drive does come in handy anyways. You might fall sleep in the library and wake up with your iphone & laptop both gone and start dropping courses the day after.
But if you’ve backed up your projects, files and everything else, you’ll just lose around 1000$ and not the entire semester.
If you do decide to stick with a traditional spinning drive, be sure to get a 7200 RPM drive.
For computer science students, the capacity needed can be very light (a couple of GB at most). So pretty much any storage device will do.
But if you have movies or music that you want to store then you might have to bump the memory to at least 256GB (128GB will be gone pretty fast with Windows 10, Office and IDEs taking most of the space) or again rely on an external hard drive.
As a computer scientist, you shouldn’t worry about graphics unless you plan to game or design games.
In other words, the typical CS student doesn’t have to worry about that unless game development with something like Unity is a must. If that’s the case you generally want something that isn’t integrated, that is a graphics card that’s attached to the CPU (these are much much weaker and struggle with 3D views).
Just remember though a regular CS curriculum does not include 3D modeling/design/animation . If you are planning to do that not only will you need a GPU but a quad core processor of the latest generation (7th or 8th) and as much RAM as you can afford (16-32GB). All these features will make it heavy and bulky in which case you might as well get a much cheaper desktop.
In fact a laptop with an Integrated graphics card has its own advantages:
- They’ll give you longer battery life: they operate more efficiently in exchange of lower quality of images(which you won’t even notice unless you deal with 3D apps) which in turn uses less power.
- It will not tempt you to play a computer games and focus on your work. Your GPA will thank you for it. 🙂
If you end up taking too many digital logic courses(designing/learning complex & physical circuitry) or maybe you want to specialize in this area, you will want a few extra USB ports.
If you want to play around with circuitry and side more towards electrical engineering, you’ll also need Windows.
Most of the IDEs for FPGAs and microcontrollers are only available on Windows as far as I am aware of.
It’s probably also worth getting an external monitor so make sure your laptop has a port for it(most laptops do unless you buy the new MacBook).
Having code on one screen and reference material/documentation/APIs on the other will make complex assignments during your later years much easier to deal with .
Whether a touchscreen is useful or not depends on how you plan to take notes. TouchScreens without a stylus are useless.
Don’t start thinking you’ll be typing notes because there will be way too many diagrams in your courses. Professors do not teach by code most of the time and much worse write the codes on the board for you to type. I personally love taking notes by hands to help me remember the material I just read.
The only situation a touchscreen might be useful for computer science is if you plan to take notes on it by using a digital pen(or a stylus) with a machine like the Surface Pro. The only con you would be having to deal with a small size screen (or tablet) for coding.
It comes down to whether or not the software you’ll use will be compatible with Windows or not.
It also depends on the school. Some schools are Microsoft all the way and believe it or not some schools are Linux all the way. No school will punish you for using Linux instead of Windows or Mac instead of both however.
Not much to say here. Everyone knows everything is supported on windows except open source stuff(about 60%?). However you can always dual-boot Linux with Windows.
As a CS student, you will invariably be required to learn Unix/Linux.
Open source programs are all available in Linux which is why at some point you have to become acquainted with it.
Ideally every CS student should learn Linux but I know that’s not something incoming freshmen are looking forward to.
Just remember they don’t really sell Linux-based computers, so if you want that option, you’ll probably have to buy a Windows computer (or a computer with no OS), and install Linux on it yourself.
Check for compatibility with the manufacturer if not you might run into issues like bricking or heating your computer too much. I’ve written a separate post on how to choose a laptop for Linux you might want to look at.
OSX and Linux work equally well for CS students, so it’s a personal preference. Linux has a steeper learning curve, and OSX is more expensive.
Why is it just as useful?
It’s Linux on disguise: OSX is based on a variant of BSD unix which is accessible under terminal.
It’s very flexible: you’ll get the OS X interface with the ability to drop down to the shell and never or rarely have a problem running any software you need for class.
So you are likely to do fine with either (OSX or Linux).
It’s code friendly: Mac OSX also includes a compiler for C, C++, Python, Objective C. Windows does not.
It’s very popular among CS folks: You’ll notice some of your professors using a Mac during lectures and you’ll see a lot of shinning apples if you try to go to a CS conference.
If you have a choice and you are a freshman, I would say go with whatever you feel comfortable with. Productivity is the best when you know your tools well. Windows, Mac, Linux are all fine as long as you know what you are doing. Of course, if you intend to develop iOS apps, Mac is your only choice.
Just remember the majority of the work done in the department of computer science is done using open source tools. This means Linux, but you can do ok with an Apple or a Windows machine. It can give you more hassle but I’m sure you’ll be happily deal with it if you really love your Windows/Mac machine.
As you can see you do not need a very expensive or a high end laptop with the latest tech available as some may suggest.
You can even do a PhD with any old school laptop if you want as long as you can install linux on it (you can run Linux on a chromebook too by the way).
My recommendation is to get something comfortable for both your eyes and hand. Also portable enough for you to bring it everywhere so you can do some coding on the go.
Sometimes you might not even have time to recharge it, so get a very portable laptop with a long battery life too. A good school will have you on the computer coding for about 4 hours a day away from lectures (homeworks, projects, etc).
Again, nothing you do is going to be super hardware intensive. So if you’re not looking forward to use your laptop for anything else (gaming, 3D design) a cheaper laptop is always a better option.
Some extra features like an SSD and a good screen resolution are almost a must. These will make your workplace area more comfortable and speed up your workflow. Lines of code won’t get written down instantly, an assignment might take you days or hours so try to aim for a comfortable laptop as well.
- i3-i5 Processor
- SSD Any Size
- 13-15’’ inch screen size; 1080p resolution
- Min 4GB RAM , 8GB recommended every application related to computer science.
- 3lb~4lb (lighter the better).
- +6 hours battery life. (8h recommended)