Why OS X just doesn't cut it
cloudhead.io
cloudhead.io
The closer is arrogant too:
"If every thing I said went over your head, and you think I’m crazy, it just means your time hasn’t come yet."
Someday I hope to be as smart as he is.
I don't need to have Terminals covering my screen, there's only so much I can focus on at a time anyways.
I too don't like reaching for the mouse, but found that I really don't need to that often anyways.
Yes, at work I use vim, and Mutt and various other command-line tools on Linux (in fact, the only thing that's GUI is my Jabber client and web browsers). But for some reason when at home or working on non-work projects I prefer TextMate, Sparrow and my OSX.
But that's for me…
1. Taskbar yells that I have updates. 2. I click the notification icon. 3. Nothing happens. No hourglass. 4. Wait. 5. Click it again. 6. No feedback. 7. Two copies of synaptic pop up. One flips out because another copy is already open.
The analogous version of this never happens to me on Windows or OSX.
Sure it's not the end of the world, but when weird stuff like this happens more than once a day, it gets annoying. It's like having that toilet where you need to jiggle the handle.
If Canonical completes their plan to replace X with Wayland in Ubuntu, I will give Ubuntu another try.
ADDED. I ran Linux for 13 years.
It will get you slightly faster compositing, though.
If you think that these are valid enough reasons to believe the usability of Linux is poor, I really sympathize with you. And all of this is about updating the system. When I can update Windows or OSX by just issuing a command like "sudo apt-get update && sudo apt-get upgrade" I will change my operating system.
I just want reliable feedback to say that my operation is running. It's fine if the hourglass is a windows thing, but how am I supposed to know an app is actually loading on linux then? Pull up a terminal, run 'ps -Af | grep synaptic"? Not very friendly.
But if we want to stick with the update example, try opening System Preferences on OSX or the Control Panel on Windows twice. Even on purpose. It's pretty tough to do. And yet it happens to me all the time by accident on linux all the time.
The first point does not need much elaboration, but I simply can't live without Lightroom, InDesign, and Illustrator. If I ever switch back to Linux on the desktop, I probably need a Windows VM to run those applications.
Also at home, Linux cannot provide the same level of integration as the Mac, iPhone, and Apple TV. I like being able to stream a video on my iPhone to our TV, or use my laptop to stream an album stored on my Mac Mini to our TV.
No one else can tell you why you should use OS X, Linux... Or (gasp) Windows, for that matter. There is no empirical claim of superiority when it comes to tools. It's whatever works for you.
Our lead developer uses TextMate with a mouse. Quite honestly, I think I use more keyboard shortcuts in TextMate than he does, and he doesn't use a stitch of Vim, where I'm fairly comfortable with it.
I can feel the condescending smirks from here, but my knowledge of keyboard shortcuts doesn't make me a better programmer. Far from it. I can hardly code my way out of a paper bag. Your tools do not make you a good programmer!
Having said all that, there's no reason you shouldn't try different tools. You should, actually. Just make sure you haven't convinced yourself that "tool XYZ will make me a better programmer." It may make you a more comfortable programmer, but beware of Yaks in need of shaving. If you find yourself spending more time setting up your environment than actually coding, you'd be better off with a system that denies you the temptation.
Sure I'll use a virtualized Linux environment for dev now and then, but OS X now is not bad at all for dev.
This goes threefold once you talk about getting anyone else setup like you. It's just so hard to get people not running the exact same flavor of Linux into the same development configuration for many tasks.
Kudos to the author on his depth of hardcore computing, but there are a million ways to use computers, hack, and code and the majority of them don't need that level of l337ism.
Really? Ever tried to compile anything on HP/UX or IBM AIX? Darwin is a bed of roses compared to that. Even Solaris has its problems when compiling things. The author obviously thinks that Linux = Unix even though the heritage of Darwin / OS X is that of the BSD branch of the Unix family whilst Linux takes a lot of inspiration from the System V family.
I kind of agree with the article in general I just think it was so badly written and some of the claims so down right ignorant it masks a decent point.
Oh and as for managing daemons, launchd is a significant improvement over the standard Linux initd and cron scripts. At least launchd will restart crashed / stopped daemons when needed. Plus you don't even need to run the daemon at all times on OS X. It will be automatically started when an incomming request for it is made. To do that on Linux you need to move over to daemontools (which actually also works on OS X as well so that nullifies that advantage).
I knew a lot of people like this guy. I'd be sitting at a SPARCstation in the computer lab running twm and there'd be some dude next to me that was never content with something that just fucking worked and he was constantly trying to optimize everything. As someone else already said, whenever I see people like this, I want to ask, "Better for whom? Better for what?"
And what of this? "I don’t think I need to further argue this sub ject—we all agree open-source is good." Hello?! You're talking to Mac users here, they may not agree to some statement that you find blindingly obvious, given that they're not using a $300 netbook based on Linux.
Yeah, all things considered, maybe I'd prefer to program Unix on a FreeBSD box, but I do more than just program.
If you want Linux, install Linux. Not hard. No reason to write an angry post about how OS X isn't X11.
Even serious coders in the neckbeard tradition, which seems to be what the OP aspires to.
One could write an essay like this that accentuated either platform. For example, I'd like a diff/merge GUI like Changes on my Ubuntu machine. What do I have at my disposal? Meld? I can't even navigate & merge individual changes with the keyboard. Darned thing actually makes me use the mouse. The mouse...on linux.
Yeah, I know: submit a patch.
I actually refused to try it for a long time and stuck up for linux but after yet another hardware issue and a laptop lasting for a year I decided to open up my mind and try osx out. I don't consider myself a fanboy in any sense but I have found osx to be a suitable workstation running on laptop hardware for both working as a sysadmin and doing web application development. I do use homebrew.
Great applications/uses that require a Mac:
1. Todo lists (Omnifocus or Things): I manage far too many things, and need to rapidly move through my data in a way org-mode doesn't allow. A GUI, a beautiful one, is key here.
2. Interfacing with my iPhone.
3. 1Password, Alfred, DaisyDisk, Delibar
4. Honestly…I'm struggling to come up with a lot more. I really like my calendar application (BusyCal or iCal, depending on the year). Mail.app is nice, but I just haven't taken the plunge to command-line applications yet. I wonder which I'd prefer if I put in the time required.
What is holding others back?
There were 2 pain points, setting up the resolution correctly in the Ubuntu guest (you need to use VirtualBox guest additions, but it is not bulletproof) and getting the guest OS an IP address on my network other than the host machines so I could run Redmine & a development server on it.
But at the end of the day, I can drag my mouse from one screen and be in Linux running all the goodies for software development to the other screen with Chrome and everything I want on Windows.
If I had a Macbook Pro, I'd do the same with Mac OS X and Linux.
It just ended my Windows vs Linux angst. And it is far easier running Ubuntu as the guest on top of Windows than vice-versa.
Linux will never fix these things. I ran linux for 10 years and those 3 issues were there that entire time.
Yes, I miss many things, especially around keyboard shortcuts and multiple desktops, but overall my experience on the mac is better.
True, but I wish selecting an extent of text copied it to the clipboard like it does with many Linux apps without the need for Command-C.
The dominance of Linux and package management made everything so much easier, articles like this just make me appreciate it more.
More recently I tried xmonad on my college's Linux desktops, enticed by the idea that it might solve my window management woes and that it was a "killer feature" of Linux, but I couldn't stand not having control over window placement-- it was too hard to just temporarily maximize a window. Maybe I needed more practice, but it didn't help that I couldn't figure out how to get dzen2 to not go off the screen in the desktops' dual monitor configuration, so I didn't have a working clock on my desktop.
I could switch to Linux on my laptop, but I love OS X's trackpad gestures, and as far as I can tell the only Linux support for them is by some proprietary "Gesture Suite" crap that only supports Synaptics trackpads.
Yeah, Terminal.app doesn't support a mouse (although it is extremely fast and responsive, like everything), and MacPorts takes time to compile things, and I had to manually patch gccgo to compile on OS X. And I love open source and hate to be running code I can't read. But all in all, it's hard to conclude that Linux is worth the pain.
FWIW, iTerm2 supports "mouse reporting", allowing you to position the cursor in vim or emacs (for example) with a click:
It also isn't a disadvantage that now my desktop setup is a lot closer to what we also run on the servers, down to exactly same packages and dependencies.
And it has to be said I love the regular upgrade cycles of major projects like GNOME and Ubuntu. Every six months I get a new version with many incremental updates. No need to speculate what Apple will put in or leave out from the next big cat
I still use MacPorts on occasion if I really need a package, but my dreams of using it to make the OSX terminal as functional as that of Linux is long dead.
But still it feels like a system external to the rest of the Mac experience. And you need to have XCode.
But what is the alternative? If scripts like this[1] or homebrew are the solution I don't understand how it is an improvement over macports.
(As a side note: I highly recommend you try out GraphicsMagick, it is mostly equivaklent but has a third of the dependencies and does not pollute $PATH with a dozen commands)
/me runs `uptime`...
17:32 up 27 days, 2:13, 11 users, load averages: 0.11 0.15 0.24
But it's quite common that I want to see how some server code runs on the exact same kernel as will be used in production. This is a pain if that kernel is also running your IDE.
tl;dr: 'developers' can sometimes need direct access to hardware, OS selection can affect that, and while VMs are awesome, they can also cause additional overhead.
http://superuser.com/questions/162849/tiling-window-manager-...
I use Divvy, personally, but I'm not super-hardcore about tiling all the time.
Imagine it's 2003-2006 or so - sending your linux laptop to sleep/hibernate was like russian roulette - will it start up again? Won't it? Kernel panic? ACPI improved things, but often still has hardware specific issues.
Nice hardware and good design helped as well.
1) The GUI is terrifyingly ugly, in every single distro I've seen. Ubuntu is trying, but they're still way behind. If I only ever needed command line interface on my computer, I would've fully switched to Linux yesterday.
2) It doesn't have Netflix, Vudu or anything else with Silverlight. This is not a "don't have it yet" type of deal - Linux doesn't have it and won't have it in foreseeable future because of philosophical differences (because it's using proprietary Microsoft code)
3) Most things don't work out of the box, and need some tinkering with. This is not such a big deal, since I love to tinker and after tinkering, they usually work much better than anywhere else. But for many non-development things, I love when programs I install on my machine just work. For that, OS X is light years ahead of everything else, and Linux is dead last.
It depends on the hardware. If you pay attention up-front, it's very easy to end up with zero-hassle just-works-for-everything. Anecdotally, I've been using Thinkpads with Intel graphics drivers as my last three laptops, and the last time I had to manually edit a config file for hardware was back in early '07. With OS X, on the other hand, I can't use my phone to tether without navigating a bewildering driver labyrinth.
Anyway, this stereotype is played out.
I just bought a new MB Pro and was getting ready to install Parallels on it for the first time...I've always used Fusion in the past. I thought Parallels was currently the leader in the shootouts regarding speed/features? Anyone keep up to date with their horse race or have a good reason to use one over the other? I already have licenses for both.
I still love Apple hardware though, which leads me to my question; what is the best distribution in terms of support of Apple hardware? Especially MacBook Pro 5,5 which is my day to day development machine for the time being.
The author cites mouse events, but this is something I've never missed (and never use it when I'm working on Linux). Is that something you use? If so, what for? You use MacVim, so presumably you don't need mouse events in your terminal for vim.
I should note I don't use a vanilla Terminal.app - I use it with Visor (http://visor.binaryage.com/) to quickly invoke the command-line from anywhere, and I use MacVim as my editor.
I get what he says about package managers. MacPorts really was something I loathed. I recently discovered homebrew and "breath of fresh air" covers it exactly.
The biggest change by far for me was going from TextMate to MacVim/vim, which has boosted my programming speed immensely (after the usual month of pure frustration and all development grinding to a near halt).
I am not aware of any distribution which is better or quicker at patching their kernel to fix Apple-related issues, so I suspect that your mileage will be about the same using most distros, especially as your MBP is not particularly new.
I switched from Slackware to OS X precisely because I felt OS X did more things automatically for me. Also, If you've used slackbuilds, they are actually quite similar to homebrew, in my opinion.
He stated in his interview for usesthis.com that:
"In the past my desktop was running Linux as well, I used fvwm2, for more than 10 years, with this minimalistic setup. Now I miss it a bit… but switched to Mac OS as it delivers a much better “just works” experience for me, every time I want to do Skype, print a document, or alike."
OS X for me is by far more superior than anything Linux has to offer, and mostly with MacPorts it has all of the software I could ever want/need.
http://www.reddit.com/r/programming/comments/gt29r/why_os_x_...
Only time I am using native Mac is for mobile app developing using xcode/eclipse.
I am thinking of getting a ghetto laptop with linux installed so that I don't need to have my linux box switched on 24hrs a day.
For the past 5 years, I have yet to have a web-app dev environment meaty enough to require more than a small VM (Oracle CRM can be nightmarishly huge) which ran fine on my macbook.
With git/svn scripts, it's easy to build and unit-test on your local VM, then push to your stage/prod-test box.
You need OSX to revolutionise social, and engage your target markets in the mobile sphere. That and the other reasons the guy above uses OSX. Get traction, get OSX.