Writing

Notes from building software, and the occasional deeper dive.

UIApril 24, 2026

Elevating UX with Design Systems in 2026

Explore how design systems and component libraries enhance consistency, reusability, and efficiency in today's UX landscape.

ManagementAugust 26, 2025

Mastering Technical Strategy: Decision-Making in 2025

Explore effective strategies for technical decision-making, balancing trade-offs, prioritizing projects, and building impactful roadmaps in today's dynamic tech landscape.

ManagementJanuary 15, 2025

Mastering Technical Strategy and Decision-Making in 2025

Explore effective strategies for technical decision-making, prioritization, and roadmap development to navigate today's complex software landscape.

UXJanuary 13, 2025

Mastering Usability: Key User Research Methods for 2025

Explore essential usability testing and research methods to enhance user experience. Discover heuristics and techniques that can elevate your designs.

ManagementJuly 26, 2024

Mastering Remote Teams: Async Work & Global Collaboration in 2024

Explore effective strategies for managing async work and distributed teams across time zones in 2024. Enhance collaboration and productivity.

EngineeringJuly 13, 2024

Mastering Single-Page Apps with Vue in 2024

Explore the evolution of single-page applications and how Vue.js stands out in 2024 for building dynamic, responsive UIs with component frameworks.

UIJune 21, 2023

Mastering Semantic HTML and CSS Layouts in 2023

Explore the importance of semantic HTML and modern CSS layout techniques like Flexbox for building accessible and responsive web pages.

UIJune 8, 2022

Mastering Semantic HTML and CSS Layout Techniques

Explore the power of semantic HTML and CSS layout techniques like Flexbox. Enhance accessibility and responsiveness in your web projects.

CareerDecember 4, 2021

Lessons from Shipping Real Products: War Stories and Pragmatism

Discover invaluable lessons from real product shipping experiences that shape pragmatic approaches in software development and delivery.

ManagementJuly 17, 2021

Mastering Remote Work: Strategies for Distributed Teams in 2021

Explore essential strategies for effective collaboration in remote and distributed teams, focusing on async work and timezone management.

Soft SkillsOctober 8, 2020

Mastering Focus: Avoiding Burnout in a Digital World

Learn how to manage your focus and maintain a sustainable pace to prevent burnout while maximizing productivity in today's demanding tech landscape.

AIFebruary 15, 2020

Practical Machine Learning for Product Engineers

Explore how product engineers can leverage machine learning to enhance user experiences through recommendations and classic ML models.

EngineeringAugust 25, 2019

Unlocking Type Safety with TypeScript: A Developer's Guide

Discover how TypeScript enhances type safety and developer experience, enabling gradual adoption in modern JavaScript applications.

UXApril 10, 2016

Enhancing Usability: Effective User Research Methods in 2016

Explore essential usability testing and research methods to enhance user experience and design in your projects. Dive into heuristics and testing strategies!

EngineeringOctober 8, 2015

Embracing TypeScript for Enhanced Type Safety in JavaScript

Discover how TypeScript enhances type safety, improves developer experience, and facilitates gradual adoption in JavaScript projects.

UXSeptember 29, 2014

Mastering Interaction Design: User Flows and State Management

Explore interaction design techniques, focusing on user flows, states, and reducing friction in your applications for better usability.

ManagementAugust 14, 2013

Leading and Growing Engineering Teams Effectively

Explore essential strategies for leading engineering teams, including 1:1s, mentoring, and maintaining team health to drive success and innovation.

UXAugust 1, 2012

Mastering Interaction Design: User Flows and Reducing Friction

Explore the essentials of interaction design, user flows, and strategies to eliminate friction in user experiences for effective web applications.

CareerJune 11, 2012

Leveling Up as a Developer: Growth Through Craftsmanship

Discover how to enhance your skills and knowledge as a developer through continuous learning and craftsmanship strategies.

Soft SkillsJune 11, 2012

Mastering Focus: Avoiding Burnout in Tech Work

Discover techniques to manage focus and avoid burnout in your tech career. Learn about sustainable pacing and the power of deep work.

UIJune 4, 2012

Mastering Visual & Interface Design: Hierarchy, Affordances, and Micro-Interactions

Explore the essentials of visual and interface design focusing on hierarchy, affordances, and the importance of micro-interactions in user experience.