Thanks!
Steve
--
Steve Smith
http://SteveSmithBlog.com/
http://twitter.com/ardalis
I'm really not the person who should be answering this question, but I keep on being astounded by the things I see or hear about. About 10 years ago, someone told me about hiring a "certified Java programmer" whose previous job had been managing a McDonald. He gave him an assignment, and the guy came back with a 20K line main method. I laughed about it at the time, but in the past week, I saw something really similar (it was fairly widely tweeted). The code started with about 150 lines of imports, and got worse from there.
Mike
> --
> To view or edit your contributions, visit http://programmer.97things.oreilly.com
> To post to this group, send email to 97things-...@googlegroups.com
> For more options, visit this group at http://groups.google.com/group/97things-programmer?hl=en
>
> To unsubscribe, reply using "remove me" as the subject.
and after posting that someone pointed me here as well:
http://c2.com/cgi/wiki?AntiPatternsCatalog
I've already read the Big Ball of Mud article and am planning on
discussing it, too. I'll check out the other links you posted and
looking through TheDailyWTF is also a good idea (though I'm hoping to
use stories from people I've personally corresponded with - if I find
something good I'll try to contact the author).
Thanks,
Steve
There is one little story I can share as a direct witness:
Not too long ago, a neighbourly company called for our help on a project
that was late and oversized. It was a software handling money in the
banking domain. We asked them to perform an in-depth code review with us
so we can decide if we can add value to the project or just serve as
additional ballast. During the code review, we've seen many coding sins,
but one of them really was a worst practice (it convinced us to refuse
to join in):
All the values (should I say quantities?) in the program were stored in
floating point fields. They never heard about the concept/pattern of
"Quantities" (refer to Martin Fowler's "Analysis patterns" book). And
they ignored the fact of precision errors.
The worst practice in this story is the total ignorance about basic
numerical issues with today's computers. There are already workable
solutions for many of them, you just have to be aware about the problem
and the solution.
Today, I would perhaps call them the avant-garde of the BASE movement
(summed up nicely here:
http://www.johndcook.com/blog/2009/07/06/brewer-cap-theorem-base/)
without a database (and a clue).
Sincerely, Daniel
Steve Berczuk wrote:
> I don't particularly like the concept of anti pattern as it doesn't help
> build something. If you use the negative examples as a basis for
> understanding how things can go wrong and what to do to mitigate the
> risk that's helpful. Otherwise it's just ranting.
Not sure I agree with this. A lot of times people don't even realise
they are doing anything wrong. An anti-pattern as a war story with the
resulting consequences is really useful. Probably why we find them so
fascinating.
Saying that it's ranting to describe the negative is a bit like saying
that you have nothing to learn from reading an account of Chernobyl.
Taking a more scientific tack, check out some of the social science
complexity stuff, in particular "sense making". Domains like the
military or the business world can only describe negative "war" stories.
Any plan is worthless once it's been revealed to the enemy/competitor.
You are left with lots of what not to do's, such as don't go into battle
without ammo, but no prescribed path to victory or profit.
We don't live in the business/warfare domain, our stuff is more like
research, but we touch upon it.
> Steve
yours, Marcus
Unfortunately, fascination does not always equate to learning.
Learning requires something else in addition. There is a myth about
learning from mistakes that doesn't stand up to close scrutiny, which
is a point I make in the middle section of the following talk:
People that are learning from mistakes are doing something else as
well, otherwise they would typically fail to learn and adapt their
behaviour.
Kevlin
--
________________________
Kevlin Henney
+44 7801 073 508
http://curbralan.com
http://kevlin.tel
________________________
> --
> To view or edit your contributions, visit
> http://programmer.97things.oreilly.com
> To post to this group, send email to 97things-...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/97things-programmer?hl=en
>
> To unsubscribe, reply using "remove me" as the subject.
>
--
Best regards,
Steve