Full Stack - Level 1 Module 1 – Jiangfeng Li

1. An Overview of Things Learned

Technical Area:

  • Learned how to set up Windows subsystem for Linux (WSL).
  • Learned how to install Discourse and relevant dependencies like PostgreSQL and Redis on the windows subsystem for Linux.
  • Installed Atom editor for writing and running Ruby
  • Learned how to run Ruby from both WSL and Atom


  • Windows 10.
  • STEM-Away forum
  • “Windows Subsystem for Linux Installation Guide for Windows 10” by Microsoft
  • Windows subsystem for Linux.
  • Discourse and relevant dependencies such as PostgreSQL and Redis.
  • GitHub
  • YouTube
  • Stackoverflow
  • Atom
  • Ruby

Soft Skills:

  • Learned how to be persistent to troubleshoot when getting stuck on confusing problems
  • Learned how to manipulate new programming language Ruby basically by self-teaching
  • Acquired self-teaching abilities to set up the developing environment and fixed the issues both accurately and independently

2. Achievement Highlights

  • Successfully installed Windows Subsystem for Linux by referencing “Windows Subsystem for Linux Installation Guide for Windows 10” article and posts on StackOverflow
  • Successfully installed Discourse and relevant dependencies on WSL by reading “Beginners Guide to Install Discourse on Windows 10 for Development” and typing from the WSL terminal
  • Learned basic features, structures as well as implementations of Ruby such as variables, loops, if-statement, function definitions, Classes creations, modules import and other so on from YouTube videos like Giraffe Academy

3. Detailed statement of tasks completed

  • When I just began the tutorials to install Discourse, I thought I may have to install a dual boot Linux operating system in my local machine, but actually, it turned out that all I need is to install Windows Subsystem for Linux. I tried to sign up Windows Insiders Program but found that it took a long period to update the system, hence I choose to install WSL manually instead. After downloaded the Linux kernel update package, I found I could not run the package and when I typed “wsl --set-default-version 2” on PowerShell, it said:

    Issues: wsl : The term ‘wsl’ is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. At line:1 char:1 + wsl --set-default-version 2

    Then I searched for the solutions on the website and decided to execute “Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform” from GitHub and restart the System. As a result, the issues above were handled from my point of view, I installed the Linux distribution of Ubuntu and created a user account and password for my new Linux distribution correctly. I followed the instructions from “Beginners Guide to Install Discourse on Windows 10 for Development” to set up everything appropriately. I skipped the procedures to create a GitHub account since I already have one. I watched the tutorials made by Mike Dane to let myself become familiar with Ruby. It seems that the object-oriented structure of ruby is quite similar to python and JavaScript, therefore, learning basic Ruby gives me a sense of learning python and JavaScript.