Resources

A developer without an understanding of their environment is a carpenter without the knowledge of his workshop.

Some things you should know before coding are:

- PATH: What is it, how is it used, and how to modify it

- Linux: how to make a file executable

- Terminal: how to launch one on your OS with only your keyboard

Intro to Programming

Python: Intuitive Beginner-Friendly Language CS Circles: Learn Python

After learning Python, learn the difference between set, dict, list and learn about generators in Python

Lastly in Python, learn about the argparse module and create a sample terminal app with support for boolean flags and --flag arg

Git: Version Control System (Code History) GitHub Desktop: GUI for git

Full Stack / CRUD Developer

Database: PostgreSQL, use a managed PostgreSQL in production. Reason being no bullshit.

Backend: ASP.NET Core. Reason being no/less headaches

Install Visual Studio (C#, ASP.NET, WinUI, and C++)

Frontend: either ASP.NET Core's Razor pages (HTML + C#) or whatever web framework you want such as React

When creating ASP.NET app, select Web App template if you want to use Razor pages or Web API for SPAs

Need to learn basic SQL while working on a project

Project idea: SSR blogging website with database schema upgrades and production deployments

Other Web Development (Frontend) Thoughts

Twitter meta tags

Responsive Web Design The Checkbox Hack React (JSX): A JavaScript framework for creating complex UIs

Systems Programming

Rust: A C++ pointer-free Alternative

Desktop Apps

If the desktop app only requires simple system API calls such as storage, then use Tauri

My Tauri & React Template

When utilizing system APIs per operating system, I would suggest learning the native technology (Windows - WinUI, macOS - SwiftUI/Appkit, KDE - Qt)

Qt (warning: C++) In a rush and know Python? Use PySimpleGUI

Mobile Apps

Don't use react-native, use Kotlin Jetpack Compose for Android and SwiftUI for iOS

You will need Android Studio and if targeting iOS you will also need a Macbook to install XCode

C & C++

Although no great tutorials exist that I know of, C & C++ is essential to this day

Visual Studio: Windows C++ IDE and Compiler Clang: C & C++ Compiler GCC compiler for Windows Make for Windows GNU Core Utils for Windows

Improving your Environment

An IDE stands for Integrated Development Environment (Code Editor), not relevant to know this though

Visual Studio Code: Multi-Purpose IDE Visual Studio (C#, ASP.NET, WinUI, and C++) IntelliJ: Multi-Purpose IDE IntelliJ Python Plugin IntelliJ Atom OneDark Theme Windows Terminal

Must Have Software

7-Zip: File Archiver and Extractor qBittorrent: BitTorrent Client qBittorent Dracula Dark Theme Music Caster: A kickass music player for Windows & Linux Balena Etcher: Burn ISO files to USB QuickLook: Preview Files With Spacebar Google Search & Drive Dark Theme KeepassXC: offline password manager KeePass compatible Android app

Specific-Usecase Software & Websites

Keytweak: Rebind keys FFmpeg for Windows (latest commit, GPL, shared) send.fdab: Simple file sharing Hugo: Blogging made easier MiniTool Partition Wizard: Fix or Move Internal or External Partitions Mirror Android device to PC Taskbar X: Better Taskbar for Windows 10 EarTrumpet: Windows Volume Controller Ditto: Clipboard Manager
Toggle Theme