Click to See Complete Forum and Search --> : kludge++ programming


ahoodin
April 26th, 2005, 11:39 AM
Is that when you have poorly designed c++ classes, that wouldn't work horribly well when you instantiate a single object in development, but now you would like to instantiate a whole array of them in production?

ahoodin

new PC verbose for this:

That whole project is a KlusterKludge!

Bob Davis
April 26th, 2005, 12:33 PM
Excuse me?

ahoodin
April 26th, 2005, 01:00 PM
Ok, your excused.

ahoodin :cool:

PS This is meant to be a humerous post, sort of like "a funny thing happened on the way to the Parthenon".

wien
April 26th, 2005, 01:16 PM
PS This is meant to be a humerous post, sort of like "a funny thing happened on the way to the Parthenon".Then may I suggest the Chit-chat forum? :)

ahoodin
April 26th, 2005, 02:17 PM
Well,

I guess, but for the most part, this is on topic. I hate to say this,
but what this really is....a future rebuttal for the article "OOP is POO" (by Paul Kimmel) that rankled my feathers a few weeks ago. I think it bothered me most of all, and, it needs to be addressed by C++ Programmers and C Programmers alike in my opinion.

Keep in mind that nothing bothers me more than the comments made about OOP in that article, but gurus everywhere gave the article weight. In otherwords, kludge++(tm) is believed to be real by proficient C and C++ programmers as well as column writers abroad.

Somebody tell me I am dreaming. I want to be the devils advocate on this one, somebody refute it. I believe that it can be refuted by adhering to a staging process for new classes. Moving class code from development to production only after rigerous testing such as black box testing and white box testing.

What does everybody think?

ahoodin

wien
April 26th, 2005, 03:50 PM
If you don't (like I didn't) understand what the fudge he is talking about, here's a link: When OOP becomes POO (http://www.codeguru.com/columns/VB/article.php/c9537/) :)

wien
April 26th, 2005, 04:06 PM
Okay, after having read the article (and your less than polite replies to it I might add), I can't help but feel that you got the article completely wrong. The guy is in fact not bashing OOP at all, he is simply stating that even though you are good enough at OOP to use classes other people made, and by doing that making fully functional applications, that does not necessarily mean you are good enough at it to create your own classes and class hierarchies. "OOP doesn't fail. Coders doo." as you said yourself.

According to Paul Kimmel, the reason OOP projects still fail as much as old SP projects did, is that many programmers think they know how to code in OOP, while they really only know how to put classes (Created by other, more experienced programmers.) together.

ahoodin
April 27th, 2005, 07:21 AM
I as an aside I actually believe that this article is an argument for:

1. College degrees being enforced or much longer developer cert programs being enforced. You dont have to be experienced to do OOP right, you just have to learn it correctly from the start.

2. More closely regulating the computer professions. Programming/Software Engineering included.

3. Enforcement of Quality Standards in Programming.

These things are missing as a whole from the field, where some companies require these types of things, not all do.

If you think I missed the point of the article, you are wrong, it hit me straight in the heart.

ahoodin

Latem
April 27th, 2005, 08:48 AM
I kinda agree with the article. I mean, as he says it, it's pretty hard to make a good OO'ed design with many classes in a complex system.

You dont have to be experienced to do OOP right, you just have to learn it correctly from the start.

I can't really agree with this. Experice teaches you so much, and no amount of schooling can do that. School isn't suppose to make you a perfect OO programmer. What about functional programming, algorithms, hardware, and other CS conecpts and fields, that rarely even use OO paradigm (maybe modularity but not OOP).

That's why usually the junior programmers don't do much designing overall, but the senior ones do. The hope is that the senior one will know how to do it right because of his/her experience. And the junior learns and then hopefully becomes good at designing too. it's like the circle of life or something :)

Latem

RoboTact
April 27th, 2005, 09:00 AM
It just means that even great experience in using OOP systems is not enough to create them.

marten_range
April 27th, 2005, 09:09 AM
1. College degrees being enforced or much longer developer cert programs being enforced. You dont have to be experienced to do OOP right, you just have to learn it correctly from the start.

I have programmed alot and been a professional programmer for the last 7 years.

I think I can say that I have a quite high (not mindnumblingly high though) skill in programming languages and especially with C++.

To be honest I can't claim to know exactly what OOP is and I have asked alot of people and when pressing them no one has been able to give me a satisfactory answer that they can agree on.

You seem like a fellow with opinions; perhaps you can share with us your definition of OOP?

It would be interesting to see if the codeguru forumers can agree on what OOP _really_ is.

Yves M
April 27th, 2005, 09:16 AM
[ moved thread ]

Yves M
April 27th, 2005, 09:28 AM
I don't see why you are bashing Kimmel's article, since, as wien says, your example seems to confirm what he says. There is indeed a difference between the skills necessary to use OOP and to design OOP. I think that a part solution may indeed be to put more emphasis on design patterns in college course. At least when I studied Computer Science, we didn't have much exposure to such things. But I guess the degrees are always a bit behind what the industry needs right now. So experience is the most valuable asset.

