🪴 Chris' Digital Garden
Search
Search
Dark mode
Light mode
Explorer
3D printing
Automatic Material System
Bambu Printers Comparison
Filament Materials
Fuzzy printing
islands
Layer height
line types
Multi-colour prints
Overhang angle
priming
Print speeds
purging
seam
Supports
Threshold angle
audio processing
A-Law
audio encoding
mu-Law
Pulse-Code Modulation
Standard CD audio quality spec
Waveform Audio File Format
blogs
Memory Alignment and Layout
Demystifying Alignment and Memory Layout in Rust
Demystifying Alignment and Memory Layout in Rust — Practice Exercises
chemistry
Lactose
Umami Synergy
endeavours
3D printing
Tumbling Treats for Cats (Egg-Shaped)
My first complex 3D print—A pawsome cat toy
finance
Current Value Assessment
Home Buyer's Plan
Incentive Stock Option
ISOs vs NSOs
Lifelong Learning Plan
Net Dollar Retention
Non-Qualified Stock Option
Property Tax
Registered Retirement Income Fund
Registered Retirement Savings Plan
Simple Agreement for Future Equity
Vacant Home Tax
graphics
Creating GIFs
Exporting iMovies
languages
japanese
grammar
Because (& Why)
Don't do~
Have to, need to, wish I didn't
Saying "no"
Conditionals
Proverbs
Talking about Money
Italian
math
Game Theory
Knot Theory
physics
wave
product-management
Value Proposition Canvas
psychology
Humour
Is it harder to make friends as an adult?
Third Places
sales
Contact
History of Sales
Lead
Marketing Qualified Lead
Pipeline Coverage
Prospects
Sales Accepted Lead
Sales Qualified Lead
tech
algorithms
Log-structured merge-tree
Subset-Sum Problem
caching
Redis Tutorial
cloud
AWS
AWS Bedrock
AWS S3
Sagemaker
Cloud Service Performance
data engineering
Data Build Tool
Documentation
Macros
Packages
Profiles
Source Freshness
Sources
Tests
databases
Partitioning
Shard Key
Sharding
temporal querying
Data Modelling Conventions
Data Warehousing
Document model
Meltano
Relational databases
Types of Databases
efficient-ml
Distributed Data Parallel
Inference Optimizations
Quantization Aware Training
Quanto
Sagemaker Distributed Data Parallel Library
frontend
Model View Controller
ngrok
GCP
iam
Apply regional constraints on GCP operations
Service Account Impersonation
gpu
Concurrency
GPU Kernel Optimization Fundamentals
Occupancy
Optimal Random Memory Access
IaC
Terraform
`locals` block
`moved` block
HashiCorp Language
Importing Existing Resources
Module Creation Best Practices
Providers
LLM
Agentic Design Patterns
Evaluation Techniques
LangChain
Language program
LlamaIndex
Multi-Head attention
Ollama
Prompt Engineering
Prompt Engineering Framework
Prompt Engineering Tips
Synthetic Data
Technical Questions & Challenges
management
DORA Framework
Mental Model for Measuring Productivity
SPACE Framework
ML System Design
Data Engineering
Data Flow
Data Formats
Data Models
Data Processing Paradigms
Data Storage Locations
Feature Engineering
Data Leakage
Feature Selection Best Practices
`pickle` vs `joblib`
Data Drift
Debugging ML Models
Good vs Useful ML Systems
ML Objectives
ML Performance Baselines
ML System Requirements
ML UX Design
Model Calibration
Model Evaluation
Model QA
Random Baseline Thought Experiment
Recipes for Building ML models
networking
Web Sockets
OpenAI
Assistant
AssistantFile
File
Message
Thread
python
scikit-learn
`delayed` and `Parallel`
__getattr__ vs __getattribute__
`__slots__` in Python
`nonlocal` Scope
Amazing Explanation of the `Subprocess` Module
Async IO Deep Dive
Context Management
Data Types Deep Dive
Decorators with parameters?
Exceptions
Functools Deep-Dive
IntEnum
Itertools
Learnings from Inspecting Codebase
Logging Patterns (and Anti-Patterns)
Memory Leaks
Metaclasses
Metaprogramming Learnings
Python Pickling
Setting a non-`None` default function argument
Trio
wave module
rust
`Arc` instead of `Vec`
Allocating small vectors on the stack
Auto Trait
Basics of Pinning in Rust
Bottom type
color-eyre
Configuring Cargo
constant promotion
Dynamic Dispatch
Function Types
Marker Trait
ratatui
Result Type
Rust Toolchain
The Never `!` Type
Traits Cheatsheet
SQL
LIKE
QUALIFY
streaming
Apache Kafka
systems-programming
Block
Cluster
File Allocation Table
Filesystem Linking Mechanisms
Heap
io_uring
Non-preemptive scheduling
Sector
Segmentation Fault
Stack
Statically Typed vs Dynamically Typed Languages
System Call
A caveat on Feature Flagging
BigCodeBench
bit depth
byte order
code generation
data manipulation
duckdb
Feature Flagging
Fix HBox Display Issue on Jupyter
Git
GraphQL
How to setup a SlackBot
How to write good documentation
HumanEval
Installing `npm`
Liquid Neural Networks
Mojo
ODEX
pandas
plotly
polars
rayon
Recursively Find a Certain File within a Folder
Resource Interchange File Format
Software Migration
Spark
TensorFlow
terminal
Tips for using `ls`
XGBoost
thinking
Experienced vs Novice Decision Makers
How to live an Asymmetric Life?
Imposter syndrome
Stoicism & Fear-Setting
The Cult of Done
The Right Kind of Failure
Changelog
What makes a research paper novel?
Home
❯
tech
❯
python
❯
Logging Patterns (and Anti-Patterns)
Logging Patterns (and Anti-Patterns)
Jun 23, 2024
1 min read
Exceptional Logging of Exceptions in Python
Graph View
Backlinks
python