Developing Windows Apps [UWP] on a Macbook

I create Wunderlist for Windows at Microsoft Berlin. Wunderlist was originally created by 6Wunderkinder, an Apple driven startup that was bought by Microsoft in 2015. Our ca. 40 developers create Backend software, Android-, iOS-, OSX and Web apps using Ruby, Javascript, Objective C, Go, Scala, Java, C#, HTML, XAML and probably a few others that I forget to mention. Our designers design with Sketch, Photoshop and Illustrator. And they all use a Mac!

In fact, most of our windows developers do so too. We sometimes try things out on OSX and switch between the two operating systems.

Are you looking for settings and tools that make Windows 10 run on a Mac as smooth and predicable as possible?

Then read on. You will learn what settings to change and what tools to run to make your Macbook a perfect Windows 10 development machine!

What is running on my development machine?

Partitions

I used bootcamp to install Windows 10 on my machine. My Macbook has a 1T SSD so I split it into half for this purpose. It is possible that by enabling Bitlocker in Windows, you destroy your Mac partition. I heard different stories about this and decided to use the steps in this article by Joe Raff

That way I was able to enable both Filevault and Bitlocker.

I don’t use Parallels, I boot into Windows by default and switch to OSX by holding the Alt key during boot.

Virtualization (Windows Phone Simulator)

windows phone

For my work, I sometimes need to launch the Windows Phone Simulator. In order to do this, I have to boot to OSX, reboot again and boot into Windows. It’s annoying but workable.

Magic mouse

magic mouse 2

The Magic Mouse works on Windows 10 by installing the bootcamp drivers that were saved during the Bootcamp setup. If you want natural scrolling I recommend using Jamie Pate’s FlipFlopWheel app. It’s a .NET app that you can build and run in Visual Studio.

If the Magic Mouse is not recognized by Windows, make sure:

You can also rename the mouse in OSX. Renaming it may cause you having to run FlipFlopWheel again.

Switching ALT and COMMAND

windows key

On the Macbook keyboard, Alt and Command will feel “reversed” if you are used to a Windows Keyboard. This is easily fixed by swapping the keys. Save the following registry code and run it:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,5b,e0,38,00,38,00,5b,e0,\
  00,00,00,00

Then reboot.

Disable Lock Screen

When I come back to my machine, I like to type my password without first having to click or press a key. To disable the Lock screen, save the following registry code and run it:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Personalization]
"NoLockScreen"=dword:00000001

Screenshots

If you are used to Cmd + Shift + 4 on the Mac to capture a region, you can emulate that with the great Greenshot. In the settings you can specify where to save the file (location, clipboard) and assigning Alt + Shift + 4 to capture a region. (Why Alt? Because you swapped the keys with the registry hack).

The best Image Viewer

I am a great supporter of Portable Software. I prefer anything that “just runs” over a complex installer and FSViewer has a portable version. FSViewer is a great fast Image Viewer. Give it a go!

Key remapping, HotKeys

If you are in need for more keyboard remapping, I recommend portable AutoHotkey. Scripts like this make my life in Germany with an english keyboard a lot easier:

#Persistent
SetCapsLockState, AlwaysOff

#If, GetKeyState("CapsLock", "P")
a::Send, ä
o::Send, ö
u::Send, ü
s::Send, ß
+a::Send, Ä
+o::Send, Ö
+u::Send, Ü
#If

tHE SCRIPT DISABLES MY cAPSLOCK and uses the key to write characters with an Umlaut

Do you want to start AutoHotKey or other apps on Windows Startup?

That will make a shortcut to your executable in the Windows Startup Folder.

Making a screencast

In our office, we use Slack to communicate. A lot of screenshots and video’s are shared here. Something that works great to share a video is an animated GIF. It works anywhere. In browsers, image viewers and in Slack. GIFCAM is a great tool to create animated gifs.

If you experience scaling problems on Windows 10, you will find a solution in the bottom of the page. I’ll repeat it here for your convenience:

Right click the exe, click properties, compatibility, Disable display scaling on high DPI settings. It works nicely after that.

Notepad2

One of my favorites. Lightning fast and syntax coloring. Notepad2 is portable too!

Paint.NET

Paint.NET is a great tool positioned somewhere between Paint and Photoshop. You have to find out yourself if it suits your needs.

Monaco font

If you prefer Monaco as your coding font, google for monaco.ttf and download a version somewhere. After that, double click the font and install in Windows. Then you can choose it in Visual Studio’s code editor options.

Git

I use Github and Bitbucket to keep my code safe and manageable.

GitExtensions

In my opinion, this is the best graphical user interface for Git. I usually start with downloading GitExtensions.xxx.Complete.msi. It has the Git engine, diff tools and the graphical user interface. What I like the most about GitExtensions is that it uses the same terminology as the Git command line.

ConEmu

Speaking about the command line…GitExtensions installs Git Bash, which is a nice terminal to use git on the command line. But what I missed on Windows, was a nice-looking Terminal like the one on OSX and found ConEmu, a Windows Console Emulator. It accepts Linux and DOS commands and looks good.

conemu

Free (as in Gratis)

All download links point to software that you don’t need to pay for.