The summer before my first semester…
I thought about buying the most bad ass laptop of the year with the latest CPU and GPU on it.
If I’m going to take classes about computer hardware and programming paradigms that will at some point, teach me how to write awesome code to make computers better and more efficient, I will need the most powerful machine I can afford right?
Most computer scientists do not do that and even those who do, they do not necessarily need bad-ass hardware for it.
The truth is…
Most computer scientists will only need the performance of the cheapest ChromeBook from wallmart.
I’m not telling you to buy a cheap 150$ ChromeBook (though that might not be such a bad idea. I’ll talk about this later).
I’m just trying to tell you that, unless you’re buying this laptop for gaming, computer power should be the least of your concerns.
The only thing you should be focusing on is…
Picking the laptop that will give you the most productive and comfortable working environment to CODE which is what you’ll be doing, albeit rather sparingly, in every class.
Recommended Specs for Computer Science
If you still doubt you don’t need that much power , check the last section of this post where I explicitly go through the curriculum of the typical computer science program.
You could also ask reddit or quora to corroborate this but they’ll probably be too vague about and say things like “any cheap old laptop will do” which is not entirely wrong…
But you should still be aware of a few things when buying a laptop so you can multitask flawlessly and launch a heavy IDE to write code in split seconds.
CPUs made today are way way too powerful for the average user and for programmers too. The biggest limiting factor for computer scientists is now RAM memory because software and operating systems seem to try to take more and more every year.
4GB: this is fine if you want to write code through Windows 10 S mode/ Chrome OS/ Mac OSX. It’s not enough for Windows 10 Home/Windows 11 and except for XCode on a MacOSX, you won’t get the best experience with IDEs.
8GB: this much is bullet proof for any type of lag with any IDE for any assignment (you can even use heavy IDEs like Eclipse/Android Studio) for WIndows 10 Home or even Windows 11.
16GB-32GB: Not that useful unless you know you’ll be running VMs (Virtual Machines) for software testing (basically if you’re working already). Regardless we both know RAM is upgradeable so you can up RAM later.
Solid State Drive
Can’t stress how important this is.
This is the ultimate piece of hardware for computer science. It will make the heaviest IDE open in a flash and will boot up your machine in split seconds. Luckily, this is available virtually on every modern laptop.
eMMC/HDDs: some budget laptops will have one of these (those below 350$), the former is just as fast as SSDs but doesn’t deliver good performance with Windows 10 Home/Windows 11. The latter is super slow for anything, just useful as an extra storage drive.
As long as you get the 8GB RAM + SSD I recommende, you’ll automatically avoid the worst CPUs for Windows 10:
Celeron, Pentium, MY/Y5/Y3 , AMD A9/A6/A4 and even worse ARM/MediaTek/Atom Chips.
All the above must be avoided if you want to run Windows 10 Home/Windows 11. They’re fine for any other OS (Windows 10 S Mode,Chrome OS) so you’ll find them on laptops under 350$.
Should’ve probably move this one up in the list it can be very important too since you’re going to be staring at this thing everytime you step out of a lecture so why not be kind to your eyeballs? Maybe you won’t graduate with glasses like most of us do.
Resolution: FHD or higher are easier on the eyes and will also let you use split screen or see more chunks of code at a time (important to follow code logic).
Finish: Anti-Glare or a Matte screens are also kinder on the eyes. They’re hard to find on laptops but you can always buy an accessory for it.
Size: Doesn’t really matter that much (if you have +FHD resolutions), obviously the bigger the better but 13” is enough space for most programmers.
You’re not going be typing your eyes out when coding so you just need a decent keyboard so as not to mess up with your workflow (hard to press/not clicky and bouncy). All laptops I’m going to over have decent keyboard (a few will have extremely well designed keyboards) it’s very rare to come across a lousy keyboard though.
Graphics cards? Don’t worry about it, they don’t matter. They’re only useful for parallel programming purposes and you aren’t likely to write code that will need the performance boost of GPUs.
All laptops shown here satisfy each and every requirement we’ve gone over.
The first three are more expensive only because they have a much much better form factor (ultra thin and lightweight) than budget laptops (350-400$).
1. MacBook Air
Best Mac Laptop for Computer Science
Apple M1 Chip
8GB-16GB RAM LPDDR4
Apple M1 GPU
13.3” Retina Display 2560 x 1600
It should not come off as surprising that the M1 MacBook or any other MacBook Air is one of the best, if not the best , laptop for Computer Science.
In fact, The MacBook Air has been a very very popular choice for computer scientists for a really long time now.
In fact, if you ever attend a hackthon or a programming symphonium, you’ve probably noticed that most people attending those events have a MacBook.
For several reasons:
- MacBooks allow you to use the three most popular operating systems on a single machine: OSX, Windows and Linux (I’ll explain how to do this later but here’s a summary).
- OSX (the operating system of Macs) , being a Unix based system, can run Linux packages.
- Compatibility with every piece of software regardless of operating system. Need to install .Net or Visual Studio? It’s only one restart away.
- Natively installed programming languages and IDEs (Java, Python, Xcode). You don’t have to spend hours setting up an IDE and your programming workspace area.
- You can program for Android and Apple devices. Again because you have access to both Operating systems.
Now all of this applies to any MacBook, even those released 10 years ago.
If we talk about the new MacBook Air with the M1 Chip, then you have two more perks:
- The architecture of the M1 Chip has been designed for Machine Learning so it outperforms ALL ultrabooks.
It’s nice to have that M1 Chip and all but it’s kind of overkill. If you are a working computer scientist though , it’s definitely going to come in handy with more parallel processing packages (which may need multiple CPU cores).
Most programmers including computer science students will probably be fine with the CPU found on 350-500$ laptops which is to say you should NOT buy the MacBook Air for the M1 Chip.
What this means is that you can save yourself several hundreds of dollars because YOU have the choice to go for the older versions of the MacBook Air.
If you click this link, you can see they are way way cheaper than the current MacBook Air and of course outrageously more cheaper than the MacBook Pro with the M1 Chip.
Of course, if you can afford the M1 MacBook Air, then all the power to you. You will find it useful after graduation and you can bet your life that it should last you several several years more after you graduate. Also do remember that if you are a student living in the US, you also get some sort of discount if you buy the MacBook Air, so try that before resorting to older models.
Older Models Advice:
For computer science class any of the older models will do even the ones released in 2015.
However, if you want to toy around App development or you want to take an elective course on App development then make sure whatever MacBook Air you pick has at least 8GB of RAM. This is especially required if you want to bootcamp into Windows with your MacBook and launch Android Studio which a real RAM hog.
Also, 8GB RAM is going to be super useful if you want to run Parallels to have Windows and OSX simultaneously. The only instance where you’re goin to need 16GB is if you have to run several several Virtual Machines which is very very unlikely to happen unless you’re in the IT business.
DO NOT PICK models with Core i7/Core i9 CPUs , you do not need CPU power for coding and programming. Don’t worry about the SSD part because virtually all MacBooks even the ones from 2008 have a very very fast SSD.
Display & Design
Another big reason why you should opt for the MacBook Air if you are a student is the form factor and design. This thing is as thin as paper and can weigh as low as 2.2lbs, this is paramount for you to use it anywhere and everywhere you go. I even took it out once while I was standing in the train and was able to write some code standing up. Imagine what you could if you’ve got yourself a seat.
Of course, if you have no battery, it isn’t going to be useful when you’re out of school but all MacBooks have at least 10 hours of battery. The 2015-2017 versions have 13 hours (if battery cycles are low) and the current M1 MacBook Air featured here as 15 hours.
Yet another reason to go for ANY MacBook Air is their keyboards.
This is super super useful if you are a programmer you know you’ll be coding your eyes out all day everyday. If you are a student you may not be coding all the time but you’ll definitely be typing reports and essays at least during the first two years.
What makes this keyboard so different? Well despite being a VERY VERY thin laptop it’s managed to make it’s keyboard extremely responsive and clicky and unlike thicker laptops which have more travel distance you don’t need that much force for the characters to register. They’re also nearly silent. If you go for more recent models (2019-2021) , the backlit feature will adjust brightness according to your surroundings AUTOMATICALLY. Older models can have the backlit brightness adjusted but you have to do it manually.
Another reason to go for the MacBooks is their retina display which isn’t really necessary but it always helps to have more resolution in case you want to have several windows next to each other, perhaps a manual, an IDE to code and a website. More resolution also gives you way more space to follow code logic without having to scroll up and down all the time.
Retina resolution: Now, the retina display resolution is ONLY available on MacBooks made from late 2018 onwards and they’re quite expensive compared to the older models 2015-2017. So you have to make choice here. If you can afford the newest models then get them because the older ones do not even have FHD resolutions.
HD+ resolution: This HD+ resolution isn’t a deal breaker, you’re sitll goign to be able to launch programs, use IDEs to code, etc. In fact, that’s the resolution I use myself as you can see in the picture below.
Now it’s going to be very very diffficult to find older MacBooks with sealed boxes and even if you do they’re going to be just as expensive. So you’re probably looking at refurbished MacBooks if you can’t afford the newest one. However, fear not, the MacBook I use myself is refurbished and I’ve been using for almost four years now and it’s kicking butt plus you also get a 90-day warranty. If you find any faults in it or you just don’t like it, just send it back and get your money. I’ve ordered three of things as gifts and they’re all still working like a champ. The battery is a problem, I have admit it’s nowhere near close to what a brand New MacBook Air would output. I get 8 hours a good idea as opposed to the 13 hours these laptops used to output when unused.
Core i5, Core i7
Intel Iris Xe Graphics
128GB-1TB PCIe NVMe SSD
13” IPS 2880 x 1920
Now if you dislike Apple OR you have 800 bucks and you don’t want refurbished models (bad move imo) , you can still a very lightweight and portable Windows Machine. These portable laptops are actually known as ultrabooks such as : The Dell XPS 13, The Lenovo X-Carbon, the ASUS ZenBook (which we’ll go over soon) and of course the Surface Pro 8.
I’d going to recommend the Surface Pro 8 over all the others though.
Because it’s a 2 in 1 laptop and that’s EXTREMELY useful if you are a student for the following reasons:
- If you buy the stylus, you can use this Surface Pro to take notes for every single one of your classes.
- You can store your entire arsenal of pdf files (from classes, textbooks) put them here and just use this thing to read them. That means you don’t have to bring a textbook anymore.
- You can also take notes on top of the lecture PDF notes you’ll be given.
- You can use software like OneNote to keep everything you write on it neatly organized.
Lastly, you can turn into back into a laptop when you need to code or type reports.
Now don’t be mistaken, just because it can turn into a tablet doesn’t mean it’s not going to be fast.
Surface Pro 8:
It’s just as fast as any ultrabook. In fact, there’s a model witih a dedicated GPU, which isn’t really useful unless you’re a scientist running parallel programming algorithms, but it just goes to show how much power this thing can take.
I would actually recommend you to go for the weakest configuration of the latest Surface Pro 8 both for energy and money saving purposes.
Surface Pro 7 and Older Models:
Now what I said about performance only applies to the latest Surface Pro. If you’re on a budget and you want to buy one of the older models you’re just going to be a bit more careful when picking up one because these have vastly different hardweare configurations. I’ll just summarize the three types of hardware configurations and what they can do for you:
Core M3 Processor/Core i5 w/ 4GB RAM
You’ll find this configuration mostly in the Surface Pro 4 models. This is just fine to run a code editor, an IDE like Visual Studio and that’s pretty much what you need to get through the CS program.
Core i5 Processor 8GB RAM
This more of bullet proof configuration. It’s going to make sure you can multitask with several programs and launch a web browser with several tabs open. You can also run VMs though you’ll be limited to two . This configuration is also good for App development through Android Studio/Eclipse w/ the Android Extentsion.
Core i7 Processor w/ 16GB RAM
This is just unnecessary unless you’re working as a data scientist or you’re in the IT business. If you are a student, it’s just going to eat up more battery and cost you more.
Display & Design
The overall design is obviously very different from any other ultrabook because it can be used as a tablet.
However, that’s not the whole story. The resolution is much higher than any windows ultrabook I’ve heard of (2736×1924 vs 1920 x1080) . It’s got almost twice the resolution of FHD displays which is going to be really useful when you’re working a very long piece of code and you want to pinpoint bad code.
The weight is also unlike any other ultrabook, it’s the lightest of the bench even when you attach the external keyboard, it’s still lighter than a MacBook.
What I just said applies to every model of the Surface Pro not just the latest, they all share and the same resolution.
The keyboard is just as quick and responsive as any ultrabook’s keyboard. The problem with the any of the Surface Devices is that it’s detachable and it doesn’t have the same rock solid grip as the keyboard you use on a laptop. So it’s not ideal to use it on your lap, there’s going to be a lot of tottering. If you put it on a hard surface, it will work just as good as any laptop’s keyboard though.
3. ASUS ZenBook
Best ASUS Laptop For Computer Science
Intel Core i5-1135G7
8GB RAM DDR4
Intel Iris Plus Graphics
512GB PCIe NVMe SSD
13.3” full HD OLED
This is the best Windows alternative to the MacBook Air. Now there are several ultrabooks with Windows on it sure but the ASUS ZenBook is the cheapest out of these.
That doesn’t mean it’s not a good laptop.
Performance wise it’s got almost the same hardware as the Surface Pro 8 and even more storage capacity. If you check at the specs, you’ll also notice it’s got the latest Core i5 CPU (we are still in the 11th generation).
Display & Design
It does not have the same resolution but it’s got a FHD display which is what I recommend as the bare minimum for multitasking. In fact, this is what most gaming laptops and windows laptops above 700$ have. Unless you spend like 2000$ for a 4k resolution display, this is as good as it’s going to get.
As form the form factor, it behaves exactly like the MacBook Air. It’s just as thin and even slightly lighter than the MacBook Air. The keyboard is clicky, bouncy and responsive despite having low travel distance.
The battery, however, is nowhere near the MacBook Air’s. This is really the only downside of the ASUS ZenBook and any Windows Ultrabook for that matter. The reason is that Windows 10 Home and Windows 11 is very very power hungry so it will eat up battery.
Best Dell Laptop For Computer Science
Intel Core i7-1185G7
Intel Iris Xe Graphics
13” full HD 1080p
This is the most expensive laptop on the list, it’s meant to be for those with really long pockets looking for the best of the best Windows laptops for computer science. If you are on a very low budget, please check the last laptop on this list.
This laptop costs about 1700$ so it’s 700$ more expensive than the latest MacBook Air (M1 Chip).
It’s got basically the best hardware on the list. The CPU is actually faster than the M1 Chip you find the MacBook Air and the Core i7 of the Surface Pro 8 (because the Surface Pro 8 has nerfed the clock speed performance to control temperatures). Now we all know CPU speed matters little for computer science, it’s more about RAM and Storage.
Well as for RAM and Storage, you can plainly see it’s got more of both than any laptop on the list.
16GB RAM: isn’t really useful unless you’re a computer scientist doing software testing and you need to run several Virtual Machines for that or a data scientist that needs to test a sizeable amount of data before uploading into a Cloud Service.
However, 16GB RAM can still come in handy if you’re one of those guys with +100 tabs web browsing tabs open, other than that it’s really useless for computer science students.
512GB-1TB SSD: The same can be said about storage, it’s not going be that useful unless you want to install several games on it.
In fact, you can upgrade any laptop to have 16GB and 1TB SSD so that doesn’t really justify the price of this laptop (the upgrades cost about 150$).
What are you paying for this laptop is the display and the design. It’s got a 4k resolution which is even more resolution than the Surface Pro 8 and the newest MacBook Air’s display.
What’s more they fit in a 4k display on a 13” laptop and that’s actually a good thing for computer science students.
You’re basically going to have an insane amount of workspace area (due to the resolution) in a very compact and thin device that behaves as an ultrabook.
Now this laptop is very very expensive and prices may go up when you read this but if you just don’t want to deal with Apple and you’re looking for the best windows laptop this is your only choice as of 2022.
Best Cheap Laptop For Computer Science
Intel Core i3-1115G4
4GB RAM DDR4
Intel UHD Graphics
128GB PCIe NVMe SSD
15” IPS full HD
This is the cheapest laptop for Computer Science.
It doesn’t have a top of the line CPU but again this is just not something to worry about. Programs/packages and your code will compaile just as fast as any higher end CPU, even weaker CPUs will work for this too.
What’s more important here is having an SSD and 8GB RAM. This laptop has the SSD but it does not have 8GB RAM.
That means, if you want to use Windows 10 Home, you’ve got to the upgrade.
This laptop costs 350$ and an additional RAM stick costs about 15$ bucks. I think it’s still a great deal considering that most budget laptops with 8GB RAM cost more than 400$.
Linux/Windows in 10 S Mode:
Now, you don’t necessarily have to the upgrade IF you’re willing to use the operating system this laptop comes by default: Windows 10 S Mode. This nerfed version of Windows will do just fine with 4GB the only issue is that you will not be able to install IDEs like NetBeans, Visual Studio or Eclipse. You’ll just be limited to program on web-like applications.
That’s probably not a good thing if you’re a CS student so the other solution would be to install Linux on this thing. Once you do, you’ll be able to install millions of programs available on the web including most of the most popular games. It will act basically as a full blown version of Windows WITH the advantege of having an UNIX system which just works better for programming languages and installing packages (basically like a MacBook Air).
Now I don’t have a tutorial to install Linux on it but I’m working on that. You can use this link in the meantime.
In this section we’ll go over the typical curriculum of the CS Program and the software used. Hopefully that will give you some kind of reassurance when picking up any of the laptops we’ve recommended or when you buy a laptop on your own.
We’ll also go over every hardware spec and how they influence performance for programming and computer science classes in more detail.
The Computer Science Program
Go to your department’s website and check if they have anything to say about laptops. They might outline the recommended specifications when you buy a laptop or they may also have very good laptop deals.
Some departments will have tutorials on how to install Linux on a system, how to install BootCamp on Mac,etc.
They might even have full blown linux systems for sale.
You don’t have to code in every class and most classes aren’t even about programming or writing code. They have a focus on math and algorithm principles way more than coding. So you are not required to bring a laptop for the vast majority of classes but students do anyway for note taking purposes.
Drawings: If we talk about computer science theory and math, there’s going to be a lot of drawings and graphs so you will also have to rely on a good old fashioned notebook for note taking (one of the reason why I recommended the Surface Pro 8).
Quizzes/Exams: No single quiz/exam I’ve had required me to bring a laptop and type some code on it. Virtually all quizzes still require pen and paper and the same can be said about exams.
Core-Electives: There will be one or two electives that will require you to bring a laptop, that’s about it. All the coding/programming you do it’s always going to happen at home.
Labs: You’ll have to complete an assignment each time you step into the lab, you will need a computer to do this and labs are full of computers. You don’t need to bring a laptop here. You will need a laptop when you can’t complete the lab within lab time.
Q: Why are not laptops required in class? It’s a computer science program!!!
For the simple reason that most people are more likely to use FaceBook than paying attention to class. Besides, like I said, most classes involve a lot of math rather than coding. If there’s any coding, that’s for your assignments so you’ll only need to use a laptop away from lectures.
Assignments: These assignments aren’t actually any computive intensive either. You’re not going to be compiling the next MS Office, FireFox or Windows so whatever you’ll code will compile in less than one second even on a computer made in 1998.
Most computer science students only need to install a VIM/EMAC which is another word for code editor. There isn’t really any specific software that it’s not going to be compatible with the OS you choose.
For the sake of completeness, let’s go over all the classes that will require you to use a software in the typical computer science program:
|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|
So you see out of the 32 classes you’ll have to pass , only about 6 (taking out the elective) will require you to program or write some code.
IDE: And there’s not even a software that’s required for you to install. All of these are just programming languages which means you just need to type code in the IDE of your choice. Now, some professors can be very picky about IDEs. For example, you could be using C++ and yours will have use Eclipse for it. That’s fine though all IDEs aren’t really hardware demanding.
Good news is that after a few semesters down the road, the choice of IDE/programming language will be entirely yours so you’ll have the freedom to choose any language for your assignments.
Projects: The only time you’ll need to use a very powerful computer is if you want to work on a project that uses animation software (like Unity) OR you want to run data analysis on a comptuer. These projects are never a requirement though they’re optional for instance if you talk to a professor and ask to do research with him or you want your senior project to be on either of these topics. That would be during your fourth year and even then you do not need to buy a very powerful machine right now because you can use computer labs at school or access them remotely for that.
Remote access is like using AnyDesk or TeamViewer to fix your dad’s computer remotely.
You can remotely access those powerful computers at your school from the comfort of your room. So you can run any software that can’t run on your laptop.
ChromeBook + Remote Access
This is one of the reason why ChromeBooks are a good choice.
If you are willing to install Linux because that will turn them into the ultimate programming/coding environment where you can have access to hundreds of IDEs including Eclipse and Android Studio. You’ll also be able to run ANY type of heavy software (for those 1 or 2 electives).
Recommended Specs for Computer Science
If you don’t want to use a cheap old laptop with Linux on it, you ought be very careful when shopping for laptops if you are on a budget.
If your budget is anywhere above 600$, you can pretty much buy whatever laptop you’d like because all of them have a modern CPU and enough RAM to run Windows 10 and Windows 11 Home with no issues along dozens of the most heavy IDEs.
If that isn’t the case, please pay close attention to what’s coming next.
Now I’ve reapeated myself probably like 50 times now: IDEs are the only software you need to consider when shopping for laptops.
IDEs ONLY run on full blown operating systems. That means Mac OSX, Linux and Windows 10/Windows 11 Home
That means you can’t use Chrome OS/Windows 10 in S Mode.
If you’re willing to use MAC OSX or Linux, you don’t have to worry about hardware though because these operating systems do not consume a lot of resources so IDEs will have plenty of resources left to run at full speeds.
So everything I’m going to say next only applies to those who want to use Windows 10/Windows 11. Visual Studio works best on Windows 10/11 so this is justified.
You do not need a fast processor to run IDEs or to run Windows 10/11, you just need a “modern” processor that’s been designed for laptops.
Wait? Aren’t all processors designed for laptops?
Well yes but some found their way to laptops from tablets. In other words, these processors were originally designed for tablets and they work fine for Linux/Windows 10 in S mode but NOT for the full version of Windows.
You will only see these processors if you’re budget is below 350$.
Celeron, Pentium, MediaTek, Atom, Intel Core with a Y and M letter somewhere. Any AMD CPU that doesn’t have the word Ryzen in it
All the above are slow CPUs and actually very outdated too.
8th-12th Core i3 or any AMD Ryzen 3 CPU.
Strongly Recommended CPU:
8th-12th Core i5 and any AMD Ryzen 5 CPU. You don’t have to for CPUs with the H letter on it, G or U CPUs will do here. Ex: Core i5 10100U. Not Core i5 11300H.
If you get any of these CPUs, you should be able to:
- Run Android/iOS IDEs and emulate app on your laptop
- Connect to Web Servers to run time-consuming code
- Compile extremely large pieces of codes (~1000 lines) w/ zero issues
OverKill CPU: Core i7/Ryzen 7
Any Core i7/Ryzen 7 CPU from any generation should be avoid. They’re simply overkill for coding and you should only get one of these IF they come by default with laptops that have other good attributes(like the 4k display resolution of the Dell XPS 13 or the dGPUs of some gaming laptops, if you want to game of course).
Sure they’ll load up and compile a very heavy programs a few seconds faster but that’s that’s no reason to spend so much money, compromise weight and battery life (faster CPUs consume a lot of energy).
This is just as important as CPU, get the wrong amount of memory and your computer will still run slow no matter how fast your CPU is.
Again I’m only talking about Windows 10 Home or Windows 11. All other operating systems should run fast with whatever RAM they come with.
4GB: This is what you’ll find on budget laptops under 350$. They’re fine for Chrome OS, Windows 10 in S Mode, Mac OSX and Linux but a full version of Windows will take up most of it leaving you almost no memory left for an IDE (which is quite heavy).
8GB: Perfect amount for a full version of Windows (Win 10 or Win11). Windows will take up ~3.1GB and you’ll have ~5GB for an IDE and other programs left. IDEs take up anywhere from 0.5GB to 2GB: NetBeans, Eclipse, Visual Studio. Also enough to run an App development environment with an emulator.
16GB: Only useful for very animation software which 99% of CS people don’t work on. Mostly for optional projects.
Solid State Drives
If you’ve got a budget under 350$, you may come across two types of storage devices: HDDs and SSDs.
HDDs are the old fashioned hard drives everyone used 10 years ago they are now obselete and they’ve been replaced by Solid State Drives which are x5-x17 faster at reading/writing data.
So Solid State Drives are exactly what you want because they’ll speed up your workflow by:
- Booting up Windows in a flash
- Finding a piece of across the entire drive will also happen in a flash
- Speed up the launch of heavy IDEs (Eclipse took 1 min to load w/ an HDD for me)
- Consuming more power therefore giving you more battery juice
The problem with these Solid State Drives is that you’ll get low storage compared to HDDs.
But that’s not really a problem unless you want to install AAA games. While it’s true that IDEs can take up 20GB on average and Windows 50GB, you’ll only be filling out 50% of the capacity of the most common SSD which has 128GB.
Tottally unnecessary unless…
You want to work on game development. If you do, then you will probably run something like Unity which required you to have a decent mid-range GPU if you want to really dig into the software.
School: the typical CS curriculum does not include any class that requires you to use a dediacted GPU: 3D modeling/animation,etc. You will only need one IF you plan to separately study those subjects by taking elective courses if that’s the case then you want a good gaming laptop.
These are the graphics cards that come by default on laptops under 700$ (basically laptops w/o a GPU for gaming).
Even if you have the cash, I’d advice you against dedicated GPUs (found on gaming laptops):
- You’ll get out more battery life out of integrated GPUs (~8h vs 2h).
- You will not be tempted to play games. Your GPA will thank you for it.
This is just as important as hardware. If you have a high budget, then a lot of it should specifically be reserved for the display.
After your first year, you’ll be staring at the screen for hours trying to figure out how to write a piece of code or what’s wrong with what you wrote. The more screen space you have the greater the amount of code you’ll be able to see at a time and the easier it’ll be to follow code logic OR to pinpoint any errors.
Now, you don’t necessarily need a 17” laptop to have good space.
Resolution can do a good job increasing the amount of space available by reducing the size of letters and icons and basically the entire Windows Interface. The more resolution you have the more pixels you’ll have and the greater and more detailed small objects will be.
1377 x 768 (HD): Not good for coding. This is too wide which means you’ll see a lot of whitespace at the end of code. Long lines of code are difficult to work with because you don’t get a lot of vertical viewing. Hence, you’ll be scrolling up and down all the time to see code logic.
1600 × 900(HD+): This is much better and much more common on budget laptops. However, it’s still somewhat innefficient when you’re trying to follow code structure and you’re just getting started it’s going to make understanding your own code a bit more difficult.
1920x 1080(FHD): I recommend having at least this much resolution. This is going to give you tons of space and you’ll probably even end up having a lot of free space (code structures at the undergraduate level do not have more than 100 lines).
2k and 4k resolution: Found on MacBooks and premium ultrabooks, they’re obviously better for coding but if your code is limited to a few dozens of lines it’s not going to be a game changer. You will have more space for documentation to by right next to it though.
Obviously all students should aim for something ultralightweight but that’s not easy to find on a budget.
Under 3lb: This is the ideal weight but unfortunately only available on premium ultrabooks (700-100$). You could also get this much weight from an 11 inch laptop which costs under 350$ but you’d have to sacrifice screen space and power.
Under 3.5lb: This is still light and thin enough however it’s only available on ultrabooks that have a little more power (which makes them even more expensive).
Under 4.0lb: Not so lightweight but far better than all 5lb laptops you’ll encounter in the 350-600$ price range. Likewise, only very powerful premium laptops have this much weight (MacBook Pro). However, there are still very very few budget laptops (350-500$) that will have much this much weight so this is what you want to look for if you have that much money.
I’m not going to talk about how important battery life is instead I will tell you what you need to know to get the longest battery lives on laptops:
- Premium Windows Ultrabooks have about 10-13 hours.
- Apple MacBook Airs will have about 15 hours.
- Budget windows laptops under 350$ that are 11 inch in size will have about 8 hours
- Budget windows laptops 350$-600$ will have only 6-8 hours.
- All ChromeBooks will give you +10 hours of battery
- Gaming Laptops will only give you 2-3 hours at the most
If you want to have enough juice for a full school day, you want at least 6 hours. You don’t need to worry about getting that much if you can get yourself an ultrabook (700-100$) but if you’re on a budget not every tip I outlined is 100% bullet proof. So look for:
- CPU: weaker CPUs will consume energy. You want Core i3 or Ryzen 3 and not anything weaker though.
- SSD: All laptops have SSDs if yours somehow doesn’t it’ll eat up more energy.
- Display: the lower the resolution the more battery you’ll get. You don’t want to sacrifice FHD resolutions for it though.
We are done with computer hardware advice. Now let’s talk about a very different topic:
It is more than likely that you can choose the Operating System of your liking. No school I’ve heard of will require students to use an operating system.
Before you make that choice keep these things in mind:
Everyone one knows every well known software is supported on Windows . However, the open source stuff is not(60% of it is only available on UNIX systems – Linux/OSX). This is not a problem if you buy a windows laptop though, you can still have access to open source packages by installing Linux on yours (without replacing Windows – also called DualBoot).
Every computer scientist will at some point install Linux on a system (even if they buy a Mac) because open source programs have all been made to run on Linux.
So if you’re a student, it’s always best to get to know Linux early on. I know that’s something you’re not looking forward to especially if you’ve been using Windows all your life but like I said you don’t have to delete Windows, you can install Linux and have both on the same system.
I have written a separate post on how to install Linux and fix all the compatibility issues that may arise.
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.
My Advice: Linux, OSX or Windows 11
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.