ahoodin
April 27th, 2005, 10:24 AM
I don't see why you are bashing Kimmel's article, since, as wien says, your example seems to confirm what he says.

I started bashing Paul Kimmels article because the ideas bothered me. It bothered me that programmers today just don't have the technical ability that they did yesterday. Or rather, before programmers did not have a bad reputation for botching their work.

The more I thought about it, the more it bothered me. Initially I sprayed upset comments.

The next phase was asking for opinions. I got some opinions of other gurus, who agreed with Paul, C++ and VB. Everyone agreed, that there is a high rate of projects with poorly designed classes. (I guess Microsoft is not exempt from poorly designed OOP, because MFC is not really the greatest OOP.)

Finally I asked myself if this had been anywhere in my experience (bad OOP in projects), and I had to answer "YES".

Between poorly designed OOP and DLL H E DOUBLE HOCKEY STICKS, I feel really bad for todays PC programmers. As a matter of fact, it broke my heart. I started programming PCs when I was 5 with BASIC and have a very high opinion in general of programmers. I like to think that they are capable and technically accurate. Honestly Yves, I hate the facts, they are hard.

ahoodin

ahoodin
April 27th, 2005, 12:56 PM
It would be interesting to see if the codeguru forumers can agree on what OOP _really_ is.



AAh the history of buzzwords. They change from year to year and second to second. To see the abridged history of the term Object Oriented Programming have a look at this link:

http://dictionary.reference.com/search?q=object-oriented%20programming

For the Purposes of my thread however, I will use it in this fashion:

Programming with focus on the use and creation of objects. :eek:

Where objects instances of classes that are structure (99.5% same as) like collections of data and functions together. :wave:

Now you can chose to pick at this definition, but for the purposes of this post, you are wrong and I will ignore you. :ehh:

ahoodin

jack.dingler
April 27th, 2005, 04:04 PM
I started bashing Paul Kimmels article because the ideas bothered me. It bothered me that programmers today just don't have the technical ability that they did yesterday. Or rather, before programmers did not have a bad reputation for botching their work.

The kinds of people that become programmers, have changed over the years.

My generation go into programming because we were interested in doing it. I started coding 6800s when I was 15, for the fun of it. I thought the Z80 rocked when it came out.

When I went to college, the only computer course available within a thousand miles of me, taught RPG, Cobol and Fortran. In my second year, a professor at my college started experimenting with teaching assembler, basic and pascal, but these classes were only available to students that had already taken the other classes.

As a result, I got into C and then C++ programming after teaching myself machine code and assembly. Because it's what I wanted to do. Not because there was anything cool about it. In fact, back then the word geek was very derogatory term.

Now, folks get into programming because it's cool, because it's a way to make money or even get rich. It's become the profession that kids get pushed into, the way they used to get pushed into becoming doctors or dentists.

There are still folks that get into it for the love of the craft, but they are no longer the majority they once were.

ahoodin
April 27th, 2005, 04:55 PM
Now, folks get into programming because it's cool, because it's a way to make money or even get rich. It's become the profession that kids get pushed into, the way they used to get pushed into becoming doctors or dentists.

All you geeks out there quit doing rich kids homework for them and let them struggle through it if they can!!!!

ahoodin

RoboTact
April 27th, 2005, 05:20 PM
All you geeks out there quit doing rich kids homework for them and let them struggle through it if they can!!!!What a shame: Goooogle doesn't accept supremacy of the reach. :ehh:

Sahir
April 30th, 2005, 02:22 AM
I started bashing Paul Kimmels article because the ideas bothered me. It bothered me that programmers today just don't have the technical ability that they did yesterday. Or rather, before programmers did not have a bad reputation for botching their work.

There are a lot more projects now than there used to be. So the number of failures are bound to be proportionately larger.

ahoodin
April 30th, 2005, 10:56 PM
Well in my mind the reason for project failures are failure to meet requirements due to:

1. Gaps/Lack in communications with end customers.

2. Junior programmers being treated like senior programmers because they do Rapid Application Development

3. Endlessly changing specs.

4. Projects going to the lowest bidder, yet projects running over budget due to hours.

5. Bugs.

The errors are in OOP, because the programmers are working with OOP for the most part on the front end. Since there are no statistics to show which PC projects fail:

1. VB/VFP projects.

2. MFC projects.

3. Windows 32 projects.

4. Device Driver Projects.

I believe that it is larger than OOP.

It has to do with the way business has changed. We have smaller less professional staffs working with constantly changing specs and unstable OS's and unstable companies and rapid application development. I don't want to blame the OOP...but I gotta go with the flow....because if you dont you get washed away.

ahoodin