A running log of things I'm learning to build strong software engineering skills while also expanding my knowledge of adjacent technologies everyday.
Updated: Once a month | Current Focus: Generative AI
Domain-agnostic, stack-independent skills
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | Designing Machine Learning Systems | 386 pgs | ✅ |
| Designing Data-Intensive Applications | 616 pgs | ⬜ | |
| Udacity | A/B Testing | 5/5 | ⬜ |
| Authentication & Authorization: OAuth | 4/4 | ✅ | |
| Client-Server Communication | 5/5 | ⬜ | |
| Designing RESTful APIs | 5/5 | ✅ | |
| HTTP & Web Servers | 3/3 | ✅ | |
| Networking for Web Developers | 5/5 | ✅ | |
| Udemy | AWS Certified Developer - Associate 2018 | ✅ | |
| Datacamp | A/B Testing in Python | 4h | ⬜ |
| Customer Analytics & A/B Testing in Python | 4h | ✅ | |
| Machine Learning Monitoring Concepts | 2h | ✅ | |
| MLOps Concepts | 2h | ✅ | |
| Neetcode | System Design for Beginners | ✅ | |
| System Design Interview | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Datacamp | Foundations of Probability in Python | 5h | ✅ |
| Introduction to Statistics | 4h | ✅ | |
| Introduction to Statistics in Python | 4h | ✅ | |
| Hypothesis Testing in Python | 4h | ✅ | |
| Statistical Thinking in Python (Part 1) | 3h | ✅ | |
| Statistical Thinking in Python (Part 2) | 4h | ✅ | |
| Experimental Design in Python | 4h | ✅ | |
| Practicing Statistics Interview Questions in Python | 4h | ⬜ | |
| edX | Essential Statistics for Data Analysis using Excel | ✅ | |
| MIT | MIT 18.06 Linear Algebra, Spring 2005 | 36/36 | ✅ |
| Udacity | Intro to Inferential Statistics | 23/23 | ✅ |
| Eigenvectors and Eigenvalues | 1/1 | ✅ | |
| Linear Algebra Refresher | 8/8 | ⬜ | |
| Youtube | Essence of linear algebra | 16/16 | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | Grokking Algorithms | 254 pgs | ✅ |
| Udacity | Intro to Data Structures and Algorithms | ✅ | |
| Neetcode | Algorithms and Data Structures for Beginners | ✅ | |
| Advanced Algorithms | 1/7 | ⏳ | |
| Youtube | Sliding Window Technique - Algorithmic Mental Models | 36m | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Udacity | Intro to relational database | 4/4 | ✅ |
| SQL for Data Analysis | 10/10 | ⬜ | |
| Database Systems Concepts & Design | ⬜ | ||
| Datacamp | Database Design | 4h | ✅ |
| Introduction to Databases in Python | 4h | ⬜ | |
| Intro to SQL for Data Science | 2h | ✅ | |
| Intermediate SQL | 4h | ✅ | |
| Joining Data in SQL | 4h | ✅ | |
| Data Manipulation in SQL | 4h | ⬜ | |
| Exploratory Data Analysis in SQL | 4h | ⬜ | |
| Applying SQL to Real-World Problems | 4h | ⬜ | |
| Analyzing Business Data in SQL | 4h | ⬜ | |
| Reporting in SQL | 4h | ⬜ | |
| Data-Driven Decision Making in SQL | 4h | ⬜ | |
| NoSQL Concepts | 2h | ✅ | |
| Introduction to MongoDB in Python | 3h | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | Refactoring UI | 213 pgs | ⬜ |
| Pluralsight | UX Fundamentals | ✅ | |
| Course | How to Visualize Value | ✅ | |
| Series: K-12 Figma Design Basics | ✅ | ||
| Youtube | How to Make Your Website Not Ugly: Basic UX for Programmers | 48m | ✅ |
| Article | Create an illustration in Figma design | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Udacity | Linux Command Line Basics | 30/30 | ✅ |
| Shell Workshop | 1/1 | ✅ | |
| Configuring Linux Web Servers | 3/3 | ✅ | |
| Datacamp | Introduction to Shell for Data Science | 4h | ✅ |
| Introduction to Bash Scripting | 4h | ✅ | |
| Data Processing in Shell | 4h | ✅ | |
| MIT | The Missing Semester | 11/11 | ✅ |
| Article | A guide to manage your environment variables in a better way using direnv | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Udacity | Version Control with Git | 6/6 | ✅ |
| GitHub & Collaboration | ✅ | ||
| How to Use Git and GitHub | 4/4 | ✅ | |
| Datacamp | Introduction to Git for Data Science | 4h | ✅ |
| Advanced Git | 3h | ✅ | |
| Youtube | How to Use Git Worktree | Checkout Multiple Git Branches at Once | 11m | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Course | Google: Technical Writing One | ✅ | |
| Google: Technical Writing Two | ⬜ | ||
| Compound Content | ✅ | ||
| Build Once, Sell Twice | ✅ | ||
| Book | Writing for Software Developers | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | The Tech Resume Inside Out | 280 pgs | ✅ |
| The Coding Career Handbook | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | Python 201 | 352 pgs | ⬜ |
| Writing Idiomatic Python 3 | 332 pgs | ✅ | |
| Datacamp | Writing Efficient Python Code | 4h | ✅ |
| Writing Functions in Python | 4h | ✅ | |
| Object-Oriented Programming in Python | 4h | ✅ | |
| Intermediate Object-Oriented Programming in Python | 4h | ✅ | |
| Importing Data in Python (Part 1) | 3h | ✅ | |
| Importing Data in Python (Part 2) | 2h | ✅ | |
| Intermediate Python for Data Science | 4h | ✅ | |
| Python Data Science Toolbox (Part 1) | 3h | ✅ | |
| Python Data Science Toolbox (Part 2) | 4h | ✅ | |
| Developing Python Packages | 4h | ✅ | |
| Conda Essentials | 2h | ✅ | |
| Working with Dates and Times in Python | 4h | ✅ | |
| Command Line Automation in Python | 4h | ⬜ | |
| Youtube | Tutorial: Sebastian Witowski - Modern Python Developer's Toolkit | 2h24m | ✅ |
| Article | Python's many command-line utilities | ⬜ | |
| A Programmer’s Introduction to Unicode | ✅ | ||
| Exposing string types to maximize user happiness | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| DeepLearning.AI | Build Apps with Windsurf’s AI Coding Agents | 1h30m | ✅ |
| Pluralsight | Using The Chrome Developer Tools | ✅ | |
| Youtube | Prompt Driven Development Series | 9/9 | ✅ |
| How Anthropic Built Claude Code (w/ Boris Cherny) | 50m | ✅ | |
| Docs | VSCode Docs: Python Interactive window | ✅ | |
| Article | A Guide to Claude Code 2.0 and getting better at using coding agents | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | Book: Natural Language Processing with Transformers | 400 pgs | ✅ |
| Stanford | CS224U: Natural Language Understanding | Spring 2019 | 15/15 | ✅ |
| CS224N: NLP with Deep Learning | Winter 2019 | 22/22 | ✅ | |
| CMU | Low-resource NLP Bootcamp 2020 | 8/8 | ✅ |
| Multilingual NLP 2020 | ✅ | ||
| Datacamp | Feature Engineering for NLP in Python | 4h | ✅ |
| Natural Language Processing Fundamentals in Python | 4h | ✅ | |
| Regular Expressions in Python | 4h | ✅ | |
| RNN for Language Modeling | 4h | ✅ | |
| Natural Language Generation in Python | 4h | ✅ | |
| Building Chatbots in Python | 4h | ✅ | |
| Sentiment Analysis in Python | 4h | ✅ | |
| Machine Translation in Python | 4h | ✅ | |
| Article | The Unreasonable Effectiveness of Collocations | ⬜ | |
| FuzzyWuzzy: Fuzzy String Matching in Python | ✅ | ||
| Transformers: Origins | ⬜ | ||
| Understanding the Difference Between Embedding Layers and Linear Layers | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Article | Speech AI models: an introduction | ✅ | |
| Voice AI & Voice Agents - An Illustrated Primer | ⬜ | ||
| Neural audio codecs: how to get audio into LLMs | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| DeepLearning.AI | Quantization Fundamentals with Hugging Face | 1h14m | ✅ |
| Quantization in Depth | 2h20m | ⬜ | |
| Introduction to On-Device AI | 1h19m | ⬜ | |
| Youtube | CMU Advanced NLP Fall 2024 (11): Distillation, Quantization, and Pruning | 1h4m | ⬜ |
| Article | A Visual Guide to Quantization | ⬜ | |
| QLoRA and 4-bit Quantization | ⬜ | ||
| Understanding AI/LLM Quantisation Through Interactive Visualisations | ⬜ | ||
| LLM.int8() and Emergent Features | ⬜ | ||
| Quantization from the ground up | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Book | Make Your Own Neural Network | 226 pgs | ✅ |
| Fast.ai | Practical Deep Learning for Coder (Part 1) | ✅ | |
| Practical Deep Learning for Coder (Part 2) | 9, 13,14,17,18(48:10),19 | ⬜ | |
| Datacamp | Convolutional Neural Networks for Image Processing | 4h | ✅ |
| Karpathy | Neural Networks: Zero to Hero | ✅ | |
| Article | An overview of gradient descent optimization algorithms | ✅ | |
| Things that confused me about cross-entropy | ✅ | ||
| Why is the ReLU function not differentiable at x=0? | ✅ | ||
| Are CNNs invariant to translation, rotation, and scaling? | ✅ | ||
| How to Control the Stability of Training Neural Networks With the Batch Size | ✅ | ||
| A Visual Guide to Learning Rate Schedulers in PyTorch | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Pluralsight | CSS Positioning | ✅ | |
| Introduction to CSS | ✅ | ||
| CSS: Specificity, the Box Model, and Best Practices | ✅ | ||
| CSS: Using Flexbox for Layout | ✅ | ||
| Code School: Blasting Off with Bootstrap | ✅ | ||
| Codecademy | Learn SASS | 3h | ✅ |
| Course | CSS for Javascript Developers | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Article | Django, HTMX and Alpine.js: Modern websites, JavaScript optional | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Codecademy | Learn HTML | 7h | ✅ |
| Make a website | 4h | ✅ | |
| Article | Alternative Text | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Course | Pinecone: LangChain AI Handbook | 0/11 | ⏳ |
| DeepLearning.AI | LangChain for LLM Application Development | 1h48m | ⬜ |
| LangChain: Chat with Your Data | 1h18m | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Codecademy | Learn JavaScript | ✅ | |
| Jquery Track | 4h | ✅ | |
| Udacity | ES6 - JavaScript Improved | 4/4 | ✅ |
| Intro to Javascript | 7/7 | ✅ | |
| Object Oriented JS 1 | 8/8 | ✅ | |
| Object Oriented JS 2 | 4/4 | ✅ | |
| Udemy | Understanding Typescript | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Datacamp | Introduction to Seaborn | 4h | ✅ |
| Introduction to Matplotlib | 4h | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Datacamp | Introduction to MLFlow | 4h | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Youtube | Numpy Array Broadcasting In Python Explained | 13m | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Docs | Start building with Next.js | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Datacamp | Pandas Foundations | 4h | ✅ |
| Pandas Joins for Spreadsheet Users | 4h | ✅ | |
| Manipulating DataFrames with pandas | 4h | ✅ | |
| Merging DataFrames with pandas | 4h | ✅ | |
| Data Manipulation with pandas | 4h | ✅ | |
| Optimizing Python Code with pandas | 4h | ✅ | |
| Streamlined Data Ingestion with pandas | 4h | ✅ | |
| Analyzing Marketing Campaigns with pandas | 4h | ✅ | |
| Analyzing Police Activity with pandas | 4h | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Course | Deeplizard: Neural Network Programming - Deep Learning with PyTorch | 20/20 | ✅ |
| Datacamp | Introduction to Deep Learning with PyTorch | 4h | ✅ |
| Intermediate Deep Learning with PyTorch | 4h | ⬜ | |
| Deep Learning for Text with PyTorch | 4h | ⬜ | |
| Deep Learning for Images with PyTorch | 4h | ⬜ | |
| Article | PyTorch internals | ⬜ | |
| Taking PyTorch For Granted | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Codecademy | Learn ReactJS: Part I | 13h | ✅ |
| Learn ReactJS: Part II | 3h | ✅ | |
| Course | NexxtJS: React Foundations | ⬜ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Datacamp | Advanced NLP with spaCy | 4h | ✅ |
| Format | Resource | Length | Progress |
|---|---|---|---|
| Course | Deeplizard: Keras - Python Deep Learning Neural Network API | 21/21 | ✅ |
| Datacamp | Introduction to TensorFlow in Python | 4h | ✅ |
| Deep Learning in Python | 4h | ✅ | |
| Introduction to Deep Learning with Keras | 4h | ✅ | |
| Advanced Deep Learning with Keras | 4h | ✅ |