Windows Subsystem for Linux
WSL provides a Linux-compatible kernel interface developed by Microsoft (containing no Linux kernel code), which can then run a GNU user space on top of it, such as that of Ubuntu, openSUSE, SUSE Linux Enterprise Server, Debian and Kali Linux.
So basically in simple terms you can write bash commands, and keep on using the wonderful terminal. which is probably your only best friend after you became a developer.
Couple of years back when Microsoft released WSL, I checked it out and it was not mature enough. But recently after using it, I found it to a small Linux killer for simple users.
I do a bit of Machine Learning, Web Development and some Blockchain based development. For my usage what I found was the WSL is more than sufficient. I installed Ubuntu 18 on my Windows 10, and it is working very smooth.
Reasons to shift
Linux hurts sometimes.
There are hours i have spend searching a simple problem in Linux and there isn’t enough support. Mostly drivers or a software. While on the other hand, windows has always been amazing with drivers.
One the the weirdest feeling is clicking and installing apps after a long time, while you spend a lifetime on terminal. Idk why most things are very hard to do in Linux, that’s why i loved Arch and it’s simplicity.
But breaking of packages in Linux is a pain.
Dual Boot, VM’s all suck.
Idk how people do it, changing from one OS to another only sounds good on paper. In real life, it’s a pain. I like to stick to one OS. I see my friends restarting laptops to change programs, i never could do that.
VM’s on the other hand, should offer a great solution. But rather they are so slow.
Microsoft doesn’t suck anymore.
Well there used to be a time when Microsoft was against everything OSS. But now they are more mature and accepted that openness is not that bad. After acquiring GitHub and Open sourcing some key projects they are becoming a key player in the OSS space.
Most people i know use VS Code. Well they are not that bad anymore.
Almost everything works.
TBH everything i need works. But i herd sometimes, there are stuff that doesn’t work. I haven’t faced any problem in past 1 month of using WSL.
In terms of package managers i tried pip, npm(yarn) and apt, all of them worked like a charm.
My setup requires using Hyper and i had set bash as my default. So its just open and go just like my Linux distribution. Strangely Hyper is something i found really weird to use in Linux, but it is so smooth and better on Windows.
This is a common misconception with WSL, people think they can’t run GUI based Linux Application.
This small hack is needed btw : https://virtualizationreview.com/articles/2017/02/08/graphical-programs-on-windows-subsystem-on-linux.aspx
Well it’s not the best GUI, it works.
Well you can play games now anyway xD. Without restarting, enabling all of us to waste more time.
WSL is not perfect.
This subsystem is not capable of running all Linux software, such as 32-bit binaries, or those that require specific Linux kernel services not implemented in WSL. Since there is no “real” Linux kernel in WSL, kernel modules, such as device drivers, can’t be run.
Well at the moment it for developing applications, well that’s what most people use Linux for. Unless you are a cool server side dude who ssh into a coffee machine to make you one, WSL would work well for you.
Thank you for reading . If you like the Article give it a clap 👏.
Do consider Buying me a Coffee https://www.buymeacoffee.com/gautham , If you loved the article.
If you wish to have a chat, DM me at https://twitter.com/gauthamzzz.
I am a Masters student at the Indian Institute of Information Technology, Allahabad. My Website http://gauthamzz.com.