I know that a lot of people disagree with me because I see developers with macbooks all the time, but imo OS X is not a good environment for hackers on a purely technical level (ignoring the issues of proprietary software).
When OS X came out, Steve Jobs promised an OS that would cater to pro users as well as amateurs. He literally said so in one of his keynotes. But around 2006, Apple started focusing on the upcoming iPhone and downprioritized OS X development. Nowadays it's all about making OS X more and more like iOS. They no longer care about pro users.
Case in point: If you're doing pentesting you need a machine that stays silent when connected to a network. With OS X you always have mDNSResponder blaring out. Prior to 10.6 you'd just solve this with a simple "launchctl unload" and be done with it. From 10.6 however, unicast DNS resolution was moved into mDNSResponder, so you need to keep it running or you lose the ability to resolve anything in the DNS. Of course it's possible to filter the multicast DNS announcements with pf, but it turns out that mDNSResponder will occasionally resolve various apple.com and Akamai addresses and that can't be disabled.
Same with IPv6 link-local addressing, it used to be possible to disable it completely, now that's no longer possible because they've dumbed down the UI. And when you use WiFi, OS X will regularly send 802.1X EAPOL messages out. That can't be disabled even with pf because pf doesn't filter on layer 2. Under these circumstances I find OS X to be unusable for pentesting.
And don't get me started on the laughable HFS filesystem and the non-existence of a package manager.
This is a very compelling narrative, but the set-up simply does not support the conclusion.
Making OSX more like iOS (sandboxing, for instance) is an incredibly welcome feature for pro users and newbs alike.
The other changes you point out are not related to the iOS-ification of the OS, and are not specifically "this isn't for pro users" sorts of changes as much as they are rearchitectures of the subsystems... it doesn't seem related to some "ignore the pro users" push.
I suggest you buy a usb network interface and pass the device through to a VM (Vagrant+VirtualBox is great for this) for your pentesting - then you get the best of both worlds.
networksetup -setv6off 'Ethernet'
networksetup -setv6off 'Wi-Fi'
Linux is insanely better for development. But OSX is just passable enough that the form-factor of an Apple laptop wins out and I can work. I don't want to go back to using two computers and OSX is _much_ better at everyday non-developer stuff than any Linux I've ever used so I make do with bad package managers and random compilation issues.
Pray god that I never have to wipe my hard drive though. Getting all the random libraries and whatnot that I've accumulated over the years would be a pain in the arse. (I've been dragging the same backups forward ever since I got my first mac)
PS: do start using Oh-My-Zsh. Your life will be better.
No, I like bash (or fish sometimes) with my own personal configuration that I fully understand. If I were to switch to zsh, I would just use zsh, and not a giant bundle of stuff that someone else thinks I need.
Something there doesn't sound right (and brings up questions about how do you even manage so many random libraries and whatnot).
Dependency and package management isn't that difficult and when I wipe my hdd/ssd it usually takes me some 30 minutes to get my generic environment bootstrapped and up to date (with a mixture of shell scripts and brew install `my-package-list.txt`). After that, each project takes few minutes to download all deps/libs with some dependency management tool.
Just the same way I would imagine that you've got your oh-my-zsh config version controlled (speaking of oh-my-zsh, I'd like to also mention prezto!)
Because something always breaks and then you are in a world of pain as in this XKCD about setting up dual-booting with BSD http://xkcd.com/349/
Now I destroy and recreate as often as feasible. Never go more than a 9 months w/o a rebuild.
You will have to, and sooner than you think. Hard drives do not last forever.
That's why instead of hoping to never reinstall an OS again, i decided to embrace OS installation and do it often, from scratch. This means:
- Reducing tweaks to the only necessary ones.
- Keeping a "how to install" text file in bitbucket.
- Having my home folder under git.
To be honest, everytime I install a new Ubuntu a cry a little, because they are going the wrong way. But I still reinstall regularly (every 6 months) and keep my "how to install" file up to date, so I only have to copy paste some commands and follow some step mechanically.
If I'm doing excessive amounts of stuff in the shell, I'm doing something wrong.
Unfortunately as a piece of hardware it seems to me virtually unrivalled, the latest internal components are available to new machines promptly, they have great displays with loads of real estate, long battery life, very good manufacturer support and the 13" is a superb, thin form factor for travelling with.
I run a cluster of Linux VMs on it using vagrant so it's just my browser, IDE and compiler to worry about (which being a Java dev isn't the big deal I'm sure GCC is). But I sorely long for a Debian based Linux desktop and package manager on the host. Every new macbook I get I try and install Linux and every time it's unfathomably painful, even when it works the experience is so poor I'm forced to abandon it.
But what other mobile kit is out there, built to the same standards?
What you will find is a lot of people repeating the claim about Apple hardware and the OS. A belief based it seems on one fact - they are happy with their Mac and haven't used anything else for ages, so how can other computers possibly be as good.
We know also that the glowing Apple logo proudly displayed by too many DJs, speakers at conferences, and certain movies and TV shows, is an effective marketing campaign. Ever-present, hitching a free ride on whatever is taking place on stage. This matters, it's not like a Marshall logo on speaker stacks, it's more prominent, center stage, often the only light source in frame.
I wish more presenters and performers opted out of the glowing marketing campaigns of the equipment they use. The brand of your equipment is not the reason why you're up there presenting.
I find the logo and "sameness" rather embarrassing, but it seems to be the only game in town. Please do link me to a $1200 non-Mac laptop with a high-res 15" screen, thin form factor, and nice trackpad.
The cheapest high-res/HiDPI/Retina 15" MacBook costs $1999, not $1200. The baseline 13" rMBP costs $1199 after the education discount though.
 By the by, if you order from the Apple Online Store in the US, you can get the student discount no matter what. There's no verification of any kind (like to possession of a .edu address and what not): http://store.apple.com/us-hed
