Setting Up a Home Development Environment

Let’s dive deeper into setting up your development environment for remote work. Here’s my complete setup guide.

Terminal Setup

# Windows Terminal + PowerShell Core
winget install Microsoft.WindowsTerminal
winget install Microsoft.PowerShell

# Oh My Posh for beautiful prompts
Install-Module oh-my-posh -Scope CurrentUser
Install-Module posh-git -Scope CurrentUser

VS Code Extensions

  • Remote – SSH: Edit code on remote servers
  • Remote – Containers: Develop inside containers
  • Live Share: Real-time pair programming
  • GitLens: Git supercharged
  • Bracket Pair Colorizer: Visual bracket matching

Git Configuration

# Better diffs
git config --global core.pager "delta"

# Useful aliases
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.st status
git config --global alias.lg "log --oneline --graph --all"

Docker for Development

# docker-compose.yml - Common dev services
version: '3.8'
services:
  postgres:
    image: postgres:13
    ports:
      - "5432:5432"
  redis:
    image: redis:6
    ports:
      - "6379:6379"

References


Discover more from C4: Container, Code, Cloud & Context

Subscribe to get the latest posts sent to your email.

WordPress database error: [User 'dataadl336' has exceeded the 'max_questions' resource (current value: 40000)]
SELECT p.ID FROM cmxg4_posts AS p WHERE (p.post_date > '2020-03-16 10:00:00' OR (p.post_date = '2020-03-16 10:00:00' AND p.ID > 15414)) AND p.post_type = 'post' AND p.post_status = 'publish' ORDER BY p.post_date ASC, p.ID ASC LIMIT 1

WordPress database error: [User 'dataadl336' has exceeded the 'max_questions' resource (current value: 40000)]
SELECT SQL_CALC_FOUND_ROWS cmxg4_comments.comment_ID FROM cmxg4_comments WHERE ( comment_approved = '1' ) AND comment_post_ID = 15414 AND comment_type NOT IN ('note') ORDER BY cmxg4_comments.comment_date_gmt ASC, cmxg4_comments.comment_ID ASC

Leave a comment

Your email address will not be published. Required fields are marked *

WordPress database error: [User 'dataadl336' has exceeded the 'max_questions' resource (current value: 40000)]
SELECT option_value FROM cmxg4_options WHERE option_name = 'akismet_comment_nonce' LIMIT 1

This site uses Akismet to reduce spam. Learn how your comment data is processed.

WordPress database error: [User 'dataadl336' has exceeded the 'max_questions' resource (current value: 40000)]
SELECT option_value FROM cmxg4_options WHERE option_name = 'cookie_consent_template' LIMIT 1

WordPress database error: [User 'dataadl336' has exceeded the 'max_questions' resource (current value: 40000)]
SELECT option_value FROM cmxg4_options WHERE option_name = 'jpsq_sync_checkout'

WordPress database error: [User 'dataadl336' has exceeded the 'max_questions' resource (current value: 40000)]
SELECT COUNT(*) FROM cmxg4_jetpack_sync_queue WHERE queue_id = 'sync'