TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Thoughts on Unix vs Windows

13 pointsby gsharmover 13 years ago
I'm a .NET developer of 8 years and am walking away from opportunities paying $1000/day at the moment, with plans to move away to Unix for my own products later this year, because deep down I feel increasingly uncomfortable with Windows, although I can't pin down exactly why.<p>Any comments/corrections welcome on my below attempt to understand differences based on my limited experience. I especially welcome any thoughts in areas where Windows is perceived stronger as a server-side operating system, because I can't think of any. Are there any startups here building on Windows Server? I know this shouldn't be a big deal, but I can't shake off the feeling that it is.<p><pre><code> Flexibility (Unix +1) Unix can be installed on more types of computers In future, this could be something as small as a watch large as a supercomputer sophisticated as a robot innovative as a new CPU Scalability (Unix +1) Managing 100 servers would be easy using Unix Can SSH into systems quickly via terminal Could even automate this process As it's completely text-driven kludgy using Windows would require using remote desktop is automating from outside even possible? Aims (Unix +1) Linux Benefits everyone involved Windows To increase shareholder value for Microsoft Accessibility (Unix +1) Windows is closed system Have to fit solution around OS Linux is an open system Can fit OS around solution People (Unix +1) Most people working on Windows Server do it primarily for the money Windows people can usually not comfortable with Unix Use Windows because they have to/told to Unix do it primarily because they want to Unix people can usually comfortable with either And choose to use Unix Notebook/Desktop Hardware (Unix +1) Windows Decent hardware (ThinkPad/Dell) and client OS experience (Windows 7) Can target .NET or JVM with this Ideal for targetting Windows Server Not ideal for Unix (no native terminal) This is not acceptable (restricts freedom to target other systems) Can use cygwin but this is a 2nd class option Unix Best designed hardware and client OS experience (Apple) In my experience better designed than any Windows options Can target JVM with this Ideal for targetting Unix (tabbed terminal/shell built-in) Cannot target Windows This is acceptable (does not restrict freedom to target other systems) Dependency (Unix +1) If Microsoft goes down Entire server stack will be left unsupported and frozen Expensive migration to Unix or other platform All invested time goes to waste If Unix ecosystem goes down Impossible situation There will always be a Unix ecosystem Has already exist around 50 years Timelessness (Unix +1) Skills learned 20 years on Unix are still relevant today Not the case for Windows! 10 years from now Windows will likely require learning of many new things Windows 2008 is very different from Windows NT Unix will operate with knowledge of most of the same things Linux of 2012 command line identical to Linux 2002 one Philosophy (Unix +1) Unix design's openness lends itself to socratic method Every decision can be defended/attacked Encourages thinking about what is going on Strengthens understanding Windows design's closedness lends to closed thinking Design decisions unknown/private mostly Discourages thinking about what is going on Weakens understanding</code></pre>

7 comments

