Apple WWDC 2017. Take a look at our latest announcements. The new iPad Pro. MacOS High Sierra. Learn more: http://www.a. Testing conducted by Apple in October 2020 using preproduction MacBook Air systems with Apple M1 chip and 8-core GPU, configured with 8GB of RAM and 512GB SSD. The Apple TV app movie playback test measures battery life by playing back HD 1080p content with display brightness set to 8 clicks from bottom. Battery life varies by use and configuration. XCode and Android studio storage consumption memory/ ram consumption application demo for ios app and android app. Build your future. Whether you're just entering the workforce or you‘re an experienced developer or entrepreneur, take advantage of free resources to gain skills that help you succeed in Apple's growing app economy, which provides millions of jobs in technology across the globe.
-->This guide describes how to use Pair to Mac to connect Visual Studio 2019to a Mac build host. The same instructions apply to Visual Studio 2017.
Overview
Building native iOS applications requires access to Apple's build tools,which only run on a Mac. Because of this, Visual Studio 2019 must connect toa network-accessible Mac to build Xamarin.iOS applications.
Visual Studio 2019's Pair to Mac feature discovers, connects to,authenticates with, and remembers Mac build hosts so that Windows-basediOS developers can work productively.
Pair to Mac enables the following development workflow:
Developers can write Xamarin.iOS code in Visual Studio 2019.
Visual Studio 2019 opens a network connection to a Mac build host anduses the build tools on that machine to compile and sign the iOS app.
There is no need to run a separate application on the Mac – VisualStudio 2019 invokes Mac builds securely over SSH.
Visual Studio 2019 is notified of changes as soon as they happen. Forexample, when an iOS device is plugged in to the Mac or becomes availableon the network, the iOS Toolbar updates instantly.
Multiple instances of Visual Studio 2019 can connect to the Macsimultaneously.
It's possible to use the Windows command-line to build iOS applications.
Note
Before following the instructions in this guide, complete the following steps:
- On a Windows machine, install Visual Studio 2019
- On a Mac, install Xcode and Visual Studio for Mac
- You must manually open Xcode after installing so that it can add any additional components.
If you would prefer not to install Visual Studio for Mac, Visual Studio 2019can automatically configure the Mac build host with Xamarin.iOS and Mono.You must still install and run Xcode.For more information, see Automatic Mac provisioning.
Enable remote login on the Mac
To set up the Mac build host, first enable remote login:
On the Mac, open System Preferences and go to the Sharing pane.
Check Remote Login in the Service list.
Make sure that it is configured to allow access for All users, orthat your Mac username or group is included in the list of allowedusers.
If prompted, configure the macOS firewall.
If you have set the macOS firewall to block incoming connections, youmay need to allow
mono-sgen
to receive incoming connections. An alertappears to prompt you if this is the case.If it is on the same network as the Windows machine, the Mac shouldnow be discoverable by Visual Studio 2019. If the Mac is still notdiscoverable, try manually adding a Mac or takea look at the troubleshooting guide.
Connect to the Mac from Visual Studio 2019
Now that remote login is enabled, connect Visual Studio 2019 to the Mac.
In Visual Studio 2019, open an existing iOS project or create a new oneby choosing File > New > Project and then selecting an iOS projecttemplate.
Open the Pair to Mac dialog.
Use the Pair to Mac button iOS toolbar:
Or, select Tools > iOS > Pair to Mac.
The Pair to Mac dialog displays a list of all previously-connectedand currently-available Mac build hosts:
Select a Mac in the list. Click Connect.
Enter your username and password.
The first time you connect to any particular Mac, you areprompted to enter your username and password for that machine:
Tip
When logging in, use your system username rather than full name.
Pair to Mac uses these credentials to create a new SSH connectionto the Mac. If it succeeds, a key is added to the authorized_keysfile on the Mac. Subsequent connections to the same Mac will loginautomatically.
Pair to Mac automatically configures the Mac.
Starting with Visual Studio 2019 version15.6,Visual Studio 2019 installs or updates Mono and Xamarin.iOS on aconnected Mac build host as needed (note that Xcode must still beinstalled manually). See Automatic Macprovisioning for more details.
Look for the connection status icon.
When Visual Studio 2019 is connected to a Mac, that Mac's itemin the Pair to Mac dialog displays an icon indicating thatit is currently connected:
There can be only one connected Mac at a time.
Tip
Right-clicking any Mac in the Pair to Mac list brings up a contextmenu that allows you to Connect.., Forget this Mac, orDisconnect:
If you choose Forget this Mac, your credentials for the selectedMac will be forgotten. To reconnect to that Mac, you will need to re-enteryour username and password.
If you have successfully paired to a Mac build host, you are ready to buildXamarin.iOS apps in Visual Studio 2019. Take a look at theIntroduction to Xamarin.iOS for Visual Studioguide.
If you have not been able to pair a Mac, try manually adding aMac or take a look at the troubleshootingguide.
Manually add a Mac
If you do not see a particular Mac listed in the Pair to Mac dialog,add it manually:
Locate your Mac's IP address.
Open System Preferences > Sharing > Remote Login on your Mac:
Alternatively, use the command line. In Terminal, issue this command:
Depending on your network configuration, you may need to use aninterface name other than
en0
. For example:en1
,en2
, etc.
In Visual Studio 2019's Pair to Mac dialog, select Add Mac..:
Enter the Mac's IP address and click Add:
Enter your username and password for the Mac:
Tip
When logging in, use your system username rather than full name.
Click Login to connect Visual Studio 2019 to the Mac over SSH and addit to the list of known machines.
Automatic Mac provisioning
Starting with Visual Studio 2019 version 15.6,Pair to Mac automatically provisions a Mac with software necessary forbuilding Xamarin.iOS applications: Mono, Xamarin.iOS (the softwareframework, not the Visual Studio for Mac IDE), and various Xcode-relatedtools (but not Xcode itself).
Important
- Pair to Mac cannot install Xcode; you must manually install it on theMac build host. It is required for Xamarin.iOS development.
- Automatic Mac provisioning requires that remote login isenabled on the Mac, and the Mac must be network-accessible to the Windowsmachine. See Enabling remote login on the Macfor more details.
- Automatic Mac provisioning requires 3GB of free space on the Mac to install Xamarin.iOS.
Pair to Mac performs necessary software installations/updates when VisualStudio 2019 is connecting to theMac.
Mono
Pair to Mac will check to make sure that Mono is installed. If it is notinstalled, Pair to Mac will download and install the latest stable versionof Mono on the Mac.
Progress is indicated by various prompts, as shown by the followingscreenshots (click to zoom):
Mono | Install Check | Downloading | Installing |
---|
Xamarin.iOS
Pair to Mac upgrades Xamarin.iOS on the Mac to match the versioninstalled on the Windows machine.
Important
Pair to Mac will not downgrade Xamarin.iOS on the Mac from alpha/betato stable. If you have Visual Studio for Mac installed, set yourrelease channel asfollows:
- If you use Visual Studio 2019, select the Stable updates channel inVisual Studio for Mac.
- If you use Visual Studio 2019 Preview, select the Alpha updateschannel in Visual Studio for Mac.
How to disable webcam on macbook pro. Progress is indicated by various prompts, as shown by the followingscreenshots (click to zoom):
Xamarin.iOS | Install Check | Downloading | Installing |
---|
Xcode tools and license
Pair to Mac will also check to determine whether Xcode has been installedand its license accepted. While Pair to Mac does not install Xcode, itdoes prompt for license acceptance, as shown in the following screenshots(click to zoom):
Xcode | Install Check | License Acceptance |
---|
Additionally, Pair to Mac will install or update various packagesdistributed with Xcode. For example:
- MobileDeviceDevelopment.pkg
- XcodeExtensionSupport.pkg
- MobileDevice.pkg
- XcodeSystemResources.pkg
The installation of these packages happens quickly and without a prompt.
Note
These tools are distinct from the Xcode Command Line Tools, whichas of macOS 10.9 areinstalled with Xcode.
Troubleshooting automatic Mac provisioning
If you encounter any trouble using automatic Mac provisioning, take a lookat the Visual Studio 2019 IDE logs, stored in%LOCALAPPDATA%XamarinLogs16.0. These logs may contain error messagesto help you better diagnose the failure or get support.
Build iOS apps from the Windows command-line
Pair to Mac supports building Xamarin.iOS applications from the commandline. For example:
The parameters passed to msbuild
in the above example are:
ServerAddress
– The IP address of the Mac build host.ServerUser
– The username to use when logging in to the Mac build host.Use your system username rather than your full name.ServerPassword
– The password to use when logging in to the Mac build host.
Macbook Air 2017
Note
Visual Studio 2019 stores msbuild
in the following directory:C:Program Files (x86)Microsoft Visual Studio2019MSBuildCurrentBin
The first time Pair to Mac logs in to a particular Mac build host fromeither Visual Studio 2019 or the command-line, it sets up SSH keys. With thesekeys, future logins will not require a username or password. Newlycreated keys are stored in %LOCALAPPDATA%XamarinMonoTouch.
If the ServerPassword
parameter is omitted from a command-line buildinvocation, Pair to Mac attempts to log in to the Mac build hostusing the saved SSH keys.
Summary
This article described how to use Pair to Mac to connect Visual Studio 2019 to aMac build host, enabling Visual Studio 2019 developers to build native iOSapplications with Xamarin.iOS.
Next steps
Update: For those joining in late 2017, I've been hunting for a laptop with limited success. Read on for what I've settled on, or discuss on HN.
If you ask anyone who knows me, I'm probably the biggest Apple fan they know. Ask for a suggestion of what computer to get, and I'll almost certainly either tell you the MacBook Pro, or to wait, because Apple is about to update its hardware finally.
But recently, I realized I'd gotten tired of Apple's attitude toward the desktop. The progress in macOS land has basically been dead since Yosemite, two years ago, and Apple's updates to the platform have been incredibly small. I'm a developer, and it seems to me Apple doesn't pay any attention to its software or care about the hundreds of thousands of developers that have embraced the Mac as their go-to platform.
Take a look at Sierra: the only feature of note is Siri, which is half-baked as it is, and the things that did get ported over from iOS are half-done too. On the developer side? Nothing, unless you use XCode — the same story it's been for years.
The only reason it's still even viable as a platform for web developers at all is because of the incredible work the open source community does on the Mac toolchain (take a look at how easy it is to use Node, npm, Yarn or any of the other relatively new tools out there).
Bloomberg reported in late 2016 that Apple had dismantled the Mac team, rolling it into the iOS team, and it shows. The new MacBook Pros, released in late 2016, where interesting, but something of a half-hearted shrug in the direction of users: they're okaymachines, but they sure aren't interesting at all. Their hardware is underpowered, focusing on thinness and a gimmicky touch bar rather than power or functionality, the previous tentpoles of the Mac.
'In another sign that the company has prioritized the iPhone, Apple re-organized its software engineering department so there's no longer a dedicated Mac operating system team.'
To tell the truth, I'm a life-long Windows user that grew to be disillusioned by Microsoft after Windows Vista. It was obvious the company had no strategy or vision, and while Windows 7 smoothed things over a little, Apple's side had something I wanted: everything worked together nicely.
You could send iMessages from your computer or phone, answer calls wherever you were, and throw files to other devices with ease — and so I was tempted away in early 2013 when Apple released its second-generation 15' Retina MacBook Pro.
That machine was my first real taste of Apple's world, and I loved it. Everything was designed nicely, and worked well together. Apple's deep roots in Unix meant I actually finally picked up web development for the first time, learnt how to use the terminal deeply, and even gave back to some open-source projects.
But, about the time I joined Apple's world, the company's attention pivoted. The Mac was no longer important, as the iPhone, iPad and then the iPad Pro became the focus of the company. The message was simple: why do you even need a computer when a tablet and phone can do it all anyway?
As a result, Apple's focus on the Mac waned: the hardware didn't receive an update for over four years, and then OS X, once regularly updated with interesting features, now only receives the scraps from iOS. If you want to see this in action, check out iMessage on Mac: the flagship feature of iOS, iMessage stickers, barely works on Mac.
You started seeing this in almost everything: Airdrop, Apple's much-touted feature that lets you easily beam files between computer and phone was my first taste of the company's 'just works' mentality — about 30% of the time it worked every time, and the rest of the time you couldn't connect at all. Then there was handoff, the heralded feature that let you work on one device, then seamlessly move to another. I don't know if I ever got it to work with any sense of reliability.
I'm out of apologia juice for defending Apple going with 4 USB-C ports on the new MacBook over a useful mix and keeping the MagSafe. 🍎👎
— DHH (@dhh) October 28, 2016
Meanwhile, Microsoft had licked its wounds inflicted by Windows 8, found a passionate new CEO in Satya Nadella, and started doing something interesting with Windows 10: it actually started listening, and implementing, features people wanted.
I mostly ignored the Windows world until late last year when Microsoft introduced the Windows Linux Subsystem — basically a way to use a Linux terminal natively in Windows — which made me realize that development on Windows might actually be pleasant eventually. I wrote back then that even this was enough to tempt me back to Windows, and it was a game changer:
'At its core, Bash support on Windows is both exciting and an incredible feat of engineering. As a front-end developer, I'd now consider buying a Windows machine to replace my Macbook, where I wouldn't have in the past.'
After waiting eagerly for the MacBook Pro refresh, then being utterly disappointed by what Apple actually shipped — a high-end priced laptop with poor performance — I started wondering if I could go back to Windows. Gaming on Mac, which initially showed promising signs of life had started dying in 2015, since Apple hadn't shipped any meaningful hardware bumps in years, and I was increasingly interested in Virtual Reality… but Oculus dropped support for the Mac in 2016 for the same reasons.
2017 Macbook Pro
Then, in October 2016, Microsoft unveiled the next version of Windows: Creators Update out of nowhere. It brings dedicated gaming features, full OS-level VR support, color customization, a people bar for quick chat and a lot more in a free update.
Macbook For Developers 2017
I watched the event with my mouth open (it was the first time I'd tuned in to any Microsoft event in years), wondering how Microsoft was suddenly shipping awesome features out of nowhere.
This, and seeing all the progress Microsoft was making with the Linux subsystem, as well as Apple's lack of any meaningful progress, made me decide to make the jump back. I'm not a hater, I'm just tired of not being able to get a machine worth using.
'Those complaining about Apple's current Mac lineup are not haters, they're lovers. They've spent 10+ years and 5+ figures on Macs.'
It took me months to convince myself to do it, but I spent weeks poring over forum posts about computer specs and new hardware before realizing how far ahead the PC really is now: the NVIDIA GTX 1080 graphics card is an insane work-horse that can play any game — VR or otherwise — you can throw at it without breaking a sweat.
I realized I'm so damn tired of Apple's sheer mediocrity in both laptops and desktops, and started actually considering trying Windows again.
So, in February 2017, I found myself building a computer from scratch. I sold my 15' MacBook Pro (I now use a 12' MacBook for on-the-go productivity), and invested in building a desktop workhorse that would fit my needs and last for a long time.
I'll spare you too much detail, but if you're interested in my build you can see what parts I ordered here - the machine is a bit of overkill, but given I want to learn how to develop for VR, it seemed to be a good balance of power and price for the long haul.
Jekyll and Gulp living in harmonyNow I've been on Windows for about six weeks, and while I was expecting to hate it, I've found myself impressed. It's not perfect, but it's clear Microsoft is sweating the details for the first time in recent memory. I've got my development environment set up just the way I liked it on Mac, thanks to the Linux subsystem — everything from Jekyll to Gulp works exactly how I'd expect.
I'd been worried about Microsoft's high-density display support, since it was unusable in Windows 8 and even the original release of Windows 10, but Creator's Update seems to be able to finally handle 4K displays without things just getting weird.
On top of that? I can play recent games without the PC breaking a sweat, and I've started experimenting with VR. The HTC Vive is an incredible device, and I'm just at the start of figuring out Unity so I can actually create my own things for it.
The experience hasn't been all roses — I had forgotten drivers were a thing, and the quality of apps on Windows, while far better than I remember, is sorely lacking. This seems to be getting addressed quickly thanks to Electron apps: Slack, Nylas, Hyper and Visual Studio Code are awesome, and stand out in the Windows world for being fantastic.
I don't say this lightly, but Windows is back, and Microsoft is doing a great job. Microsoft is getting better, faster at making Windows good than Apple is getting better at doing anything to OS X.
Xamarin.iOS | Install Check | Downloading | Installing |
---|
Xcode tools and license
Pair to Mac will also check to determine whether Xcode has been installedand its license accepted. While Pair to Mac does not install Xcode, itdoes prompt for license acceptance, as shown in the following screenshots(click to zoom):
Xcode | Install Check | License Acceptance |
---|
Additionally, Pair to Mac will install or update various packagesdistributed with Xcode. For example:
- MobileDeviceDevelopment.pkg
- XcodeExtensionSupport.pkg
- MobileDevice.pkg
- XcodeSystemResources.pkg
The installation of these packages happens quickly and without a prompt.
Note
These tools are distinct from the Xcode Command Line Tools, whichas of macOS 10.9 areinstalled with Xcode.
Troubleshooting automatic Mac provisioning
If you encounter any trouble using automatic Mac provisioning, take a lookat the Visual Studio 2019 IDE logs, stored in%LOCALAPPDATA%XamarinLogs16.0. These logs may contain error messagesto help you better diagnose the failure or get support.
Build iOS apps from the Windows command-line
Pair to Mac supports building Xamarin.iOS applications from the commandline. For example:
The parameters passed to msbuild
in the above example are:
ServerAddress
– The IP address of the Mac build host.ServerUser
– The username to use when logging in to the Mac build host.Use your system username rather than your full name.ServerPassword
– The password to use when logging in to the Mac build host.
Macbook Air 2017
Note
Visual Studio 2019 stores msbuild
in the following directory:C:Program Files (x86)Microsoft Visual Studio2019MSBuildCurrentBin
The first time Pair to Mac logs in to a particular Mac build host fromeither Visual Studio 2019 or the command-line, it sets up SSH keys. With thesekeys, future logins will not require a username or password. Newlycreated keys are stored in %LOCALAPPDATA%XamarinMonoTouch.
If the ServerPassword
parameter is omitted from a command-line buildinvocation, Pair to Mac attempts to log in to the Mac build hostusing the saved SSH keys.
Summary
This article described how to use Pair to Mac to connect Visual Studio 2019 to aMac build host, enabling Visual Studio 2019 developers to build native iOSapplications with Xamarin.iOS.
Next steps
Update: For those joining in late 2017, I've been hunting for a laptop with limited success. Read on for what I've settled on, or discuss on HN.
If you ask anyone who knows me, I'm probably the biggest Apple fan they know. Ask for a suggestion of what computer to get, and I'll almost certainly either tell you the MacBook Pro, or to wait, because Apple is about to update its hardware finally.
But recently, I realized I'd gotten tired of Apple's attitude toward the desktop. The progress in macOS land has basically been dead since Yosemite, two years ago, and Apple's updates to the platform have been incredibly small. I'm a developer, and it seems to me Apple doesn't pay any attention to its software or care about the hundreds of thousands of developers that have embraced the Mac as their go-to platform.
Take a look at Sierra: the only feature of note is Siri, which is half-baked as it is, and the things that did get ported over from iOS are half-done too. On the developer side? Nothing, unless you use XCode — the same story it's been for years.
The only reason it's still even viable as a platform for web developers at all is because of the incredible work the open source community does on the Mac toolchain (take a look at how easy it is to use Node, npm, Yarn or any of the other relatively new tools out there).
Bloomberg reported in late 2016 that Apple had dismantled the Mac team, rolling it into the iOS team, and it shows. The new MacBook Pros, released in late 2016, where interesting, but something of a half-hearted shrug in the direction of users: they're okaymachines, but they sure aren't interesting at all. Their hardware is underpowered, focusing on thinness and a gimmicky touch bar rather than power or functionality, the previous tentpoles of the Mac.
'In another sign that the company has prioritized the iPhone, Apple re-organized its software engineering department so there's no longer a dedicated Mac operating system team.'
To tell the truth, I'm a life-long Windows user that grew to be disillusioned by Microsoft after Windows Vista. It was obvious the company had no strategy or vision, and while Windows 7 smoothed things over a little, Apple's side had something I wanted: everything worked together nicely.
You could send iMessages from your computer or phone, answer calls wherever you were, and throw files to other devices with ease — and so I was tempted away in early 2013 when Apple released its second-generation 15' Retina MacBook Pro.
That machine was my first real taste of Apple's world, and I loved it. Everything was designed nicely, and worked well together. Apple's deep roots in Unix meant I actually finally picked up web development for the first time, learnt how to use the terminal deeply, and even gave back to some open-source projects.
But, about the time I joined Apple's world, the company's attention pivoted. The Mac was no longer important, as the iPhone, iPad and then the iPad Pro became the focus of the company. The message was simple: why do you even need a computer when a tablet and phone can do it all anyway?
As a result, Apple's focus on the Mac waned: the hardware didn't receive an update for over four years, and then OS X, once regularly updated with interesting features, now only receives the scraps from iOS. If you want to see this in action, check out iMessage on Mac: the flagship feature of iOS, iMessage stickers, barely works on Mac.
You started seeing this in almost everything: Airdrop, Apple's much-touted feature that lets you easily beam files between computer and phone was my first taste of the company's 'just works' mentality — about 30% of the time it worked every time, and the rest of the time you couldn't connect at all. Then there was handoff, the heralded feature that let you work on one device, then seamlessly move to another. I don't know if I ever got it to work with any sense of reliability.
I'm out of apologia juice for defending Apple going with 4 USB-C ports on the new MacBook over a useful mix and keeping the MagSafe. 🍎👎
— DHH (@dhh) October 28, 2016
Meanwhile, Microsoft had licked its wounds inflicted by Windows 8, found a passionate new CEO in Satya Nadella, and started doing something interesting with Windows 10: it actually started listening, and implementing, features people wanted.
I mostly ignored the Windows world until late last year when Microsoft introduced the Windows Linux Subsystem — basically a way to use a Linux terminal natively in Windows — which made me realize that development on Windows might actually be pleasant eventually. I wrote back then that even this was enough to tempt me back to Windows, and it was a game changer:
'At its core, Bash support on Windows is both exciting and an incredible feat of engineering. As a front-end developer, I'd now consider buying a Windows machine to replace my Macbook, where I wouldn't have in the past.'
After waiting eagerly for the MacBook Pro refresh, then being utterly disappointed by what Apple actually shipped — a high-end priced laptop with poor performance — I started wondering if I could go back to Windows. Gaming on Mac, which initially showed promising signs of life had started dying in 2015, since Apple hadn't shipped any meaningful hardware bumps in years, and I was increasingly interested in Virtual Reality… but Oculus dropped support for the Mac in 2016 for the same reasons.
2017 Macbook Pro
Then, in October 2016, Microsoft unveiled the next version of Windows: Creators Update out of nowhere. It brings dedicated gaming features, full OS-level VR support, color customization, a people bar for quick chat and a lot more in a free update.
Macbook For Developers 2017
I watched the event with my mouth open (it was the first time I'd tuned in to any Microsoft event in years), wondering how Microsoft was suddenly shipping awesome features out of nowhere.
This, and seeing all the progress Microsoft was making with the Linux subsystem, as well as Apple's lack of any meaningful progress, made me decide to make the jump back. I'm not a hater, I'm just tired of not being able to get a machine worth using.
'Those complaining about Apple's current Mac lineup are not haters, they're lovers. They've spent 10+ years and 5+ figures on Macs.'
It took me months to convince myself to do it, but I spent weeks poring over forum posts about computer specs and new hardware before realizing how far ahead the PC really is now: the NVIDIA GTX 1080 graphics card is an insane work-horse that can play any game — VR or otherwise — you can throw at it without breaking a sweat.
I realized I'm so damn tired of Apple's sheer mediocrity in both laptops and desktops, and started actually considering trying Windows again.
So, in February 2017, I found myself building a computer from scratch. I sold my 15' MacBook Pro (I now use a 12' MacBook for on-the-go productivity), and invested in building a desktop workhorse that would fit my needs and last for a long time.
I'll spare you too much detail, but if you're interested in my build you can see what parts I ordered here - the machine is a bit of overkill, but given I want to learn how to develop for VR, it seemed to be a good balance of power and price for the long haul.
Jekyll and Gulp living in harmonyNow I've been on Windows for about six weeks, and while I was expecting to hate it, I've found myself impressed. It's not perfect, but it's clear Microsoft is sweating the details for the first time in recent memory. I've got my development environment set up just the way I liked it on Mac, thanks to the Linux subsystem — everything from Jekyll to Gulp works exactly how I'd expect.
I'd been worried about Microsoft's high-density display support, since it was unusable in Windows 8 and even the original release of Windows 10, but Creator's Update seems to be able to finally handle 4K displays without things just getting weird.
On top of that? I can play recent games without the PC breaking a sweat, and I've started experimenting with VR. The HTC Vive is an incredible device, and I'm just at the start of figuring out Unity so I can actually create my own things for it.
The experience hasn't been all roses — I had forgotten drivers were a thing, and the quality of apps on Windows, while far better than I remember, is sorely lacking. This seems to be getting addressed quickly thanks to Electron apps: Slack, Nylas, Hyper and Visual Studio Code are awesome, and stand out in the Windows world for being fantastic.
I don't say this lightly, but Windows is back, and Microsoft is doing a great job. Microsoft is getting better, faster at making Windows good than Apple is getting better at doing anything to OS X.
Macbook For Developers 2017 Version
There's a few things I sorely miss: Sketch, which I use a lot for quick design work, iMessage so I don't need to keep pulling out my phone and a handful of other things… but it's easy enough to live without them.
It's clear to me from Apple's language and sheer focus — cough killing the Airport cough — that all Apple cares about is iOS, and the iPhone. Maybe they'll ship something awesome out of nowhere that really brings back its 'productivity' play, but the company is busy trying to convince people that its ham-fisted iPad Pro is good for work.
Over the coming weeks I plan to write about the great parts of Windows, how I got my development environment set up, the apps I use, and, of course, the bad parts. I'll be honest, I can't bring myself to leave Mac at work yet, because I'm not convinced there's a good enough Windows laptop yet… but maybe that will change over time.
If you're a Mac user sitting, waiting for Apple to maybe release a real workhorse computer so you can actually do your work, stop what you're doing and take another look at Windows.
Macbook For Developers 2017 Download
It's awesome, and now you'll be able to get something with incredible power for a great price that's actually worth using.
Update 11/10: For the last few months I've been looking for a laptop that can replace my trusty MBP and it's been more difficult than expected.
I tried the Razer Blade but the fan noise was a little much - but I've settled on the Dell XPS as a excellent replacement and will post more soon (subscribe here to keep in the loop).