Mac V Windows For Computer Science
If money is a factor, you can live happily with the windows ecosystem then get a windows computer, don't stretch your budget for a mediocre mac option when.
Shortcut to find a word on a page mac. I am not either Windows/Mac fanboy or hater. Some of my friends said that most professional programmers tend to use Mac to code, because its UNIX-based, has UNIX command line whatsoever. However, in my programming class, and actually in my school Computer Science Department, nearly 75% my classmates are using Windows. Also, I hardly see my instructors use Mac when do the program. I don't know if they use their Macbook at home or not, but well.
So, is it true that Mac has more advantages comparing to Windows when it comes down to do programming? Or vice versa? If so, then what advantages? It probably just depends on what environment you are using. To me, if I wanted to program in a Linux environment I would just use Linux on my own PC and I wouldn't buy an overpriced Mac for that.
If I wanted to develop for IPhone then perhaps a Mac is the best choice. If I developed for a Windows platform then I would use a Windows machine. Anyway, in general your friend's comment about most professional developers using a Mac is silly and wrong. You should ask him for clarification.
What does he mean? For mobile phone development? For web development? For business apps?
He sounds like a Mac fanboy to me. Unless you're going to be doing IOS or Java development you'll probably want a machine that can run windows. Microsoft has a lot of good development tools that are windows only such as Visual Studio. Most work places have windows machines for the programmers.
Macs have nothing special for development. The main IDE for OSX is Xcode which is laughable compared to Visual Studio.
I'm assuming for school work you're probably using Java or python both which have plenty of IDEs that are on both Mac and Windows. The only real advantage macs have is they can be used for IOS development.
So unless you have an iPhone and want to make some apps I wouldn't get a Mac. I prefer using a PC because I can use more monitors and the hardware is a lot faster. Programming on just a laptop is frustrating. I know people that use Macbook Pros because they want a laptop and like the hardware, but they put windows on them and do most of their development using windows unless they are doing a simple website or something. In my experience with Perl, the general syntax within the language is the same but there was a big difference when referring to directory paths between Linux and Windows. Samsung usb driver for mobile phones. Personally I find programming on Linux to be far more convienant because the OS is built for it.
However if your looking for a mainstream commercial endeavor then Windows is probably the better way to go. In Linux I think people actually prefer command line programs because they can be linked together, but in Windows it's gotta be a flashy GUI. But good luck getting a script to talk to a GUI based program. While I love notepad++, Linux has kwrite built-in which has been acceptable for me at work. Click to expand.No, it's not true. Most developers will use the environment they're targeting. If you're writing code to run under OSX or iOS, you'll use a Mac.
If you're writing Windows code, you'll use Windows. If you're targeting Linux, you might run Linux directly or you might use OSX. The exception are embedded systems. If you're targeting a microcontroller, you're not going to run your development environment on that same microcontroller.
On the other hand, the tools the vendor makes available for that environment will probably dictate what platform you run on your desktop. That also drives platform choice for mobile development; good iOS tools aren't available for Windows, so iOS developers use Macs. The mac terminal uses which is a unix shell. As such if you have certain applications that require unix compile libraries working on a Mac gives you a polished OS with Unix capabilities. In web development Macs have been popular for a long time because web servers generally run Linux and Apache, and you get better compatibility and workflow between development and production servers. The Unix shell has a number of useful built in features such as cURL, SSH, file operations etc.