Friday, February 7, 2014

Which OS is better for programming: Mac or Windows?


Which OS is better for programming: Mac or Windows?
Multiple Responses:
The top three answers in terms of upvotes seem to agree on the following.

From the top answer:
The best software for web development exists on OS X. It is believed that the best developers are on Macs, so they built the best tools on Macs for Macs. Tools such as TextMate and more.

From the 2nd and 3rd most upvoted:
Experience. Many also cite their personal experiences with the machine to be a deciding factor. Several use words such as beautiful, elegant, and pleasant to describe the user experience, and compare this to Windows which is considered to be slow, complex, and unreliable in comparison.

From the 3rd most upvoted:
Unification. Due to Apple license restrictions, Mac OS X is the only platform that allows you to develop for any platform - web, Microsoft Windows (through virtual machine, or a dual boot), iOS, Mac, Unix & Linux. Also, unification in the sense that most common development platforms that run on Mac/Unix/Linux are either available or easy to install on the Mac.

“Both will do well at programming. So really its your own choice.

I have a friend who teaches program and hacking at a college. And he said he would rather use a macbook than a windows running computer.”

“Either should work if you run platform independent languages. If any of your classes will involve Microsoft languages (VB, C#, Visual C++), you can still work on a Mac but you'll want to be able to run Parallels or Boot Camp to have a MS Windows VM available.”

“Personally i prefer to use Linux, though all systems will allow you to program. It all comes down to the compiler or IDE you choose. If learning C# a PC is the way to go because it allows you to access the .NET framework. Whilst i've never owned a Mac (so i can't really comment) I have heard great things about them and have friends who swear by them.

My advice, speak with the IT department at your university and see what they use, this will mean that you wont have any software compatibility issues when you get there (Most support either PC or Mac - Linux may not be that well supported however)”

“Well for java programming, I would use a pc with a good compiler.

However if you are going to study C+ in uni. them it would be better if u got a mac...

This would mean you can make apps and sell them for cash on app store…”

“I think Macs would be great for programming, because you can have the best of both worlds. I don't often recommend this, but you can have both Windows and Mac os X on your Mac. I don't know a whole lot about programming, but I bet the main courses you'll have are based on Windows programming. I know native Mac apps are written in Object C, which is probably a cross platform language? And if you get used to Macs you can better program for Macs if you choose to do so.

I haven't heard of anyone having problems with documents made by Word on the Mac not being read on a Windows computer.

Macs can really do anything that a Windows computer can do and they do it with a lot more style.”

“Macs are great for computer programming, especially because OS X is a Unix operating system. Unixes have been used in computer science classes as paradigms of great programming. They also come with tons of programming tools that you have to individually buy on Windows. So, OS X is a much better programming environment than Windows. Any Unix, be it BSD, Linux, or something else, beats Windows at this. I'd like to know what those other people were recommending because if it was Windows, then don't even pay attention to what they were saying.”

“Macs are better for computer programming than Windows because you actually get a USEFUL Terminal and anything on Linux pretty much will compile straightaway on a Mac (provided you get the freely downloadable Apple developer tools and any dependencies). This goes for any UNIX/POSIX-compliant operating system. No need for silly crap like Xmine, Cygwin or some bloated GUI-ified Windows release with diminished options to get simple open source stuff working. Furthermore, UNIX/Linux/etc is universally accepted as the best development platform, and you can dual boot that anyway. Not that you'd even need to for your likely purposes, since unlike WIndows, OS X allows you to use all the development tools you would use in UNIX and friends.

If it's made in a Mac version of Office, it'll be readable in Office 2007 or even Office 2003 if you don't save as .docx. The only program I've seen any issues with is Powerpoint in Office 2004 if you do something weird that makes your presentation dependent on Quicktime and the Windows machine doesn't have Quicktime. Quite honestly, if you have Office 2008, these days you're more likely to find Windows-made documents that won't work on your machine properly than you are to find the opposite, since Office 2008 added the amazing new feature of TAKING away VBA and any ability to create/use macros from Windows versions of Office. In fact, if you're feeling that antsy about it, you can create a small Windows partition to use Windows Microsoft Office in. Of course, I'd recommend using LaTeX for official-ish documents you make, since you can get those to be far more professional-looking and PDFs are totally platform/reader-independent.

I find that Windows is just for entertainment such as games, whereas I can get actual programming work done efficiently and in a non-backwards way on OS X and Linux. In the computer science lab at my college, Windows is not present on any machine except one, and the only purpose of that computer is to play Eve Online with.

That should cover my opinions on the matter. In short, everything you were told was actually the opposite of what's true.”

“As mentioned, Java programming is the same on almost any platform. Traditionally, Macs lagged way behind Windows as far as Java releases are concerned, but the lag a lot less now (a few months, sometimes less). Macs also are much more Java-friendly.

Non-Java GUI programming is, as mentioned, much different. Honestly, enough tools exist on both platforms to make GUI programming similar in experience, though much different in actual code.

C, C++ both program the same on either platform (again, GUI code will be platform-specific).

A giant plus to Mac programming is that you have access to all the UNIX-type stuff in a way which is a part of the OS, as opposed to on a PC, where it all needs to be added on. I love the Terminal app on OS X - nothing like it on PCs.

Finally, if you're backed by someone with money, the tools on PCs are a bit better than what OS X has to offer, but not substantially.”

No comments:

Post a Comment