Windows web developer ISO part time Mac
March 24, 2019 6:23 PM   Subscribe

I run and build websites. I've used Windows for my entire professional career and I'm very comfortable with it. I have a potential new client that could really be a huge stepping stone for my career, but all their processes are MacOS based. How do I live in both worlds and stay an effective, efficient developer?

The websites I develop are generally *nix based and I've been using virtual machines as a part of my workflow for several years now. I have a great new opportunity to work with a company that features prominently in my developmental niche, but the entire company is MacOS based, as is their virtual machine workflow. I've tried to adapt their projects to set ups that I'm familiar with but the conversion/adaptation is just too labor intensive.

I really don't need portability so I've been thinking of getting a Mac desktop (Mini?) and a KVM switch so I can use the keyboard and mouse I'm comfortable with and switch over to Macworld when I need to (I anticipate they would be 30%-50% of my workload eventually). Please help me with the specifics of this set up or suggest some out-of-the-box workarounds.
posted by Hand me my cowbell to Computers & Internet (8 answers total) 1 user marked this as a favorite
 
I last had experience with this a decade ago, so there has no doubt been evolution and refinement of the systems I mention below.

I believe Boot Camp is still a part of the Mac ecosystem. When Apple went to Intel processors, they introduced it as a method of partitioning the Mac hard drive to install Windows. Because Apple controls the hardware (and therefore the driver software) a Mac (back then at least) was often a better Windows machine than those of other manufacturers.

Boot Camp drivers made the Mac keyboard more friendly under Windows than a Windows keyboard may be on a Mac, so that's something to keep in mind.

Parallels is a virtual machine manager for MacOS, and it was (and probably still is) capable of running a Windows virtual machine from the Boot Camp installation. It believe it's difficult (and in violation of Apple's licensing terms) to try to run a Mac VM from inside Windows, but it's very possible to run a Windows VM from inside a Mac, and if you do it from a Boot Camp partition you could have the best of both worlds.

Don't know why a KVM switch wouldn't work, but I'm really not sure how well a PC keyboard translates to a Mac.

YMMV, of course. Good luck!
posted by lhauser at 7:28 PM on March 24, 2019


Join the dark side. We have cookiesbetter tooling.

Seriously, you're already targeting *nix, why not move your tool chain there, too? What are you worried you're going to miss from your current setup?
posted by Leon at 8:09 PM on March 24, 2019 [1 favorite]


I've had my 2018 Mini for about 6 months now. Best Mini evah! This is my fourth Mini in my 23 year career as a web developer. Get yourself one. Use whatever mouse and keyboard you want. Load up MAMP and go.

I wouldn't bother with Bootcamp. It's there if you want. No reason to NOT run a PC and the Mini in the same workflow. Days used to be, you HAD to have both to check cross browser compatibility.
posted by humboldt32 at 9:22 PM on March 24, 2019 [1 favorite]


Mac Minis aren't what they once were, since the recent models have moved to Apple's 'No User Serviceable Parts Inside; Do Not Open' design philosophy, making their slightly low specs non-upgradeable.
But they're still very nifty little machines, and using one via KVM with your existing rig should work fine, with a little keyboard adjustment in MacOS.
Your alternatives would involve switching to using Apple stuff as your hardware: Windows runs pretty flawlessly on Macs either as a VM or using Boot Camp (install Windows alongside MacOS, switch back and forth by rebooting). But it doesn't work the other way around - there's no (easy, stable) MacOS on Windows hardware option. So your Mini and KVM idea is a fine plan.
posted by bartleby at 12:02 AM on March 25, 2019


there's no (easy, stable) MacOS on Windows hardware option
My hackintosh begs to differ - there's not really any meaningful "Windows hardware" at the moment, as the last several years of Apple laptops are intel machines in a fancy aluminum box.

Op, check out tonymacx86 - if you're comfortable with *nix and VMs you can absolutely build a machine with kickass specs that will run all your OSes. In your shoes I built a Thinkserver hackintosh that just has a hard drive for each OS. Much better computer for the buck than a mini or a trashcan, and user-serviceable, lack of which was the eventual dealbreaker for me with Apple.
posted by aspersioncast at 5:26 AM on March 25, 2019 [1 favorite]


But I guess that's only easy and stable for some definitions of those terms.

Also, if you're already comfortable with Bash and general *nix stuff it's really not hard to move to OSX. You'll just be more comfortable in the terminal than your average person, (and probably find the GUI kinda dumbed-down and lack of customizability somewhat annoying).
posted by aspersioncast at 9:15 AM on March 25, 2019 [1 favorite]


Best answer: I think you're right that it'll be easier to follow your client's mac-based workflow by just using a mac, instead of trying to adapt it to work on windows.

I'd recommend getting the cheapest possible used iMac or used Mini plus spare screen -- you don't need much horsepower for web dev work -- and using Synergy as a software KVM.

Bootcamp is a lousy way to get work done; rebooting back and forth between operating systems gets really tedious after a while. Dual-hosting OSs on one machine using Parallels might work -- I found it pretty fiddly when I tried using it but that was years ago, it may have improved since then... but especially if you're also depending on virtual machines as part of your client's workflow, I wouldn't go there. VMs inside of VMs doesn't sound like an ideal situation.

Physical KVMs are surprisingly expensive and still mean you can only work with one machine at a time. Synergy is super slick; it just feels like a dual-monitor setup that happens to have a different OS on each monitor -- all you do is slide the mouse from one to the other; it makes it really easy to context-switch without interrupting your work.
posted by ook at 11:13 AM on March 25, 2019 [2 favorites]


You are absolutely correct to get yourself a Mac if that's what the rest of the team is using. Even with VM-based workflows there are weird edge cases you can get into between Windows and Mac on the bare metal and it's obnoxious to have one developer who insists on being That Guy with a different platform than everyone else. Kudos on not being That Guy.

Macs hold their value on the used market very well, so I'd think about buying a well-spec'd machine and then selling it at the conclusion of the engagement/project. You'll probably only end up spending at most a few hundred bucks on what amounts to a "rental" of the machine, although it will tie up some cash for a while, obviously.

If you can get away with 16GB of RAM and still run your VM stack comfortably (not just the VMs but factor in the OS and whatever your normal daily-driver footprint is, e.g. email client, Slack/messaging, web browser, music... I'd give yourself enough room so you don't have to flip the KVM switch back every time you want to respond to a message, that'll be annoying as hell over time), you can buy a 2014 Mac Mini with either an i5 or i7 processor. Bear in mind that the RAM in the 2014 Mini is soldered, so you can't upgrade it if you get an 8GB model. The 2018 Mini, by contrast, is less-infuriatingly constructed and can be upgraded, I think to 64GB.

You'll take less of a financial hit on the 2014 than the 2018, of course—like a car, you're always better buying one a few years old where somebody has absorbed the steepest part of the depreciation curve—but on a VM-based workflow I might look towards the upgradable one in case I misjudged the memory footprint of the stack or it grows over time ("hey let's use Elasticsearch!" ... uhhh).
posted by Kadin2048 at 3:45 PM on March 25, 2019 [1 favorite]


« Older Popcorn Popper China Syndrome   |   Humans are weird! How weird? Newer »
This thread is closed to new comments.