Is Apple really needed?

twitter logo github logo ・1 min read

So it seems that Apple has a large share of use in the web development community, particularly because of it's Unix-like-ness and it's ease of use for the common user. It would seem that would make it a great choice for IT to roll across the company; devs get a Unix-like machine and everyone else gets a simple machine to use.

But for hobby developers, is there anything locking you to Apple? Any utility or tool that is a must-have that is only available on Mac and not Linux? Or would it be just fine to get a cheap machine with Linux and call it a day?

Apologies for any platforms wars this erupts...

twitter logo DISCUSS (6)
markdown guide
 

So for a "hobby developer" you will be absolutely fine with Linux ..... I used Gnome for about 7 years as my primary and sole operating system and I did just fine but there are some caveats that when you are in a production environment, with deadlines, it can become burdensome to deal with on a daily basis. Zero Adobe Creative Suite / Sketch means if a client or UX / UI designer sends you a mockup in .PSD format you have to ask them to resend it or run a VM / Wine to emulate windows 😕 .... another pain is that most developer tutorials and documentation is written for Mac first .... Windows and Linux second if at all. There are a ton of small little dev utilities and tools that are written solely for Mac ..... could live without them? sure. but why would I want to. I would recommend buying a pre-owned Macbook on eBay .... anything with a PCI-E SSD ( pretty much any Macbook Air or Macbook Pro 2013+ ) will be blazing fast and more than enough horsepower for most dev tasks. That being said using linux as my primary OS for so many years taught me so much about computers and linux servers. When your server and laptop are running the same kernel it is like second nature. I made the switch to Mac full time about 3 years ago when I went to work for a digital agency that was all Mac and refused to let me use linux. I have been loving it ever since. Do I know how to install drivers manually on linux and virtualize windows just to open a photoshop file? Yes. But again why would I want to?

 

On the flip side, I actually avoid Apple for development. You have to have this huge pre-packaged behemoth of a program, XCode, to be able to even run the Python command line or compile a C++ "hello world". That download is several GB, and it is always getting bigger.

Combine that with Apple's continual upgrades to OS and hardware, and you wind up on a very expensive treadmill of upgrades just to stay current; versus, say, Linux, where updates are free and not bound to specific, expensive proprietary hardware.

That hardware catch is really the main reason Apple excels at audio engineering (yep, I do use it for that) - they only need to support the sound cards they pre-selected, whereas Linux tries to support whatever you give it. If it weren't for that hardware lock-in, Apple wouldn't have any advantage in that regard. :(

 

"Is Apple really needed?"

I don't think so.

There is no tool or application that I have on my Macintosh computers which is indispensable or even what I'd consider unique.

Everything I do, I could do on a Linux box, or a Windows box.

I prefer Macintosh computers because:

  • the hardware is well put together
  • Unix (I'm a long time Unix fan... and Amiga and BeOS and NeXTstep)
  • has all the tools I want (bash, Vim, Python 3, an IDE, C++ compiler/linker)
  • hardware and operating system are strongly integrated
  • clean
  • I like the macOS UI
  • retina display is well supported by macOS

My friends that dislike Macintosh computers usually cite:

  • Macs are too expensive
  • prefer Windows
  • don't like to be locked into a computer "appliance" that is not upgradable
  • hate Apple
  • hate Apple's razor-wire walled garden
  • hate the macOS UI

I do not find any of those condemnations to either have merit, or are opinion based which I do not share that opinion.

All is not rainbows and unicorns. The things I dislike about Macintosh computers:

  • I hate Apple's keyboards - first thing I replace with a Razer or Unicomp keyboard
  • I hate Apple's mice - second thing I replace with a Logitech or Microsoft mouse
 

Of course there are no must-haves. There are successful programmers on all platforms. It is obviously a matter of taste.

My taste wants MacOS. I wouldn't consider working without unix. Nor would I consider working without the bazillion automations and niceties that are only available on MacOS. Alfred, bbedit, Omni Outliner are just the beginning. AppleScript comes in handy sometimes (allows Nodejs integration with everything). Spaces. Launch Control.

And the list only ends there if you use a separate machine for developing than you do for living. Continuity. Keychain. iMessages so I can send text from my computer.

No. You would not be just fine with a cheap Linux box any more than you would be just fine living in a refrigerator carton. Sure, the carton would keep you out of the rain but, barely living is, well, it's not for me.

 

If you work with audio, video, or MIDI data you want Apple because they pulled in those elements into the OS 20+ years ago eliminating wrappers and middleware -- super important.

I think Linux is best, except for the fragmentation and interoperability. Apple and BASH is done well and the ease of development, tools, support, and consistency is pretty high as opposed to Windows. Linux does better, but you need to be a little more sys-admin ()good to know, but many will skip).

With over a decade in this game I used Windows and Linux both exclusively for years, but the Apple experience is still better for me on all fronts.

 

I see it more as a personal preferance sort of thing. Many people I work with are using Apple for a variety of reasons, whether it be some of the features it has or they just like like Apple stuff. Me I tend to use Linux (Kali/Debian) for work, as of soon I'll be using a Mac for my university studies later on in the year. I just find that my current laptop (Kali) can sometimes be a little slow and chunky for me to use on the go.

Classic DEV Post from Mar 26

Have you ever quit a job without anything else lined up?

If so, what lead to this decision? ...

Steven Washington profile image
Full stack web dev with a lot of experience in JS and PHP, constantly sniffing around to get more broad with skills and languages.

Tip: You can configure your dev.to reading experience, such as using sans serif fonts.

Go to your the "misc." section of your settings.

Customize dev.to