473,769 Members | 2,331 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

All-Out Flamewar... (was good/bad OOPS)

Go away for a few days and you miss it all... A few opinions...

Programming is a craft more than an art (software engineering, not
black magic) and as such, is about writing code that works, first
and foremost. If it works well, even better. The same goes for
ease of maintenance, memory footprint, speed, etc, etc. Most of the
time, people are writing code for a use in the *real world*, and
not just as an academic exercise.

Look at Windows 9x. Big messy mixture of functional and OO coding,
varying APIs, inconsistent, bug-ridden, often unstable and unpredictable.
But, a very successful product commercially. (Before you flame, I'm
not a windows lover...) Partly this is due to marketing and business
practices (very effective ones, whatever you think of Microsoft), and
partly because the products were shipped, new features were added, and the
general perception of users is that the software can "do stuff".

I don't think many end-users of Windows (proportionatel y) care whether
the code is written in Pascal, Lisp, ALGOL, Objective C; whether the design
was refactored from scratch, or what kind of multiple inheritance/interface/
MVC paradigms were used to construct the code.

There is also More Than One Way To Do It. Lots of tools, things to
make throwaway one-liner code, IDEs, collaborative development tools, frameworks
to aid in OO design, database access, you name it. All of it, though, is
geared at writing software that does something. It may be that you feel that,
if you use a totally OO language (e.g. Java), you will have better code than
if you write it in C; but the metric is, does the software work?

And then TMTOWTDI in a given language environment. Some people like to
have generic base classes, which they subclass to use in a generic application.
A lot of GUI frameworks (MFC, Borland's, QT) seem to be based around this idea.
Others like to write generic classes, which handle any given situation within
their stated problem domain. I like this method: Kind of a "Write Once, Forget
Anywhere" method, where the class implementation is not important once coded,
and (hopefully), you can use the same class in a wide variety of projects,
without having to change the class code.

And so-on.

There are benefits in the form of code-reuse, encapsulation, etc. But making
code OO doesn't make it good code. (Cool is not always Va-Va-Voom, to quote
a recent car advert...) I doubt many people could point to a non-trivial
DB app, that uses a 5NF database design, that couldn't be improved with some
denormalization of the data. Applying an academic theory to a problem doesn't
guarantee to solve it, it just helps you analyze what's going on. And "My" idea
of OO design doesn't necessarily match with "Yours" - it's just different.

Matt
Jul 16 '05
24 3612
lk******@geocit ies.com (lawrence) wrote in message news:<da******* *************** ****@posting.go ogle.com>...
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...
Andr¨¦ N?ss <an************ *********@ifi.u io.no> wrote in message news:<bj******* ***@maud.ifi.ui o.no>...
Tony Marston:
Certainly. But in every language there are things you simply should avoid.
Then take the matter up with the authors of those languages.


There is often nothing to be taken up because the flaws of one
language are often a part of its strengths. There is no perfect
language. Should I go to the authors of Java and say "Hey, using Java,
I can't write simple programs as quickly as I write them in PHP!" That
would be a stupid complaint, and they would be right to responsd,
"Then go use PHP!"

What Andre is saying is that you should know the strengths and
weaknesses of a language, and use it for its strengths, and avoid its
weaknesses. For instance, don't try to write 5 line programs in Java.
For something that small, a script language will give you many
benefits and no disadvantages.


All this has got nothing to do with my original argument, which is
that I have been told:
a) I must not create a separate class for each table in my database.
b) I must not create an abstract database class and have each table
class as a subclass.
c) I must not use class variables to hold the components of the sql
LIMIT clause.
Some people may decide to ban certain commands for totally ridiculous
reasons. As an example many years ago I joined a COBOL project team
and read in their development guidelines that the COMPUTE verb was not
to be used. Having used it successfully on previous projects I asked
the project leader the reason why, only to be told "because it is
inefficient". It turned out that he had discovered some junior
programmers were using this verb for simple incrementing (as in:
COMPUTE A = A+1) instead of for complex calculations, but instead of
educating them on how to use the verb efficiently he issued a total
ban. That shows the level of competence I have encountered in people
who are supposed to be my "masters".


