“When people didn’t think about quality until they were 6 weeks in, they didn’t know how to do it anymore…you get too far in and you never recover.”
Nick Van Weerdenburg explains why quality matters on day 0 of your development project.
“When people didn’t think about quality until they were 6 weeks in, they didn’t know how to do it anymore…you get too far in and you never recover.”
Nick Van Weerdenburg explains why quality matters on day 0 of your development project.
…brilliantly summed up by Alexey Golub in “Unit Testing is Overrated”.
My main complaint is that they greatly expand the complexity of the code with interfaces and abstractions that only exist for the sake of the unit tests, without actually testing the application the way it will be used. Users don’t care how high your code coverage is if the app doesn’t work.
He comes out swinging right after the bell:
Focusing on unit tests is, in most cases, a complete waste of time.
Kinder, gentler version:
If you treat unit testing as a goal in itself, you will quickly find that, despite putting a lot of effort, most tests will not be able to provide you with the confidence you need, simply because they’re testing the wrong thing. In many cases it’s much more beneficial to test wider interactions with integration tests, rather than focusing specifically on unit tests.
The alternative:
Writing high-level tests that are driven by user behavior will provide you with much higher return on investment in the long run
Amen.
When will I ever learn?
INSERT EXEC statement cannot be nested
Until it is, here is a great overview on How to Share Data between Stored Procedures by Erland Sommarskog.
“What if we just used NVARCHAR(4000) as the default datatype parameter for any query, regardless of what datatype the table has in it – like numbers or dates?”
Brent Ozar with an interesting example on why (almost) everything could be nvarchar.
There is, however, a clear line of heredity and succession which connects my 1986 computer to my bought-in-2018 one, the same way there’s a line of heredity and succession between the first Benz and the latest one…the so-called “x86 architecture”
Here’s an entertaining essay on the dangers of a clean sheet re-write, aka Rule 20.
I’ve been leading small software development teams on big projects since 2004. Painful experiences taught me some simples rules to make it less painful. Here they are, presented in order of discovery: