Introduction

I’m often asked about which machine and software do I use for Xamarin development. But the real question beneath this one is more : Do I need to buy a Mac ?

But first of all, let’s make a quick reminder :

  • In order to develop an iOS application you need to have a Mac somewhere.
  • You cannot legally have a MacOS virtual machine on a Windows PC

So yes, unless you only write Xamarin Android apps you will need a Mac at some point.

When exactly a Mac is needed really depends on your project, your organization and whether you are only using Xamarin Forms or not. There’s a lot of possible answers which I’ll explore in an upcoming post.

My setup

My daily workstation is a Macbook Pro Retina mid-2014. It has 16Gb of ram and 512 SSD. My main OS is MacOS but I have Parallels installed with a Windows 10 virtual machine with Visual Studio 2017 and Resharper because it’s just awesome.

I use Office 365 and have all the software installed on the Mac itself.

I use the standard Android emulators and have them run on the Mac itself even if I am coding inside Parallels. The learn more about this read this other post I have written.

Why Parallels

I love parallels for the following reasons :

  • Awesome integration between the Windows virtual machine and the MacOS host
  • The “My Documents/My Downloads” folders are the ones on the Mac
  • Being able to open a solution inside Visual Studio directly from the Mac (if the virtual machine is not started, it will start)
  • Being able to open software in the Mac directly from Windows
  • Great snapshot handling
  • Great performance, it is fast, really fast
  • Energy efficiency (I can use the Windows for hours while on battery and coding)

Why this setup

As I’m often on the move, I need a powerful and relatively light machine that can allow me to always have a Mac with me while still being able me to run Windows and Visual Studio when needed.

I mostly develop mobile apps. I almost never touch Azure or any server-side related frameworks myself.

I mainly use Visual Studio for Mac using the native approach. On iOS, I use Storyboards which I like to edit using XCode directly. I’m confortable with MacOS, Unix and of course Windows. I am able to switch between them very quickly depending on my work.

Additional software

Here is a list of the other piece of software I like to use on the Mac :

Conclusion

There is no single correct Xamarin development machine. In the end it always depends on your needs. Just carefuly review them before buying anything.

Comments