Why are you calling this manager a master? Was he internationally
recognized as such?


When you are learning a language your superiors at your place of
employment are supposed to be ¡°the masters¡± based upon their
supposedly superior experience. When they give you their ideas of
¡°best practice¡± in the form of project development standards you are
supposed to believe everything that they say and follow it religiously
without question. You are not allowed to go to outside sources for
their ideas on what consitutes ¡°best practice¡±.
Did the worldwide community of COBOL programmers
follow his lead and give up using the COMPUTE verb?
You have hit the nail on the head! The worldwide community of COBOL
programmers did not follow his lead simply because his idea of ¡°best
practice¡± was totally different from theirs. But if that version of
¡°best practice¡± can be treated as rubbish, then why can¡¯t others? Who
is to say that somebody else¡¯s version of ¡°best practice¡± is not just
as much rubbish as that one? Just because something is labelled ¡°best
practice¡± does not necessarily make it so. THAT is my point.
If not, then
you're talking about something quite different than what Andre was
talking about. Andre is talking about those practices which are so
clearly beneficial that all the programmers of a language, once
exposed to those ideas, tend to use them.
Most programmers follow standards because they are told to, not
because they choose to. This should prevent them from examining those
standards in detail to find out if the logic behind them is actually
sound, or if any parts have been superseded by updates to the
language. When it comes to designing solutions to a problem they
should not be prevented from trying alternative methods as they may
discover new methods which are actually superior. Just because
somebody has found a method that works does not give them
justification to enforce that method on everybody else.
You are bringing up a
subject completely unrelated to what Andre was talking about. You have
now written several posts and all of your posts have the same theme.
In all of your posts you talk about bad managers.
You are missing the point. All these managers produced development
standards and methodologies which were supposed to be examples of best
practice but which were clearly no such thing. There are a multitude
of different methodologies and practices out there, and how many of
them are actually worth less than the paper they are written on? If
most of the standards that I have been exposed to have been rubbish,
then what percentage of the standards that I have not yet been exposed
to will turn out to be just as much rubbish.
But Andre is very
clearly not talking about bad managers. He is talking about those
practices that seem so obviously intelligent that everyone will do
them once they are taught them.
Obviously intelligent to who? These managers and project leaders all
thought that their ideas were the best thing since sliced bread, but
they clearly were not. How many of the ideas floating around today are
equally as bad? What I am objecting to is that some people think that
their ideas are absolutely brilliant and they think that everybody
else should follow them without question. Well I *DO* question them
because I think the logic behind them is unsound.
An example: in PHP it is possible to break encapsulation by directly
referencing a class variable, rather than getting the value through
an accessor method.
This ¡°problem¡± is not limited to PHP as every language ever written
which supports OO has included support for both public and private
variables. If it breaks encapsulation as you suggest, then why does a
methodology which is supposed to support encapsulation provide the
means to break it?
If you teach people why this is stupid, then only
the stupid people will continue to do it. Thus, preserving
encapsulation, even when a language allows it, is cleary a practice of
such merit that we can without reservation call it a "best practice."
Your description of the problem as ¡°it breaks encapsulation¡± is a load
of technical mumbo-jumbo that has absolutely nothing to do with the
real facts. The correct definition of the ¡°problem¡± goes something
like this: If you access a class variable directly instead of through
an accessor method then this *MAY* lead to maintenance problems in the
future if it is decided that the variable requires extra processing
after it has been input or before it is output. By routing all
accesses through a method means that changes need only be made to that
method rather than all those numerous other places where the variable
is accessed.

