I have seen many developers from Google, Facebook and other companies and noticed that they were using Apple laptops. Why are they using only Apple laptops?<p>I will be using it for mainly Front End development and no, I won't use it for gaming. looking forward to hear from you guys (:
Having recently switched to a Macbook (from a _beastly_ Linux workstation) for Python and Mac development, it just feels ... better. It's better in most of the non-programming ways: docker is better on linux, and I miss focus follows mouse, but everything works quite well, and feels stable. I like it a lot better than I expected.<p>This is the first laptop that I've touched and felt, "this is quality hardware". The touch gestures on the trackpad are so natural feeling that I swipe to change desktops rather than use keyboard shortcuts that I had set up. There is much irrational developer happiness at my workstation. ;) Sit down and play with one for a day, and you might be sold (I was).<p>You can drive two 4k monitors (at 30 hz, not 60) with it, too, which nets you three screens. That lets me have code/terminals on the monitors, and a browser or Slack instance open on the Mac. Code editors and dev tools are often native for the Mac (aside from Docker, which has some decent support but not perfect).<p>It doesn't hurt that its screen is gorgeous. I spent a year with dual 4k monitors, and this thing looks even better.
No its definitely not necessary. Nice to have maybe. In enterprise settings I've seen 100s of developers working across many organisations in the uk. At least 99% of them have used windows laptops. They might have had a vm with Linux or be ssh-ing to a server. Sure in a lot of startups or at conferences you might see a lot of macs. The hardware is (or was) very nicely made but for coding the software isn't that much different to a good Linux distro.<p>Remember many of your target users will be using Windows pcs or android phones and "it's working on my mac" is unlikely to keep them happy.
This is a question that will result in highly opinionated answers, but here is my shoot.<p>First of all: a good company will let you choose your own tools, whatever you feel the most productive with.<p>So why Apple? The hardware is nice but i think the key here is the operating system. It gives you a painless UNIX experience out of the box, without the Desktop Linux quirks (driver incompatibilities, multimedia issues etc.).<p>What are you using right now? Windows? The majority of "modern" software development seems to happen on UNIX-based systems (see: <a href="https://news.ycombinator.com/item?id=3786674" rel="nofollow">https://news.ycombinator.com/item?id=3786674</a>), so Windows is often treated as a second class citizen. It misses many essential command line utilities and in general simply does not encourage a command line workflow. Setting up a decent Node/Ruby/Python/whatever environment can be a real pain on Windows. I'm not saying it's impossible, just very painful. So unless you are working exclusively with Microsoft technology, Windows seems to becoming worse every year in regards to software development.<p>By the way this is coming from someone who has used a Debian/Windows dual boot setup for many years and switched to a MacBook just two years ago.
Is it necessary? NO!<p>Is it worth it? Oh gosh yes!! Like a hundred times yes!<p>My development productivity has been measurably an order of magnitude greater after getting the laptop. Just the simple act of opening the laptop and getting to work in a couple of seconds with the machine running at full speed is such a blessing. My experience with windows and even Linux (on laptops), has been that there's a slightly long delay in waiting for everything to come alive. Reopening apps would cause slight bits of sluggishness. And overall the performance degraded with each screen close and open cycle (this last bit mostly applies to windows)<p>And the battery life is nuts! Having my MBP has meant that I can pack it up and take it to the car wash place and hack from there since I know the battery is going to last more than 2 hours effortlessly (it actually does 6+ when doing just dev work on a slightly dimmed screen).<p>If someone ever made a linux laptop with this kind of quality and no hardware issues, I'd switch in a heartbeat. But that laptop doesn't exist yet (from my experience), so hands down, for development, if you can afford it, buy the macbook! Zero regrets guaranteed :)
If you want to do any OSX or IOS development, you need a Mac. You could try to build a hackintosh but it's not easy to find a laptop that will fit the bill. MacBooks are a premium machine, nice hardware and keyboard. But they're not perfect. I've had trouble with them, and so have people I know. I use a hp machine, and it does quite nicely, but then I mostly develop windows software.
Like many other things in life, you don't need an apple laptop. Some developers prefer it over Win* for example, but it isn't a be-all, end-all. I personally prefer mac, but i know competent dev's who use Win* . I think it comes down to your preference. Go in an apple store, and try one out.
Best i can tell, this is an artifact of history.<p>Early on, before the web, most was done in a terminal-like environment (most of the time input and output was text).<p>But then the web came, and as it was document oriented and had at least some emphasis on layout, the natural assumption was that web development should be sorted under media production. After all, it looked superficially like laying out newspaper/magazine pages.<p>So the formal web development classes got handed to the media department. And those places were a Apple stronghold.<p>This because most of the lecturers were people that at one point or other had established the techniques and such taught by using early Macintosh computers and its GUI.<p>Frankly, outside of USA, media production was the only market for Apple. And the one thing that was keeping them afloat during the 90s.
Developers who primarily write code for Linux servers will prefer to have a *nix workstation. That normally means using a Mac or running Linux on a computer built for Windows. Some also run Linux VMs on a Windows laptop, but that's a lot more work.
A few niceties apps in AppStore e.g. Affinity Photos and Designer only for Mac.<p>I have encounter Windows laptop (you bet even a Lenovo Yoga 3 screw is defective itself, loose screw) faulty too many times due to defective parts. It's why Macbook are well built the most and although it doesn't have any tools to control power management that Windows have, intensive running programs e.g. video processing or may overheat Macbook to 105'C but it's still working fine if you read SSD could still lasted a few more years depending on the temperatures.<p>Get Intel Power Gadget which is certainly useful to monitor the temperature and such.
I use it so I can have a laptop that just works with minimal fuss and a decent unix-like environment as I have only ever deceloped for the server side targeting Linux and BSD.<p>However, while I routinely upgrade to the best MacBook Pro, I'm not a fan of the physical aspects of the hardware. To me it's more like MacBook Poser than a pro machine. Just doesn't compare to the Thinkpads I've had for durability and quality of the keyboard.
I have never owned an Apple laptop or desktop, but I think the reason is a combination of the sleek style, usability of the OS, compatibility with Linux tools (can run Ruby, Haskell, Vim, whatever, etc easily on it) and the battery life.<p>I am surprised at how many developers I see at meetups with Apple as opposed to x86 + Linux, and I am an oddball running Windows!
Most of the developers that build web/dev tools(@ Google, FB, Dropbox etc), cater so much for the Mac & linux. They neglect windows.<p>Just make sure you are not on Windows. For example I am on windows and have failed to start using Tensorflow because its developers (Google guys) claim the build system they use (Guava) does not support windows.
> The majority of "modern" software development seems to happen on UNIX-based systems (see: <a href="https://news.ycombinator.com/item?id=3786674" rel="nofollow">https://news.ycombinator.com/item?id=3786674</a>), so Windows is often treated as a second class citizen.<p>I'm really sorry, but if this is what you think, you're very delusional. Try to get out of the HN bubble sometime?
Yes sure it is a must for programming. You first need to go mac store and ask a mac genius how to buy a mac :). And then you come back home relief and start coding. Please don't forget you buy mac for coding.