Hacker News new | ask | show | jobs
by kweinber 4116 days ago
I recently switched from a 15" macbook to a lenovo windows 8.1 laptop after 10 years of mac/linux for my daily driver.

I live with Windows as the base install and virtualbox linux (arch + ubuntu).

I am so glad to be free of the Mac... My hardware is upgradeable again, the touchscreen is a real innovation, Excel opens instantaneously and when I want Unix, I use the linux vm, I am not tempted to use the strange halfway house that is the mac unix cli/packaging system with ports/homebrew on its back.

windows 8.1 is a bifurcated experience, but they tried to do something new... it feels like Apple desktop engineers only really do truly new stuff in desktop hardware (smaller, lighter, glue and solder) ... the software is pretty but way behind Gnome, KDE and Windows...

I was the biggest MS hater you could be 10 years ago.... now it is Apple that seems like the bad guy that isn't innovating now...

2 comments

You do know that the "unix cli/packaging system" thing is actual UNIX, right? Like, bona fide, certified UNIX for a while now. Homebrew is just a different package manager than you're used to, but not so different from things like apt or yum once you get to know your way around it.
I'm sorry, but comparing homebrew to apt or yum just incenses me.

Let's begin with the most glaring difference: source distribution vs binary distribution. Installing my GNU Octave takes under a minute with yum or apt but hours or days with homebrew or macports.

Let's also proceed with how none of homebrew, macports or fink is native to Mac OS X, but is some tacked-on thing that most Mac OS X users are unfamiliar with (yeah, most Mac OS X users don't even know that a terminal exists or what to do with it). It does not control the entire OS, but only some packages, which are going to be installed in /usr/local or /opt or /opt/local. And woe betide the users, the same Mac OS X users who just learned that their OS has a command line, if they decide to use more than one of these package managers. Conflicting packages strewn all over their filesystem! Great fun trying to figure out which Python distribution is getting run and which Python packages are getting imported.

While we're on the topic of Unix unfamiliarity, let's also talk about simplicity. The typical user sees the following when told to install Xcode and run this, run that, set these environment variables, modify their .bashrc:

http://blogs.msdn.com/b/oldnewthing/archive/2015/03/10/10598...

Now let's move on to "one day is a long time in brewland!" There is no promise of stability or attempt to make sure that all packages work together with each other. There is no stable distribution. If you're lucky, you might be able to check out specific git tags of each package, but this doesn't work for all packages, and you're expected to be updating your entire set of packages pretty much daily if you want to have "support". The instructions that worked yesterday for getting the software you want may not work today, because all of the packages moved under your feet overnight.

Let's finally also see what happens when they upgrade from one Mac OS X release to another: breakage everywhere. Some packages may need to be recompiled, some may no longer compile (hello there, LLVM bugs that prevent compilation of GNU Octave), or hours upon hours of copying or moving homebrew or macports trees around during an operating system upgrade.

Homebrew and macports are a parody of what Unix package management should look like, and fink doesn't have the maintainership that a GNU/Linux or BSD distro has.

Then it can be compared to Gentoo. Which is actually another Linux distro.

(but I no longer use it)

Not to mention that you can use straight ports of Debian apt-get[1], FreeBSD pkg-ng[2], or even Arch pacman[3] on OS X if you so desire.

1: http://pdb.finkproject.org/pdb/package.php/apt 2: https://github.com/freebsd/pkg 3: https://github.com/kladd/pacman-osx

Can you elaborate on how OS X is way behind Gnome, KDE, and Windows?
File and window management is what kills OSX for me. Finder is just too simple and restrictive, and simple things like window snapping doesn't even exist in OSX. Don't get me started on the horrid mess that is maximization of windows. I really don't know what will happen when I press that green little button in the corner.
Funny you say that. I haven't tried Windows 8, but window management is my number one complaint about Linux UIs. Windows steal focus all the time. Try launching Firefox, and switch to Terminal while it launches. Firefox will jump in front. Window resizing is also bad. I can never hit the resize target in the lower right on the first try, and when I resize from the left edge, there's all sorts of ugly tearing. I can't stand the window snapping behavior (why should dragging a window resize it?) and there doesn't seem to be any way to bring all windows to the foreground for an app.

Regarding OS X, you're right to criticize the green button. In OS X Yosemite, the old unpredictable Zoom behavior has been dropped, and instead it toggles full screen.

It's funny how our usage patterns are determined by our OS experience. I don't know any long-term Mac users who used the Zoom button; that seems to be a thing that Windows users do when they try a Mac. On the other hand, I reposition and resize windows frequently, but I rarely see Windows or Linux users do that.

When I first switched to OS X, Finder seemed like it lacked some basic features. But like much of OS X, once you learn the keyboard shortcuts, the real power shines through. There's a helpful free app for discovering them [1]. After holding the Command key for a few seconds, an overlay will appear with all the shortcuts for your current app.

I use BetterSnapTool [2] for window management. You can drag a window to some edge for quick resize/snap options, similar to Windows.

Personally, I use Vim-inspired bindings to move windows around quickly.

E.g. Command-Shift-J snaps a window to the left half; Command-Shift-K to the right. And Command-Shift-M to fully maximize a window. To snap windows to each of the four corners, I use the same pattern followed by 1,2 or 3,4. There’s lots of useful shortcuts you can configure, like sending windows back and forth between two monitors. Or just moving the mouse to reposition a window--or resize it--by holding down some key. I believe you can also customize the behavior when double-clicking the title bar.

As a user of i3/Xmonad on linux, this setup works well for me on OS X; I rarely use the track-pad to move windows around. And the iTerm hot-key shortcut toggles a popup terminal on the top right corner of my screen (or wherever you like).

[1] http://www.mediaatelier.com/CheatSheet/ [2] https://itunes.apple.com/us/app/bettersnaptool/id417375580?m...

Its caled 'zoom' not maximize. It zooms a window. If youre an app developer you can choose what this looks like.

There is separate fullscreen support that developers can add if they wish, but that requires extra code on their part because once fullscreened, the desktop environment handles each fullscreened app as its own virtual desktop.

I wish you could look over my shoulder as I use OS X, you may not be so convinced its 'simple'

Just used OS X a few times, but memory management seems to be a constant complaint.
Hm, I never had issues with that. Maybe if you use Chrome since that runs pretty terrible on OS X, but otherwise no issues. OS X tries to keep your memory pretty full, since there is no point in having a bunch of memory if you don't use it.
When used Mac OS X for an iOS project, it was hardly an issue, just something I happen to see sometimes being posted, not sure how serious it really is.

Otherwise I spend my time in other systems anyway, so I cannot properly judge it.

Maybe if you only have 4GB it could become an issue, though my dads MBA runs just fine with it