Note that this MAY lead to a problem, not WILL. Also note that the
potential ¡°problem¡± is one of simple maintenance and not any sort of
program failure. If all variables were accessed this way then the
potential maintenance problem could be quite large, but if few
variables are accessed this way then the potential problem is greatly
reduced.

I have accessor methods for most of my variables, but there are some
cases where I simply don¡¯t bother because it is not necessary. An
example is where I inject a series of values into an object then
immediately call a method to process them. If I need to change the way
in which these variables are handled all I need to is change the
existing method ? I do not have to go back to any of the code which
injects those variables.

So you see that there MAY be a problem with public variables if they
are used indiscriminatel y, but there MAY NOT be a problem if they are
used wisely. Just as with the COMPUTE verb which is only inefficient
when used unwisely.

So your statemement that public variables are stupid and should never
be used is just as shortsighted as that project leader who told me
that the COMPUTE verb is inefficient and should never be used.
Your stories of bad managers are entertaining and perhaps you should
send them to Robert Glass. Perhaps he'll use them in his next book.
But you can stop telling such stories in this thread. They are not
relevant. They have nothing to do with what is under discussion. We
are discussing best practices and you keep raising worst practices.


But these worst practices were promoted as best practices by their
authors. If they were clearly no such thing, then how much of what is
promoted today as best practice will be eventually consigned to the
rubbish bin?

Tony (you do it your way and I'll do it better) Marston
http://www.tonymarston.net/
Jul 16 '05 #11
Tony Marston:
But Andre is very
clearly not talking about bad managers. He is talking about those
practices that seem so obviously intelligent that everyone will do
them once they are taught them.


Obviously intelligent to who? These managers and project leaders all
thought that their ideas were the best thing since sliced bread, but
they clearly were not. How many of the ideas floating around today are
equally as bad? What I am objecting to is that some people think that
their ideas are absolutely brilliant and they think that everybody
else should follow them without question. Well I *DO* question them
because I think the logic behind them is unsound.


We have all the time been talking about the community of programmers.
Developers. Techies. Geeks. We who feel like we are artists, trapped in a
world of pin stripe suits. The logic (or rather lack thereof) in the
software industry is of little interest to this discussion. The gap between
programmers and their managers is covered in "The Career Programmer:
Guerilla Tactics for an Imperfect World" by Christopher Duncan. I just
bought it, and I like it so far, and since you brought it up I just wanted
to tell you about it.

The fact that managers are clueless when it comes to technology is news to
none :) And it really isn't what we've been discussing here. The sort of
best practices we have been talking about are those that most developers
nod their head at in recognition, maybe they have already come to the same
conclusion through their own experience, or maybe the truth of the idea
hits them right away.

André Næss
Jul 16 '05 #12
André Næss <an************ *********@ifi.u io.no> wrote in message news:<bj******* ***@maud.ifi.ui o.no>...
Tony Marston:
But Andre is very
clearly not talking about bad managers. He is talking about those
practices that seem so obviously intelligent that everyone will do
them once they are taught them.
Obviously intelligent to who? These managers and project leaders all
thought that their ideas were the best thing since sliced bread, but
they clearly were not. How many of the ideas floating around today are
equally as bad? What I am objecting to is that some people think that
their ideas are absolutely brilliant and they think that everybody
else should follow them without question. Well I *DO* question them
because I think the logic behind them is unsound.


We have all the time been talking about the community of programmers.
Developers. Techies. Geeks. We who feel like we are artists, trapped in a
world of pin stripe suits. The logic (or rather lack thereof) in the
software industry is of little interest to this discussion. The gap between
programmers and their managers is covered in "The Career Programmer:
Guerilla Tactics for an Imperfect World" by Christopher Duncan. I just
bought it, and I like it so far, and since you brought it up I just wanted
to tell you about it.

The fact that managers are clueless when it comes to technology is news to
none :)


