DEV Community

Cover image for Modern Windows 10 development setup

Modern Windows 10 development setup

Alexandru-Dan Pop on October 25, 2020

Windows is the most popular desktop & laptop OS, love it or hate it, lots of programmers run this OS. The reasons may be various, but I like...
Collapse
 
delroh profile image
delroh

Thanks for sharing this 👍 Allow me to add to this compilation:

1) Microsoft PowerToys github.com/microsoft/PowerToys a bundle of tools,one uses wox under the hood and other tools for productivity like color picker, image resize, bulk file rename, window layout arrange on your screen and a couple more feats. You can disable the tools you don't want to use.

2) Another terminal alternative I used for a while is github.com/Eugeny/terminus (it is an elecron app like Hyper, with some more features). Lately I've been just using Windows Terminal because it's as simple as I need it to be and lighter on resource usage (not an electron app), which improves battery perfomance if you're on a laptop.

Cheers 🙌

Collapse
 
alexandrudanpop profile image
Alexandru-Dan Pop

Great additions, thanks!

Collapse
 
hamcha profile image
‮ittaG ordnasselA • Edited

If you're looking for Windows-compatible CLI alternatives to popular *nix tools, I have a list I try to keep updated as I find stuff:

git.fromouter.space/Hamcha/stuff/s...

Collapse
 
alexandrudanpop profile image
Alexandru-Dan Pop

Cool!

Collapse
 
matiasbaldanza profile image
Matias Baldanza • Edited

I remember trying WSL on my Win 10 (16299) and it being an absolute nightmare to make some things work. I ended up using homestead and, later on, a VM running Ubuntu. (Sloower, but no compatibility issues.)

People say WSL2 is better, but I have to update my OS, and I worked in IT for 20+ years. Believe me when I say that OS upgrades in Windows are a Pandora's box. If you have a version that works, stay on it as long as you can.

On the other hand, I just got a new laptop with the latest W10 pre-installed, so I might give it another try... I will definitely not waste a day or two in reinstalling my main machine just to try WSL2.

I definitely will take a look at Cmder and Wox, which I didn't know. Thanks for the tip!!!

Collapse
 
elmuerte profile image
Michiel Hendriks

People say WSL2 is better

Not me. For some things WSL2 is better than WSL1, but for a lot of things it is worse.

  • In WSL2 Linux IO is much better, but Linux->Windows IO is much much worse.
  • WSL2 will eat your memory (originally 80%, now reduced to 50%) because they have no disabled the Linux Kernel IO caching functionality.
  • WSL2's time is not synchronized, cause serious clock drift when you let Windows sleep.
  • SystemD is broken for a large part in WSL2
  • WSL2 does offer much better Docker support in Windows
  • WSL2 runs in a hidden HyperV VM and tuning it is a bit limited
Collapse
 
fredrikbonde profile image
Fredrik Bonde

WSL2 is very different from WSL, WSL they try to emulate linux. WSL2 is a proper linux system running in a container.

Collapse
 
mahmoudajawad profile image
Mahmoud Abduljawad

I made the transition from macOS and Apple Wall Garden when Surface Pro 4 came out, as I became more fond of highly portable, multi-purpose form factor of Surface Pro devices. Naturally, I tried A LOT to get fedora - my GNU/Linux distro of choice - to run on SP4 but in early days of SP4 almost nothing worked. Although I tried fedora on SP4 again with fedora 32, and it covered almost everything about it, except for touch and pen input. That had left me little more lean towards focusing on making Windows my perfect dev OS and eventually I found that Windows 10 is really making the promises it claimed, especially with first-level support for node, python, docker, and later WSL2 which brought even better DX for docker and cross-platform development and testing.

Collapse
 
bradtaniguchi profile image
Brad

I have a weaker windows 10 laptop I got from a friend. I started setting up some development environment stuff in it for this specific reason. I'm going to probably take some of these tips and check em out.

