One of my mentees already knows some TDD. So instead of talking again about red-green-refactor, we talk about some stuff that might not be obvious to beginners.
Category: Uncategorized
Book Summary: The Pragmatic Programmer 20th Anniversary Edition- Chapter 1
This article is the first from a series where I’m going to summarize important books for the software engineering career. The Pragmatic Programmer is the perfect one to start.
TDD: Act-First to Drive Design
I know tests should drive the design, but I never really understood how to do it. And I don't feel like asking so people don't think I'm anti-TDD.One of my students Over the years being a tech lead, I saw this is a common challenge. And that having tests driving the design is difficult because … Continue reading TDD: Act-First to Drive Design
There’s no such thing as a technical decision
Let me just tell you something right away: strange as it sounds, your goal as a software developer is not to write code, not to write tests, and neither it is to put and maintain a system in production. Your goal as a developer is to help your company make money. I say make money, … Continue reading There’s no such thing as a technical decision
Solving Real World Bad Design by Applying the Tell, don’t Ask Principle
Can you spot bad design when you see it? Can you tell what's wrong here? if (!response.getStatusCode().is2xxSuccessful()) { logError(response.getBody()); throwException(response.getStatusCode()); } The snippet above is an example of a pattern we often see in the wild: if(someObject.getSomeAttribute()) { doSomethingWith(someObject); } else { doSomethingElse(someObject); } Why should I care? For us to understand what are the … Continue reading Solving Real World Bad Design by Applying the Tell, don’t Ask Principle
Build people, not tech
Retrospectives, build-measure-learn and continuous improvement are all activities and practices that companies and their agile teams do to support project delivery and product development. I think this is wrong. These things are way too important to be only supporting the business. Not long ago, businesses used technology to accelerate, to automate, to improve themselves somehow. … Continue reading Build people, not tech
The simple act that changes the future of your team
At some point in the past, the time continuum has been disrupted, creating a new temporal event sequence resulting in this alternative reality. And now you're at the critical moment when you're going to find out in which timeline you're in!
Clever code is bad. Don’t write clever code.
"Wait! Isn't code supposed to be smart? Programming IS hard! We have to be smart!" Nope. Code is supposed to be simple. And programming is no place for being a smart-ass. Let me explain. What is clever code Clever code is code that when you read it your face goes like this: "Interesting.." Or like … Continue reading Clever code is bad. Don’t write clever code.
The one skill I wish I master as a Tech Lead
I've been leading teams for 5 years now and I can tell you: it's freakin' hard - but not for the reasons most people think. Don't get me wrong, I enjoy being a tech lead, and before doing it, I kind of knew what the role was about. I knew I was supposed to drive … Continue reading The one skill I wish I master as a Tech Lead
3 books that will take you to the next level
You can write code and make the computer do what you want - no problem. You can even do it in more than one language and you're fluent in many frameworks. You know all your data structures and algorithms and can use databases and external APIs without breaking a sweat. And you've been doing it … Continue reading 3 books that will take you to the next level