But all of these people were senior programmers, project leaders and
such, not just pin-striped geeks from the admin department. As such
they should have been imparting best practices from their own
experience, but what they were actually teaching was very limited and
in most cases nowehere near what should have been considered as best
practice.

Because these technicians were capable of producing crap standards I
am immediately suspicious of everybody else's until I can personally
put them to the test and verify them, and in a lot of cases compare
them with what I have encountered in my own experience.
And it really isn't what we've been discussing here. The sort of
best practices we have been talking about are those that most developers
nod their head at in recognition, maybe they have already come to the same
conclusion through their own experience, or maybe the truth of the idea
hits them right away.

André Næss


There is a great deal of difference between best practice when it
comes to avoiding common errors and best practice when it comes to
designing a solution. Provided that a particular design or methodology
produces a workable solution then it is wrong for others to tell me
that I must not design that way or use a methodology that is different
from theirs. I am allowed to use what ever design I see fit and to use
whatever methodology I see fit without some nerd leaning over my
shoulder and say "you must not do it that way". Unless you can point
out a genuine problem with my work then any criticism is unfounded.

I choose to use public variables because the language allows me to,
and because I don't have a problem with them.

I choose to create a class for each database table because the
language allows me to, and they work very well thank you very much.

I choose to have my individual database table classes inherit lots of
standard variables and methods from an abstract database class because
the language allows me to, and because it enables me to have a great
deal of standard code which I can write once and use many times.

All these arguments about what different groups of programmers may
consider to be best practice is a smoke screen. If you can point out
genuine problems with my methodology or my design then I will be in
your debt, but please stop telling me that what I am doing is wrong
because it is different from the way you would do it. My software
works therefore it cannot be wrong.

Tony (go on punk, make my day) Marston
http://www.tonymarston.net/
Jul 16 '05 #13
On 12 Sep 2003 07:27:27 -0700, Tony Marston wrote:
The fact that managers are clueless when it comes to technology is news to
none :)
But all of these people were senior programmers, project leaders and
such, not just pin-striped geeks from the admin department. As such
they should have been imparting best practices from their own
experience, but what they were actually teaching was very limited and
in most cases nowehere near what should have been considered as best
practice.


there is a certain confusion here, it seems to me. i agree with the
one side of the argument that there is a certain, somewhat imprecisely
defined though, set of rules that make up those best practices. it is,
however, not well-defined enough to be a good guideline for any team
(or individual).

therefore a team leader usually has to come up with a certain subset
(or superset) of thore practices, defined enough to make the team work
consistently and understand each other. this set of rules has a
somewhat different objective, and therefore it might diverge from some
commonly accepted best practices -- and definitely often diverges from
individual's preferences -- and still be adequate for the team.

i don't know about the situation around the earlier cited cobol case
with the compute verb. but let's assume that 50% of the team members
were not capable of using that verb reliably, then it might make sense
in the context of that project and that team to set up such a rule.
(might not be the best example, but you get the idea: the rules
necessary for a team are quite different from the rules for an
individual.)

I choose to use public variables because the language allows me to,
and because I don't have a problem with them.

I choose to create a class for each database table because the
language allows me to, and they work very well thank you very much.

I choose to have my individual database table classes inherit lots of
standard variables and methods from an abstract database class because
the language allows me to, and because it enables me to have a great
deal of standard code which I can write once and use many times.


since i put in here some cents of mine, i jut wanted to mention that i
for my part don't have a problem with this design :)

in general i tend to create an abstraction when i add another layer,
which usually would lead to classes that do not 100% reflect the
underlying tables. but then, there are all kinds of situations where
something like what you do makes sense...

in any case, i wouldn't know of a PHP best practice that says that you
shouldn't wrap your tables into classes :))
Jul 16 '05 #14
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...> You are bringing up a
subject completely unrelated to what Andre was talking about. You have now written several posts and all of your posts have the same theme. In all of your posts you talk about bad managers.
You are missing the point. All these managers produced development
standards and methodologies which were supposed to be examples of

