Articles tagged with
craftsmanship
03 Sep 2020
Every day, many developers of enterprise systems have to face complex problems for which incorrect solutions often end with a loss of enormous amounts of money.
That’s why they constantly learn new paradigms, frameworks, tools, read books and broaden their knowledge in technical conferences.
It’s a lot of time and effort! All this dedication is on behalf of creating a high-quality product — but what is the result?
Obviously it depends (as every software architect would say), but too many times the result isn’t the best.
It takes a while, has got too many errors, often the code quality isn’t high…
And let’s better not mention testing. Why is all this happening then?
Everyone does their best, spends additional time on learning, so what exactly is missing?
The answer is quite straightforward - constant practicing.
Let’s say a few words about “code kata” which can make a remedy for the mentioned problems.
28 Jan 2019
What kind of builders do you use in your tests? Do you use the old good builders
where properties are set by a withProperty method? Or maybe, you use builders
that make use of closures? As soon as I joined my team, I found out that there
is another approach to test builders, and it embraces maps. It seemed
innovative, but after a while, it became annoying legacy code. After one of
the debugging sessions, I decided to get rid of it, but the monster fought me
back.
19 Nov 2018
We all know that “there are only two hard things in Computer Science: cache
invalidation and naming things”. However, we know that writing good tests is
hard, too. Does it mean that the author of the famous quote is wrong? Not
necessarily! In fact, what are tests? These are descriptions of some concepts.
They answer the questions: “what?”, “when?” and “how?”. When writing tests, you are
answering these questions by giving names to objects, reasons, and processes. I
think writing tests is hard because it is all about naming. I believe you can
significantly improve your tests just by focusing on giving them correct names. Let
me tell you a story of a pull request I was reviewing some time ago.