Best Laptops for Programming in 2021

Best Laptops for Programming in 2021

in 2020 there were so many damn new laptops that laptop reviewer dave2d received 62 to review that's more than one new laptop every week you've got laptops for every different category high performance gaming video and photo editing you've got super portable laptops you've got super affordable laptops but it seems like there's no programming laptops now why is that well unlike other workflows for programming you don't really need a specific set of specs in fact people were programming just fine 20 years ago but with modern programming languages tooling and workflows there are definitely several things you want to optimize for and at the very least be aware of when you're making your purchase for your laptop this year now i'm not a professional laptop reviewer but i am someone who does programming every single day i've been through the tech industry in san francisco and i've been through several laptops in my own programming career now i do have one major problem with tech reviewers on youtube and that's that most of the time they have not actually stress tested the thing they're using if they're using a laptop they might use it for an hour a day for a week because they just have to review so many different pieces while no doubt those videos are fun to watch you can pretty much figure out what they're going to tell you just by the specs on the box of the computer or piece of hardware no so you've got something like the huawei matebook x pro which i could not find a bad review on when it came out seriously people were saying it's just as good as the macbook pro and the specifications would indicate that too i almost bought this thing but in the end i didn't i just didn't feel good about it i did have a friend who bought it though and his actually completely died within two years so my point is you should just arm yourself with the knowledge and make your best decision rather than just blindly going with what some random tech reviewers said okay with all that said here's the structure of this video first we're going to analyze all the important dimensions of hardware for programmers this includes both internal hardware like cpu gpu ram and storage and also external hardware like the screen the keyboard and the ports we'll then dive into software what are the differences between operating systems and is it okay to get something like chrome or ipad os as a programmer third we'll get down to brass tacks and we'll rank all these factors in hardware and software by order of importance for programmers and finally i'll give you some recommendations for 2021 specifically based on different budgets and price points so why should you spend your time listening to me well i've been a software developer for four years with the majority of that spent working in the tech industry in san francisco since then i've turned into a freelance developer living the laptop lifestyle in other words i've been programming daily for almost half a decade and since my entire life is pretty much on my laptop i understand this stuff pretty well okay let's start with number one hardware cpu gpu ram storage and battery those are just the pieces of hardware on the inside and then we also have screen keyboard and ports on the outside i'm going to simplify each one of these and explain how it's important to programming first the cpu which is like the engine it just kind of makes everything run faster and you're usually going to have multiple cpus these days which means things can run in parallel we call upgrading the size of a core vertical scaling and adding more cores horizontal scaling whether you have more cores or bigger cores it kind of works the same way because your computer splits micro tasks evenly between cores so in terms of performance for the end user whether you have four cores or one really huge core it kind of feels the same for programmers this means things like your compiler and your development server they just work a little bit faster the main difference between more cores and bigger cores for programmers too are you can actually manually split these tasks between cores and this is called concurrency or parallelism you'll also hear these referred to as multi-threaded applications you can do this within your code if you're using a multi-threaded programming language or you can do something called load balancing where you put the same replicated code on four different computers and then you can balance requests coming in between those four this allows you to do something like serve a high volume of traffic from the internet however in practice you're not going to be setting up a scalable web server on your personal computer but rather you're going to be deploying that somewhere like aws or on the cloud most computers are going to have two to four to six cores these days so the number of cores is really not a bottleneck you need to be concerned about ram is also quite important you can't run programs without it this is the active memory board on your computer which is actually physically closer to your cpu than your storage memory and even though things are happening at the speed of light there's so many operations in a short amount of time that that physical distance still matters so every program you're gonna open takes a variable amount of ram people criticize chrome and say it takes so much ram but it's not really chrome that's doing that it's the windows you have open so naturally chrome's going to take a ton of ram if you have 10 youtube tabs open you have some design software open you have notion note taking open yeah of course it's going to take a lot of ram because it can scale up and down depending on what you're requesting it to do this is also why if you write an infinite loop and open it in your browser it can actually crash your real computer now controversially last year i said ram is not that important even though like cpu it makes your development servers your compile times a little bit faster and i stand by that if you're doing programming alone but this doesn't really align with the reality of how people use their computers most people are going to have 20 browser tabs open they're going to be listening to joe rogan on spotify and they might be running development servers for three different services so unless you're being super diligent with closing those windows and quitting those programs then ram could be a pretty big bottleneck for you okay now how about gpu or the graphics card well there's just one specific case where gpus are useful in programming and that is when you're training machine learning models in practice though any built-in gpu on a laptop is not going to be able to do this very efficiently if you have a large data set the good news though is you can download pre-trained models for example gpt2 from the internet so you really don't have to do it on your own machine and if you do need to you can actually rent gpus in the cloud that are way powerful than anything that could go on a laptop i'd only say a gpu upgrade is necessary if you know you're going to be playing games or if you really really really want to do machine learning lastly let's talk about storage while ram is our active storage the hard drive or disk is more like a passive memory that takes longer to read and write actually though it's far from passive because it's also constantly being accessed and it holds everything from your files to your programs you have installed and more now the important part is storage comes in two flavors ssd and hdd ssd is flash memory it's much more expensive and fortunately it's standard in almost all laptops these days and that's a good thing because ssd speeds up pretty much everything from how fast your computer starts to how fast programs are opening and just literally everything so it's really the first thing you want to optimize as for the size of your hard drive that has no effect on performance in fact i usually get the smallest one and it's going to sound weird because it reminds me to keep things clean and keep storing them in the cloud before running out of space because in 2021 you really should be storing everything in the cloud just to be safe in case your laptop dies or something like that okay we've talked about cpu ram gpu and storage and what i want to add finally is the chip and i'm only mentioning this because there's a chip you've certainly heard of recently called the m1 chip that was just added to max so the chip is the brand for your computer that coordinates all these hardware components to work in harmony a better chip can not only make things run faster but it can make your whole machine energy efficient and use less power that's exactly what's happened with the m1 chip which has full stack integration with the apple ecosystem that means it's optimized for mac hardware and mac os specifically so it's pushed mac optimization to a much higher place without raising the price point which is kind of unfair to everyone else releasing laptops right now okay next up we've got the screen which is quite important if you want ultra clear text especially if you're gonna make it small and have a lot on your screen also keep in mind that a lot of programmers like to have second or third monitors just to display more things that can be a terminal a code editor and a browser or it could just be all green text with no syntax highlighting if you really want to look like a hacker and don't care if it makes you work three times slower you'll hear words like knits retina true tone 4k thrown around when it comes to screens but it's really hard to tell how good a screen actually is until you try it out in person personal anecdote here i have a 4k lg monitor and even though it's a better resolution than my macbook pro my macbook pro screen is just so much better still there's less glare the colors are just better and everything is just clearer depending on your work environment the glare thing can also be super important so just keep that in mind keyboard is another one of those intangible things and keep in mind that you probably want backlighting unless you can touch type or type without looking if you can't do that you should really learn if you're going to do programming seriously it's the number one thing that'll speed up your workflow one brand known to have really good keyboards is lenovo and until recently apple had infamously bad butterfly keyboards but fortunately they've fixed that with the recent models starting i believe in 2019 and on now for ports definitely don't overlook this macbooks are only going to have usb c ports so keep that in mind you're going to need an adapter or a converter to use a lot of your peripherals and if that bothers you then just be a bit cautious the workaround i use is an external monitor that connects and charges my laptop just with a single usbc and then i can actually plug all the peripherals i want into my monitor so it's a really streamlined solution as for pcs they're going to have a variable number of usb a and c ports as well as probably an hdmi port in other words you're not gonna have to worry okay now let's talk software specifically operating system operating system is very important for one reason among others and that's something called portability no it's not the size of your laptop but it's the portability of the software that you create and use porting basically means moving your code from one machine to another this could be your machine to your co-workers machine or your machine to wherever you're deploying that app to avoid issues generally you want to be on the same operating system or the same family of operating systems as anywhere you're going to be porting your code to for this reason operating system is really a place you want to be fitting in rather than standing out so i really would not take any risks with chrome os or ipad os here it's tempting to say just go for unix which is the operating system family of both mac and linux and if you're not aware the majority of cloud servers out there are running linux if you're a csharp.net or powershell user you're definitely going to be on windows now there is something brand new this year windows can finally do swift development this is the programming language used to create ios apps and for the longest time it was mac only but as of mid to late 2020 windows can now do swift development too so the playing field is even for mobile app developers now and with this additional factor i don't think it's as clear-cut that you should go with mac in fact i think it's pretty much a tie and yes maybe i'm saying that just a bit so the windows people don't come after me also let's just be honest if you're a windows user you probably like windows and you don't want to switch and that's totally okay people are pretty emotional about this stuff and that's why the last time i made this video is actually my most downvoted ever trying to be a bit more fair this time lastly regarding operating systems we can't discount that lifestyle factor again i really hope you're doing other things than just programming in your life and for that reason you want to consider other things when you're buying that laptop if you also do design on the side it's probably worth it to have a mac so you can use sketch premiere pro software usually runs faster on pc if that's your choice for video editing and if you're a gamer you're 100 gonna want to be on pc or if you're a masochist and you like simple things to be difficult you're going to want to go with linux okay now all these factors we just went over let's get into ranking them in terms of importance and your ranking may vary depending on your specific needs so the number one is software you want to be buying these specific software for your use case and also for your preferences you're just going to be more comfortable with what you're used to using but i will just say that at the tech company i worked at 90 to 95 percent of people were using max and the unix os so don't shoot yourself in the foot by being too married to one os i actually had a viewer message me saying he wanted to work at uber but if they used max it would be a deal breaker for him which seems pretty dumb okay second most important is a tie between upgrading to ssd from hdd because it's just gonna make everything faster as well as reliability you just don't want things to die on you unexpectedly especially if you have a deadline without these things you're really handicapping your own workflow so these are two places i really would not try to cut corners on okay number three is ram specifically getting your ram up to at least eight gigabytes and there's a few reasons for that first the multitasking thing i mentioned earlier and secondly ram is not actually that expensive in this day and age so it's probably the first upgrade you should go for after the ssd fourth is gonna be screen and keyboard be kind to your eyes go for the clarity of text and keyboard is gonna be up to your personal preference but the new mac keyboards and the lenovo keyboards are highly recommended the old butterfly keyboard on the max from i believe 2014 to 2018 i didn't think it was that bad until i got a key stuck on mine and let me just tell you that is incredibly annoying okay fifth slash optional is gonna be your battery life and your portability we didn't talk about battery too much because in practice most people are gonna stay plugged in most of the time however if you're going to meetings other people's desks or working around your house it's annoying to constantly keep having to plug your computer in batteries are getting pretty good across the pc lineup with performances ranging just around a plus or minus five hours in the pc lineups but i will mention again that with the m1 chip mac batteries are now just so insane it's kind of crazy now in dead last we're gonna have the gpu which unless you're a gamer or really really want to train those machine learning models locally which i don't know why you would you really don't need this at all okay now that is a really long-winded way of kind of just explaining laptops in general as well as how they relate to programmers so now let's get into my specific recommendations for three different price point and budget first we've got the acer swift 3

.

this is a windows laptop that comes in at only 7.05 it's got a really good ips display with an interesting a little bit more square screen most importantly too it's got 8 gigabytes of ram and a ssd for this pretty good price point next up we've got the dell inspiron 17 which is pretty great because for only 800 it comes with 16 gigabytes of ram so ram is definitely not going to be an issue with this one interestingly this one has both an ssd and an hdd so you kind of get the benefits of the cheaper additional storage whereas your frequently accessed files are going to be stored in the ssd that's kind of interesting i'm recommending this one because it's 17 inches so if you really want that screen real estate then this is one you might consider and of course these first two are both running windows next up going to the around thousand dollar range we have the macbook air 2020 which comes with that m1 chip that makes things super fast this comes with eight gigabytes of ram and 512 megabytes of ssd storage and at one thousand dollars the price to performance ratio is pretty much blowing everything else out of the water right now there's actually 256 gigabytes in the base model so not too much storage but like i said you should probably be storing most stuff in the cloud anyway for size and weight you've got insane battery life especially because of that m1 ship you get the unix operating system which is the go-to with most california tech companies and mac screens are some of the absolute best in the business also the new keyboards are buttery smooth now for a pc alternative at this price point the lenovo thinkpad x1 carbon is pretty sleek solid and well reviewed the standout features here are that tactile lenovo keyboard and the insane battery life of up to 18 hours there's also like i said a really sleek form factor here but other than that you just get the eight gigabytes of ram and the 256 gigabyte of hard storage so if you've got around a thousand to spend those are my two recommendations for both mac and pc the macbook air and the lenovo x1 but if you have some additional specifications and specific needs outside of programming i can also recommend two laptops at the highest price point if you're a gamer the razer blade is known as one of the best gaming laptops that's still portable it's got a smaller screen and the price is around sixteen hundred dollars but the specs are completely worth it the design is awesome and razer has a bit of a cool culture and cult following for people doing design or creative work on the other hand i would recommend the macbook pro and you can keep speccing this out as much as you want on the high end which is what i did because i was editing a lot of videos now you can make the macbook pro really expensive if you add all the additional features but one thing you want to be aware of is the macbook pros don't yet have the m1 chip and in fact people are saying or rather there are rumors that the m2 chip is going to come out for the macbook pros very soon so if you want to buy a macbook pro for one reason or another it's probably in your best interest to wait just a bit i know you don't want to hear that if you're watching this video anyway everyone that is my exhausted best laptop for programming in 2021 video i just wanted to give you all the information you could possibly need six specific laptop recommendations because i know a lot of people who watch these videos don't actually end up buying a laptop so i wanted you to come away learning something anyway i make tons of videos about programming and starting your programming career and i'm even the founder of a freelance developer bootcamp that takes people from zero to profitable freelance software developer and there's a link for that below if you think that could be interesting okay with all that said good luck choosing your laptop and i will catch you very soon you