bestpractice but which were clearly no such thing. There are a multitude
of different methodologies and practices out there, and how many of
them are actually worth less than the paper they are written on? If
most of the standards that I have been exposed to have been rubbish,
then what percentage of the standards that I have not yet been exposedto will turn out to be just as much rubbish.


At this point we're simply repeating ourselves. Your point was that
there are bad managers in this world who promote bad practice and call
it good practice. I understood you the first time you made that point,
as well as the 2nd, 3rd, 4th, and 5th time you made that point. Once
would have been enough.

I pointed out that your point wasn't germane to the discussion because
we weren't talking about what managers do, we were talking about what
the programmers using a language do. If all the programmers using one
language adopt some practice because it seems great then that becomes
a "best practice" for the language. Look around and you'll see dozens
of examples of this everyday. "Don't break encapsulation" is a good
example of a "best practice". As Andre said, these are guidelines, not
hard rules, but everyone using a language usually is admonished to use
the guideline when they can.

As I said before, your examples of bad managers are entertaining, and
I enjoyed reading them, but they are not what we are talking about. We
are talking about those practices that programmers tend to pick up and
imitate. If a company (or, more likely, individual programmer)
develops a practice and it catches on worldwide, and most of the
programmers using that language adopt it as one of the loose rules to
live by, the it can be considered a best practice for that language.
If a company comes up with a rule and the rule does not catch on
worldwide, then the rule is not a best practice for the language.

I've repeated myself in the 3 different posts now, which is perhaps
foolish on my part. I'll let this thread die now.
Jul 16 '05 #15
lk******@geocit ies.com (lawrence) wrote in message news:<da******* *************** ****@posting.go ogle.com>...
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...> You are bringing up a
subject completely unrelated to what Andre was talking about. You have now written several posts and all of your posts have the same theme. In all of your posts you talk about bad managers.
You are missing the point. All these managers produced development
standards and methodologies which were supposed to be examples of

best
practice but which were clearly no such thing. There are a multitude
of different methodologies and practices out there, and how many of
them are actually worth less than the paper they are written on? If
most of the standards that I have been exposed to have been rubbish,
then what percentage of the standards that I have not yet been

exposed
to will turn out to be just as much rubbish.


At this point we're simply repeating ourselves. Your point was that
there are bad managers in this world who promote bad practice and call
it good practice. I understood you the first time you made that point,
as well as the 2nd, 3rd, 4th, and 5th time you made that point. Once
would have been enough.

I pointed out that your point wasn't germane to the discussion because
we weren't talking about what managers do, we were talking about what
the programmers using a language do. If all the programmers using one
language adopt some practice because it seems great then that becomes
a "best practice" for the language.


But how do am I supposed to know what other programmers who are
outside of my current group do? In this situation my "masters" are my
immediate superiors at my place of work, not a group with whom I have
no contact whatsoever. My knowledge comes from two sources - what I am
taught by others and what I learn myself. So far the vast majority of
what I have been taught by others has turned out to be total crap. Why
should I not consider that what you are trying to teach me is also
total crap?
Look around and you'll see dozens
of examples of this everyday. "Don't break encapsulation" is a good
example of a "best practice".
Using public variables has got nothing to do with encapsulation. Read
http://www.javaworld.com/javaworld/j...psulation.html
and http://www.toa.com/pub/abstraction.txt
As Andre said, these are guidelines, not hard rules, but everyone using a language usually is admonished to use
the guideline when they can.
But I am not working to somebody else's second-rate rules, I am
creating my own rules.
As I said before, your examples of bad managers are entertaining, and
I enjoyed reading them, but they are not what we are talking about.
They are closely related. You, and others like you keep using phrases
such as "everybody knows that..." and "it is common knowledge
that...". But you fail to realise that it is impossible to know what
everybody else knows. If two people tell me contradictory things, who
am I supposed to believe? If I read two articles which contradict each
other, which one am I supposed to believe?

