I have this home office from where I work and though it still need a bit of work, it’s perfectly functional. I thought about having the desk in the middle of the room à la executive and it failed. The room isn’t big enough to accomodate a desk facing the door and place to move…
The Reuse/Release Equivalence Principle: A Key to Modular Design
One of the challenges of software development is to create reusable and maintainable code. Reusable code can reduce duplication, improve quality, and save time and resources. Maintainable code is code that is easy to adapt, easy to correct and where those adaptation and change do not break any other part of the software. However, reusing…
Use Case Pattern
The Use Case Pattern is a way of organizing the business logic of an application into a set of use cases. Each use case represents a specific action that a user can perform within the system. For example, in an e-commerce application, a use case might be “Place an Order” or “View Order History”. The…
Single Responsibility Principle (Clean Architecture)
When talking about patterns, almost everyone can name the SOLID pattern (Single Responsability, Open/Close, Liskov Substitution, Interface Segregation and Dependency Inversion). The Single Reponsibility is one of the most important principle for clean code but it’s also very important for clean architecture. Let’s explore this The SRP states that a class should have one, and…
How to use Feature Flags in Blazor
Feature flags are a way of controlling the availability and behavior of features in your application without changing the code. They can help you with testing, experimentation, and gradual rollout of new functionality. Blazor is a framework for building interactive web UIs using C# and .NET. In this blog post, I will show you how…
IT Freelancers: The Footballers of the Digital World
In the world of technology, IT freelancers play a vital role, brinding expertise and knowledge to companies. These skilled professionals bring unique talents, work alongside diverse teams, and demonstrate their expertise to score winning goals for their clients. Let’s explore the fascinating parallels between IT freelancers and footballers: 1. Specialized Skills Just as footballers possess…
Migrating an Old .NET App Using Unsupported Tech: A Step-by-Step Guide
In today’s rapidly evolving tech landscape, it’s quite common to find yourself in a situation where you need to migrate an old .NET app that relies on unsupported technologies. While this can be a daunting task, with careful planning and implementation, it’s possible to breathe new life into your application. Also, pay attention that tech…
My experience with Terraform.
Terraform is a technology that allows you to deploy your infrastructure using code. It uses YAML as a file format. It needs registered providers to create the desired infra in the right environment. You can create infra on Azure, AWS as well as on premise. When to use it? When your project requires a specific…
Infrastructure as Code and source controle
For those who don’t what is this about, Infrastructure as Code is a set of files when executed with the right tool, will create resources such as storage account, databases, virtual network etc. It is mostly associated with the cloud. As I’ve been working lately with Terraform, I really enjoyed it and I thought it…
Tensions between teams due to rivalry
Communication and collaboration between teams, while essential to a working company is sometimes very difficult for many reasons. There may be valid grounds for tension but it is never beneficial for the company. What to do when this happens? Team rivalry This is a very common and a difficult one to solve. Rivalry can be…
Creativity vs knowledge
In IT, we tend to privilege knowledge and we test the hire candidates accordingly. What do they know about object oriented programming, authentication and security, frameworks and languages. While this has merit in itself, is it enough? Knowledge is indeed important as for any candidate, there musy be things to know. If you hire a…