Image for post
Image for post
Photo by Blake Connally on Unsplash

Sometimes when you want to get a project off the ground quickly you tell yourself it’s okay to skip writing tests.

This often works well in the short term, as you meet a deadline. However, as time passes the manual testing tests gets too time consuming and you start to question your earlier decision. Skipping tests also comes from another place. You’re not sure how to test — maybe this is your first project and testing is an after thought. …

Image for post
Image for post

On paper, WSL fulfills a dire need in the development community. It allows you to have the *NIX environment on any device that can run windows. Whereas previously you had to either buy Apple hardware or go through the intimidating Linux installation.

In this article I will give you some ideas about the setup process and runtime of WSL2 vs Native Ubuntu to let you decide if it’s worth the switch.

Let’s begin with a little setup for WSL2.

Note: WSL and WSL2 will be used interchangeably from here on out, but they are meant to mean the same thing.

1. Install WSL

Image for post
Image for post

Udacity have done some great work building a self driving car simulator for their online Nanodegree course, which makes things easier for us budding enthusiasts, as we can get up and running quickly by piggy backing on their work. Good thing is the sim is open source and on github. That is to say sim, well it is more like a project built using the Unity Game Engine. So we won’t be installing the sim, as much as we are installing Unity3D and running Udacity’s car sim project.

Note: As Unity Game Engine shares a name with a Linux desktop…

Image for post
Image for post

So you’re interesting in installing the latest Ubuntu LTS on your shiny new Dell XPS. We’ll you’ve come to the right place and in fact, are in a bit of luck, as Ubuntu’s 20.04 boot media now supports AX200 wifi cards out the box!

However, there are still a few issues plaguing XPS 9570 users who have chosen to run the latest Ubuntu, and I thought I’d let you know what they are before you dive in headfirst.

The out the box experience is quiet good, compared to 19.10 …

Image for post
Image for post

According to the 2019 StackOverFlow Developer Survey Linux accounts for 25% of primary operating systems. Now, among bit tech companies like Google, this number will be higher as they provide an easy install path for their in-house Ubuntu fork (known as Goobuntu).

So we know that Linux provides a customisable environment and culture that no SDE, whether at Google or not, can resist — and here are some of the applications that make it so.

  1. Jetbrains IDEs (Intellij, PyCharm, Goland etc)

Image for post
Image for post

Note: These tools are built for the Xorg display server, which is the default for Ubuntu 20.04. If you’re not sure run ps -e | grep tty and check for xorg.

Install dependencies

sudo apt install python3 python3-setuptools xdotool python3-gi libinput-tools python-gobject

Add your user to the input group

sudo gpasswd -a $USER input

Install libinput gestures

git clone
cd libinput-gestures
sudo make install
sudo ./libinput-gestures-setup install

Start the software and allow it to run at startup.

libinput-gestures-setup start
libinput-gestures-setup autostart

Next install a UI tool to make adding and editing gestures easier.

git clone cd gestures sudo…

Image for post
Image for post

If you think you may have previous version of golang install, or you’re not sure, run the following commands to completely remove of any trace of golang on your system.

sudo apt remove golangsudo apt autoremove

Next we’re ready to install golang. We will install it in the recommended location by the official golang docs, which is /usr/local/go

So first head to the website and download the latest version->

Note: I also don’t recommend installing through apt on Ubuntu, as it installs the package in weird location and on top of that, it won’t be the latest version.


Just a Software Engineer in London

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store