As developers, we learned the principles of abstraction, encapsulation, polymorphism, and evil inheritance when we met our first Object-oriented programming language.
We were also presented with Coupling and Cohesion as two basic design concepts, “high cohesion and low coupling” as they said. It seemed very simple at the beginning, but looks like is not, we have a lot of projects breaking these basic things. Buy, why? why are they hard to achieve and then maintain over time? how do we know if our code is cohesive and low coupled?
Let’s explore these two concepts a little more.
This is how a single class is designed with a single, well-focused purpose. …
Alebrijes are brightly colored Mexican folk art sculptures of fantastical creatures. Alebrijes are very strange and unknown animals.
A new user story comes for grooming, apparently a very small change, but as part of the requirements you have to change the legacy class, yes that class that no one wants to touch and everyone is scared of, sounds familiar? After reading the story, everyone agreed on 3 points, you think you can do it faster, but you want to be cautious so you say 3.
When the sprint starts you are very excited to do the change, you open the code, and boom, you found an alebrije. What the falafal is going on here?, this story requires more things than I initially thought, how I will be able to finish this? …
and the quarantaine began…
As a software engineer, I was very lucky to be able to work from home. what could possibly go wrong?
Being at home, I started cooking, exercising, watching netflix, crunchyroll, amazon video, ohh boy, after two weeks — 24 hours alone, everything became like a routine, very boring, unhealthy, I needed to find something interesting to focus my mental energy.
What?, Bitcoin, Blockchain, decentralized money, I was getting very excited, all of this sound incredibly amazing; so I started investing my energy in crypto.
The first time I heard about bitcoin was in 2017, but by then I was more interested to buying cows than anything else…
Are you a good Software Developer? I recently heard this question and it really caught my attention.
How can we answered this? are we good because we do our testing? because we pass the sonar quality gates? because we finish our tasks on time? or based on production statistics like app rating, or existing bugs?
Well, tools and reports will definitely help, but I think is also based on expectations.
I still remember when I heard someone having big expectations from an specific developer. Was he able to fulfill them? Not sure.
I think the same developer can have a different evaluation depending on whom you are asking. the client, the PO`s, the manager, the architect. …