Latest Posts

  1. Thoughts on the future of Programming

    Looking ahead of the curve to see what the future of programming holds in this new future of LLMs, hardware and ecosystems.

  2. Beyond the Basics: A Curated List of TypeScript Tricks for Better Coding

    Type theory names are hard to remember, but some of them are very useful in practice. These are some types I've found useful in everyday TypeScript coding.

  3. Open Graph for Lazy Developers

    A simple guide to Open Graph optimization for your website, including how to set up your meta tags and how to test your website's Open Graph data.

  4. Optimizing PNGs for Size and Quality

    A simple guide to optimizing images if you have a few images, and a lot of time.

  5. Positive affirmation passphrases

    If your work requires a passphrase, why not make it worth your time?

  6. Why remote development is the future

    Why local development is suboptimal, and why remote development seems to be the way forward.

  7. Proving the passage of time with blockchain

    Using blockchain to prove that the passage of time is happening in real-time.

  8. How to optimize bundles with webpack

    Learn how to build the most efficient, optimal bundles by tuning webpack's splitChunks configuration.

  9. Programming on the M1 Mac

    My experience using the M1 Mac for programming on front-end, back-end and machine learning tasks.

  10. Async test setup and teardown in Rust

    How to add setup and teardown functions to async tests in Rust without a framework or library.

  11. What we are missing on clean code

    A discussion on code readability, why most software engineers' take on it is misguided, and what we should be focusing on instead.

  12. Building a stunning table of contents that follows headings

    How to build a table of contents that has a better user experience, using SVG paths and masks.

  13. How to get sticky elements to stick

    Learn why your position: sticky element is not working, and the three techniques to use to make it work.

  14. React performance techniques

    Techniques to improve React component rendering performance when there are no better alternatives.

  15. Common concepts behind software design patterns

    A look at concepts that occur over and over in software design patterns, and how they tie into various tools and languages we see and use today.

  16. React component patterns

    Learn about the various design patterns to help you write better and more reusable React components.

  17. Writing a JavaScript Codemod with JSCodeShift

    Learn what is a codemod and how to write a JavaScript codemod with JSCodeShift to automate code refactoring at scale.

  18. Lessons learned from building a blog component system

    Pitfalls and lessons learned from building this blog's component system. Walks through margins, full-bleed layouts and forms.

  19. A glimpse into front end interviews

    My experience with front end interviews, including their process, topics, questions and some more tips and tricks to help you get the role you desire

  20. How a pretty printer works

    Understand how a pretty printer works and how we can write a very basic one to help us automate code formatting.

  21. Why building a front-end framework in Rust is hard

    A look at what makes a front-end framework work and how Rust's ergonomics and constraints such as ownership makes writing one difficult.

  22. How to optimize React using React DevTools

    Learn how to use the React devtool's profiler to optimize and improve your React app's performance.

  23. The most secure way to store JWTs

    A new secure method that uses Service Worker to store JWTs in browsers instead of local storage and cookies.

  24. How lit-html works

    Learn how the lit-html library works, and how it is different from virtual-dom libraries like React.

  25. Why a clean start for the web wont solve the problem

    A discussion of why the web is in such a terrible state, why building a new internet from scratch will not make it better and why Mozilla's latest layoff is a good move.

  26. Thoughts about web performance and frameworks

    A discussion on the performance of web frameworks and why you shouldn't choose React every time.

  27. React Hooks constraints explained

    An explanation of why React hooks have limitations, such as why you cannot call them in an if-else statement.

  28. Code Dive: babel-loader

    A deep look into how the babel-loader library works to learn how you too can write a webpack plugin.

  29. Dual-boot Windows and NixOS

    Learn how to dual boot Windows and NixOS on the same computer.