I use Linux at work and it's not bad, but I'm less productive on it with 95% of tasks than I would be with OSX. It looks worse (I recognize this is subjective.)
A lot of my friends use Linux and tell me that if I spend the right amount of time tinkering with it -- making it mine -- I'd reap the benefits of a bespoke OS, just like slipping on a suit that's tailored just for me.
But what's the point? I lose out on apps and aesthetics for hypothetical yields in productivity -- I don't want to do that.
In terms of your points:
- forced corporate policies: My employer forces a Linux desktop and either a Mac/Windows laptop.
- lack of hardware choice: I will take to my grave the assertion that the MacBook Air is the best laptop on the market. (Or at least the prettiest.)
- Closed operating software: This does not bother me.
Anyway, pretty is one of those things that I learned is worth sacrificing in favour of productivity - be that in code or when I choose my OS or tools.
I agree, but I don't think its so black and white (for me!) When my tools are well-crafted and attractive, I use them more frequently and with more vigor.
If you do things like change your keyboard layout to Dvorak/Colemak, go for it. It really is a more productive environment once you're used to it, but the trade-offs are similar. Yes, you can tailor everything the way you want, but it can be very time consuming and you lose out on the ability of having anybody else know how to use your computer.
Anecdote: I came from Arch Linux to OSX. I find the tight integration between hardware and software on my 2012 Air to be a breathe of fresh air from the hacking it takes to get basic hardware support sometimes on Linux. IMO, tools like vagrant make native OS matter much less nowadays as long as you are working in some kind of *nix environment.
I just went the other direction :). I agree, the hardware/driver issues are a pain. If you're using a desktop without wireless, you probably won't have issues. If you pick Ubuntu, any issues usually aren't too hard to fix.
If you're trying to install something like FreeBSD on a laptop with a non-broadcom card? God have mercy on your soul :(
That said, once you fix the issues, they're usually fixed for good. It's just the matter of the week of banging your head against the wall to figure it out. Relevant: http://xkcd.com/979/
I've tried various distros on my laptop (Thinkpad W500) but I was seriously impressed when Ubuntu had everything working (including WiFi and ACPI key bindings) out of the box.
- Focus follows mouse without auto-raise - Instant switching between virtual desktops (not possible to disable the animation in OSX last time I checked) - Instantly open a new terminal window with intelligent window placement in the currently active virtual desktop.
Since these turned out to be a hassle in OSX, I've just gradually stopped using them, and resorder to a single desktop paradigm with more mouse clicking for navigation. All in all I feel like I'm working slower in OSX than in Linux.
However, the major problem with Linux is the looks and a host of small nice details that OSX just gets right. Instant search in Spotlight including Mail, I've grown accustomed to the Mail app (Thunderbird search is ridiculous compared to Mail.app, for instance), Time Machine, and a few other apps like 1Password.
If I could get a virtualization scheme where I could have one desktop with OSX and 3-4 desktops of Linux, that would be ideal. But I don't think that's possible with Parallels or VMware, and I'm not sure how well OSX would run virtualized under Linux.
As for the others, we have locate(1) for searching and rdiff-backup instead of Time Machine.
As for having desktops like that, if you mean monitors, then there's a great solution: Synergy. Hook up monitors to both computers and use Synergy to connect them.
A cool hardware project might be to take a micro Linux ARM board with LVDS display output, mount it inside the CD bay in my laptop and make an internal LVDS switch to quickly switch between OSX and the Linux board. That would be pretty much ideal. :)
Not sure how well it works, though.
I'm using it on my laptop and desktop and use Dropbox to synchronize.
Isn't that the main feature of VMWare Fusion? (Although it seems more targeted at integrating Windows into OS X, it looks like it supports Linux as well)
Yes, yes it is.
If you're using Ratpoison, well yeah, it's gonna be fugly. Gnome 3 and Unity look pretty sharp though, and Compiz and Clutter are at least as good as Quartz.
In fact, if you think nothing short of an OS X clone is pretty: How to Make Ubuntu Linux Look Like Mac OS X http://www.howtogeek.com/45817/
"Linux is ugly" is an outdated cliche. It used to be true. It's not anymore.
But you're right that Linux stopped being ugly. Even in Tiling WMs, we're pretty beautiful now. My windows now have the same gaussian blur and shadow abilities as on Mac OS X, thanks to Compton. My status bar has beautiful text set by Pango and rendered by Cairo. My text rendering is as good (or better than, against transparency) in OSX, thanks to the Infinality patchsets.
Really, it's only ugly if you do it wrong. One way of getting it wrong is to try and imitate OS X.
Same goes for Windows.
You can make Linux look like anything you want. If what you want is a clone of your old OS, well, I can't help your aesthetic taste, but I can at least make you happy.
Life is particularly better for the C and C++ programmer. Valgrind's primary platform is Linux. For many years Mac owners were stuck with a horribly out of date and malfunctioning GCC, and even now with clang there are problems (the clang in xcode 5.0 has some horrible miscompiling bugs which were reported months before release).
Is everything perfect in Linux? No. But overall I find it an improvement. The only app I miss is keynote, OpenOffice is a poor substitute.
Yes, Ubuntu, since it is most used OSS desktop right now and most tutorials, docs, etc focus on it from my experience.
So it boils down to what you do. If you do mostly client-side html/js/css you probably will be ok with Mac. If you do more server stuff - it might make sense to switch to Ubuntu to make your life easier. Start with Virtualbox with Ubuntu in VM to keep your workflow the same in the beginning.
On OS X I found it not to be too different an experience as well, I would run Ubuntu server, open terminal, SSH into the local server, and in the browser just hit the VMs IP, as opposed to open terminal, and hit localhost.
Another option would be to get some remote Server and do your development there, which has the benefit of being available from anywhere. In that case you will have to use some form of remote editor like vim/emacs though since syncing from local is painful for bigger projects, especially if you work with different branches.
Also, having so much freedom to choose and configure is not always productive, and I really don't like the defaults most distro's come with. This is where the difference between OSX and Linux desktops becomes painfully clear.
I'll consider switching back if OSX becomes too restrictive or the Linux desktop eco-system (including hardware) dramatically improves.
The sheer flexibility and number of choices for each and every part of the linux desktop world makes the whole experience chaotic, inconsistent, buggy and complex to setup and maintain. And as thats the DNA of Linux and Open-Source, it probably wont change. And while awesome, that DNA makes it nearly impossible to have a Linux Desktop experience that will ever rival the closed ones in terms of day-to-day usability.
I think that's what vendors like ubuntu should be for. They should focus on stability and planning.
Instead they just keep doing their own thing for a audience that might very well not exist.
If you're an advanced user (as all of the readers here would probaby be), you'll quickly end up in the situation you describe.
OS X just held me back. It was locking up at 20% CPU and 40% RAM usage, and I could never figure it out. Linux doesn't do that (especially since I threw a bunch of swap space on, now it's incredibly stable)
As for defaults, I find it's faster in the short term to start with defaults and work from there, but it'll just come back and bite you that you're using somebody else's workflow. I start from scratch (for the most part) with Arch, and build my workflow on top.
I've wasted probably two weeks to get my workflow configured perfectly, but now I can spit out code at such a rate that I find myself doing more projects than ever before.
What's the best laptop for running any Ubuntu flavored desktop?
I still use CentOS to this day (Asterisk), it's painful.
Thinkpads (the actual ones, not the cheap Ideapad-in-a-black-case-things). Of course, you don’t really save money compared to a Macbook, but the hardware appears (to me) much sturdier.
The only thing that didn't work instantly and perfectly on my Lenovo X220 the last time I built it (2 years ago) was the fingerprint reader, but as I use Yubikey I was OK with this (plus I found an online guide to getting it working that seemed pretty comprehensive and people were raving about).
I generally run an ubuntu vm on osx, because i love the linux command line ecosystem, but as time goes on I find myself needing to customise more and more just to get a sane base configuration.
I really don't understand why ubuntu doesn't focus on their niche - giving developers a nice dev environment and then slowly working to stabilise apis and turn it into a platform. Then they can think about other stuff. At the moment they are trying to compete with companies that are much larger, with much more budget.
That said, I think Apple has done a pretty good job of being respectful of privacy. You are asked explicitly whether to share information (location services etc) and you can always say no. Compare this to the latest Ubuntu release where your local file searches are being sent to Amazon as a default feature.
There were 2 big reasons I switched. (1) I wanted to build a desktop; the Mac Mini is underpowered and the Pro is wicked expensive. (2) Apple's competing in the courtroom disgusts me. I was a huge Apple fan, but I don't want to give them any more money.
Windows isn't an option to me. I love text and I love the POSIX shell. I find DOS abhorrent.
I don't really miss any conveniences. If you really want something pretty and easy, go with Ubuntu. It mostly just works. The only thing I really had trouble with was wireless drivers. I started with Ubuntu, and later switched to Arch with i3 (Tiling WMs are awesome).
Again, If you want something that's almost as pretty and almost as easy to set up, I highly recommend Ubuntu. Once you get settled in, I also recommend looking at Arch. Arch is a lot more work and learning to set up, don't start with it. But it's a better system once you have it configured your way.
It's been some work, learning Arch and fighting with wireless drivers. But I don't regret it. I'm extremely happy with my Arch+i3 system. It has Chromium, Steam, Minecraft--everything I need. I do wish Steam had more Linux games, but with the Steam Box, I think they're on their way.
ps. I don't recommend dual boot. I did dual and triple boot a few years back. It was just a big hassle. Get a machine and dive into Ubuntu. Good luck.
The bottom line is that switching to Linux will be a step back in terms of convenience. It is still true that the closed operating systems are just easier to use as day-to-day one-size-fits-all machines. In my recent tries with Xubuntu i had some sound issues, the machine didnt want to sleep correctly and skype had audio lag issues and didnt show a popup when somebody was calling. Small stuff, but stuff i dont really want to deal with..
Ironically OSX86 on the same machine (older Intel hardware) works perfectly fine and i have none of these issues, it probably even works better than windows.
As i do all my development in VMs (vagrant) the host OS doesnt really matter and it just needs to get the day-to-day stuff done, but i still wouldnt choose Linux for that.
Id still like to switch back to Windows as the host, just to have more freedom. Sadly vagrant/virtualbox shared folder performance is poor which makes it a bit of a pain to work with.
So i have ultimately thought of a system where Windows 8 is the host and id just use a Xubuntu VM (with a GUI) where i do all the development in, but still rely on Windows for skype/office stuff/audio/adobe apps in the background.
However that locks me out of iOS development, soo dual booting windows/osx86 + vagrant boxes currently gives me the most flexibility and ability to work on anything and use all 3 OSes for what they are best at...probably need to replace the PC with some form of Apple hardware to be legal but overall its pretty perfect. (In a perfect world Apple would finally adapt the PC keyboard layout, i just hate the mental overhead required when switching systems)
I dont like Apple much, but i am pretty sure MS would love to do the same things so it more about choosing the lesser evil because Linux still isnt there yet. Atleast that my opinion right now.
Plus we have Docker.io instead of Vagrant. Way nicer.
Stuff isn't so black/white, I guess I'm trying to say.
This is… an argument I won’t get into. Suffice it to say, I was merely trying to construct an analogy to demonstrate why, sometimes, using something less than the “best” product is preferable, and why, for some people, it can’t be considered a choice to use the less efficient product.
I hate to say it, but I think Windows 8 is pretty good as a host OS (not having used Windows much since 2003).
I wouldn't be able to do my job without the virtulisation though, in the end I got so fed up with trying to install stuff naively on OS X with brew and ports and from source and whatever I was virtualising on OS X for about 2 years before I switched over anyway.
I also want everything to mostly just work, which is why I liked OS X in the first place (it has a Terminal, and everything mostly works!).
I dual boot Windows 8 on my Macbook Air, I think Apple still do make the best laptop hardware.
As a development OS, I'm already there - most things for me are in virtualized Linux, but inside the Mac OS.
As for OS X... I'm sure it's nice, but I have no interest in Apple and their locked down, proprietary, closed off, "walled garden" ecosystem. I'm no rms, but I have little to no use for software that isn't OSS or FLOSS.
I did just switch from using Gnome as my primary desktop environment, back to KDE - after about 6 or 7 years of Gnome use - and I'm pretty damn happy with the current iteration of KDE. If you haven't tried it, give it a look, you may find that it's much better than you anticipated.
Being a Linux user since the 90s I always have Linux Desktop machines around. Switching to Ubuntu will be a loss in reliability for you coming from OSX. I used it since Dapper Drake, in the last years every half year upgrade broke something, especially in Unity and Gnome.
Obviously Ubuntu are more into making strange things on their own then providing a reliable linux. Ubuntu is the "odd man out" in Linux and you won't gain anything but upgrade pain two times a year from switching to Ubuntu. It isn't "real Linux" anymore. So if you're going to switch to Linux, don't use Ubuntu, instead use Debian Stable or Arch.
If you're on a reliable distribution Linux will work fine.
That is true of course only if your hardware is supported without "just compile a sweet little kernel module and it works fine". No, don't do this. Don't rely on such hardware or be prepared to spent the weekends fiddling around to make your graphics adapter or wifi work.
If it works you will find more or less everything you need for your computing needs as a developer. But you're going to miss the nice small apps you learned to love in the OSX indie developer ecosystem. You even won't find a nice client for Twitter in the Linux Repos (most of them haven't seen an update since Twitter switched to OAuth and the API and won't work anymore but are still in the repos), if you're into ADN there isn't anything but an ugly cross-platform client.
Regarding such small things like clients for social networks you will switch the OSX culture of "it has to be nice and working or nobody won't use or buy it" against "somebody made something that works somehow but looks ugly and hey if you don't like it make it better it's open source".
There were always many nitpicks I had to deal with and fix every time I reinstalled or got a new computer, and they piled up and up with every new version. I switched to xubuntu with a toshiba z830 and my life got easier. Then I switched to Mint and things got even better.
Our personal laptops are an Air and a Retina MPB. Moving the wife from Windows to Mac was enough of a step (she uses excel and other biz apps), Linux would be a non-starter. Given the i* devices, for me, I couldn't revisit Linux without incurring management headaches I don't care for.
There is more to "switching" than just is an OSS option available.
I have a number of VMs -- ubuntu and FreeBSD for development. Desktop remains homogenous.
I made the switch from Windows XP to Mac OS X around the same time, and for several years it filled the role of a "usable desktop unix" OS quite well. A few years later (2005?) I put Ubuntu on some spare hardware I had lying around and ended up keeping it as a personal server for the next five years or so.
My last Mac laptop (MBP, 2 GHz core duo, Leopard) died around 2010. I had originally planned to get a new Mac at the end of that summer, but in the meantime I put the latest Ubuntu on an old Thinkpad my dad had lying around (T60, 1.83 GHz core duo). It ran circles around my old Mac despite the slightly slower CPU, and many of the issues I had with Linux the first time around had been solved. I was impressed enough to skip the Mac upgrade and continued using the T60 for the next two years.
I was happy enough with Linux by then that I knew I wasn't going back to OS X, but some personal issues with the Ubuntu upgrade cycle and where Canonical was headed eventually led me to switch to a rolling release of Debian unstable. I've since upgraded to a T520, and see myself staying with Linux for the foreseeable future.
It might be useful to mention that I'm primarily a C/C++/embedded developer. I spend most of my time with a terminal, a text editor, and a browser. I really like having proper "out of the box" support for the standard open source developer tools without having to hack them onto my system with third party OS X package managers. I don't have to worry about Mac specific quirks, or old/forked versions when some library doesn't get ported properly or in a timely manner.
----
As a side note, for anyone considering a rolling release, I'd probably recommend Debian testing over unstable. I've used both continuously over the past year, and while I haven't had any serious showstoppers with unstable, testing has had a perfect track record as far as distribution stability is concerned, while unstable has had a few minor kinks (usually just dependency issues immediately after updates are made available, but there have been occasional crashes).
No.
> forced corporate policies
care to elaborate? I'm not sure what this means. Policies forced by the company you work for? How does Linux solve this?
> lack of hardware choice
Plus, not a minus. I think the 13" MacBook Air is the best laptop on the market today. Tight integration between hardware and software is key.
> closed operating software
Don't care, see answer #2.
It's also probably worth mentioning that I make my living through iOS (in part through my site: http://www.cocoacontrols.com)
Sorry? How is a restriction a plus? Can you use a Lenovo with OS X? No. Can you use a Macbook with Linux? Yes.
It was hard.
Nowadays I'm a happy Gentoo user and when our television computer, which is an iMac, breaks, it's going to be my last Mac.
I have tried many times but, every time I had to go back to OSX for some reason. I am a big FreeBSD fan and for me OSX with the port system was the way to go. Now Apple is more and more getting in the way but FreeBSD not really running on Apple hardware.
On the Linux (I tried Ubuntu/Debian/Fedora/Gentoo) point of view you can't really find a distro that is working well enough and have a similar port system.
I'm kinda stuck with OSX...
About the question, I did mostly switch to linux, but there's a few programs that make this transition difficult (ableton live is good, and not available on linux). I do benefit from a strong performance improvement, but I would really like to have a better desktop environment. Moreover, a large part of my work is much simpler to do because I can use containers instead of a VM.
All in all, I have a better experience on Linux, so I'm doing most of my work there, but I would welcome a bit of amelioration here and there. I'm experienced in Linux GUI programming, but this sounds like a good and interesting challenge, maybe even a startup idea.
To anyone considering the switch: Ubuntu is nice but it is not the only solution, I personally use Debian and my friends use Arch. We're all quite happy with our systems, even if the polish of osx is sometimes missed.
Corporate policies: not really sure what you meant by that.
Lack of hardware choice: am using a rMBP, this is a very beautiful piece of laptop. I can encode video, start a virtual machine, keep PHPStorm running smoothly, and compile java code all at the same time without any stuttering or slowdowns, and it does it in a very stylish manner.
Closed operating system: even when am using linux/ubuntu am not gonna go around modifying the internals. So I don't mind it one bit, if it means having a smoother and better experience am all for the walled garden.
My work usually targets either a redhat/centos server or ubuntu server and I don't have any difficulties with any environment differences between my target deployment server and my local machine. So no reason to rock the boat so to speak.
As it stands I plan to migrate as fast away from Windows as possible. This means all new machines are either Ubuntu or OsX. Layout and Graphics machines OsX, others Ubuntu. At least Microsoft is getting kicked to the curb, but Jobs's ghost will be around till Adobe realizes their mistake and offers a native suite for Linux.
I've been using OS X pretty much as my primary OS for 6 years. Lately, because I've been working on a lot of systems programming, I've felt that it's too much of a hassle of constantly running everything on a virtual machine (although vagrant makes it a very nice process) so I switched to elementaryos[1].
It took a lot of tweaking but I'm generally happy with the switch, I still use sublime text as my general editing workhorse and other than some window management tool that I haven't found a easy replacement for I'm all good. It sure made the day to day work easier.
This has required very little setup on my part.
I'd love to not be dependant on Apple, but I trust them more than Google, and there's nothing else that works as seamlessly.
Edit:
Also the hardware. I've yet to find another company that values build quality as much as Apple. They're trying, any I hope someone else does, but I haven't found a laptop similar spec to my rMBP that feels as nice and has the same battery life. I can go 6 hours using Windows 8 in a VM for development.
Long story short, there are a few things that I couldn't get over within a week: - CTRL-C rather than CMD-C is now a weird contorsion for my hand. - CTRL-C and CTRL-V can't be used for copying and pasting in the terminal. I understand why, but really couldn't get over it. - I think the UI is not polished enough to my likings. It's good, but still lacking. Visual differences and missing proper exposé are at the top of this list. - iPhone integration (disclaimer: I didn't try that hard.)
So I went back to OS X.
1. Rebound control to the command key
2. Changed the terminal shortcuts to control-c, etc. (from control-shift-).
3. Set the terminal to use control-j instead of control-c for sigint:
$ stty intr ^j
(I'm slowly transitioning from OS X to Linux.)The most annoying aspect of it is the discrepancies between applications and keyboard shortcuts.
If you're a power user mac who uses keyboard shortcuts a ton then going back to X11 apps can be a little painful.
The other downside I had was on install I had no wireless card and had to download a tarball to a usb stick and recompile my device driver just to connect. I kind of expected things to just work by now, it's a shame there's still these little hiccups but I guess I shouldn't have bought cutting edge?
I tried a number of distros over the years. Gentoo is excellent, if you're an asocial computer nerd that enjoys compiling programs. I also did Linux From Scratch. Huge amount of fun. Learned a lot. I still remember the thrill of seeing Gnome finally start up. I set up a tiling window manager (can't even remember what it was). Most sparse desktop ever. Always had xine running on the left most desktop (started from the command line of course.)
The development environment was excellent, (except for the lack of IDE). Huge number of libraries. Easily write a c program that could access the internet, parse video files, etc. And all of these libraries were easily installed. Valgrind was excellent, too.
The last distro I extensively used was Fedora. Finally, though, I had enough. I grew tired of constantly having to fiddle with little shit. The final straw was I was just doing a generic update, and wifi stopped working. I couldn't figure it out, so I just wiped the drive and installed windows 7. It's nice to have things work, mostly. I miss the environment. Cygwin/mingw don't quite make it up, and powershell is a heaping sack of shit. I tried Linux Mint about a year ago. It was atrocious. I don't remember all of the details, but it was the little details that didn't work. The multimedia keys didn't work, this was a known bug that had been around for a while. The start menu was annoying to use, Windows 7 was actually better in this regard. I don't need to say anything about Gnome 3.
I just bought a Macbook on Friday. I'm actually pretty excited, this will be my first modern Mac. I'm hoping that I'll get the awesome development environment of Linux/Unix and the polished interface of a commercial operating system. I once very strongly believed in support the FSF, but I want a computer that works. I don't have the time anymore to tinker with esoteric xorg settings.
1) This week Ubuntu updated something in the graphics system which FUBAR'd multi-monitor support for both myself and my supervisor (we have quite different hardware setups).
2) Support for suspend/resume is flaky, and has been for years - I'd never know whether either would work after a distro upgrade, so I always cold-boot Linux.
3) Broken network drivers on the install disk for Debian Testing around the end of last summer - I forget the workaround (if there was one), but I had trouble installing it on two different (very vanilla) systems.
If I did more dev work at home (and had $1000 to burn) I'd probably buy a Mac, but as is my Linux VM on Windows setup works fine.
My cell/tablet are android, so there was no real incentive to move to Mac from a house-compatibility standpoint.
I'm pretty sure this will be my last purchase from Apple, and i'll be moving to a new laptop running some flavour of linux as soon as a suitable replacement laptop comes on the market.
1) I've felt that the last few OS X iterations have been steps in the wrong direction, bloating the OS with crap "features" that are useless and add overhead. It's slower, more pinwheels, crashes, etc.
2) A lot of dev and computational tools run natively on Linux and you have to deal with 2nd best ports on Mac.
3) The absurdly high cost of Macs. For instance I'm about to upgrade my mbp when they finally update them next week and I expect it will run about $2700.
for #1, I'm hoping that 10.9 is an improvement since it seems to have a performance focus. i think all Mac users are dreading that Apple will slap iOS on our laptops. if they do, #1 will become a bigger factor.
#2 usually is not a huge problem. of course, when it is, it's enormously frustrating.
for #3, when I've looked, the cost of getting a similarly spec'ed non Mac is still around $2000 so the savings aren't that huge.
ultimately, the reasons for switching do not outweigh my perceived costs of switching. i don't want to tinker with my OS or evaluate which of the many Linux options is best. and for my typical consumer laptop use, the Apple ecosystem is just convenient. (syncs w my phone, etc.)
Software maintenance, features and updates.
Without financial backing, the apps for linux will never be as good as on either OS X or Windows.
I donate a lot, but my money can only reach so far - it seems as too few donate, though i'm sure many donate their time and that is also a way of donating - but still, the fact is that someone has to pay to keep software developed and updated.
VMWare Fusion + OS X = freedom of development choice. Bootcamp + Windows = games.
The hardware isn't bad either though it is slightly more expensive depending on how you look at it.
For Linux, I find that there aren't many good vendors that provide pre-installed Linux on state-of-the-art hardware especially when it comes to laptops.
There are good companies out there like XoticPC.com that sell such hardware with or without Windows or other OS, and still provide a warranty and really good support no matter what OS you put on it.
Ubuntu and probably most other major Linux distro's work essentially as well Windows if you stick to mainstream hardware (with a few exceptions like multi-monitor support and Nvidia Optimus).
The other point to make is that if you use terminal POSIX compliant tools (vim, mutt, tmux) and favour web applications over native ones you can create a highly portable environment so the choice of underlying OS becomes a subjective question of taste.
Becoming a fancy-pants appreciator of particular attributes is its own kind of lock-in...
Apparently this is due to Apple making it technically difficult for third-party applications to replace iTunes
- Photoshop (nope, Gimp won't do, sorry)
- Word (nope, OpenOffice etc. won't do... had it fuck up the section headings on a legal doc the other day. no bueno.)
- music software (Ableton, Maschine, etc.)
i'm also addicted to the trackpad. some Apple hardware guys told me it's all software, but i don't remember any Windows or linux laptop ever coming close... i'm amazed how bad they are every time i need to jump on one for a minute.
You're right, but just don't expect it to be there in two to three years.
Positives:
* Tiling WMs - I have always found myself working primarily in fullscreen applications like in OSX, but it's nice to have a small status bar at the top still and splitscreen capabilities. My WM of choice, AwesomeWM, provides this, and does it really well.
* Docker.io - Docker is infinitely better than Vagrant. It starts faster, it's thinner, and it's easier to interact with. And it only runs on Linux (at least for now, but it'd be hard to add OSX support probably, due to the use of cgroups and other Linux APIs)
* Better Package Management - Yes, OS X has homebrew, and it's great, but it has to compile from source, which takes a while and spins up your fans usually. It's just troublesome. And on Linux, if we want to compile, we can usually use distcc to distribute that load to a cluster. I do, and I know many others do as well.
* Choice of Workflow - OS X has a wonderful workflow, but it's not perfect. Sometimes it's nice to be able to pick the workflow that is almost exactly perfect for you, and tweak it until it's ideal. That's what I did, and it's been a huge boon for my productivity.
* Homogeneity with Deployment - this is a lesser positive, but it's still nice in many cases. Most of the good distros will teach you at least basic sysadmin skills over a shot period of time, through immersion. This means you can spend less money on sysadmins and do it yourself as long as possible, assuming you deploy on bare EC2
Negatives:
* More downtime - this is an issue with distros like Arch and Gentoo, and it does get to be a problem from time to time. I mean, it's hard to work when X11 won't start or a driver is broken (I'm looking at you, Broadcom)
* Learning curve - Linux really is as hard as it seems to learn, I'm not gonna lie. It's not perfect.
* You look like an "Engineer" not a "Hacker" - Lots of people will view the fact that you spent time customizing your work environment as you playing around with your OS. It's not really that way (unless you're a Gentoo user) but it gives that view to some people.
* Lack of support for multitouch trackpads - I'm sure this is less of an issue for other people, but it really was a dealbreaker early on for me. It killed all the ways I interacted with OS X. It was terrible for a while, then I got over it.
Honestly, I dual booted Arch and OS X for about 8 months before I ended up tipping over to Arch. It took me setting up a shared partition and AwesomeWM before I could convince myself to use it daily. But it's the best decision I've ever made, because I find myself being infinitely more productive with my new workflow. I'm done with OSX entirely, I only use it for Photoshop now.
Uh? Where is this coming from (Hacker/Engineer)? If anything, it's the other way around.
I hope the trend continues to grow.
note: I was already using arch on my desktop for a few years, though.