It has been my experience that the only opinion I can trust is my own.
Somebody may present me with what they think is a good idea, but I
have to try it for myself to see if what they say is true. But unless
it works better than my current methodolgy I see no point in adipting
it. If somebody tells me that something is bad, but I have used it
successfully in the past without any problems then I have no choice
but to disbelieve them. If they are having problems then it must be
down to their own incompetence.
We
are talking about those practices that programmers tend to pick up and
imitate. If a company (or, more likely, individual programmer)
develops a practice and it catches on worldwide, and most of the
programmers using that language adopt it as one of the loose rules to
live by, the it can be considered a best practice for that language.
If a company comes up with a rule and the rule does not catch on
worldwide, then the rule is not a best practice for the language.

I've repeated myself in the 3 different posts now, which is perhaps
foolish on my part. I'll let this thread die now.


You have still failed to answer the original question which started
this thread, or have given me any justification as to why certain
practices are wrong. "Everybody knows" is just not good enough, I want
to know the whys and the wherefores.

Tony Marston
http://www.tonymarston.net/
Jul 16 '05 #16
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...
lk******@geocit ies.com (lawrence) wrote in message news:<da******* *************** ****@posting.go ogle.com>...
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...> You are bringing up a
> subject completely unrelated to what Andre was talking about. You have> now written several posts and all of your posts have the same theme.> In all of your posts you talk about bad managers.

You are missing the point. All these managers produced development
standards and methodologies which were supposed to be examples of bestpractice but which were clearly no such thing. There are a multitude
of different methodologies and practices out there, and how many of
them are actually worth less than the paper they are written on? If
most of the standards that I have been exposed to have been rubbish,
then what percentage of the standards that I have not yet been exposedto will turn out to be just as much rubbish.
At this point we're simply repeating ourselves. Your point was that
there are bad managers in this world who promote bad practice and call
it good practice. I understood you the first time you made that point,
as well as the 2nd, 3rd, 4th, and 5th time you made that point. Once
would have been enough.

I pointed out that your point wasn't germane to the discussion because
we weren't talking about what managers do, we were talking about what
the programmers using a language do. If all the programmers using one
language adopt some practice because it seems great then that becomes
a "best practice" for the language.


But how do am I supposed to know what other programmers who are
outside of my current group do? In this situation my "masters" are my
immediate superiors at my place of work, not a group with whom I have
no contact whatsoever. My knowledge comes from two sources - what I am
taught by others and what I learn myself. So far the vast majority of
what I have been taught by others has turned out to be total crap. Why
should I not consider that what you are trying to teach me is also
total crap?


Most of us get a lot of info about other programmers from usenet
discussions like this one. Don't you?


You have still failed to answer the original question which started
this thread, or have given me any justification as to why certain
practices are wrong. "Everybody knows" is just not good enough, I want
to know the whys and the wherefores.


According to Google, this thread didn't start with a question, it
started with Matty making a few observations about 00. You can see his
post at the top at this address:


http://groups.google.com/groups?hl=e...%26scoring%3Dd
Jul 16 '05 #17
lk******@geocit ies.com (lawrence) wrote in message news:<da******* *************** ****@posting.go ogle.com>...
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...
lk******@geocit ies.com (lawrence) wrote in message news:<da******* *************** ****@posting.go ogle.com>...
to**@marston-home.demon.co.u k (Tony Marston) wrote in message news:<75******* *************** ****@posting.go ogle.com>...> You are bringing up a
>> subject completely unrelated to what Andre was talking about. You have >> now written several posts and all of your posts have the same theme. >> In all of your posts you talk about bad managers.
>
>You are missing the point. All these managers produced development
>standards and methodologies which were supposed to be examples of best >practice but which were clearly no such thing. There are a multitude
>of different methodologies and practices out there, and how many of
>them are actually worth less than the paper they are written on? If
>most of the standards that I have been exposed to have been rubbish,
>then what percentage of the standards that I have not yet been exposed >to will turn out to be just as much rubbish.

