Live data from Hacker News

Beware of Developers Who Do Negative Work

blog.professorbeekums.com

11–20 of 271 posts

Re: Beware of Developers Who Do Negative Work

#11

After reading the article, I feel like a code test and discussion and or whiteboard would have filtered the type of developer they mentioned who is a net negative on the code base.

This is a good counter-argumnent to the frequent article decrying whiteboard tests.

How does a whiteboard test speak to documentation and code quality? By definition pseudo code is not production code and writing production style documented and compiling code on the whiteboard sounds like a terrible idea.

Re: Beware of Developers Who Do Negative Work

#12
post #2

Maybe these developers that produce "negative work" think your code sucks. Ever consider that?

Maybe they're not competent to recognize good code when they read it.

Or maybe you're responding to something OP didn't write. It's hard to tell. Perhaps you'll elaborate.

Re: Beware of Developers Who Do Negative Work

#13
post #10
post #6

There's this magical process called continuous integration that internalizes the impact of bad (or, more likely, misguided) developers. Don't let them merge their branch until all tests pass. If their commit breaks something while all tests still pass, then direct them to write the missing tests.

CI does nothing to prevent bad developers checking in bad code. You just end up with equally poor unit tests.

True. Code reviews and standards are the tools to use in this case.

Re: Beware of Developers Who Do Negative Work

#14
post #8

Earlier quoted context omitted.

This is a good counter-argumnent to the frequent article decrying whiteboard tests.

I feel like whiteboarding is really essential when talking about how code should be written, but most whiteboard tests are about writing code on the whiteboard. There's a big difference between the two activities.

Good point. The whiteboard should be used to discuss the problem and the solution. Not the actual code.

Re: Beware of Developers Who Do Negative Work

#15
post #6

There's this magical process called continuous integration that internalizes the impact of bad (or, more likely, misguided) developers. Don't let them merge their branch until all tests pass. If their commit breaks something while all tests still pass, then direct them to write the missing tests.

Sometimes they are in politically privileged positions and you can't get rid of them, ask me how I know.

How do you ... know?

Re: Beware of Developers Who Do Negative Work

#18
post #2

Maybe these developers that produce "negative work" think your code sucks. Ever consider that?

> Maybe these developers that produce "negative work" think your code sucks. Ever consider that?

So what? Is that a justification for producing bad code?

Re: Beware of Developers Who Do Negative Work

#19
post #6

There's this magical process called continuous integration that internalizes the impact of bad (or, more likely, misguided) developers. Don't let them merge their branch until all tests pass. If their commit breaks something while all tests still pass, then direct them to write the missing tests.

Sometimes they are in politically privileged positions and you can't get rid of them, ask me how I know.

Agreed. The article mentions influential developers like this who are stuck in the past.

Re: Beware of Developers Who Do Negative Work

#20
post #10
post #6

There's this magical process called continuous integration that internalizes the impact of bad (or, more likely, misguided) developers. Don't let them merge their branch until all tests pass. If their commit breaks something while all tests still pass, then direct them to write the missing tests.

CI does nothing to prevent bad developers checking in bad code. You just end up with equally poor unit tests.

If it doesn't "prevent" people from checking in code (in the strictest sense of the term) that breaks lots of other code, it certainly does some combination of slowing them way down, notifying other people way sooner, or forcing them to be a great deal more skilled in how they check in their breaking code (in the "if you make something idiot-proof, someone will build a better idiot" sense of skilled).

It's not perfect, but it's better than most of the alternatives, and perfect isn't actually on the table anyhow.

Post reply on HN