Using guard clauses to write cleaner code

  • avatar
  • 760 Views
  • 3 mins read
Preview post image

Guard clauses are a practical way to write cleaner functions by handling the unwanted cases first. Instead of nesting your entire function inside a stack of if conditions, you check for the early exits up front - returning or throwing as needed - and move on. It's a habit that keeps code flatter and easier to read. The structure becomes simpler, and it’s immediately clear what the function does and under what conditions it doesn’t even bother.

Understanding Hexagonal Architecture with practical example

Available to registered members only
  • avatar
  • 601 Views
  • 1 Like
  • 7 mins read
Preview post image

Hexagonal architecture, also called ports and adapters, is a software design approach that helps structure an application by clearly separating the core logic from technical details and external systems. Instead of shaping your app around frameworks, protocols, or storage, you keep your focus on what the application does, and let everything else connect to it through interfaces. The pattern isn't tied to any specific language. The examples in this article are written in PHP to show how the idea can be applied, but the approach works the same way in any backend system.

Getting started with CQRS in PHP

  • avatar
  • 596 Views
  • 5 mins read
Preview post image

CQRS stands for Command Query Responsibility Segregation. It's a pattern that separates how an application reads data from how it writes data. This approach can help structure code more clearly, especially in systems that deal with complex business logic or need to scale certain operations differently.

 Join Our Monthly Newsletter

Get the latest news and popular articles to your inbox every month

We never send SPAM nor unsolicited emails

Measuring success in Agile projects

  • avatar
  • 660 Views
  • 4 mins read
Preview post image

In Agile, measuring success isn't just about counting completed tasks - it's about ensuring teams continuously improve while delivering value. Without metrics, teams might feel like they're making progress, but they wouldn’t have clear evidence of what's working and what isn't. The right metrics give teams visibility into their workflow, highlight areas for improvement, and help them make better decisions. But Agile isn't about chasing numbers - metrics should support improvement, not dictate behavior.

Understanding the role of an Engineering Manager

  • avatar
  • 605 Views
  • 1 Like
  • 6 mins read
Preview post image

Becoming an engineering manager is not just about climbing the ladder. It is a complete shift in responsibility. You are no longer measured by the code you write or the tasks you complete. Now you are accountable for how the entire team performs. You can delegate work, but you are still responsible for results. If no one owns a problem, you do. That is not an extra detail, that is the job.

Clean query building using Criteria

  • avatar
  • 611 Views
  • 1 Like
  • 5 mins read
Preview post image

Criteria is a framework-agnostic PHP package that simplifies the use of the criteria pattern for filtering, sorting, and paginating data. It helps separate query logic from repositories, making the codebase easier to maintain and extend over time. By using Criteria, developers can handle complex querying needs without spreading filter logic across different parts of the application.

Tag-based cache inside Laravel repositories

Available to Premium members only
  • avatar
  • 500 Views
  • 12 mins read
Preview post image

Working with cache can drastically improve the performance of an application, especially when dealing with data that doesn't change too often. While Laravel provides solid support for caching through multiple drivers, it doesn't offer native support for cache tags. To work around this limitation, we'll integrate Symfony's Cache component, which brings tag support and fits well into the repository pattern we've already established. In this article, we'll build on the existing structure and focus on using cache tags to group and clear related data more efficiently.

How to use the AD Keyboard module with Arduino

  • avatar
  • 467 Views
  • 7 mins read
Preview post image

When working on simple Arduino projects that need basic navigation or input, the AD keyboard module is a handy little tool. It's a 5-button unit that behaves like a directional pad, with four arrow-style buttons and one additional button. It doesn't require any soldering or setup, which makes it a practical choice for prototyping or small projects. You can plug it in and start using it right away, thanks to its three-pin layout and built-in resistors.

Configuring multiple websites on a single Nginx server

  • avatar
  • 455 Views
  • 6 mins read
Preview post image

Nginx is a powerful and lightweight web server that's commonly used to serve websites and static content. If you're running several websites on a single machine, configuring Nginx to manage them properly is efficient and straightforward. This article walks you through installing Nginx, setting up multiple sites, configuring firewall access, and organizing your folders and logs in a clean and practical way.

MySQL 8 setup with remote connections

  • avatar
  • 412 Views
  • 7 mins read
Preview post image

Setting up a MySQL 8 server can seem complicated at first, but with a clear and structured approach, the process becomes much more manageable. This guide explains how to install MySQL 8 on Debian-based systems, configure it to accept remote connections, and test that it is running correctly. The instructions are practical and direct, suitable for environments that require reliable and straightforward configuration.