At this point we're simply repeating ourselves. Your point was that
there are bad managers in this world who promote bad practice and call
it good practice. I understood you the first time you made that point,
as well as the 2nd, 3rd, 4th, and 5th time you made that point. Once
would have been enough.

I pointed out that your point wasn't germane to the discussion because
we weren't talking about what managers do, we were talking about what
the programmers using a language do. If all the programmers using one
language adopt some practice because it seems great then that becomes
a "best practice" for the language.


But how do am I supposed to know what other programmers who are
outside of my current group do? In this situation my "masters" are my
immediate superiors at my place of work, not a group with whom I have
no contact whatsoever. My knowledge comes from two sources - what I am
taught by others and what I learn myself. So far the vast majority of
what I have been taught by others has turned out to be total crap. Why
should I not consider that what you are trying to teach me is also
total crap?


Most of us get a lot of info about other programmers from usenet
discussions like this one. Don't you?


But as there is SOOOOOOO much possible information out there how on
earth do you filter out the excellent from the excrement? Just because
somebody may write "I think everybody should do it THIS way" does not
mean that everybody will want to do it that way. There are too many
opinions, and many of them conflict with one another, so how do I know
which ones are right?

The short answer is that it is a matter of personal preference and
personal experience. I do what works for me, and you do what works for
you. But unless you can point out a genuine flaw in my methodology
(the phrase "I don't like it" does not qualify under these
circumstances) anything you have to say is mere opinion and can safely
be ignored.
You have still failed to answer the original question which started
this thread, or have given me any justification as to why certain
practices are wrong. "Everybody knows" is just not good enough, I want
to know the whys and the wherefores.


According to Google, this thread didn't start with a question, it
started with Matty making a few observations about 00. You can see his
post at the top at this address:


It was supposed to be a continuation of a thread started by me (see
http://groups.google.com/groups?dq=&...ing.google.com
) You can see his reference to the original thread in the title.

Tony Marston
Jul 17 '05 #18
On 17 Sep 2003 03:20:45 -0700, Tony Marston wrote:
But as there is SOOOOOOO much possible information out there how on
earth do you filter out the excellent from the excrement?
talking to programmers you consider good, reading a good book once in
a while... and using your own judgement, of course. i find that while
not everybody agrees on everything, there is a good deal i can agree
on even with people i generally disagree with. just separate the
issues.
It was supposed to be a continuation of a thread started by me (see
http://groups.google.com/groups?dq=&...ing.google.com
) You can see his reference to the original thread in the title.


it seems to me, from reading the first few messages of the thread,
that the "community" largely agreed that your approach is adequate.

so there were some that got confused about your approach and didn't
think it was a clean oo/mvc implementation -- which you probably
didn't intend it to be in the first place. what's the big deal?
Jul 17 '05 #19
Gerhard Fiedler <me@privacy.net > wrote in message news:<ce******* *************** **********@4ax. com>...
On 17 Sep 2003 03:20:45 -0700, Tony Marston wrote:
But as there is SOOOOOOO much possible information out there how on
earth do you filter out the excellent from the excrement?
talking to programmers you consider good, reading a good book once in
a while... and using your own judgement, of course. i find that while
not everybody agrees on everything, there is a good deal i can agree
on even with people i generally disagree with. just separate the
issues.
It was supposed to be a continuation of a thread started by me (see
http://groups.google.com/groups?dq=&...ing.google.com
) You can see his reference to the original thread in the title.


it seems to me, from reading the first few messages of the thread,
that the "community" largely agreed that your approach is adequate.


Some agreed with my approach, yet those who disagreed kept arguing
that "everybody knew" that my approach was wrong.
so there were some that got confused about your approach and didn't
think it was a clean oo/mvc implementation -- which you probably
didn't intend it to be in the first place. what's the big deal?


