Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

> For Apple, I find almost the opposite in terms of forced development. If I want to write a program on macOS, I can expect the porting effort to Linux to be simple if not trivial, thanks to UNIX.

Reminds me of the days when I had to buy Windows to test if my website worked on IE.

In the case of Apple, I have to buy the hardware too!



sort by: page size:

> I really don't understand why developers use macs at all.

Because there are developers on this world that don't develop for UNIX, rather native applications for macOS, iOS, tvOS and watchOS.

Being a developer doesn't mean one is only allowed to work on UNIX.


> But whatever, who buys apple for the hardware? I mean, its a super nice bonus that it is overall the best hardware, but that's not the key reason.

Good point! I had to buy a Mac for doing iOS development. I was (reasonably) happy on Linux before that.


> Still, Apple has a decent Unix underneath all that glitter.

Had. That's what pulled me in to Apple laptops after spending the 90s convinced I'd never use a Mac.

With OS X, suddenly it was BSD, but with a Mac GUI! Cool. When OS X (10.0) came out I quickly bought a mac first time ever.

But Apple has spent the last 20+ years making OSX less and less BSD, locking out more and more core functionality into obscure nonstandard behavior.


> I find developers flocking to macOS really bewildering. As a developer, why do you want to fight your operating system to get basic things done?

Haha! (I assume that was sarcasm. If not, you might want to look at the voluminous writings of humans who have had trouble getting standard modern laptop functionality working on linux, suspend to disk, battery life, hi res screens etc etc. Not you -- I mean mere mortals who don't want to change their OS's swap configuration)


> Also, programming environment is just so much nicer IMO on mac.

Really? I had a Mac for a few years, but I found that I didn't like the environment as much as either Windows or Linux. A lot of programming environments work best on a Linux-like environment and don't do so well on something BSD-like (such as MacOS). There's a lot of open source software that only works on Windows and Linux, too... MacOS has such a small market share that many open source developers just ignore it.


> FWIW, I'm a developer on a macbook largely because I would like a portable UNIX-y system that doesn't suck.

This is pretty much why I switched to a MacBook too.

Windows is a workable desktop OS, and it has great software support for things other than developer tools (I can also play games, for example). Unfortunately, its lack of UNIXness means half the open-source software world (at least, the portions I care about) doesn't work well with it, and this is a pain.

Because I wanted something UNIXy, I switched to Ubuntu (more than once), but the desktop experience isn't great (in particular, both my graphics and my sound were broken) and non-developer application support is poor (few games I wanted to play were supported or worked, not to mention other things).

OS X, on the other hand, has a solid desktop experience, sufficiently UNIXy underpinnings for development purposes, and has good enough application support for my needs.

I do have the option of switching over to Windows on this thing, but tellingly I haven't in the two years I've had it. (I do have a Boot Camp partition for Windows, but it exists for the sake of a single game. Everything else I want to do can be done in OS X.) While using Windows or Ubuntu it usually took less time than that before I got fed up and switched OS yet again.

My experiences aren't representative, of course. I don't just do web app and systems programming on my computer. If I did, I'd probably be fine with Linux. But sometimes I also do things like browse the web (including watching YouTube videos and using web pages which have WebGL), dabble in game development (Unity's editor doesn't run well under WINE), edit videos (there's no good Linux video editor), play games, and so on.

I'm also someone who doesn't like dual-booting. I don't want to have to deal with two completely different operating systems with their own user interfaces, and have to stop one activity and reboot if I want to do a different activity. I don't want to have to deal with the mess that is trying to share files between different OSes.


> Dev here, the burden of Apple far exceeds any claimed time savings.

I have the complete opposite experience. I don't feel any burden from apple when using a mac. MacOS being a unix like operating system makes developing on it a breeze. On windows i need to use archaic developer tools like powershell. Linux commands I use on my production servers don't work on my development environment. If I want to use git in a sane manner from the command line i need to install an emulator that has its own issues.

There is a reason almost all companies in silicon valley use macbooks for their developers.

> but it's not like a hobbyist is going to buy an Apple computer for embedded, web dev, gaming, PC applications, etc...

As someone else has said, this is exactly what people seem to be doing.


>the hardware is high-quality.

On the outside, maybe? The internal components of Apple products are notoriously planned and built for obsolescence and failure to keep you trendy folk giving them money, line after line (and then charge you to fix the failures!)

>it's UNIX

People would use Linux if the platform had the money to bribe software makers to support them. That's a "forced-reason", and not a positive design point of Apple itself.

>made-up justifications

Call everything you don't agree with "made-up"?

But seriously though, the reasons that devs use macs are mostly forced/non-reasons:

a) Earn a tonne of money and terrible value is not a problem for them

b) Need it since the thing they are developing needs to be tested on macs

c) Need UNIX and software that supports running on it.

d) etc.

After a while, you realise most of the reasons why any developer ever buys Apple starts with "need", which, hopefully, you should understand is a statement to the marketing, underhand, and monopolistic tactics of Apple (forcing you to "need" their products, rather than want them)


> Why would I pay a premium to use an operating system that can't run software my free OS can?

Because you don't need all that software if your goal is to 'code'. If your goal is to run some specific ancient text editor then yeah you may struggle. If you want to code and get something done it's the right platform.

And because the 'normal' things are 10x better - power management, touchpad, display driving, etc.

Do you want to spend your time creating, or time trying to make basic display scaling work on Linux? And why are they better? Because Apple integrates.


>Macs used to be popular with developers but, this has basically changed IMHO.

