If you were thinking of ordering your own copy of JitterTed's TDD Game, I recommend ordering soon, as I'm running low on inventory (and won't get more for another month or so).
Get your copy (or multiple copies—saves on shipping) today at https://tdd.cards
And well … It works good so far. And so many more things now make sense and work, e.g. TDD. I thought TDD doesn't make sense, except for some cases. But now with a different point of view to how to create and structure software … it now works. I could develop the current project fully #TDD.
I hate #daylightsavingstime. I hate it so much. The week where #DST changes occur lets me find the weirdest of higgs-bugson and mandelbugs in #GNOMECalendar while doing #QA.
At least the majority of those issues have already been durably fixed for #GNOME 46 by @danigm's fantastic #TDD (unit-tests-backed) bufixes 😌
I'm taking a small break from live coding, so there will be no stream this Sunday.
But do return on Sunday, March 10. We'll start writing a game using #SwiftUI! What does test-driven development (#TDD) look like in a SwiftUI world?
The chat is lively: you can ask questions and help answer mine. Follow me on Twitch for the go-live notification. https://www.twitch.tv/qcoding
Phew, the second (maybe third) pretty big stand-alone #Python library (first was a script rather) that I wrote at my job within the last 12 months. (Not that common anymore.)
Each took roughly 1 month until v1. Each 1k+ lines of code. This time very #TDD style (the script not so much, because it was a one-off — well, two-off ;)
Unit tests are supposed to help you to find bugs. In some situations you need a Test Double, or a Mock object in your test. That can make it harder! Take a look at the Guided Learning Hour that I just published. https://youtu.be/OuRtBe07T9A#softwaredevelopment#tdd
Once again, #TDD and #HexagonalArchitecture meant that when I hooked up the "real" timer broadcaster (using WebSockets), everything just worked.
Only took 35 lines of WebSocket code and 10 lines of #SpringBoot configuration code and a few #htmx attributes on the HTML page. (Not counting the separate transformer code that generated the HTML.)
Just had one of those great #tdd experiences where I adapted to a changing requirement by incrementally updating/adding tests, watching them fail as expected, changing the code until they passed, and then refactoring to cleanup while all tests stay green. It's such a great feeling to code with that level of confidence. Never gets old. And my production code got simpler & smaller as a result. #dotnet
Years ago, I paired for just 3 days with a mentor and my TDD practice was transformed. Years later, I paired with another and my TDD practice was transformed again.
I’ve seen a lot of wrong takes on test driven development, or #TDD, lately. Surprising, given that it’s just 3 simple steps to remember:
Write a unit test before writing code
Write the code to be tested
Tell everyone you’re doing TDD. Tell your friends, your family and your colleagues. Most importantly, tell the internet. Everyone must know you’re doing TDD. This is the most important step, and in fact, you can probably skip the first two steps and go straight to this one.
@danhulton yeah, also forgot — tell everyone not doing TDD that they can’t possibly be productive, must be writing crappy, insecure code which is impossible to maintain, etc
You’ll have so much time to spare for that once you’re doing TDD.