Devot Logo
Devot Logo
Arrow leftBack to blogs

Scaling Modern Software With Design Patterns: From Observer to Proxy

Marko M.6 min readFeb 4, 2026Technology
Marko M.6 min read
Contents:
Recap: Where part 1 left off
1. Observer pattern – Let code react, not poll
Ruby on Rails example – Domain event with subscribers
2. Command pattern – Turn actions into objects
Ruby on Rails example – SendWelcomeEmailCommand
3. Facade pattern – Hide complexity behind a simple API
Ruby on Rails example – PaymentFacade
4. Composite pattern – Work with trees as one
Ruby Example – Nested menu structure
5. Proxy Pattern – Add Behavior Around Access
Ruby example – Caching proxy for an external API
Putting it all together
What’s next in the series
Spread the word:
Keep readingSimilar blogs for further insights
How to Cut Outbound API Latency in Rails with HTTP Connection Pooling
Technology
Marko M.9 min readMay 27, 2026
How to Cut Outbound API Latency in Rails with HTTP Connection PoolingHidden network overhead behind outbound API calls can quietly destroy Rails performance. A practical look at HTTP connection pooling, keep-alive, Puma concurrency, and timeout handling for faster, more resilient Rails applications.
Is Web Scraping Legal? Understanding the Rules, Risks, and Ethics
Technology
Tibor B.9 min readMay 13, 2026
Is Web Scraping Legal? Understanding the Rules, Risks, and EthicsLegal and ethical boundaries of web scraping, including privacy, compliance, responsible data collection, and practical risk management for modern businesses.
Pythonic Code Explaind: Writing Python the Way It Was Meant to Be Written
Technology
Dino G.6 min readApr 29, 2026
Pythonic Code Explaind: Writing Python the Way It Was Meant to Be WrittenClarity over cleverness, a practical guide to writing Pythonic code using PEP 8, built-in features, and patterns that make code more readable, maintainable, and natural to Python.