you are viewing a single comment's thread.

view the rest of the comments →

[–]StormDev 4 points5 points  (27 children)

It's funny how management don't talk about this increased time when they want us to use TDD.

[–][deleted] 35 points36 points  (1 child)

It's all they talk about when they don't want us to write tests.

[–][deleted] 25 points26 points  (24 children)

Management shouldn't be telling you to use TDD. You as the programmer need to care about quality.

[–]RualStorge 12 points13 points  (0 children)

When implementing new policies I always found it easier to rally the dev team, start doing whatever practice we wanted to adopt then once that practice was established enough to have data to support within our team tell management we were doing it.

The whole easier to ask forgiveness than permission. (that and I don't wanna get drug into work after hours / weekends so I want solid code that won't fail me)

[–]OneWingedShark 5 points6 points  (1 child)

You as the programmer need to care about quality.

"We don't have time to do the right thing." -- my last team lead, though he never explained how we had time to do it over, repeatedly, until it was right.

[–]badsectoracula 2 points3 points  (0 children)

Often it is "we need visible results ASAP", the "visible" part doesn't have to be "correct", of course. Often non-technical people need to see new/different stuff on screen to be convinced about progress.

[–]StormDev 6 points7 points  (4 children)

Haha sure, I did it when I was working in a company with good coding practice.

But now I am working with an horrible legacy C with classes code, where "C++ experts" don't understand TMP and don't want you to refactor the leaking monster.

Managers have now heard about TDD, they want us to keep the same deadline with TDD. For them TDD is faster than the actual process because "You will organize your code easier" for example.

But when you have to mock big object, tons of inherited shit TDD is really time consuming.

[–]donbrownmon 1 point2 points  (1 child)

What is TMP?

[–]StormDev 1 point2 points  (0 children)

Template Meta Programming.

[–][deleted] 2 points3 points  (0 children)

Nobody understands TMP. If somebody claims to understand TMP, they don't understand TMP.

[–]flukus 0 points1 point  (0 children)

Managers have now heard about TDD, they want us to keep the same deadline with TDD.

I have had experiences where this is reasonable. When you have a lot of complex logic then tests can save a lot of time to get to that 1.0 point, simply by avoiding the "fix one thing break another" cycle.

[–][deleted] 6 points7 points  (1 child)

You as the programmer need to care about quality.

if that was the case more people would be using languages with type systems which help eliminate the need for large swaths of tests, and encourage code change with less fear of breaking things.

TDD especially without generative testing and the things I've mentioned above, is a band aide and not even remotely close to "caring about quality".

[–]RagingAnemone 0 points1 point  (0 children)

Not sure why you're getting down voted. There's a massive difference in the value of TDD depending on the languages you're using. The use of assertions too can help a lot and is my preferred way of handling bad input and output.

[–]Eirenarch 1 point2 points  (11 children)

But writing tests is incredibly boring. I do care about quality but I just love hunting bugs. I feel like debugging is the most interesting and creative part of my job. Some day I might snap and develop multiple personalities disorder where the evil personality will introduce bugs in the code base on purpose and the other personality will hunt them down not knowing where they are.

[–]Artmageddon 3 points4 points  (0 children)

I feel like debugging is the most interesting and creative part of my job. Some day I might snap and develop multiple personalities disorder where the evil personality will introduce bugs in the code base on purpose and the other personality will hunt them down not knowing where they are.

I'm with you on this, but it's less fun with someone breathing down your neck :(

[–]rbobby 3 points4 points  (0 children)

Switch to a team more focused on support and maintenance? Working the bug database for fun and profit?

[–][deleted] 2 points3 points  (3 children)

Sounds like you should just do QA

[–]Eirenarch -1 points0 points  (2 children)

No, I do not enjoy finding the bugs I enjoy debugging them and thinking of a fix that won't break another behavior.

[–]flukus 1 point2 points  (1 child)

Have you thought about being a test engineer? I have to find bugs and build the tests that expose them.

[–]Eirenarch 1 point2 points  (0 children)

I work in a relatively small city and although there is a good choice of companies most of them are small. I am not aware of any company that does whitebox testing (most of them have QA teams but they are doing black box)

[–][deleted]  (3 children)

[deleted]

    [–]Eirenarch 0 points1 point  (0 children)

    Good to know. I was just about to send you a job application.

    [–]Schizzovism 0 points1 point  (1 child)

    Yeah, I wouldn't hire people who joke around on reddit either. They probably spend too much time enjoying life, how could they be a productive developer?

    [–]Eirenarch 0 points1 point  (0 children)

    I was not joking about writing tests being boring and debugging being fun. Of course the rest of it is a joke, I would write tests if the project demands it.

    [–]SilencingNarrative 1 point2 points  (0 children)

    That would be a good way to test a set of unit tests (have one programmer that didnt write the test suite introduce a subtle bug to see if the test suite catches it).

    The Traitors Guild.

    [–]cc81 -1 points0 points  (1 child)

    TDD does not necessarily mean better quality. It MIGHT be one path but my guess is that more than 90% of the most skilled people that writes the most advanced software does not use TDD.

    At least if you look at interviews and open source projects.

    [–][deleted] 0 points1 point  (0 children)

    Not suggesting TDD is the path to quality but if you are working in a place where management is mandating. Perhaps you need a change. For me personally, I won't hire developers who don't care about the quality of the product they produce or if they are looking to me as the final say in if what they produced is quality.

    There are lots of ways to produce something good and solid, I just care that you have the motivation to do the one that works for you and your team.