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 German Velasco

View other authors

  1. Finding the Time to Refactor

    Many people ask, “How do I find time to refactor?” I think the question itself betrays a misunderstanding of refactoring. Let me tell you when I refactor.

    German Velasco
    November 11, 2019
    • Refactoring
    • Good Code
  2. Dumpster Diving through Dotfiles: Remote Git Branches

    Don’t let your git repo become a graveyard of stale branches. But how do you even know what branches are there? Let me introduce you to git branches.

    German Velasco
    November 6, 2019
    • Git
    • Dumpster Diving Through Dotfiles
  3. Let's Not Misuse Refactoring

    Refactoring has a specific meaning. When we misuse the word, we lose the ability to communicate an important concept. Let’s revisit what refactoring is and what it is not.

    German Velasco
    October 31, 2019
    • Refactoring
    • Good Code
  4. Better domain modeling in Elixir with sum types

    Sum types are a powerful domain modeling technique. Let’s look at how to use them to remove invalid states.

    German Velasco
    July 26, 2019
    • Elixir
    • Functional Programming
    • Types
    • Good Code
  5. Dumpster Diving through Dotfiles: Better Git Logging

    There are pearls to be found. Check out these git logs.

    German Velasco
    March 25, 2019
    • Git
    • Dumpster Diving Through Dotfiles
  6. Back to basics: psql

    The right tool for the right job, right? Well let me introduce you to psql.

    German Velasco
    March 14, 2019
    • PostgreSQL
    • SQL
    • Back To Basics
  7. Say no to more process, say yes to trust

    Adding policies is easy. Removing them is difficult. Say no to more process. Trust your team instead.

    German Velasco
    March 1, 2019
    • Process
    • Playbook
  8. Do you break your Elixir eggs on the big end or the little end?

    From big-endian to little-endian through unsigned integers. A tale of two ends, and Elixir shines again.

    German Velasco
    December 25, 2018
    • Elixir
    • Endianess
    • Functional Programming
  9. Don't forget the silent step when you squash and merge

    GitHub’s squash and merge button is great. But make sure to write a good commit message before you confirm those changes.

    German Velasco
    December 24, 2018
    • Git
    • Tools
  10. Is Elixir a scripting language?

    Elixir is known for being a language made for building distributed applications that scale, are massively concurrent, and have self-healing properties. But is Elixir good enough for the mundane scripts of this world?

    German Velasco
    October 15, 2018
    • Elixir
    • Functional Programming
    • Code
« First ‹ Prev 1 2 3 Next › Last »

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