Writing on software design, company building, and the aerospace industry.

All of my long-form thoughts on programming, leadership, product design, and more, collected in chronological order.

Mastering Bitwise Operators in JavaScript for Enhanced Performance

JavaScript, while primarily known for its role in web development, offers a powerful yet often overlooked toolset for low-level data manipulation — bitwise operators. These operators work directly on the binary representation of numbers, allowing developers to perform fast, memory-efficient operations that are critical in certain computational contexts such as graphics processing, game physics, and real-time application performance.

Harnessing the Power of Data Attributes with Tailwind CSS

Tailwind CSS, a utility-first CSS framework, introduces an elegant solution to this problem through its support for data attributes. This feature allows developers to conditionally apply styles based on the data attributes of HTML elements, simplifying state management and enhancing the adaptability of web interfaces.

Unraveling Typescript Utility Types

TypeScript’s type system are utility types — generic types provided by TypeScript which can be used to transform one type into another. These utility types provide a robust tool set for developers to model complex type behaviors, making TypeScript even more versatile and efficient.

Mastering Custom Dark Mode with Tailwind CSS: From Class to Selector Strategy

One significant enhancement is Tailwind CSS’s transition from the ‘class’ strategy to the more flexible ‘selector’ strategy, which provides greater control over user experience. This blog post explores this transition, illustrating how to manually implement and manage dark mode using the latest capabilities of Tailwind CSS.