awfabian2over 13 years ago
I think one of the problems with Windows is monoculture. One of the great UNIX ideals is 'reject all claims of the one true way.' Microsoft always advocates the one true way--Windows, Visual Studio. Everything Microsoft. But because no-one-true-way is built into UNIX's philosophy, it becomes whatever people want. You want minimal? You can use small command line tools. Reject minimalism? Use perl and emacs. UNIX is the Borg. Apple can spruce it up into a consumer operating system. Linux can go every direction at once and not collapse, and OpenBSD can go fanatical about security.<p>I think, ultimately, openness, and no One True Way make UNIX evolve and survive. Whatever ultimately supplants UNIX, it's a lesson worth remembering and applying everywhere. Even when the One True Way is grafted onto UNIX (i.e., Apple with OS X), the Way of UNIX makes it possible, and ensures that it will survive over whatever temporary One True Way appeared superimposed on it.
CyberFonicover 13 years ago
I pretty much agree with much of what you wrote. But feel compelled to point out a couple of things.<p>Unix was initially widely used on DEC computers - PDP 16 bit and then VAX for 32 bit versions. DEC management were less than impressed so they scrambled to improve on Unix and released VMS. The key designer of VMS was lured by Microsoft and thus NT came about. Once you strip away the GUI, a lot of Windows server is quite a bit like Unix.<p>In the world of heavy duty servers, Unix and its many derivatives were there first - by a long shot. The key players were Sun - Solaris / SunOS, IBM with AIX and HP with HP/UX. More recently IBM have been building super-clusters using Plan9 which is a descendent from Unix and created by same guys. The increasing performance of x86 multi-core CPUs and the freedoms of GNU/Linux effectively negated the early advantages of the proprietary Unix based systems and that is the core reason for their decline, not any competitiveness from Windows server.<p>Windows Server won a lot of support because it was <i>easier</i> to click around on a GUI than to remember commands. Of course, the real Windows gurus use command line stuff and scripts. But they are the minority when it comes to Windows sysadmins.<p>The vast majority of big systems, think Google, Amazon, et al. use Linux systems.<p>Now for a fun fact. Back in the 1980s, when Microsoft only had MSDOS, they actually licensed Unix from AT&#38;T and sold it as Xenix. Once Windows gained a foothold, they sold Xenix to Santa Cruz Operation (SCO) who marketed it quite vigorously through the later 1980s and 1990s. A lot of office servers ran Xenix on IBM PC/AT hardware - some tricked out with larger disks and extra memory cards.<p>You have to wonder how things would have panned out had Microsoft kept Xenix and wrapped their Windows GUI around it. That same strategy worked out pretty well for Apple with OS-X which is Mach/BSD at the core with a very nice GUI on top.
latchover 13 years ago
For me, the benefit of abandoning (or, at least, not focusing on) Windows, is that you aren't constrained in terms of tools and toys. Things like memcached, varnish, nginx, redis, mongodb, node, (etc, etc, etc) either only work on NIX, work considerably better on NIX, or come out much earlier for NIX. Microsoft and its [mostly commercial] partners are significantly out-paced/innovated by the OSS world.<p>I don't want to go over each of your points, but I think some of them are silly. Abandon Windows because "if Microsof goes down"..come on. Or, talking about the open philosophy of Unix, and then lumping Apple into Unix on hardware? Apple != Unix.<p>For your product, you should pick the solution that makes sense. And there might be more than one. Cost should probably be a factor, so should funness.<p>Do what feels right, learn from mistake, iterate.
评论 #3602402 未加载
dromeyover 13 years ago
GPL is essential when you are hacking your own stuff because the last thing you want is for someone to take what you've done, improve it, sell it and then close it off...and Linux is GPL. BTW, GNU stands for GNU is Not Unix, which comes from the fact they had to rewrite AT&#38;T's Unix utilities from scratch.<p>Windows is great for earning money precisely because it is so deeply flawed and requires so much support. It's an endless money pit for the people deploying it, and a guarantee of lifetime employment for you. I've hacked on systems like Windows that were closed source and unfree, and it was not rewarding except in money terms.
userulluipesteover 13 years ago
I've asked myself a similar question - what perspective do I have with Windows? Is my experience with Windows technology useless in the long term? ...then I found the rising ReactOS! I'm curious which of those listed points will still stand in Unix vs ReactOS. If you'll wait a little (because we are talking about the long term here), I think all that Windows experience of yours will be in a great demand! That if you are willing to get involved in it like you would in any Unix FOSS thing and not just taking it as you would take Windows, of course.
teycabout 13 years ago
Most startups running unix use Java on the server-side anyway. Unless you are prepared to learn about tuning JVMs and learning its idiosyncracies, you could choose to pay the MS tax and use the CLR.<p>The other option is to go with a dynamic language like Ruby and follow along the same path as Twitter did, where they slowly replaced Ruby components with JVM ones.
batistaover 13 years ago
I'm a Unix guy myself, but I'm not particularly convinced with the "unix is god" listing below. Let's see:<p><i>Unix can be installed on more types of computers</i><p>Sure, but does it matter to YOU and what you plan to build? If yes, fine, if not, then the flexibility doesn't matter.<p><i>Managing 100 servers would be easy using Unix</i><p>It's easier than Windows, true. Enabling some services is easier on Windows on the other hand.<p><i>Accessibility (Unix +1)</i><p>Actually Windows wins in accessibility. Exactly because it's a closed system, and a single entity can design a coherent UI and accessibility experience. OS X even more so. Anyway, the majority of users with accessibility issues (impairments etc), use Windows FWIW, and there is tons of specific software available for it as well as devices.<p><i>Most people working on Windows Server do it primarily for the money</i><p>I don't think so. I've known many Windows admins, and they either don't like unix or like windows better. It's only unix admins forced to administer windows that only do it for the money.<p><i>Notebook/Desktop Hardware (Unix +1) Not ideal for Unix (no native terminal) This is not acceptable (restricts freedom to target other systems) Can use cygwin but this is a 2nd class option</i><p>You can always use a Virtual Machine to developer for Unix on Windows. Some people even do it to developer for unix on unix itself (it isolates every development system, has snapshots, you can pass it around, etc).<p><i>Best designed hardware and client OS experience (Apple)</i><p>While Apple might have the best designed hw/os experience, Windows is the second best. Linux is a third (for example: everything comes with Windows drivers from it's maker, not everything comes with Linux drivers).<p><i>Cannot target Windows</i><p>Actually you can. You can dual boot OS X and Windows. You can also run Windows on a VM inside OS X.<p><i>Dependency (Unix +1) If Microsoft goes down Entire server stack will be left unsupported and frozen</i><p>The "end of the world" is a more plausible scenario. You're grasping at straws here.<p><i>All invested time goes to waste</i><p>How come? Linux/OS X run .NET via the Mono runtime and libs. And there will be tons of third party support for Windows technologies if a company that has the 90% of the desktop share goes down.<p><i>If Unix ecosystem goes down Impossible situation There will always be a Unix ecosystem Has already exist around 50 years</i><p>Actually most of old time Unixes have died or are in the decline. Iris, HP-UX, AIX, Solaris.<p>Linux is an exception (although, technically Linux is not a UNIX, it's close enough). FreeBSD also, but a less widespread one.<p>And after nearly 20 years, Linux haven't got any real traction on the Desktop, over something like 1-2%.<p>A future were we all run mobile devices without a traditional UNIX is entirely possible (e.g iOS, Windows Metro and Android which has a UNIX core but no other resemblance to what we usually call UNIX), and Linux is relegated to obsolete desktop machines and servers (say, in 10 years).<p><i>Timelessness (Unix +1) Skills learned 20 years on Unix are still relevant today</i><p>And half of this is good (some timeless technology) some of it is bad (some stale shit still going strong on UNIX-land).<p><i>Windows Weakens understanding</i><p>Yes, but the upside of this is: "I don't fucn care how it works, I just want to build my stuff on top, it's not my problem".
评论 #3617415 未加载