Edit to add: My point is really not about the price but that taking away the "brand status" as a factor or even making it a confounding factor, Mac laptops completely own the "nice-for-user hardware" space.
I'd like to (perhaps) get the Dell UP2414Q monitor, which is Retina-esque monitor (3840x2160 -- double of 1920x1080), and the Late 2013 15" rMBP is the only Apple laptop that can use the monitor in Retina mode at 60Hz.
Also, I've heard quite the opposite with regard to MacBook prices -- they stay up, while the prices of all other laptops drop significantly. For example, a high-end Late 2008 MBP still sells for nearly a thousand dollars on eBay, whereas a ThinkPad X200 will cost you only around $100 . As a side, you can squeeze 7-8 hours of battery life out of the ThinkPad X200 (running Arch).
I guess you're right that PCs retain their value even worse, but even $2000 to $1300 in a bit more than a year seems like a good deal.
This. It looks like everyone is happy to promote the Apple brand on top of themselves. For free.
A bar graph comparing failure rates among manufacturers appears on page 6. Asus and Toshiba represent the top tier, but Apple's better than average and not far behind them.
That said, I think much of the "unrivaled quality" that many perceive in Macs has less to do with failure rates and more to do with the details - MagSafe power adapters, fantastic trackpads, the general lack of crapware; all these details come together to give an overall impression of a more put-together piece of electronics. This is coming from someone whose first act upon firing up a brand-new Mac is to stick a copy of Windows on it. (Nuking the price advantage I'd otherwise be getting from going with Macs in the process.)
The CF-53 features a hardware on/off wireless switch, magnesium alloy casing that you can jump on, port protectors that fight dust and debris, and a keyboard that is to die for. The tactile feedback on the keyboard is absolutely incredible. It is the best laptop keyboard man has ever devised.
I hear it all the time, that Macs are the highest quality money can buy, but compared to what? Compared to cheap, plasticky crap run of the mill consumer Windows laptops from HP? Yea of course, get a Macbook there's no doubt.
But compared to a Panasonic? No way Jose, Panasonic makes better quality hardware that lasts longer and will take any abuse, which is why you'll read reviews by armed forces deployed in the ME use who recommend Toughbooks over competing ruggedized machines, including machines made by military contractors like General Dynamics.
You can spill water all over the 53, and drop it to the ground from three feet. Order one with built-in GOBI wireless card or GPS to make up for the bulk. Buying on ebay is commonly done to obtain toughbooks on the cheap. They last forever anyway, and they are often dumped on the market en masse once off of corporate and government leases. I would take my whatever-priced CF-53 with 10,450 operating hours over a brand new $1200 Macbook or brand new $1800 plasticky feeling consumer Windows PC without hesitation.
The only other laptop I'd consider buying for a mobile workstation is a CF-52, and only because it offers a higher resolution display and a higher performance GPU.
And that's the thing. When someone says "It's the highest quality|best|perfect laptop" I add a "...for me" to the end of the sentence mentally. :)
That seems a generation behind my rMBP; i7, 16GB 1600Mhz, 1TB, 3360x2100, 802.11ac. 0.95" height, 4.5lbs. Similar claimed battery life.
I haven't tried dropping mine from three feet or throwing water over it yet though...!
The only major gripe I have is with the apparently decreased battery life.
There are ways of extending battery life , but I'm usually plugged in when I work so I haven't played with it.
I also haven't tested Linux support for:
- multiple monitors
- printers, scanners, fax machines
as I don't use those things or they did not come with my particular CF-53 model.
Otherwise, the keyboard fn-buttons to adjust brightness, volume, etc work straight out of the box without any need for configuration. Wireless works better for me straight out of the box on Arch than on Windows, even taking into consideration the host of proprietary Panasonic wireless drivers . Overall it's a very clean experience.
Have you ever tested its solidity ? (i.e. made it fall?). Does the weight (2.7 kg) bother you in any way ?
The bulk definitely takes some getting used to, but the machine has become so indispensable to me that I'm willing to have it weigh me down. I really do consider it the Lamborghini of mobile workstations, very excessive in many ways, but once you've used it there's nothing anyone can say to you to shake your belief that it is the very best workstation computing experience in the world.
What the 53 compromises in form factor it more than makes up for in productivity, enjoyment and peace of mind. It's a clear level up from Macbooks and Thinkpads galore, form factor aside. And it runs Linux real g00t.
Even for the clothes, the only logo I occasionally have printed on my clothes is the logo of my employer on a clothes provided by them for free. That much advertising is acceptable for me.
Actually, same goes for macs. I always find it funny that in TV shows the logo is covered up even though everyone can clearly see they're using a mac.
But, if I'm presenting something computer related to an audience interesting in computer related stuff, it's perfectly reasonable not to show any unpaid advertising related to computers. I don't want that anyone in the audience get an impression that I recommend any specific laptop brand.
Covering up a car's logo with a sticker is obviously not an option, so personally I would avoid those big TOYOTA cars.
Regular car logos aren't so greedy for attention. They don't glow at night, or cover the entire rear panel of the car.
I'm quite surprised that so many people in this industry, and DJs at gigs are happy for the logo to sit there glowing all night on stage. I don't get it, Apple isn't sponsoring your talk or performance.
I guess I'm too optimistic about people caring about keeping a good distance between marketing, capitalism and the expression of ideas and art. To me, those things should remain completely separate.
I spent a lot of time fighting the proprietary thing. It's a noble effort, but I realized after years of sub-standard drivers, laptops that don't turn on when you open them, cpu fans buzzing out of control, etc, etc, I'd rather spend my time doing things instead of screwing with things.
Linux is great, I love it on the server and pretty much use it exclusively there. But I haven't seen any laptop manufacturer come close to building any laptop that's close to a Mac laptop. When you start off building based on cost vs. based on function & product, then you're always building something sub-standard. It may seem like indulgence, but no one makes unibody laptops but Apple. No one can.
I spend my days working on a beautiful machine that functions how I expect. I fiddle with very little, don't have to worry about upgrading or tearing anything apart and just focus on getting the things done. You can do this on Linux too for sure, but I feel like for me, the Linux desktop on crappy hardware is not fun or satisfying.
I have a Retina MBPro with 16GB of ram (soldered) and I couldn't be happier. In a few years when I want a laptop with 32gb ram, I'll give this one to a friend or family member and buy another one.
You left in '04, this nonsense ended in '06, '07. Partly because no one is really changing the hardware much, partly because we have first class support from Intel now.
The trick is that it has very well supported Intel components. As a matter of fact, Linus used this laptop for some time.
I moved away from Windows/Linux 6 years ago, not sure how things have changed, but I have no intention on going back to that.
- Are you claiming that the specs match a 13" MacBook? If so, you must realize that it's possible to have a poor experience even with the same technical specs.
- I haven't heard good things about Lenovo's non-ThinkPad laptops. Has this changed recently? Do you have something (a review perhaps) to backup the idea that anyone should seriously entertain this laptop as a legitimate choice?
Yes, I use it daily. There are a few issues but overall it's awesome:
1) The wifi driver is fairly new and hasn't been ported to BSD yet so you must use Linux (most want to anyways).
2) HiDPI support is not great among the various DEs, but Gnome 3 and Unity are both pretty good. Some applications are not so great though, Chrome in particular.
3) This computer has a touchscreen and that works at least in Gnome 3 but there's nothing like the Windows 8 metro interface on linux. So you kind of lose that really nice feature.
> Are you claiming that the specs match a 13" MacBook?
Perhaps not the brand new Macbooks but the ones that were its peer, yes.
> I haven't heard good things about Lenovo's non-ThinkPad laptops. Has this changed recently? Do you have something (a review perhaps) to backup the idea that anyone should seriously entertain this laptop as a legitimate choice?
Lenovo is a big company, they release everything from cheapy laptops to high-end Thinkpads. This is their Ultrabook (Thinkpads are not ultrabooks) and those are generally high quality, this one is as well.
*based on the context of this thread, I should mention that while he is a technical person, he runs Windows and does not attempt to run linux or anything else natively.
It was the first lenovo I owned, as it nears 4 years of usage, I'm only now starting to look at replacements, and I think I could definitely get away with using this for another few years.
All the things I'd learned to work-around, suddenly became non-issues, and all of a sudden I had a real window manager again.
You are absolutely correct when you say that everything is 'not-quite-right': package managers are absent by default; Linux tools are sometimes hackily modified to work on Mac; additional tools have to be manually downloaded.
It's possible and the interface is generally fairly slick but everything feels like a hacky solution to a problem that is just not there with Linux.
It is not, by definition, an "optimal for task" desktop.
I've used OS X off and on for much of the past decade. It's not a serious productivity platform.
To whom? If your customers are Mac users, it sure is.
When it comes to Apple's hardware/software combination, I'm sometimes surprised by how Linux compares really poorly in my experience. Weight and form factor aside, the trackpad on my Thinkpad is awful. Really god damned awful. And I wouldn't usually complain much about that, but the other fact is that the TrackPoint nipple is probably equally as bad in build quality and when you move the pointer a bit, it seems to get stuck and continues to move your pointer until you rub that nipple left or right. The sensitivity of the TrackPad however, is a disgrace, and the minimum jump seems to be something like 10 pixels, on a 12.5" screen. That's very choppy.
So: when I'm on my Macbook, I miss the trackpoint. When I'm on my Lenovo, I miss the Mac's multitouch trackpad, and a better trackpoint.
Software will improve the experience, but better hardware has to come with that, in general. When it comes down to it, the best quality you'll get out of your money will probably come from a Macbook (throwing in the form factor if it's to your taste, which adds points), so developers end up going for the better hardware, the better user experience, and hey, it happens to come with OSX, which without much effort has this really usable development environment, unix utilities, etc. Good enough, I'd say, given what the alternative usually is. And I still develop on Linux most of the time.
Back in the day, IBM made some good hardware. The Trackpoint was one of the things they made that were cited as examples of good engineering. Specifically, it was designed not to do what you just described.
The other benefit of nubs was that not having a huge touch pad at the bottom of the laptop let them bring the keyboard much closer to the edge, where (like a regular keyboard) it is much more comfortable to type on. Since modern Thinkpads include the touchpad anyway, you have no choice but to hurt your wrists constantly for the sake of a device that (if you're like me) you completely disabled in the BIOS because it just got in the way.
You can click, or emulate a double click with two fingers. No third button emulation that I have worked out (and no, using your other hand on the keyboard does not count). As far as I am concerned that is a big disadvantage not having the paste buffer functionality available for the track-pad.
BTW, having only ever used thinkpads with disabled trackpads (I agree they suck on thinkpads), how do people not touch these with their palms all the time by accident?
There's "brew cask" for that! (http://caskroom.io/)
I also don't like the way closing all the windows of an app doesn't necessarily quit the program. To close a program completely, you often have to press command-Q, or right click the app and quit it that way. I've used a mac at work for years, so I'm used to it now, but it still seems unintuitive and awkward.
Not to mention the poorly featured Finder and Terminal applications. Yes, you can install 3rd-party replacements, but the defaults are pretty woeful.
Lately, I started using a linux vps as my development environment and it's so much better. It's worth switching just for a good package management system.
- do you work on graphic files ? will you use Photoshop ?
- how do you communicate with your clients/peers ? (would you just refuse a MSWord or Excel doc for instance, if it didn't render properly ?)
- do you have to deal with specific hardware ? (for instance, Blackberry phones)
- do you have to debug websites or other apps on iOS devices, anything mac related ?
All of the above seem non trivial, while potentially critical depending on what you do. I think it would be interesting to know where you are on the spectrum.
Dell Precision, HP mobile workstations and rMBP -- the Mac is the cheapest. Now I regret it a bit as the cooling of rMBP is quite bad compared to the other two, but at least it's slim.
There are lots of people carrying Macs, but since the games industry is strongly Windows focused, those Macs are actually running Windows on them.
As for the UI, until Mavericks I think it was behind the last stable Gnome 2 release. Now it is ahead in some areas but still behind in others.
Finally, Ubuntu continually screwing up things like audio support or ruining areas of the UI (ironically to make them more like OS X) also helped me make the switch.
I don't consider OS X to be a development environment for serious development. I do consider Linux and Windows to be real dev tools.
You are indirectly saying that people doing development on OSX are not 'serious developers' or at least are not doing 'serious development.'
[ What is the difference between 'serious development' and regular development anyways? I'm pretty sure that Apple employees aren't developing iOS and OSX on Windows or Linux. Do you not consider systems-level (building an operating system) development to be 'serious'? ]
It's really easy to get caught up in the SV culture, but it's by no means the rule. There's millions of developers out there whose code is never made public, writing Java, .NET, C, C++, Ada, Fortran, and other languages that HN would regard as obscure, niche, or dead. They're consulting or working for small businesses, medium size businesses, enterprises, local, state, federal governments.
I don't know if most of them use Windows, but it's definitely a hugely substantial fraction. It's not a small minority.
Where I work, it's a 50/40/10% split between Windows, OS X and Linux as our DE's, though most of us run a Linux VM for the development server to run on. Makes life easier that way, and with Vagrant we're all running the exact same environment, despite differing opinions on how to do things!
If we had to target UNIX systems, the development was done via XWindows or telnet/ssh to common build servers.
Having said that, I need a terminal (iTerm2), a browser, and a packet manager (homebrew), and I'm happy. I assume build issues would happen on Linux too, and they would probably be harder to resolve (more versions of the OS).
This allows developers to experiment with different paradigms with regards to the GUI, see for example the popularity of tiling WMs on Linux. (i3 has my preference, others swear by xmonad).
I know it is possible to change window managers for Windows and OSX as well but the experience is just not the same.
I used to love KDE, then they messed it up with KDE 4. Moved to Ubuntu / Gnome. Then Ubuntu screwed it up when they made it all Unity based. Screw that, I was happy working the way I was without to much shiny. Now using XFCE, and its refreshingly simple.
People make a big deal out of tmux's split screens, but my workflow is much more flexible with xmonad and GNU screen (with the caveat that it requires more upfront).
I switched over to XFCE for a while, until finally settling on i3. I'm perfectly happy with i3, and even if KDE pulled their heads out of their butts, I doubt I would go back.
That's a fairly large assumption to make based on your admitted lack of experience.
I think many commenters in this thread could benefit from taking a step back and remembering just how unimportant this arguing is. Just use what you like and don't put-down others for using what they like.
If you're someone who has taken an interest in making Linux a popular choice as a desktop OS, this subject is critically important. It's only natural to assume that one could learn a lot about what it takes to make a Unix-based operating system popular among desktop users by observing the example of the only Unix-based operating system to have become popular on the desktop market. Figuring out how it is that OS X is able to attract developers despite its (presumably) inferior developer experience is a closely related question.
Although I also agree with "remembering just how unimportant this arguing is", I'll illustrate by providing a counterexample to the Fine Article's idea that OSX is "an aesthetically pleasing OS". My idea of an esthetically pleasing UI is one with text labels instead of icons, relatively direct access to all information and controls, and a lot less of the shiny accents, animations, forced mousing, and other decorative, annoying or obstructive junk.
I'd also like a laptop with the keyboard in front and the trackpad behind, but apparently I'm a freak or something.
Like the Acer Aspire R7?
I wonder how feasible it would be to gut one of these things and update its internals (big fat battery and a small ARM SBC, maybe).
I've probably had 50 laptops over the last 20 years, and the only one I've had that approached the number of successful suspend resume cycles with Windows or Linux were Thinkpads, although even with Windows, there's a whole world of pathological resume behavior. Sometimes they'll just sit there, sometimes they never wake up. Sometimes you close it and then reopen it a second time and then it magically wakes up. The worst cases are when the video comes back but the sound doesn't, and you're faced with living without the sound for a while or enduring a reboot. I feel like this is the fundamental thing that a laptop is supposed to do and it is disheartening to have used these machines this long and to still have endless problems with it.
That being said, all I use the MBP for is to ssh into my Linux desktop machine (Debian), where my tools are. Occasionally people suggest to me that the linux distros are pretty good on the MBP, but I've had such a bad history with Linux on laptops and I'm getting to be an old fart now and I lack the enthusiasm for fiddling around with the machine for several weeks to get everything working right, so OSX is a (albeit outrageously expensive, at the treat of my employer) compromise :)
Hibernate will often take longer than a clean boot — because it has to read all allocated memory from storage into RAM.
Among Mac users, your comment is hard to understand, though. We don't have "suspend" or "hibernate" so we don't think about that. Want to relocate? You close the lid, no thought about it. Get to the new place? Open the lid, and your mac is operational instantaneously - literally as soon as the lid is fully open. Of course, the laptop was in power-save mode while you were relocating, but you don't think of that.
When I first got this machine, I also ordered the docking station with it so I could plug my monitor, mouse, headphones, and phone charging cable into that instead of the laptop. I can drop my machine into the docking station, and either open the lid (out-of-the-box, no-config multi-monitor display) or not and everything just ... works. It's amazing.
I don't have a dog in this OS fight but just wanted to throw that out there.
* Natural, responsive scrolling. After two-finger scrolling on OS X where it's so responsive that it's exactly like sliding paper over a table, nothing can really compare. Linux can't get to that point for a long time since it's limited to sending scroll wheel events.
* Palm and thumb detection that work like black magic. I have never once had palming issues on OS X or issues with resting my thumb on the pad and using other fingers to point, click and drag. I've spent days on end trying to tweak the Linux Synaptics drivers to work the same way with no luck.
YMMV. I have had such issues.
I don't have a proof, but this doesn't seem to be the case for GTK3 apps. Scrolling in Evince (GNOME's PDF viewer) and Web is very responsive.
In Chrome you can set the default zoom for pages, but you will have tiny tabs.
Until you connect a non-HiDPI external display, where everything will still be scaled up by a hilariously huge factor of 2.
This is exactly what I'm referring to as High DPI support. Maybe it's not the solution you'd prefer but it is a solution. By contrast, Linux still has a lot of fit-and-finish issues with high-DPI, even in Gnome 3. I would believe that they're going about it in a better way on the backend, but the fact is OS X is the only one really delivering at the moment.
Certainly you can't ignore the bandwagon effect. All the cool kids have MacBooks. I'm not saying that's why everyone owns one, but you can't discount it as a reason.
Also, the hardware is really nice. I know I'm making Stallman cringe when I say it, but Apple makes products that are enjoyable to use. And if you're going to use the Apple hardware, OS X is the path of least resistance.
Lastly, and the author does touch on this, OS X is nice because it can be used "both ways" - it has a pretty GUI, and it has keyboard shortcuts, programmability, and "Unixness" built in. I haven't come across a Linux/BSD desktop environment that I can use in my hacker's way, and my wife can use in her point-and-click way.
Unfortunately, what could you use besides a Mac? An X1? They aren't that great. I wish for just one PC laptop that gets trackpad right. Just one!
I believe that the inflection point for the beginning of Apple being cool was when they announced OS X, and the other inflection point was maybe around the iPhone 3GS.
For my part, I have always had a deeply-rooted and entirely irrational hatred of Apple products. OK, the retina screens are nice. Trackpads are usable - but I hate trackpads anyway and always carry a proper mouse around, so no win there. (What happened to those little joystick-type thingies that used to stick out of laptop keyboards, anyway? I liked them.)
But I'm just about old enough to have mostly owned and used desktop PCs. And those desktop PCs have all been custom builds. I'm typing this on a slightly ramshackle Lenovo laptop, which is obviously not a custom build - but I can take the back off it and fool around if I so choose. I've never used particularly outre specialist components or anything; but in some fundamentally irrational way, having, in principle, an absolute say so on what's inside my computer is important to me. Apple's entire business model is antithetical to that. And while I see plenty of satisfied Apple customers among my friends and family, I also see them forking out endless money to Apple support for trivial fixes because of it.
(And I won't be buying Lenovo again, because I do not expect my BIOS to be password protected, and not be provided with the password. :-) )
Are you referring to UEFI? If so, what do you mean about not being provided the password? Doesn't it either provide an interface to put your own keys or at least switch to legacy mode?
I thought it might just be the dodgy vendor I got it from, but my girlfriend ordered a Twist from the official Lenovo site, and has the same issue. Which, because she's in the brave new Win8 SecureBoot era, stops her from installing an OS she hates less than Win8.
Unless either of us are prepared to spend hours on tech support being passed around, anyways.
Shame, as the machines are nice. You can't beat a good keyboard... I'm all for being secure, but I would like it if my computer didn't presumptively consider me to be an attack vector.
For me, its all about unibody. Screen quality. Trackpad touch and feel. Keyboard comfort. The rMBP fits the bill for all of these things - I'm NOT content with OSX as an operating system, however, this is just something I put up with (and since I run my Linux dev environment in a VM, big deal anyway). I'm certainly not a typical Mac user - I spend 99% of the time in the terminal.
I've looked at the Google Pixel series, and some of those look like they come pretty close - except I have no desire to use a Google operating system, of course .. and they're just not available locally, like the rMBP's are. But if there were a manufacturer who puts together a machine that has the physical characteristics of the rMBP, I'd happily abandon Apple hardware in an instant.
So now I have Windows/Ubuntu on dualboot on PC and a Mac laptop. I feel like the Mac is basically the Unix I wanted, without the crappy window manager of Ubuntu. However, the single thing I've loved so far has not been a hardware or aesthetic manner, but rather how Mac opens windows as it boots up from where I left. I never even knew that was possible, but I feel like it has increased my productivity a lot.
I think shortly we will see the monopoly that Apple has on high end well designed laptops will come to an end.
The weight advantage of the Series 9 and the screen are nice, but battery life, keyboard and trackpad are way behind Apple's quality. My next laptop will come from Apple and i don't see any competitor coming close any time soon. Samsung will drop out of the laptop market in 2015 alltogether btw.
It's not even about Mac OS X vs GNU/Linux, I'm not using any desktop environment on my computers (no Gnome, KDE, XFCE, …), my graphical environment is composed of a minimal windows manager and a small taskbar. I don't need anything else. I just checked and I don't even have a graphical file browser installed on my laptop which I've been using it for several years now. I spend my time in terminals, Emacs, and my web browser.
I know that this is not the case of every person who's working with computers, but I also know quite a few people in my surroundings who use the same kind of environment (and to my knowledge we're all pretty pleased with our hardware), so I'm convinced that I'm not an exception either.
I see people who are very productive on Mac OS or Windows, know all the shortcuts, etc. yet when I use my MacBook or a Windows machine I feel disoriented. It's all a matter of being familiar with your tools; nothing really magical here.
the bit that surprised me though was this comment:
> The thing is that you no longer have to apologize or feel guilty for using an Apple doing linux work. In fact, not using Apple makes you look like an unenlightened fool and a cheapo that is unwilling to pay for decent tools. There is nothing sexy in using a linux desktop and plenty of social pressure for buying a mac.
do people really think that way? i mean, i have no problems with people using macs, but my perception is just the opposite - that they picked a mac because it was there, it worked and it was a convenient, utilitarian option. there's nothing particularly "enlightened" about it.
One of my hobbies on GNU/Linux systems, since the early days (1994) was to get GUI tooling for my work.
Most of them taken from the more mature UNIX systems, back then.
For me the CLI is only for quick and dirty operations file operations, or calling build tools. 90% of my time I live on the GUI.
The big advantage of tiling vms is that you always use the whole screen area without having to only use maximized windows. You can easily split the screen into several areas where you can put windows. Another advantage is that they are usually keyboard driven so that it is possible to launch, close and arrange windows without using the mouse.
The one I like best is wmii, which has a brilliant column system combined with tags instead of workspaces(i. e. a window can have several tags instead of only one workspace). Nowadays I use i3 since it is a bit more modern but so far I find that the usability is not quite as good.
It's strictly possible to do this in most non-tiling window managers. The key difference is that arranging windows with the keyboard is not just possible but significantly more practical.
Speaking for Openbox (since it is what I use) the benefits are numerous: less lost space on screen (UI is customizable to the pixel simply by editing an XML file); extensive and customizable keyboard controls (again, just by editing a simple XML file) for managing windows (resizing, positioning, etc.) but also for launching applications and managing multimedia keys for instance; more lightweight in term of resources (not that important, but always nice); and being compliant with ICCCM and EWMH standards which allows extensive external scripting using tools like wmctrl.
What is the benefit of Unity for someone like me?
I have been a Linux user from 1994 to 2007 (mostly Slackware, some Debian and CentOS later), Mac from 2007. I switched to OS X, because: (1) I don't want to mess with hardware and drivers anymore; (2) I don't want to update my whole operating system to update applications; (3) in my work environment people do use Microsoft Office et al.,; (4) the hardware is nice; and (5) I have nothing against Windows, but it is not a UNIX, so not for me.
If some of the advantages go away, I'd be happy to switch back to Linux.
This is huge. IMO, this is the purpose of an operating system. I want to install applications, I do not want to waste time installing new versions of my operating system.
The main focus of Linux distributions should be to make as many applications as possible available to the user and make them easily available.
That being said, Docker has changed this a bit for me, but most Linux distributions still fall flat on their faces when it comes to installing non-packaged applications. Sometimes I find myself having to download applications from websites, manually configure them or even compile software myself.
Basically, the file system hierarchy should had been versioned from the start:
The FHS is a disaster that every distribution tries to implement differently: https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
It's never really taken off.
There are some popular linux distros out there that have rolling updates so you never have to reinstall the os.
I suspect the majority of developers (outside of this few percent in the startup space) continue to use Linux and/or Windows. They just don't go around writing blog posts that start out by presenting opinions about usability of other OS's as fact.
All of the Ruby on Rails web developers switched to Macbooks at that time.
The author sees all of these people using OS X and wonders why they would pick Mac now over Linux now, but that's the wrong question. The reason that everyone is using Macbooks is because everyone picked Apple six years ago.
Notice that this thread is full of people who switched to OS X laptops in 2007, but they no longer see the competitive advantage and they're switching back to Linux.
Maybe, just maybe, different developers enjoy coding in different ways.
Those Intel GPUs are a no-go.
OSX makes me happy. The apps are considered and cared for by their makers, largely I believe, because they get paid for their time and ingenuity.
Libre works great for APIs, not so much for Ape-y eyes :).
Lenovo's between the two. My T520i isn't flyweight, but it does OK (the power supply is a brick though). I've eyed the Carbon but have passed on it to date.
There don't seem to be any other options comparable to a MacBook Pro for hardware. In particular, very, very few laptops that aren't enormous and heavy have a quad-core processor.
On a vaguely related note, one aspect of Dells I've found particularly annoying is their implementation of the Trackpoint. While available as an option on some laptops, I found that the rubber used on the nub was harder, and far more irritating to my index finger, than that used on Thinkpads. It's almost comical that user satisfaction could come down to an issue such as this, but over the several months I was using a company-issued Dell, I found that to be a constant annoyance. I tried sanding down the bumps on top, substituting a spare Thinkpad nub (the bases are sized differently, it didn't fit), and a few other tricks. Ended up with blisters on my finger.
The 13" MBA weighs 2.96lb, the 11" (too small for my blood) 2.38: https://www.apple.com/macbook-air/specs.html
Lenovo's Carbon X1 is 3.09lb: https://www.lenovo.com/shop/americas/content/pdf/system_data...
Though here it's claimed "starting at 2.8 lb": http://shop.lenovo.com/us/en/laptops/thinkpad/x-series/x1-ca...
The Lenovo also sports a 14" display, your Dell a 15".
GPU switching is the one thing I haven't really tried yet. I've stuck with the Intel chip. I've read that people have had success with Bumblebee. In fairness, I've also had a MacBook Pro with Fedora 19 on it, and GPU switching didn't work there either.
Suspend/resume work without issue, but I haven't installed the proprietary NVIDIA drivers yet, and those have a tendency to mess up resume (at least it did on my MBP w/ Fedora 19).
I _imagine_ NVIDIA drivers + suspend/resume works just fine with Ubuntu. Any "non-free" drivers in Fedora are pretty iffy in my experience. Usually after installing the NVIDIA drivers from RPM Fusion GDM won't even start, or you have to edit the GRUB menu item to blacklist nouveau, or any number of things the package should theoretically take care of for you. I've not had that problem with Ubuntu (just other problems, like a UEFI install on say a MBP, something Fedora does flawlessly).
These are the kinds of reasons people just use Windows or OS X I guess.
OS X and iOS users also need software that someone has to write.
I would. Desktop Linux has many great features, like actual tiling WM, SOTA filesystems, cheap virtualization for development, or that all software is managed the same way, instead of the mess that is OS X and Windows where some software is managed using brew, some using packages, some take care of updates by itself, some doesn't, etc.
But to be fair, I realize that I'm the hardcore Linux user who still goes out of his way tweak every little detail with Compiz and ensure that my keyboard shortcuts are all explicitly created. If others are given the choice between Mac, Windows, and Linux, Mac is the most consistent experience with both hardware and software, and I can regrettably understand their choice. I don't mean to go on a rant about Macs, I just want to mention that I've recently been forced to do subject the author's article.
So it's very sad, really. :(
Since I don't need to run anything other than a bunch of terminals in the VM, I can use a lightweight DE that is lightening-fast and very light on resources. A few more tweaks, and you can make LXTerminal feel almost like a native Windows program.
Add a few Windows gizmos to that, like Dexpot for multiple desktops and crazy keyboard shortcuts. Now you've got a top-notch DE that no FOSS offering can rival so far (at least in my opinion).
Could you elaborate on this please? "can't" as in "it's too much work" or "can't" as in "impossible for some technical reason".
Similarly, I can't make my own rifle, or design my own airplane.
Having said that, I have migrated to Win7 (on a Lenovo T430 with a SSD) towards the end of last year. For a office workhorse, this setup is one of most productive setup I have used in years!
KDE 1-3 and Gnome 1 were a good desktop environment. I don't get why some devs prefer to rewrite good things. KDE 4 and Gnome 3 hurt the Linux desktop and users are searching for alternatives (http://en.wikipedia.org/wiki/KDE_4#Reception , http://en.wikipedia.org/wiki/GNOME_2#GNOME_3 )
Indeed - people want an alternative, not just a replication with a different license.
Right now I don't care about the Metro interface at all - 99% of the time, I only see it when I use the Start screen, which is fantastic and works much, much better than the old Start menu despite the loss of recent-document jump lists per app. But, I can see a huge potential in Metro.
Also anybody who works with designers is probably going to have to interact with .PSD files at some point and GIMP isn't always an adequate tool.
What's wrong with GitX-dev (rowanj fork)?
If I knew I could get a similar hardware with an open-source OS, I would switch in an instant. Last time I looked into Google laptops, they had drives too small to be useful for development without internet connectivity.
I really like Mac OS X, it does what I need and looks okay. Pretty much all the tools I use are available cross platform. If I where to replace it, it would be with one of the BSDs. I don't like Linux as much as I once did, I think it has become rather messy.
Virtual machines are now more easy to use than ever. Your host OS matters less and less.
Furthermore, Linux flavored OSes don't support the "secondary" applications we require that Macintoshes do - Microsoft Word/Excel, Photoshop...and working sound card drivers.
True. So when you decide what your host OS is what ultimately matters is _drivers_. On my desktop PC I almost always have a few Linux VMs open, and I develop on them. However, Windows as a host OS makes my AMD GPU run cool, it can resume/suspend perfectly, and so on. So for development, Windows as host with Linux guests is close to perfect (and you can version/snapshot/backup your VMs so you can just continue if you change machines).
Has this really been an issue in recent times? The last time I had serious sound card driver issues was trying to run Linux on an old Powerbook G4 back ~2006.
It's not hard to imagine what something like this might look like. QubesOS is doing interesting things in this space, although their concentration is clearly on security and security researchers rather than developers (and definitely not the average end-user).
And that's where this lost my vote. I don't want my desktop to have built in awareness of my issue tracker. My desktop should have no concept of what an issue tracker even is. Simple tools that compose well to offer complex functionality in the Unix philosophy. Not monolithic design which tries to anticipate and integrate with my development workflow, because it will inevitably get my workflow wrong. I like having these tools as standalone applications, because that means it is very easy to switch from Jira to Redmine, or from Git to Mercurial, or from vim to IntelliJ. I want my desktop to know about serving, resizing, and refreshing windows. I want my web browser to know about rendering html. I do not want my display manager to crash because we upgraded the bugzilla version on our server.
I do have problems with OSX, but they are primarily the result of not having any decent package management system, and is a discussion for another day.
In my opinion it shows that most "innovation" in desktops over the last few years have actually been a step backwards.
Customability is enough when it comes to the dev environment: the default installed tools are not optimal, but installing a second, third set of tools with brew for instance is a no brainer, and keeping an linux VM handy solves most other needs. Having an optimize windown manager doesn't feel so crucial when adding physical screens solves most of the switching issues.
I really think OSX is the best logical choice to develop for the web or iPhone/android.
My primary machine is a 2013 MBA, and I always switch between IntelliJ, couple vmboxes, spotify, 5-10 Chrome tabs, Pages/Numbers, and Skype. Often, I also run VMWare with Windows. My MBA never makes a squeak, and the only time I feel underpowered is when I have to open all of this at once.
Your hardware runs circles around mine, and should not struggles with such a basic workload - I would look into potential problems on the OS level or start afresh.
Edit: I work from home so mobility is not really crucial.
For .NET projects, Windows dependecy is a clear one.
For JVM projects, thanks to the JVM portability, the operating system only matters in terms of whole infrastructure, but not really for the application itself.
So we are able to use all our GUI based tools, take the build artifacts and deploy it anywhere.
Thanks to the new BYOD policy, some guys moved to Mac OS X. But no one has GNU/Linux on their desktops, except on Virtual Box and VMWare instances.
We are all old enough to remember the days when GNU/Linux did not exist and quite comfortable in UNIX environments, however we don't feel like tweaking stuff any longer.
90% of what I do is in terminal and in a web browser. Sublime Text gets a lot of the rest. But I still want Photoshop/Lightroom, Keynote, etc.
I generally use local VMs (I find VMware Fusion to be better than e.g. VirtualBox), but also use MacPorts. I wish I could get 32-64GB in a Mac laptop, though.