setting up your dev environment

July 3, 2021

green house roof

I've compiled a list of sites, tools, and extensions I've enjoyed using for anyone looking to get started on their own development journey.

Learning

Developing software means learning to learn. Visualization and teaching are the most direct ways to create new neural pathways. Create projects you'd want to use to flex your new skills and sprinkle fun into whatever you're doing. Jim Kwik's Limitless is worth a read to kickstart your learning journey.

Tutorials

Reading & Listening

Playing & Prototyping

Sites for when I want to play around or prototype an idea and not have to deal with environment config:

Terminal

I use the default mac terminal since I enjoy the winky sass the icon serves me and it does everything I want :) shout out to iterm2 as a more fully featured option. I use zsh with oh my zsh

Xcode CLI tools: xcode-select —-install

Homebrew to download system packages

Source Control

Git is installed with the Xcode CLI tools which is my source control for code changes. Github is where I push those changes to collaborate with others. I use Gitlab at work which is also fantastic and offers free private repos. Github is a better place to start on IMO since the open source community is centered around it. You can learn so much from looking at / working on open source software so def have fun with that :)

Text Editor

VS Code is fantastic. I love the git tooling where I can clearly review all my changes before committing them and all of the fun extensions that are available.

Extensions:

Browsers

You'll want to get familiar with the dev tools in your browser of choice and have multiple browsers to QA your apps on. Get extensions for viewing JSON, React / Vue Dev Tool extensions, and an ad blocker while you're at it ;)

Servers

Netlify is the truth for hosting static sites and a cute place to get started. It has a massive free tier and helpful tooling through a pleasent interface.

Once you want to start playing around with storing content in a database and creating an API to access it you'll want to explore cloud services such as AWS, Heroku, or DigitalOcean

have fun!