Fl4m3Ph03n1x

Fl4m3Ph03n1x

Is TDD Dead?

Let’s talk about Test Driven Development (TDD)

  • What if we could put in the same place Kent Beck, Martin Fowler and a provocateur interviewing them both?
  • What if we wanted to analyze TDD?
  • Is TDD the Holy Grail? Should we use it everywhere?
  • Is there such a thing as too much TDD?

Lot’s of interesting questions answered by the creator of TDD ( Kent Beck ) and by one of the most renowned architects of IT ( Martin Fowler ) giving their opinions over TDD, where it is at, the learning curve, the different benefits for the different people and much more!

Just make sure you see it until the end. Most of the big insights are in the last episode (finishes and concludes the series).

Let me know your opinions!

Most Liked

rvirding

rvirding

Creator of Erlang

Terror Driven Development. :wink: Sorry couldn’t stop myself.

12
Post #2
StefanHoutzager

StefanHoutzager

Extensive discussions and lots of links: BDD / TDD criticized . I prefer something like https://medium.com/@ckoster22/invariant-driven-development-8231add95e33
I’m with Rich Hickey:

Each of us needs to assess how best to spend our time in order to maximize our results, 
both in quantity and quality. If people think that spending fifty percent of their time writing 
tests maximizes their results—okay for them. I’m sure that’s not true for me—I’d rather spend 
that time thinking about my problem. I’m certain that, for me, this produces better solutions,
with fewer defects, than any other use of my time. A bad design with a complete test suite
is still a bad design.

Someone else (#NoTDD | Microsoft Learn)

Instead of spending time teaching people TDD, we should instead be spending time teaching 
them more about design and especially more about refactoring, because that is the important 
core skill. The ability to write and refactor code to a state with low coupling, well-separated 
concerns, and great names will be applicable in all the codebases that we work in.
tty

tty

Every software methodology exists to deal with some risk. If TDD doesn’t address the risk you face in your project then you are just wasting time.

If anything the people who should be engaged in TDD are business and product owners. It is a clean, relatively simply means of getting them to clarify what they mean and to hash out the requirements (especially conflicting requirements).

Last Post!

TrailingDots

TrailingDots

I was not aware of Goodhart’s Law, thanks!

A prime aspect of this management style I ommitted was,
“If it can’t be measured, it doesn’t exist.” Lower level managers
were compensated by how they could deliver on “metrics.”
While I am a developer, I developed an presented a course
in Clean Code techniques - primarily in C++ and Java and,
to a lesser degree, Python.

My courses were banned since I could offer no metrics.
Developers could not refactor if their code met complexity
and coverage levels. Developers were tracked on the amount
of code contributed to repositories (yes!).

Due to the line counting metric, maintenance dev suffered
greatly and some left the company. Fixing a bug in code
could consume 1-3 days to find and fix the bug while only
a handful of lines need changing.

As a result, some dev unrolled loops when they could
to bump up line counts delivered.

Tests were written to meet code coverage and not because
they really tested the code. (This would be a great topic for
a blog!)

While this company still exists, the churn has replaced
almost everyone in the area I was in.

I still use TDD in normal development and think of TDD as an
automatic debugger. TDD is my insurance policy when in
development and maintenance. TDD is more valuable than
the docs as TDD is live and the docs get disconnected from
the actual code.

Where Next?

Popular in Discussions Top

ricklove
I was just introduced to Elixir and Phoenix. I was told about the 2 million websocket test that was done 2 years ago. From my research, t...
New
sergio
There’s a new TIOBE index report that came out that shows Elixir is still not in the top 50 used languages. It also goes on to call Elix...
New
MarioFlach
Hello, I want to share a project I’ve been working on for a while: https://github.com/almightycouch/gitgud Background Some time ago I ...
New
Nvim
Elixir appears to be a superior language to Python. I don’t see any advantage of Python over Elixir. Are there any?
New
Fl4m3Ph03n1x
Background A few days ago I was listening to The future of Elixir from Elixir Talks, with Dave Thomas (@pragdave ) and Brian Mitchell. I...
New
mmmrrr
Just saw that dhh announced https://hotwire.dev/ Is it just me or is this essentially live view? :smiley: Although I like the “iFrame-e...
New
matthias_toepp
I’d love to hear what people think about Wisp, the new Gleam web framework started by Gleam’s primary creator Louis Pilfold. Gleam, alon...
New

Other popular topics Top

openscript
Hello! Sorry for this astonishing simple question, but I’m really stuck. I try to set up the intellij-elixir plugin, but I don’t know ho...
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
274 42533 114
New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New

We're in Beta

About us Mission Statement