Chema's avatar
Chema
chemaclass@snort.social
npub1ch2g...sxwx
I like open-source software and sharing knowledge
Chema's avatar
Chemaclass 2 years ago
"When can we release this bug fix or new feature to production so the customer can benefit from this work?" This is software agile thinking. The sooner you deliver your work to the customer, the sooner you will get real feedback from the end user, and you can iterate and improve it.
Chema's avatar
Chemaclass 2 years ago
The environment is more important than we tend to think. Building a healthy and safe environment where people can prosper and grow together is crucial for an organization to last, but more importantly, for its employees to feel proud of what they do and how they do it. An atmosphere of continuous learning and sharing knowledge makes a difference.
Chema's avatar
Chemaclass 2 years ago
As a software developer, when you write software, you are the main responsible for the quality of whatever you're writing.
Chema's avatar
Chemaclass 2 years ago
TDD is not just about "red-green-refactor" but "THINK first what you want to test, and then red-green-refactor." And that's precisely the most challenging step when practicing test-driven, especially for beginners. Great talk: image
Chema's avatar
Chemaclass 2 years ago
When your unit tests are poorly written... ๐Ÿ˜† image
Chema's avatar
Chemaclass 2 years ago
When doing TDD, make sure the test fails for the right reason. That's more important than we tend to think. Seeing the test red (for the right reason!) is crucial to make sure what you are doing (make it pass) is the right thing to do. And then you can refactor with confidence ๐Ÿ—๏ธ
Chema's avatar
Chemaclass 2 years ago
A great way to learn (and improve!) a programing language is by practicing it with others. And for this, Open-Source Software is one of the best opportunities we all have out there. You can start fixing some typos, translating something to your mother-tongue language (if applicable), writing some docs, or applying simple refactoring opportunities... until you get comfortable and you can start applying bigger refactorings or even contributing to adding entirely new features.
Chema's avatar
Chemaclass 2 years ago
You don't want to test "private methods" but "public behavior". Private scope is about implementation details. If happens that you feel the need to test a private method, it will luckily be that your class is responsible for multiple things. TIP: Consider extracting that private method to another class, and create an interface to invert the dependencies between them. This way you will make your behavior testable.
Chema's avatar
Chemaclass 2 years ago
In the context of building software, think about constant and small iterations. This way, you can adapt quickly to the different needs along the way.
Chema's avatar
Chemaclass 2 years ago
Good morning, team! Second week of March. There we go! ๐Ÿค˜
Chema's avatar
Chemaclass 2 years ago
Your code quality is directly proportional to how easy it is to write automated tests for it. As simple as that.
Chema's avatar
Chemaclass 2 years ago
It's always the right time to do the right things.
Chema's avatar
Chemaclass 2 years ago
If you cannot build it in one day, the problem is too complex. Break it down and/or find a smaller problem that you can solve in a day that helps you work towards the greater goal.
โ†‘