The Founder’s Guide:
3.5 Reasons Founders Should Use WSL2 to Build Prototypes
Build prototypes that can use both Windows and Linux programs
The War Between Microsoft and Linux Has Ended:
Embrace, Extend, and Extinguish (EEE) is a strategy that refers to creating a product that’s compatible with open standards, adding new features to the product, and using those features to gain a strong competitive advantage. It applies to corporations that use their market dominance to gain unofficial ownership of open standards. This is something that Microsoft is known for which is why many users doubt its recent support of Linux and open source.
“Linux is a cancer that attaches itself in an intellectual property sense to everything it touches.”
— Steve Ballmer —
However, there are others that believe Microsoft has had a genuine change of heart regarding open source which may stem from the changing market. It could be related to the fact that server products and cloud services have become their largest and fastest growing source of revenue which includes Azure. This is interesting because Azure is considered a large revenue driver within its segment and over 50% of the virtual machines it runs are Linux.
Microsoft has been achieving some pretty impressive milestones that are congruent with their claims about embracing Linux and open source. It currently employs over 35,000 engineers that contribute to open source projects and maintains over 3,800 open source projects like PowerShell, Windows Terminal, .NET Core, and Visual Studio Code. It also uses over 150,000 open source components to build its products and services.
“Microsoft loves Linux.” — Satya Nadella —
Microsoft has also performed a few noteworthy acts of good faith in the open source community such as donating 60,000 of its patents to Open Invention Network (OIN). It acquired Xamarin and redistributed their formerly expensive products and services to developers for free. It also acquired GitHub and upgraded their free plan to include an unlimited number of public repositories, private repositories, and collaborators.
“We are all in on open source.” — Satya Nadella —
Microsoft has also been contributing and building relationships in the open source community. It has served as either the founding member, joining member, contributing member, and or sponsor of numerous open source related organizations and initiatives. It has also built ongoing partnerships with organizations like Canonical which helped bring operating systems such as Ubuntu to Windows 10 in Windows Subsystem for Linux 2 (WSL2).
1. Windows Subsystem for Linux 2 Supports GPUs:
Windows Subsystem for Linux 2 (WSL2) is a Windows 10 feature that allows users to run Linux directly on Windows without using dual-boot or a virtual machine. It has a native Linux kernel, GPU support, complete access to both file systems, full system call compatibility, and network application support. It also requires fewer system resources like central processing units (CPU), random access memory (RAM), and disk space than a full virtual machine.
WSL2 can also access the graphics processing unit (GPU) on the computer like a native Windows program which lets it run full workloads using CUDA acceleration. It works well with Docker containers and existing artificial intelligence, machine learning, and data science workflows. It also supports every NVIDIA, AMD, and Intel GPU that’s compatible with DirectX 12 which helps make machine learning more accessible for students and beginners.
2. WSL2 Can Run Linux Directly on Windows 10:
WSL2 can already run Linux programs with a graphical user interface (GUI) by running an X server on Windows that listens for X11 graphical programs on Linux. It can run one or more Linux graphical programs within its own window next to Windows graphical programs on the same desktop screen. This is something that Microsoft plans to integrate into WSL2 using a very similar process that offers a seamless experience and works out of the box.
WSL2 can also already run desktop environments with a GUI by running an X server on Windows that listens for X11 graphical programs on Linux. It can run GNOME 3 which is the default desktop environment for Ubuntu 18.04 but there are many other desktop environments that are available. This isn’t something that Microsoft plans on integrating into WSL2 because their goal is to add Linux programs to Windows 10 rather than replace it.
WSL2 also enables users to access the same set of files from Windows and Linux-based graphical programs. It can open, modify, and transfer the files between both file systems using command-line programs and File Explorer. This would otherwise require users to set up a shared storage drive that’s compatible with both file systems which can take a long time to configure, involve third-party software, and cause problems related to file corruption.
3. WSL2 Can Blend Windows and Linux Programs:
WSL2 can access over 80,000 programs that are free and open source which represent both system and user-based programs that are included with the Ubuntu operating system. It installs programs differently than Windows but it provides users with a GUI that functions like the software stores on other operating systems. It can also integrate programs from additional sources into the Linux software store which shows up in browse and search results.
WSL2 can also access thousands of programs from GitHub that are either only supported on Linux or supported on multiple operating systems but its Windows program doesn’t work. It can be used to replace broken Windows programs with working Linux programs which would reduce the length of time it takes to fix errors and rewrite code. It can also be used in scripts that integrate both the Windows and Linux programs into a seamless workflow.
3.5 WSL2 Can Be Installed and Set Up Right Here:
This article is part of a mini-series that helps readers set up everything they need to start using WSL2 for artificial intelligence, machine learning, deep learning, and or data science. It includes articles that contain instructions with copy and paste code and screenshots to help readers get the outcome as fast as possible. It also includes articles that contain instructions with explanations and screenshots to help readers understand what’s happening.
01. Install Windows Subsystem for Linux 2 (WSL2)
02. Install the NVIDIA CUDA Driver and Toolkit in WSL2
03. Install Software From Source Code in WSL2
04. Install the Jupyter Notebook Home and Public Server in WSL2
05. Install Virtual Environments in Jupyter Notebook in WSL2
06. Install Programs With a Graphical User Interface in WSL2
07. Install Ubuntu Desktop With a Graphical User Interface in WSL2
“Hopefully, this article helped you get the 👯♀️🏆👯♀️, remember to subscribe to get more content 🏅”