I'm planning on building a new computer (primarily for gaming), and it was going to dual boot with Linux. However if I can get the windows development side to work well enough, I might focus on dual booting later.

Collapse
 
ronaldokun profile image
Ronaldo S.A. Batista

Thank you for introducing Wox to me as well. Turning off Windows Indexing improved the system speed. I use and love Cmder for many years, the speed is getting better with each update. For VScode Integrated Terminal I just use the bash from cmder. What are the advantages of using cmder instead?

Collapse
 
zeagur profile image
zeagur

Thanks for the nice article, Cmder is also my go-to terminal for many years and I currently integrate it within windows terminal, functionality is similar but I do like the looks/configurations on windows terminal more lol.
As WSL2 when using Docker desktop with wsl2 backend is so much better than hyper-v especially the startup time and we are also able to access docker directly from both wsl or host machine. The only thing I don't like about windows is that some libs/tools is not available, like jsonnet.

Collapse
 
hugogeorget profile image
Hugo GEORGET • Edited

Thank you for talking about Cmder !
It has been my go-to console on Windows for a while and I don't plan on changing any time soon !

I have an interesting alternative to Wox, Microsoft's PowerToys Run !
It's included in Power Toys, an open-source utilities bundle.
Power Toys is available on Chocolatey to make easy to install/update.
It comes with other cool stuff, such as a Keyboard Manager and File Explorer add-ons !

EDIT: Turns out PowerToys is partly based on Wox...
The more you know !

Collapse
 
alexandrudanpop profile image
Alexandru-Dan Pop

thanks for sharing, will check them out!

Collapse
 
jwp profile image
John Peters

I'm a Windows fan with one exception, they fractured their dev environment so badly I refuse to take Wpf or Winforms jobs any longer. It's pretty sad that developing desktop apps is such a fail now. Funny but maybe Electron is the answer. I know we can do Win32 stuff in C++ but some of us can't stand C++.

Collapse
 
10xgeek profile image
Henry

Hi Alex, thank you for your post.

I would like to know what tool you use to make those keyboard shortcuts you type to show up on your screen?

Collapse
 
alexandrudanpop profile image
Alexandru-Dan Pop

Not sure, I took the Gif from the Wox GitHub repo:
github.com/Wox-launcher/Wox

Collapse
 
10xgeek profile image
Henry

Okay. Thanks for your post anyways!!

Collapse
 
shanemitchell profile image
shanemitchell

It looks like it is Carnac

Collapse
 
ronan696 profile image
Ronan D'Souza

Really nice article!

A good alternative to Wox would be Keypirinha. I personally use this and find it really powerful.

Collapse
 
ronaldokun profile image
Ronaldo S.A. Batista

Keypirinha..lol. Some fans of the Brazilian Drink i guess. Thank you for the suggestion.

Collapse
 
ronan696 profile image
Ronan D'Souza

Haha xD. Yes, they've even documented it on their website.

Keypirinha is a combination from the terms Keyboard and Caipirinha, the brazilian cocktail, which the author really encourages you to try if you haven’t yet!

Collapse
 
smalonso profile image
Samuel

Thanks for the article, Alex. About the console, Cmder is a good option but my current perfect setup is Powershell 7 with Oh MY Posh to customize the color scheme.

Collapse
 
amlana24 profile image
amlan

I have always been a Windows fan and user. I have been developing and coding on windows for 13 years now. Absolutely love it.

Collapse
 
javaarchive profile image
Raymond

Thank you for introducing me to Wox, I had an incident a few months ago where indexing too much of my code caused windows explorer to have issues

Collapse
 
alexandrudanpop profile image
Alexandru-Dan Pop

My pleasure!

Collapse
 
mohsinvirk profile image
Mohsin Latif

Thanks, this is one of the best guides on windows dev setup.

Collapse
 
manethye profile image
Maneth

This is a amazing article. Thanks!!!