# Windows Developer Mode and Julia

**URL:** <https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937>\
**Category:** General Usage\
**Tags:** windows\
**Created:** [January 18, 2024, 2:10am UTC](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937 "2024-01-18T02:10:04Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)\
**Post date:** [January 18, 2024, 2:10am UTC](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/1 "2024-01-18T02:10:04Z")

</div>

Microsoft Windows has a relatively new [Developer Mode](https://learn.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development) that has some impact on how Julia is used and functions on that platform.

 ![image](https://global.discourse-cdn.com/julialang/original/3X/1/d/1dc550f4bac5ba898bf234e9550f3117a457ad76.jpeg)

One effect of Developer Mode is enabling [symbolic links](https://blogs.windows.com/windowsdeveloper/2016/12/02/symlinks-windows-10/). Symbolic links are fancy shortcuts which allow a file or directory (folder) to appear elsewhere in the file system than where they currently are. In cmd.exe, this is done via the `mklink` command. In PowerShell, this can be done via [`New-Item -ItemType SymbolicLink`](https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/new-item?view=powershell-7.4#example-7-create-a-symbolic-link-to-a-file-or-folder).

The [matter](https://discourse.julialang.org/t/iso-codes-tree-hash-mismatch/108240) has [recently](https://discourse.julialang.org/t/cannot-instantiate-env-in-julia-1-10-adwaita-icon-theme-jll-git-tree-hash-error-anyone-else/108105) come up with a Pkg.jl [issue](https://github.com/JuliaLang/Pkg.jl/issues/3643). The heart of the matter is that the current method of verifying the hashes of artifacts with symlinks on Windows does not work, unless Developer Mode is enabled.

Turning on Developer Mode is a bit scary. This the dialog message that it presents is as follows and warns about security issues. Indeed part of the why Developer Mode exists is that Microsoft is worried naive programs may handle symbolic links poorly.

![image](https://global.discourse-cdn.com/julialang/original/3X/f/8/f8db08a338a411be5668714fa03f88c435453886.png)

Another developer feature that can be changed on the same page, independent of Developer Mode is the Default Terminal.

 ![image](https://global.discourse-cdn.com/julialang/original/3X/9/4/94635436e58f162c1b8e45a5f9323d61bdfb2a29.png)

If you have [Windows Terminal](https://apps.microsoft.com/detail/9N0DX20HK701?hl=en-US&gl=US) support enabled, this will open Julia within Windows Terminal rather than the old console. Windows Terminal offers improved Unicode support among other important features that can be used in conjunction with Julia.

Do you plan on enabling Developer Mode on Windows to use Julia?

_Poll ([view on site](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/1))_

Have you enabled Windows Terminal as your default Terminal?

_Poll ([view on site](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/1))_

---

<div class="post-metadata">

**Author:** ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)\
**Post date:** [January 18, 2024, 4:14am UTC](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/2 "2024-01-18T04:14:27Z")

</div>

For those not planning to enable Windows Developer Mode, I am curious as to why?

---

<div class="post-metadata">

**Author:** ![oheil](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/oheil/32/220745_2.png) [@oheil](https://discourse.julialang.org/u/oheil)\
**Post date:** [January 18, 2024, 8:16am UTC](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/3 "2024-01-18T08:16:18Z")

</div>

I would **NOT** recommend to use windows developer mode to have a smoother Julia experience.

That’s like having always admin rights on to have no issues with access rights. If you develop like that others will have major problems using your product!

Julia developers, if they want multiple platforms, must make sure, that everything works fine without any additional rights on that platforms.

Principle of least privilege (POLP): [Principle of least privilege - Wikipedia](https://en.wikipedia.org/wiki/Principle_of_least_privilege)

---

<div class="post-metadata">

**Author:** ![bilderbuchi](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bilderbuchi/32/13562_2.png) [@bilderbuchi](https://discourse.julialang.org/u/bilderbuchi)\
**Post date:** [January 18, 2024, 8:20am UTC](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/4 "2024-01-18T08:20:44Z")

</div>

In my case, I have no admin privileges on my work machine to do that.

---

<div class="post-metadata">

**Author:** ![mkitti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mkitti/32/12459_2.png) [@mkitti](https://discourse.julialang.org/u/mkitti)\
**Post date:** [January 19, 2024, 6:21am UTC](https://discourse.julialang.org/t/windows-developer-mode-and-julia/108937/5 "2024-01-19T06:21:13Z")

</div>

Thank you everyone for responding to the poll. I will close it within 24 hours.

My current conclusion is that Julia should not depend on Windows having symbolic link capability by default in the future. Unfortunately, [the share of Windows users that cannot create symlinks will be much larger than 5%](https://github.com/JuliaLang/Pkg.jl/issues/3643#issuecomment-1880111897) going forward, @staticfloat, and I would not expect it to decrease significantly decrease in the near future.