There are some people out there who class themselves as "experts" and
who try to tell me that what I am doing is "unacceptab le", but instead
of giving me solid reasons, such as genuine problems that I have
overlooked, they just say "everybody knows ..." or "it is common
knowledge ..." which turns out to be nothing more than ill-informed
opinion.

Take for example the phrase "everybody knows that using public
variables breaks encapsulation and is therefore stupid, so they agree
not to do it". This statement is seriously flawed because it assumes
that data hiding (by not using public variables) is the same as
encapsulation, which it is not. If the eason for having the rulke is
flawed, then the rule itself is flawed and can be ignored.

So, instead of getting constructive responses to my original query I
have ended up by exposing a lot of these "experts" as nothing more
than charalatans and cowboys.

Tony Marston
http:/www.tonymarston .net/
Jul 17 '05 #20

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

1
29910
by: chirs | last post by:
Hi, What does all mean in if(document.all)? I could not find an object called all in the page. Thanks
2
7923
by: Chris Becker | last post by:
I have the following query: SELECT Month, Sum(Hits) AS Hits FROM tblHits GROUP BY Month ORDER BY Month Unfortunately it only returns rows for months that have data assigned to them. How can I tweak this so that months 1-12 are returned, and Hits = 0 for months with no data in the base table?
10
54906
by: InvisibleMan | last post by:
Hi, Thanks for any help in advance... Okay, I have the JS listed below that calls for the display of the (DIV) tag... cookie function not included, as don't feel its necessary but you'll get the idea! function closeall() { var objs;
7
17220
by: peter | last post by:
I use the click-to-expand menu at http://javascript.internet.com/navigation/click-to-expand-menu.html This works fine, but is there a way to expand or collapse all the menus? An example of how I use this is here: http://www.cod.edu/people/faculty/chenpe/PRAIRIE/index.html Thanks!
29
4355
by: Scott Marquardt | last post by:
Consider a table that holds Internet browsing history for users/machines, date/timed to the minute. The object is to tag all times that are separated by previous and subsequent times by x number of minutes or less (it could vary, and wouldn't necessarily be a convenient round number). This will enable reporting "active time" for users (a dubious inference, but hey). There are a lot of derivative ways of seeing this information that might...
4
2670
by: piet | last post by:
Is it possible to add an option ALL in the ist of a combobox that get its values from a table? Example: in the combobox are the items from the table "days": monday, th.... The chosen value from the combobox is used in a query to select only the records of the chosen day. Now I want to have the possibility to have also ALL in my combobox-list to select the records for all the days.
53
8217
by: Zhiqiang Ye | last post by:
Hi, All I am reading FAQ of this group. I have a question about this: http://www.eskimo.com/~scs/C-faq/q7.31.html It says: " p = malloc(m * n); memset(p, 0, m * n); The zero fill is all-bits-zero, and does not therefore guarantee useful null pointer values (see section 5 of this list) or floating-point zero values.
59
8831
by: Steve R. Hastings | last post by:
So, Python 2.5 will have new any() and all() functions. http://www.python.org/dev/peps/pep-0356/ any(seq) returns True if any value in seq evaluates true, False otherwise. all(seq) returns True if all values in seq evaluate true, False otherwise. I have a question: what should these functions return when seq is an empty list?
20
41306
by: anurag | last post by:
hey can anyone help me in writing a code in c (function) that prints all permutations of a string.please help
5
3846
by: wugon.net | last post by:
question: db2 LUW V8 UNION ALL with table function month() have bad query performance Env: db2 LUW V8 + FP14 Problem : We have history data from 2005/01/01 ~ 2007/05/xx in single big table, we try separate this big table into twelve tables and create a view
0
9423
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10050
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
9999
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8876
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7413
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6675
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5310
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5448
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3967
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.