Live data from Hacker News

Is Uncle Bob serious?

dev.to

21–30 of 181 posts

Re: Is Uncle Bob serious?

#22
post #11

Uncle Bob's product is Uncle Bob. If any software gets written, that's entirely coincidental.

The other day I stumbled across a video of his, explaining monads in Clojure, and I completely agree with you. He's a good salesman, he sells himself and his consulting, and that's about it.

Re: Is Uncle Bob serious?

#23
post #8
post #6

Earlier quoted context omitted.

> They have higher standards and whatnot Note that "higher standards" in civil engineering usually boils down to a) having standards at all instead of fuzzy process management frameworks b) these standards often boil down to "do this task/product with this regulatory mandated large margin of error" and c) building according to specification (i.e. having a reliable specification in the first place), which is exactly h…

> Embracing agile (as his ThoughtWorks contract requires him to do) while lamenting quality and lack of professionalism, as Mr Martin does, is extremely dishonest. Why exactly? I fail to see the connection between lack of quality and embracing agile.

In principle, 'agile' is so weakly defined that it is possible to follow a process that produces quality software and describe it as agile. In practice, insofar as agile stands for anything at all, one of its pillars is what might be called an 'active disinterest' in doing much thinking ahead, and in practice, it is very hard to produce quality software without doing some serious thinking ahead.

Re: Is Uncle Bob serious?

#24
We already have tools that let us do the 'right thing' if we spend enough time and money on it.

Another relevant quote from that paper, with regard to formal verification methods:

> Any new software technology in this field must address both the cost and time issues. The challenge here is daunting because a reductions of a few percent is not going to make much of an impact.

> Something like an order of magnitude is required.

I think that's pretty much spot on.

I think that's really the issue I see; we don't need more arbitrary tools that just add yet more complexity to already complex systems.

Re: Is Uncle Bob serious?

#25
My problem with Martin's article is that his solution isn't a catch all. In fact, testing is aided by the examples he gives.

The things he moans about actually reduce the runtime state set of a piece of code by moving it to compile time. It reduces the amount you need to test.

With testing, you write code that ensures a certain set of states and, importantly, ensures against the complement of that set.

If your compiler can reduce the set of potential states, that means a few things:

1. Less testing code required. This is better because testing code is still code.

2. Catching more errors since it's easier to cover a reduced set of states.

3. You can focus your discipline on higher level problems. Discipline is great. It's even better when not focused on crap a compiler can pick up.

Tools are not the 'answer'. Tools are tools. If a tool helps solve problems, it should be used.

Re: Is Uncle Bob serious?

#26
Curiously, in the list of possible future tools for more reliability type systems are absent.

Looking at the authors bio: "I love solving tough problems with Python and PHP".

Type systems to me seem to be (I'm not exaggerating) the answer to all software reliability problems (barring social ones). If you want a property to uphold, formulate it as a type. The compiler verifies.

If formulating the type is to laborious, make a weaker version and do tests it instead.

Personally, I don't understand people arguing against type systems on principle. Sure, they are type systems that suck (e.g. Java) or are otherwise very verbose and thus straining. But that doesn't have to be the case, it's not an intrinsic property of type systems.

There has to be something I'm missing since there are so many people arguing against types, notably Bob Martin himself.

Re: Is Uncle Bob serious?

#27
post #18
post #12

Once again, because I never really get a clear answer for this question: why do we care? How is this not just another instance of "random dude wrong about something"? There are tens of millions of those.

This person wrote a series of books about clean code which are sometimes recommended to junior programmers. Some people have a high opinion of him. It's a good thing that his claims and experience are being questioned.

I read his books and they're pretty good in showing Junior developers better ways to structure their code.

This doesn't mean that Uncle Bob is right on every topic. Safety critical software is completely out of his realm (at least I don't know of any project he worked on that's SC).

From my own experience I've seen quite a few safety critical codebases and they're often abhorrent in lack of common sense software structure, precisely because there are so many regulations that you can't "quickly refactor" something, and in embedded systems there are too many mechanical engineers writing software, without caring about the craft.

Re: Is Uncle Bob serious?

#28
post #10

Both better tools and better software discipline is needed. Better tools could help a lot. It's hard to see how anyone disagrees with that. But, on the flip side, at my most pessimistic, I find that a massive % (say, 50%) of developers struggle to do the most basic things correctly. I can't fathom the types or scope of tools needed to solve the size of the problem (real AI that puts us all out of a job??). So, while…

This is what I don't understand about AI proponents and/or fear mongers. Human level AI writing code? Wouldn't that just be a lot of the same human level bugs? Then people say Super AI will evolve more in a day than we have in a million years. Sure, maybe, it's not known if that's even possible, at this point.

Re: Is Uncle Bob serious?

#29
post #18
post #12

Once again, because I never really get a clear answer for this question: why do we care? How is this not just another instance of "random dude wrong about something"? There are tens of millions of those.

This person wrote a series of books about clean code which are sometimes recommended to junior programmers. Some people have a high opinion of him. It's a good thing that his claims and experience are being questioned.

Furthermore, some of his followers are very voluble and dogmatic in places like Stack Overflow/Exchange, driving out nuanced, reasoned discussions about how to improve software development.

Re: Is Uncle Bob serious?

#30
post #12

Once again, because I never really get a clear answer for this question: why do we care? How is this not just another instance of "random dude wrong about something"? There are tens of millions of those.

Because he is not random but influential, simple as that.
Post reply on HN