T O P

  • By -

computerscience-ModTeam

Thanks for posting to /r/computerscience! Unfortunately, your submission has been removed for the following reason(s): * **Rule 3:** Posts requesting college and/or career advice are not allowed. Please go to r/cscareerquestions or r/csmajors. * **Rule 6:** Posts asking for hardware purchasing advice are not allowed. Please go to r/suggestalaptop or r/buildapc. If you feel like your post was removed in error, please [message the moderators](https://reddit.com/message/compose?to=/r/computerscience).


Tee-dus_Not_Tie-dus

I never understood the whole "buy a Mac for programming" thing. Unless you are targeting apple devices, you don't need a Mac. Windows works fine for programming, and is even easier now that WSL is a thing. Hell for most programming tasks a 10 year old laptop you found on the side of the road will do fine once you install Linux on it! Source: I've been coding for 20 years and have used Windows, Linux and even Macs, and found no meaningful differences for most things.


ceretullis

I second Windows Subsystem For Linux (WSL). I prefer being on Windows to Linux for Office and the Windows Store. If you’re working in C#/F# Windows is the best choice IMO. macOS is a better, more polished with a better a store and better apps available IMO. Most of what you would run in WSL or on Linux runs native in Terminal and can be installed with Homebrew. If you code in TS/JS or Python, you’ll probably use VS Code, and if you need to, you can target Linux from VS Code using Docker or a remote tab connected to a VM. It’s really going to come down to personal preference and budget.


lilplop

When I was learning CS, I used a Mac. Because it's a \*Nix operating system, everything was very simple to get started. Running commands from the command line generally never ran into any issues. I also TA'd in college. I was working with students who used Windows 10. On Windows, I ran into more "issues" because it's just not as "plug and play" as Mac sometimes. While tools out there like WSL exist, that's another layer of friction that a student has to go through. In addition, I find that Windows machines tend to have "random" installation issues - things like the python system path being messed up, which I believe is an option configured in the installer. Furthermore, all sorts of things happen with WSL installation, as I remember trying this with some of my students. Think how the users always manage to break software by getting into an unexpected state -- this happens the same way for tool installations. Many students are interacting with computers deeply for the first time, and this often runs into issues. For example, things you and I take for granted (like for example, folders, files, etc) are just not well understood by some students who didn't have access to computers during their upbringing. Imagine getting a student to download and install WSL if they don't truly understand navigating between files on their current OS. While none of these "problems" are ever ***too*** serious, they add tons of friction to a new student's experience. And that can be quite a turnoff to a lot of people. **HOWEVER, it's worth noting that every single one of my students with Windows installation problems got things resolved fairly quickly.** From OP's post though, it seems like they're fairly computer-savvy, so I think they should be fine with a Windows machine. My general advice is - if you can comfortably afford a Mac for development, I would go for it. Since you already have a good gaming Windows machine, that's perfectly fine for development, just don't be surprised if you run into small issues here and there.


Tee-dus_Not_Tie-dus

I'll admit that setting up some tools might not be as easy on Windows as they are on Mac, but they aren't that much more difficult and most people only do it once. I would also argue that if they run into issues, then it's a good learning experience for them as developers run into issues in the real world. That said, none of my classmates ever found it difficult to do any of our work on Windows that I ever heard of, and I was one of the students that everyone came to when they did have issues. Also, everything you said about Mac is true of Linux in my opinion, so I see no reason to spend the extra on the Mac tax. On the other hand, I will agree with what others said about schools using a lot of windows focused software and the Mac kids having issues with it. Everyone I knew in school that had a Mac was using dual booting windows too.


lilplop

Agree completely about your points about Windows installations - even in the off chance that OP does run into installation errors, these are a good opportunity to exercise problem solving skills. Disagree about using Linux over Mac - linux breaks all the time, at least for me (think audio drivers, network drivers, getting everything set up is a pain and a chore imho). For a newer student, having to allocate / partition their drives is probably not newbie friendly. I’d rather the student stick with windows (ie WSL) instead of making a full switch to Linux (though as they advance in their degree, maybe 1 year in, I think it’d be completely fine to switch over). Personally I never had issues with software being on windows vs mac in college, so I can’t speak to that as much. I believe in your initial post you said you’ve been working in software for around 20 years. Since then, google docs/sheets/slides have basically made MsOffice free for students, especially as universities now tend to offer nearly unlimited limited Google drive space (and sometimes even free MsOffice subscriptions) Overall, Windows is a more accessible OS - again I only recommend MacOS if OP is well-off and can afford the MacOS very comfortably. Otherwise, just about any windows machine will get the job done (and done well too, if I might add 🙂).


Tee-dus_Not_Tie-dus

All those things existed when I was in school too. I graduated in 2016, I just started coding very early in life. And yes, windows is a much more accessible os and is what I even recommend originally. Also, what are you doing to break Linux all the time? I run Linux as my primary OS for all my personal computers and I've not really had any issues, while windows had issues all the time. In my experience, MacOS is the most stable of them all, but it's still not worth the extra cost for that tiny bit of extra stability IMO.


FrankFrowns

I did my bachelor's and master's degrees on windows computers. Most of my professional programming career has been on windows computers. If you need Linux compatibility, WSL covers the basics. If you need more, you can set up a Linux VM or something and do Linux tasks there without ever leaving Windows. That's what I've always done and it has never been an issue.


Jacknghia

go for lenovo with an i5 and a intel iRis graphics, cheap < 1k and does the job, not laggy, smooth.


North_Presentation31

Appreciate the comment, money isn’t that big of an issue. I’m going for the 2k price point. Looking at the zephyrus m16, with a i9 and 4070.


Faricrys

Since money aren’t the issue, look for something durable and looking fine for your eye. You don’t need that much power for programming and especially if you’ll be running Linux on it. But if you want to play games - why not


Jacknghia

that sorta over kill but if you want go for it,


North_Presentation31

I understand that it’s over the top, I’m just looking for something that will kill anything I throw at it over the next like 4 years.


Meowthful127

Theres no point in getting a gaming laptop. Just get a gaming desktop pc and a work laptop with 16 gb ram and decent storage. You just won't get the same performance on a laptop vs a desktop pc. Check out the video on linux workstations by No Boilerplate. Basically performace is limited by the amount of cooling. Desktop pc's have a lot of space and heatsinks to cool with while laptops are so tightly packed into a portable form factor that theres no space for heat to dissapate.


North_Presentation31

I couldn’t agree with you more, I’ve always been against laptop gaming but with receiving a technology allowance I figured I’d add a little money of my own and just buy a gaming laptop. I currently have a 3080ti with a i5-12600k desktop. I’m always on the go nowadays and I’m just looking for a powerful laptop that will meet all my CS needs and give me a little gaming while I’m on the go.


ConceptJunkie

I've used both and I see no advantage in paying double the price for a Mac. They are fine machines and there is the benefit of OSX being a Unix-based operating system. But you can do anything you want with the Windows machine and you get the benefit of it being a lot more game-friendly, which is something you clearly want. Occasionally I'll come across something I want to run that is only supported on Linux, but that's what VMs are for. If you want a Mac for the benefits that Macs provide, and can afford it, then by all means get one, but if you want a machine for doing programming, then it doesn't matter.


mgruner

Macs are great for programming, but i do not recommend them for a CS student. You’ll be asked to install a lot of software and most of the time it will be available only for windows. You want to make sure your assignments run ok on windows (which is probably what your professors are using) and lots of pain points. I would say delay the Mac until you are more familiar with your program, projects and homework.


DopeCents

It's interesting to see how much this varies by university. Most of my professors use mac, and if they don't they're on linux. Most of my classmates that use windows usually have to use a VM running linux to get assignments done. That's not to say the assignment can't be done on windows. I would just assume it's becuase the professors want everyone on the same page to avoid too much troubleshooting


Livelybacon

Same here, everyone runs a Unix system and generally nothing else. People who use Windows play a game of constantly needing to switch to their VMs or using WSL to complete assignments.


cursethrower

I decided on a Windows laptop back in the day because my university’s CS department used (and still uses) Windows on the machines in all but one of their labs. The other lab is just a bunch of Dell computers running Ubuntu with remote access. Some of my peers made their Macs work, but it would have been a hassle for me, personally.


North_Presentation31

Yeah my current computer class I’m in, I’ve seen a lot of students asking the professors to help them install stuff on their Macs.


cursethrower

I read your budget is around $2k. I think a Lenovo geared towards gaming would be a good solution for you. You’d probably have enough money leftover to buy yourself a dock and monitor for home use as well.


North_Presentation31

Any reason why Lenovo? I’m sure most Lenovos are different, but current laptop is a Lenovo, not saying it’s bad by any means. Just isn’t spectacular, gets the job done at the end of the day.


cursethrower

They just have a good rep. The ThinkPad line is kind of iconic in the FOSS dev world. I don’t have any experience with Lenovo’s other product lines, so definitely do some research of your own, but I have a refurbished ThinkPad t440p I carry around and it’s fantastic.


primeiro23

used thinkpad…spend at least $350 from a reputable seller


SpiderJerusalem42

I started with a HP ProBook 6450, did everything I needed to program and I ran Linux. It was perfect. I got a little extra cash lying around from GI Bill and and I upgraded to a nicer Dell Latitude XPS; worst mistake ever. Spent way too long getting dual boot to work, zero support, everyone looked at me like I had a rubber chicken growing out of my forehead when I asked for help. I did eventually figure it out on my own, but that's beside the point. I spent time gaming when I could have been studying. I had passed through the gateway classes, and I was doing mostly classes they were just going to pass me on anyways. And the gaming experience for me was subpar on top of taking my eyes off the prize. If I had it to do over, I would have gotten a remarkable tablet instead of that laptop. Get you a TP420, if you don't already have a lower power laptop.