profile picture

Blog

I love writing about stuff that I find interesting and brings some value to my life, so I can share them with you.


The Project Management Triangle
The Iron Triangle

July 25, 2022 - 307 words - 2 mins

blog-cover

A triangle of time, quality and cost. it’s an indicator that these three parameters are interconnected. You can fix one or two of them, but not three.

read more

The path to seniority in software
How to become a Senior Software Developer?

June 08, 2022 - 958 words - 5 mins

blog-cover

We all have been junior developers at some point. This is easy to know because it is at the very beginning of your carrier. Your responsibilities were narrowed down by other peers who were looking after you. Suddenly, at some point, after some months or years, you got your promotion or another job, where you weren’t a junior anymore, but an intermediate.

read more

Bikeshedding
Also known as the Law of triviality

May 27, 2022 - 318 words - 2 mins

blog-cover

The term was coined as a metaphor to illuminate Parkinson’s Law of triviality.

People within an organization typically give disproportionate weight to trivial issues.

read more

Dunbar number

April 02, 2022 - 310 words - 2 mins

blog-cover

Dunbar’s number is a suggested cognitive limit to the number of people with whom one can maintain stable social relationships, in which an individual knows who each person is and how each person relates to every other person.

read more

Update your team to be more extreme
How can you help your peers to embrace the change?

February 26, 2022 - 566 words - 3 mins

blog-cover

Our profession is constantly evolving; therefore, it demands a non-stop learning process. Embracing the change is not optional in our software industry.

read more

The power of authority and obedience
Milgram's experiment

January 24, 2022 - 1017 words - 6 mins

blog-cover

Milgram was interested in researching how far people would go in obeying an instruction if it involved harming another person, and how easily people could be influenced into committing atrocities. For example, Germans in WWII.

read more

London vs Chicago
It's an integration, not a choice

November 20, 2021 - 468 words - 3 mins

blog-cover

There are two known schools in TDD: the mockist school (aka Outside-in) and the classicist school (aka Inside-out).

read more

Red Work vs Blue Work
Managing the two kinds of work

October 21, 2021 - 408 words - 3 mins

blog-cover

“Blue Work” and “Red Work” are concepts that David Marquet describes in his book Leadership is Language. Both require different mindsets and have different languages.

read more

TDD vs BDD
Design or Workflow?

September 25, 2021 - 650 words - 4 mins

blog-cover

These are two different techniques. The key to each of them is about the mindset and context of what you want to achieve.

read more

Test-Driven (Development)
What is challenging about it?

August 01, 2021 - 961 words - 5 mins

blog-cover

The complexity here is not about writing tests itself, but the habits that we have to change to create software that is easy to be tested.

read more

Responsibilities of a Tech Lead
It's not a promotion. It's a role change.

July 01, 2021 - 413 words - 3 mins

blog-cover

The Trident Career Model by Patrick Kua has three tracks. Each track represents where people spend most of their time or energy.

read more

Conformity experiments
The uncomfortable truth about human nature

June 01, 2021 - 648 words - 4 mins

blog-cover

To what extent do social forces alter people’s opinions? Which aspect of the group influence is most important — the size of the majority, or the unanimity of opinion?

read more

Open-Source Software
The power of contributing to OSS 🖥

May 03, 2021 - 763 words - 4 mins

blog-cover

What is Open-Source Software (OSS)? What are their benefits? How can you start contributing to any OSS? Pet projects? Knowledge sharing? Why all of these?

read more

Pull Requests vs Pair Programming
Why choosing when you can have both?

April 01, 2021 - 1183 words - 6 mins

blog-cover

Let’s talk about the benefits of Pull Requests and Pair Programming, and my thoughts on these after some years of experience with them.

read more

Embrace the change
Who moved my cheese?🧀

March 01, 2021 - 529 words - 3 mins

blog-cover

The book Who moved my cheese? presents a tale inside the main story that consists of 4 characters: two mice, Sniff and Scurry, and two little persons, Hem and Haw.

read more

Phel: the Lisp that compiles to PHP
The new functional language. Fully interoperability with PHP 🚀

February 01, 2021 - 614 words - 4 mins

blog-cover

The new Functional Programming language build-in PHP. Check it out!

read more

To mock or not to mock
How to escape the mocking hell

January 11, 2021 - 783 words - 4 mins

blog-cover

Mocking is useful, but “what to mock” usually turns out to be a bit more complicated than expected if you don’t treat this carefully.

read more

Sharing your git patches
Another way of sharing quick suggestions with your team

December 01, 2020 - 447 words - 3 mins

blog-cover

Discover another way of sharing suggestions with your development team.

read more

Never use array_merge in a loop
The spread operator to the rescue

November 10, 2020 - 331 words - 2 mins

blog-cover

Using array_merge inside a loop is a performance killer. The spread operator will help you to improve this by flatting the array.

read more

Typed arrays in PHP
An alternative to the missing feature in PHP: Generics

October 13, 2020 - 653 words - 4 mins

blog-cover

Argument unpacking, function variable argument list, and variadics function.

read more

The process itself is the goal
How to focus and have self-discipline

September 08, 2020 - 1013 words - 6 mins

blog-cover

No goal should be an achievement on its own, but the process itself that helps us to go in the direction of these goals.

read more

Testing Effectively Legacy Code
How to write proper tests to already written code

August 17, 2020 - 919 words - 5 mins

blog-cover

These tests are also known as Characterization tests.

read more

Strict Types in PHP
declare(strict_types=1);

August 09, 2020 - 393 words - 2 mins

blog-cover

In December 2015, PHP 7 introduced scalar type declarations and with it the strict types flag. What is this new feature?

read more

The art of refactoring
When, how, and why

June 28, 2020 - 544 words - 3 mins

blog-cover

If you see something, in the scope of your current task, that can be easily improved, improve it. And if you have any questions about it, ask.

read more

Final classes in PHP | Java | Any
Final, or not final, that's the question

June 06, 2020 - 538 words - 3 mins

blog-cover

Clear contracts, isolated side effects, testability, low complexity and cognitive load, code fluidity, and confidence in yourself.

read more

The art of testing: where design meets quality
From a software developer's point of view

April 07, 2020 - 515 words - 3 mins

blog-cover

Why you should consider testing as part of your daily development habit and how it’s directly linked to the software quality.

read more

How to improve your tech-talk (or any other presentation)
Some tips to improve your communication skills

November 18, 2019 - 660 words - 4 mins

blog-cover

We have found ourselves attending a meeting that felt like we were wasting our time with a “monologue” that is either hard to follow or doesn’t seem so interesting as it could. Let’s fix this.

read more