DEV Community

Cover image for πŸŽ‰πŸ’»My fresh development setup for 2020 (VS Code, Windows 10)
Michael "lampe" Lazarski
Michael "lampe" Lazarski

Posted on

πŸŽ‰πŸ’»My fresh development setup for 2020 (VS Code, Windows 10)

Fresh year πŸŽ‰πŸ₯³ Fresh setup πŸ’»πŸ‘©β€πŸ’»

πŸ’»Laptop

I'm using a Razer Blade 15 2018. It has 16gb of RAM, which is a must for me as a developer. I want to have at least 3 or 4 browsers open with a ton of tabs. Visual Studio Code with a ton of running extension can get pretty heavy pretty fast. The Blade also has a non-glare display. This is the one thing I don't understand about Macbook's. In the sun, it is a mirror where you can't see anything but yourself πŸ€·β€β™€οΈ.

The question is now, do you need such an expensive laptop? No! Right now, you can get super laptops that are good enough for 500 euros/us dollars. Just look for an AMD one with a Ryzen 5 or 7. 8gb should also be enough if you look that you don't open too many tabs.

Let's start to setup up our new laptop.

πŸ–Ό Windows 10 setup

The first thing I do is to install a clean version of Windows 10. Maybe your lucky, and you get a non-bloatware Windows 10 πŸ₯³.

Now connect to the internet and update windows to the latest version. Enable the integrated anti-virus and firewall. They are reliable and usually enough these days.

🐌 Windows 10 slow ring

You can skip this part if WSL2 is released into stable windows!

  • Open the windows 10 settings(the new interface)

  • Click on "Update & Security"

  • Click on the left side of the "Windows Insider Program."

  • Enroll in the insider program and choose the recommended slow (ring)

  • Let Windows 10 update again.

This is how it should look:

Alt Text

Why are we on the slow ring? To use WSL2!πŸ±β€πŸ’»

🍨 Install scoop

Scoop is a command-line installer for Windows. It installs programs from the command line with a minimal amount of friction.

It is pretty easy to install.

Open a power shell

iwr -useb get.scoop.sh | iex
Enter fullscreen mode Exit fullscreen mode

Now you can simply type:

scoop
Enter fullscreen mode Exit fullscreen mode

If you now see a man page with many commands, you know that it installed successfully.

Scoop comes with buckets. Buckets are collections of installable applications or fonts.

We need to add 2 extra buckets.

scoop bucket add extras

scoop bucket add nerd-fonts
Enter fullscreen mode Exit fullscreen mode

We need to update the buckets. We do this with:

scoop update
Enter fullscreen mode Exit fullscreen mode

πŸ‘©β€πŸ« Installing new software

We can finally start to install new software without even opening IE.

Let's start with 7-Zip and Git. These are needed for installing other tools with scoop

scoop install git 7zip
Enter fullscreen mode Exit fullscreen mode

now Firefox and Google Chrome

scoop install googlechrome googlechrome-canary firefox firefox-nightly
Enter fullscreen mode Exit fullscreen mode

Also, I like the new Windows Terminal.

scoop install windows-terminal
Enter fullscreen mode Exit fullscreen mode

Next Visual Studio Code and Visual Studio Code Insiders

sccop install vscode vscode-insiders
Enter fullscreen mode Exit fullscreen mode

I also like to Insomnia. Insomnia is a REST Client

scoop install insomnia
Enter fullscreen mode Exit fullscreen mode

VLC is also something you usually need

scoop install vlc
Enter fullscreen mode Exit fullscreen mode

That is enough for now!

you can check the installed applications with

scoop list
Enter fullscreen mode Exit fullscreen mode

If you want to check what app is out of date, you can run the following commands

scoop update

scoop status
Enter fullscreen mode Exit fullscreen mode

If you want to update more then one app, you can simply run

scoop update *
Enter fullscreen mode Exit fullscreen mode

Keep in mind that this is not the same as scoop update. You need to run scoop update first to update applications.

🐧 Installing WSL2

Let's install WSL2!

Open the Windows Store and search for "Ubuntu". As of writing this blog post, there are 3 versions "Ubuntu", "Ubuntu 18.04 LTS" and "Ubuntu 16.04 LTS". If you know that there are no restrictions, you can simply Install "Ubuntu".

After you have installed "Ubuntu". You can open the Windows Terminal, and in the tab bar, click on the arrow pointing down. Click on Ubuntu and, if needed, do the setup. Now you should have a running Ubuntu on your Windows machine!

Alt Text

Fantastic 😁!

Setting up Ubuntu/Linux

Now type the following commands in the open Ubuntu Terminal.

First, let us update Ubuntu.

sudo apt update; sudo apt upgrade
Enter fullscreen mode Exit fullscreen mode

Next Docker!

sudo apt-get install docker docker-engine docker.io containerd runc
Enter fullscreen mode Exit fullscreen mode

Now that we have docker install, we also need to start the service!

sudo service docker start
Enter fullscreen mode Exit fullscreen mode

