Skip to main content
thoughtbot thoughtbot
  • Live on Twitch!

    thoughtbot is livestreaming

    Work alongside the thoughtbot team as we collaborate with each other and our clients, live. Ask us anything, we're live right now!

  • Case Studies
  • Blog
  • Let’s Talk
Live on Twitch!

thoughtbot is livestreaming

Work alongside the thoughtbot team as we collaborate with each other and our clients, live. Ask us anything, we're live right now!

Let’s get started!
View all Services
Development
  • Ruby on Rails
  • Hotwire
  • AI and Machine Learning
  • Maintenance
  • Mobile
Design
  • Discovery Sprints
  • UX, UI, and Product Design
  • Design Systems
Product
  • MVP
  • Product Management
  • Accessibility
Team and Processes
  • Team Augmentation
  • Fractional Leadership
View all Services
View all Resources
Development
  • Tech Leadership Resources
  • Open Source
  • Books
  • The Bike Shed Podcast
  • Live Streaming on YouTube
  • Conference Talks
The business of great software
  • Playbook
  • Purpose Built
  • Giant Robots Smashing Into Other Giant Robots Podcast
  • Design Sprint Guide
  • Live Streaming on LinkedIn
View all Resources

Articles by Wil Hall

View other authors

  1. Redirecting routes in a Phoenix application using plugs

    Let’s explore a pragmatic, flexible, and testable approach to route redirection.

    Wil Hall
    October 21, 2020
    • Web
    • Elixir
    • Phoenix
  2. Instrumenting your Phoenix application using telemetry

    Gain insight into events and performance measurements from your Phoenix application with a simple but scalable integration of telemetry.

    Wil Hall
    October 19, 2020
    • Phoenix
    • Elixir
    • OTP
    • Telemetry
    • Analytics
  3. Make small, data-driven performance improvements

    Performance issues are a form of technical debt, and we must pay them off by making informed incremental improvements.

    Wil Hall
    October 15, 2020
    • Performance
    • Analytics
    • Technical Debt
  4. TypeScript: Stop Using 'any', There's a Type For That

    Chances are you’ve worked with the any type in TypeScript. It’s widely overused, and subtly dangerous. Let’s explore why you should avoid it, and when you might truly need to use it.

    Alejandro Dustet and Wil Hall
    October 13, 2020
    • TypeScript
    • Types
    • Good Code
  5. Powerful Git Macros For Automating Everyday Workflows

    Improve your everyday git workflows by automating the boring stuff.

    Wil Hall
    May 14, 2020
    • Git
    • DevTools
    • Unix
    • Shell
    • Productivity
  6. Strategies for transitioning your technical team to remote work

    Explore strategies for effective communication and collaboration while your team is transitioning to remote work.

    Wil Hall
    April 3, 2020
    • Remote
    • Teams
    • Process
    • Communication
    • Continuous Improvement
  7. Modern TypeScript and React Development in Vim

    Learn how to imbue your vim setup with the power of the TypeScript language server.

    Wil Hall
    March 23, 2020
    • Vim
    • TypeScript
    • React
    • JavaScript
  8. The trouble with TypeScript enums

    Enums are perfect for modeling a set of options. Or are they?

    Wil Hall
    March 9, 2020
    • TypeScript
    • Enum
    • Union Types
  9. Mocking and faking external dependencies in elixir tests

    Explore a combination of mocking, faking, and dependency injection to focus on the code being tested.

    Wil Hall
    September 23, 2019
    • Testing
    • Elixir
  10. Type-safe state modeling with TypeScript and React Hooks

    Utilize the power of Typescript to model your React application’s state and context with confidence.

    Wil Hall
    August 23, 2019
    • TypeScript
    • React
    • Hooks
    • State
    • Context

Footer

thoughtbot
  • Services
  • Case Studies
  • Resources
  • Let's Talk
  • Our Company
  • Careers
  • Purpose
  • Blog
  • Sponsor
  • Mastodon
  • Bluesky
  • GitHub
  • YouTube
  • Twitch
  • Feeds
© 2025 thoughtbot, inc.

The design of a robot and thoughtbot are registered trademarks of thoughtbot, inc.

  • US: +1 (877) 9-ROBOTS
  • UK: +44 (0)20 3807 0560
  • Beware of fraudulent thoughtbot job listings Learn more
  • Code of Conduct
  • Accessibility Statement
  • Privacy Policy