What did you say?
Just a couple of short years ago, the idea of using a Mac for .NET development would have sounded completely insane, but much has changed. The .NET Framework has since been open sourced and Microsoft has been clear about its intent to make .NET development cross-platform, which it has achieved with the release of ASP.NET 5.
Enter Visual Studio Code
It’s no Visual Studio 2015, but Visual Studio Code is an Electron-based editor for .NET along with support for a plethora of other languages. It has a debugger, intellisense and many other features that you would expect from Visual Studio. While I’m sure that their will be a full, cross-platform version of Visual Studio in the future, Visual Studio Code is a great option for Mac and Linux users. (Tip: If you ever need to do a web search for Visual Studio Code related content, search for VSCode instead. That will return results specific to Visual Studio Code, rather than Visual Studio.)
Visual Studio Code has git support built in, but if you’re like me then you also do work on .NET projects over FTP. While Visual Studio provides FTP support, VSCode does not at this time and plugin support is still coming in a future release. I have found a great option for using VSCode over FTP with the help of Transmit. Transmit will allow you to mount an FTP site as a drive and then VSCode can open that drive as a working folder and take over from there. Transmit will take care of transferring files in the background for you. It is an all around great FTP client.
Where’s the Remote?
As a part of my switch to the Mac, I was almost embarrassed to be discovering so late that Microsoft Remote Desktop is so much better on the Mac than it is on Windows. Remote Desktop has a much better way of managing saved connections than the simple drop down list on the Windows version. My favorite feature by far is that each open connection displays as a new desktop in Expose, making it very easy to manage all of your open desktops.
For All Else, There’s Virtualization
Sometimes you just have to work in Windows. There’s no way of getting around it and Windows 8.1 is great and only getting better with Windows 10, so why should you? Using Boot Camp you can install Windows on a separate partition on your Mac, but then you need to completely shut down your session in OS X when you need to do work in Windows. These days that is just not necessary as virtualization is as good as working on a machine natively. With Windows installed in VirtualBox, an adequate amount of memory assigned and the VM in full screen mode, I can hardly tell the difference between working directly on a Windows machine.
I’d love to hear about your experiences moving to the Mac for development. Leave a comment below.