Testing if Docker is working now

sudo docker run hello-world
Enter fullscreen mode Exit fullscreen mode

Next nodejs 13.X(the current version as of publishing this post)

curl -sL https://deb.nodesource.com/setup_13.x | sudo -E bash -
sudo apt-get install -y nodejs
node --version
Enter fullscreen mode Exit fullscreen mode

I like yarn instead of npm.

curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -

echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt update && sudo apt install yarn
Enter fullscreen mode Exit fullscreen mode

Since git is already preinstalled on Ubuntu, we don't need to install it.
We only need to set the name and E-Mail.

git config --global user.name "FIRST_NAME LAST_NAME"
git config --global user.email "MY_NAME@example.com"
Enter fullscreen mode Exit fullscreen mode

We also need to generate SSH keys

ssh-keygen
Enter fullscreen mode Exit fullscreen mode

πŸ‘¨β€πŸ’» Visual Studio Code

I have released a small series about Visual Studio Code.
You can find it HERE

My Setup since then has not changed.

The End

I hope you enjoyed it!

If you liked this blog post, please give it a like, and if you really liked it I would appreciate a follow either on dev.to or on any of the following social media accounts. πŸ‘‡πŸ‘‡πŸ‘‡

πŸ‘‹Say Hello! Instagram | Twitter | LinkedIn | Medium | Twitch | YouTube

Top comments (26)

Collapse
 
jkling38 profile image
jkling38

This is awesome! Just found out about scoop about a month ago. Seriously awesome.
I'd add to this that VS Code allows you to connect to your WSL instance and edit files on there directly in VS Code without worrying about mapping any folders.

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Yeah with the remote extension you can easily work on projects that live in wsl

Collapse
 
xgrimau profile image
Xavi

Good stuff Michael! My coworkers still call me crazy for using windows for development!

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

I switched to Windows from linux for 2 reasons

1) WSL1/2
2) Gaming

I also play overwatch and yeah I don't want to dual boot :D

Collapse
 
joshgrib profile image
Josh Gribbon

WSL/git bash were the thing that made me fine to just use Windows. I was dual booting for a while but I don't see the need anymore, I have the command line I need and I don't need to worry about software not supporting the OS, unless it's something Apple-specific like XCode

Thread Thread
 
lampewebdev profile image
Michael "lampe" Lazarski

Yes, still for that I have a VM with OSX but I'm mostly working on web stuff where it does not matter what OS you have I only boot it to test things out in safari because it is the new IE.

Collapse
 
ilovekuchen profile image
ilovekuchen

Overwatch should work on Linux too. But the occasional need for adobe..doesn't.

Collapse
 
pixeledcode profile image
Shoaib Ahmed • Edited

I was following the steps and we need to install git before bucket for scoop. Thought I will just let you know. Also, there's a 'sccop' instead 'scoop' in the post when installing VSC.
Anyway, great write, thanks!

Collapse
 
jimpriest profile image
Jim Priest

Was curious how scoop compared to chocolatey - and they have a nice summary here: github.com/lukesampson/scoop/wiki/...

Collapse
 
rolfstreefkerk profile image
Rolf Streefkerk • Edited

But does Scoop have such a large supported database of programs? That is really what makes me use Chocolatey, the UAC popups do not bother me at all.

A list of apps in the "main" bucket:
github.com/ScoopInstaller/Main/tre...

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Scoop has also more then the main bucket:

main
extras
versions
nightlies
nirsoft
php
nerd-fonts
nonportable
java
games
jetbrains

It maybe does not have every app for windows. It has the most important ones at least for me. All apps and dev stuff I need is in some of these buckets.

Collapse
 
sylvain1811 profile image
Sylvain Renaud

Nice Windows setup!
You made a mistake when you want to "install" docker, you wrote "remove".

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Upps :D

Yeah, it should be install!

thank you very much! Good catch!

Collapse
 
balazsbohonyi profile image
Bohonyi Balazs Zsolt

You'll need to have Windows 10 Pro, because Docker will not work on Windows 10 Home :(

Collapse
 
kamalhm profile image
Kamal

I used to use chocholatey didn't know there's an alternative! gonna try it later

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Yeah chocolatey is nice but I don't know scoop just feels lighter and easier to use :)

Collapse
 
wezpyke profile image
Wez Pyke

First time I've heard of Scoop, thanks for sharing.

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Your welcome :)

Collapse
 
axiol profile image
Arnaud Delante

Just curious, why do you also install git on Windows? git in Ubuntu is way enough, isn't it?

Collapse
 
lampewebdev profile image
Michael "lampe" Lazarski

Scoop buckets are basically git repos that's why it is needed as a dependency for scoop

Collapse
 
vishal_hs_8595bbb5ca3f90 profile image
VISHAL H S

i want to use bun instead of node and its directly available in scoop why install wsl. also installing ubuntu from store the terminal said ctrlD to exit or enter to retry, i had to run wsl --install. sorry im a beginner