Hedging almost-baseless assertions about verifiable facts by calling them opinions does little to hide the fact that you can't prove this and know you can't. IMHO, Macs are still very popular with developers, and the reason hasn't changed: a great GUI and a *nix command line. I personally would use Linux before Windows though because I hate both the Windows GUI and the Windows command line but I only hate the Linux GUI and could probably adjust to xmonad quickly and possibly even gain productivity. Granted I suppose I could use "Bash on Ubuntu on Windows" if I absolutely had to, however I think that name itself is an adequate synecdoche for my issues with the OS as a whole.

For what it's worth I feel pretty well supported as a Rust and Haskell developer in the Mac ecosystem, and Microsoft will have to do a lot better than give me bash to make me switch. It is a necessary but not sufficient condition for my computer usage ;)


> Every company I've worked at for the last 10 years has developed exclusively on macOS.

Counter-anecdote: I have had a Linux computer on my desktop for over the last twenty years, have used Linux primarily for maybe the last eleven, and exclusively for the last eight.

I do not get the near-religious love for Apple products. Pre-OS X, they really were wonderful, best in class without a doubt. I kinda get the attraction back in the early 2000s, when Linux could still be a chore and Macs were a decent choice to get a computer which had a shell and ran real software. But now? They are just not for me. I want to own my own computer, write my own software and control my own destiny.


> This might be a controversial opinion, but I find developers flocking to macOS really bewildering.

You’re entitled to your opinion, but it is a good platform to work on. A real UNIX underneath, with a great GUI on top. Most things that run on Linux a recompile away from working natively, and still native versions of Office and such.

> This Lima thing

It is a VM to run Linux. How is that a demonstration that the OS is hostile?

> docker running in a virtual machine

This hasn’t much to do with the OS. OTOH if you want Linux containers, then I don’t see how you can avoid using a VM somewhere.

> Apple being actively hostile with the default coreutils requiring you to layer multiple third party tools just to get a modern version of awk and grep.

The versions of the GNU tools are ancient because they are pre-GPLv3. The BSD tools are more up to date. In any case, you can just do what you’d do on Linux and use a package manager.

> I Just recently I learned you can't add more swap ( creating a swap file and adding it ). That seems incredible to me.

What is the use case for this? The OS just adds some swap by himself, no need to mess around


> Every time I go back to macOS, I get frustrated with the inflexibility of it all. I get that it's a pain to feel like you have to customize everything to get something usable for you

It's great if macOS is what you want, or is close enough to it (which it is for many, many people).

I guess people's problem with Linux is that no amount of knob twiddling ever gets Linux's desktop and window manager close enough to what they want.

Personally, I want macOS to be my window manager, and I want Linux to be my dev environment/command line. I can't twiddle either to be close enough to the other, so I run Ubuntu in Parallels on macOS.

Now if macOS gained the equivalent of Windows Subsystem for Linux, I'd be super happy.


>I fully understand why people want to use Apple for their consuming needs. I really don't understand why my fellow developers choose to go with Apple as their work machine.

Because many of your fellow developers do not have and don't want a separate machine for just conding? Why is this idea so alien for some people?

I've been using linux distros (mainly Ubuntu before unity nonsense and then arch and even maintained a package in AUR) since around 2006 to 2013-14. Every now and then I install Fedora\Ubuntu\Manjaro etc to see if anything got better to allow me to use it as a universal device should be used. Every time the answer is a firm NO.

In fact sometimes the disto won't even install because of some weird reasons. For example I only managed to install Fedora on my current PC (build mainly for gaming) after changing some GRUB options (and spending two hours searching all over the web for a needed recipe). What the hell is this?

As a sibling commenter said - Linux is still only good as close-to-targed (server) work machine. And it also has a few OSS tools for musicians and painters (like MuseScore and Krita). But that's it.

Installation is still a mess, updates are still unpredictable. Software distribution is still a nightmare. General consumer software availability is ... there is almost none.

If at some point my mac will become too unfriendly to work with as a dev tool (I don't see it coming really. Some people on HN usually treat some minor things as a catastrophe) - I will build a small dev server (or rent one).


> If it wasn't for the Mac OS, I wouldn't even bother considering their lineup anymore.

Years ago, when I exclusively used Linux even on my local machines, I used to buy Apple computers and replace the OS with Linux. Because they used to build the best damn computers (specially laptops) out there. They were way ahead of the competition.

It’s sad that now we just have to put up with Apple hardware because of software integration, etc. . If I wanted to run Linux or Windows, I wouldn’t hesitate for a second to look somewhere else.


> It's like a community of everyone scamming and mistreating each other instead of working together to improve things.

I was saying this exact thing to a friend of mine who is big into apple products and suggested that you could technically do the things I wanted to do on apple devices.

The general ecosystem between windows/linux/mac is very different. Windows freeware is all packaged and provided on sites last updated in 2002 and look like you'll get a virus despite the site being the defacto source.

Linux software feels a lot more unified(despite n+1 packaging schemes) and feels a lot more like a collective effort where anything is possible.

Mac software wants you to break out your wallet and contribute to the APPL bottom line in order to get some basic custom functionality for some app written by a single developer that will be quietly given up on in a couple years.


> But I doubt Microsoft ever gets any closer to unix-like systems than Apple is.

I'm confused by this comment. OS X is literally UNIX. In fact, I think it's the ONLY UNIX system available to consumers.


> I don't know, starting with OS X a lot of devs used Macs because 'it's a UNIX system'

Yes to this!

I was in academia when I switched from Windows to Mac, and UNIX was a big factor.

Incidentally, my first Mac was an iMac G4.


> As for writing software macOS is nice since it is quite close to Linux and does contain a lot of the UNIX-thinking.

You know what's even closer to Linux?

next

Legal | privacy