Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

What Is Windows 10 Developer Mode? Benefits, Tools, Best Practices

DZone's Guide to

What Is Windows 10 Developer Mode? Benefits, Tools, Best Practices

Windows 10 released a Developer Mode earlier this year. What exactly is it, and how can you take advantage of it? Read on for the details.

Free Resource

Modernize your application architectures with microservices and APIs with best practices from this free virtual summit series. Brought to you in partnership with CA Technologies.

As developers, we pretty much live in “Developer Mode.” It is now possible to put Windows 10 in Developer Mode to improve testing Windows Store applications and improve the overall developer user experience of Windows 10.

Developers like to build things and solve problems, and developer-focused solutions give us better access to the tools and environments we need to get the job done. Today, we’ll take a look at Windows 10 Developer Mode, including some helpful tips.

What Is Windows 10 Developer Mode?

Developer Mode was released as part of the Windows 10 “Anniversary Edition.” It provides developers some additional tools to test Windows Store applications. It also provides some additional user experience optimizations within certain common Windows features.

Developer Mode enables additional testing and debugging tools:

  • Installing and debugging non-certified Windows Store applications
  • Device Portal
  • Device Discovery

It also provides user experience optimizations for the following Windows 10 tools:

  • Windows Explorer
  • Remote Desktop
  • PowerShell

When it was first released, the Ubuntu Shell required Windows 10 Developer Mode. That has since changed! You can now install it directly from the Windows Store.

NOTE: Windows 10 Developer Mode is not required for the Linux bash shell!

Multiple Linux distributions are now supported:

Via the bash shell, you can use core Linux command-line utilities on Windows. This is useful for developers who want to use common Linux based toolchains for programming languages like Ruby, Python, and others. You can also use it to run and test .NET Core 2.0 applications that you plan to deploy to Linux servers.

Learn more about the Windows Subsystem for Linux on MSDN.

How to Enable Windows 10 Developer Mode

Go to “Settings” in Windows 10 and select “Update & Security.”

Image title


Windows 10 Developer Mode is also available for non-desktop devices that are running Windows 10. This includes IoT, Hololens, Xbox, Mobile and other device types.

Introducing the Windows Device Portal

The Windows Device Portal allows Windows 10 devices to be remotely managed over a network or USB connection. It provides advanced diagnostics and real-time performance data. This is useful for testing your applications on a remote Windows 10 device like an Xbox, Hololens, or another Windows 10 desktop.

Note: If you are a web developer, you will probably never use the Device Portal.

The system automatically installs Windows Device Portal when Developer Mode is enabled. However, we still need to switch on “Enable Device Portal” in the For Developers pane. Once that’s done, the software is set up, and firewall rules are configured to permit inbound connections and remote app installation.

Since Device Portal is a local web server, it allows us to interface other devices on a local network. Device Portal also lets users side load apps without the need for any physical connection.

To learn more about the Device Portal, check out the Microsoft docs.

Testing Windows Store Applications

Developer Mode is important for developers of Windows Store applications. It enables you to debug them with Visual Studio 2017. It enables you to “sideload” UWP applications. This is important for installing applications outside of the Windows Store. This also replaces the need for a “developers license” on Windows 8.1.

You may also want to use the Device Portal to test deploying your app to another Windows 10 machine for testing. Developer Model enables a Device Discovery mode and SSH to help with this process.

Windows Store developers need to test their applications on multiple devices much like a mobile developer would. Including tablets, laptops, and 2-in-1 devices. But they may also want to test their UWP applications on Hololens, Xbox and other devices.

Learn more: Deploying and debugging UWP apps and Run Windows Store apps on a remote machine

Windows 10 User Experience Changes

Once Developer Mode is enabled, several other settings are displayed on the “For developers” settings screen. Including settings for Windows Explorer, Remote Desktop, and PowerShell.

Many of the changes are settings that already exist throughout Windows 10. Developer Mode just sets some smart developer-friendly defaults and makes all of the settings available in a single place.

Windows Explorer

One thing that has always annoyed me is that Windows hides file extensions by default. It has always been a setting and one that I immediately changed on any new PC. Developer Mode includes this little setting by default. Yay!

Here is a screenshot showing the settings:

Image title

Remote Desktop

The additional settings make it easy to allow remote connections to your PC. This is really helpful if you are connecting to your PC from home or remotely within your office.

Image title

PowerShell

The only PowerShell setting is an important one. If you ever run any PowerShell commands, you typically have to change the execution policy so that you can run your scripts. Developer Mode defaults that setting change.

Image title

Fewer Symbolic Links Restrictions

Normally, only an administrator can create symbolic links. Developer Mode lowers the restrictions so that any users can create symbolic links with the mklink command.

A lot of corporations don’t allow developers to be administrators on their machine. This is a nice addition for a commonly used feature by developers.

Consider Using Insider Builds

Although not directly related to Windows 10 Developer Mode, I think it is important to mention Windows Insider Builds. The Windows Insider Program allows developers to test upcoming versions of Windows.

This is very useful for developers who need to test things on the bleeding edge. This could be things like upcoming changes Universal Windows Platform (UWP) or Windows Store applications.

The insider program also provides Microsoft a great way to get additional beta testers of Windows within the larger ecosystem.

Things I Wish Developer Mode Did

As an ASP.NET developer, one thing I almost immediately do on every PC is install IIS. I do realize that I can use IIS Express for most things. I still prefer to use full blown IIS for some things.

I’d like to see the “For developers” screen include easy access to some optional Windows features like Telnet, IIS, Hyper-V, and others that are very developer centric and common.

It would also be nice if you could easily install other Microsoft developer tools from this same area. Including Visual Studio, Visual Studio Code, Microsoft SQL Server Management Studio, and other tools.

Summary

Windows 10 Developers Mode includes a lot of little features for developers. For now, it seems like most of which are critical for Windows Store/UWP related applications. As an ASP.NET developer, it isn’t very critical to me. Although, I do like some of the common default settings and having them all at one central location.

I look forward to seeing additional improvements to the developer experience over time. In the meantime, the most important things to install on your new Windows 10 PC are Visual Studio, Stackify Prefix, and Chocolately. Those are must haves for any developer!

The Integration Zone is proudly sponsored by CA Technologies. Learn from expert microservices and API presentations at the Modernizing Application Architectures Virtual Summit Series.

Topics:
windows 10 ,integration ,debugging ,powershell

Published at DZone with permission of Angela Stringfellow, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}