Blog
I enjoy writing about topics that I find exciting and bring some value to my life.
Forming, Storming, Norming and Performing
Tuckman's Model to drive a team to high performance
November 25, 2023 - 605 words -
4 mins
In 1965, psychologist Bruce Tuckman developed a model (Tuckman’s Model) that describes the stages of group development, forming and maturing into a cohesive and effective team.
The model initially consisted of four stages: “forming, storming, norming, and performing,” adding one additional “adjourning” in 1977.
read more
How to test private methods?
Testing private methods. When and how?
October 20, 2023 - 168 words -
1 min
This is a question that I have encountered with some frequency for a long time. So I thought I would put together my thoughts on the subject here.
read more
Unhealthy working environment
Recognizing red flags of an unhealthy workplace
October 11, 2023 - 554 words -
3 mins
An unhealthy working environment can have various symptoms that negatively impact employees’ physical and mental well-being.
read more
The Peter Principle
The rise to a level of incompetence
September 30, 2023 - 456 words -
3 mins
The Peter principle states that a person who is competent at their job will earn a promotion to a position that requires different skills. If the promoted person lacks the skills required for the new role, they will be incompetent at the new level, and will not be promoted again.
read more
How do you get everyone on board?
How do you deal with people reluctant to change?
August 02, 2023 - 851 words -
5 mins
Last week, I was at the WeAreDevelopers World Congress, the biggest conference I’ve been giving a tech talk.
With more than 12k attendees, 300 speakers, and ~10 tracks in parallel, I was invited to give not one but two talks. One is about my experience with Extreme Programming and the profound benefits of embracing change in your work and life.
read more
Never ending loop
Writing to help myself sleep
July 05, 2023 - 463 words -
3 mins
It is hard sometimes to get to bed with the mind blank because, more often than not, I think about my next reading, learning, talk, or what I will write this or next month.
read more
Learned helplessness
An acceptance of powerlessness
June 08, 2023 - 575 words -
3 mins
Learned helplessness is the behavior exhibited by a subject after enduring repeated aversive beyond their control.
read more
Dedicated QA Teams in software?
How does it fit a dedicated QA person in your agile team?
May 17, 2023 - 692 words -
4 mins
This will be controversial, but let’s talk about the QA position. The hidden truth behind the lack of software quality and why this should concern you if you write software.
read more
Introducing a new tech stack
How to introduce new technologies in your team
April 14, 2023 - 451 words -
3 mins
To introduce a new tech stack for the entire team, it’s important to bring “why?” and a strategy to make it happen among the team because it will affect everyone.
read more
Have you always been like this?
How to find a balance of growth and happiness
March 16, 2023 - 1051 words -
6 mins
Great leadership
Leadership starts within your own life and behaviour
February 27, 2023 - 1628 words -
9 mins
As business scales, the leaders’ primary focus must shift from customers to employees. Therefore, I would like to share what I consider critical points that any leader should address and focus on regularly.
For each key point, you will have book recommendations that go deeper into the matter, giving you references from real experts behind them.
read more
Interview about XP and Agile
Agile is about HOW you do certain things
January 09, 2023 - 782 words -
4 mins
Ignoring Scrum to get more Agile?
Killing agility with excessive meetings
December 06, 2022 - 1213 words -
7 mins
Talking to a friend about agile, he asked me a fascinating question remarking how badly sometimes Agile and Scrum fit together, especially regarding meetings. These are my thoughts about this topic.
read more
Working agile with non-agile teams
How can you work with other teams that aren't agile?
November 11, 2022 - 873 words -
5 mins
Let’s assume you already know what the agile manifesto is. Let’s consider that you apply most of the “extreme programming” values, principles, and practices. How can you work with other teams that aren’t agile?
read more
Different beliefs about software quality
Some thoughts about software quality among your team
October 08, 2022 - 737 words -
4 mins
I recently got a great question on Twitter which got me thinking for a while and I decided to share my thoughts about it.
read more
The beauty of leadership
Team Lead? Tech Lead? What is leadership and what is not?
September 25, 2022 - 767 words -
4 mins
Leadership is not a synonym for management, it has nothing to do with titles or personal attributes. So, what is it? How can we become leaders? And most importantly, why?
read more
Understanding people
Misunderstandings, effective communication, and self-reflection
August 22, 2022 - 535 words -
3 mins
One of the most complicated challenges for everyone is avoiding misunderstandings and being aware that other people don’t think the same way as you do.
read more
The Project Management Triangle
The Iron Triangle
July 25, 2022 - 307 words -
2 mins
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
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.
read more
Bikeshedding
Also known as the Law of triviality
May 27, 2022 - 318 words -
2 mins
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 moreDunbar number
April 02, 2022 - 310 words - 2 minsDunbar’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 - 1020 words -
6 mins
Revisited: 2023-03-23
Our software profession is constantly evolving; it demands a non-stop learning process. We must embrace the change in our industry.
read more
The power of authority and obedience
Milgram's experiment
January 24, 2022 - 1017 words -
6 mins
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
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
“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
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
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
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
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
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
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 - 502 words -
3 mins
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 - 613 words -
4 mins
To mock or not to mock
How to escape the mocking hell
January 11, 2021 - 783 words -
4 mins
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
Never use array_merge in a loop
The spread operator to the rescue
November 10, 2020 - 331 words -
2 mins
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
The process itself is the goal
How to focus and have self-discipline
September 08, 2020 - 1013 words -
6 mins
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 - 915 words -
5 mins
Strict Types in PHP
declare(strict_types=1);
August 09, 2020 - 393 words -
2 mins
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
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
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
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
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