OO Design - which is better?

Its a huge misconception that you learn faster by disregarding knowledge gathered by others.

I didn’t imply that. Re-read it.

When I visit China, I enter the realm of secluded Chinese poets, to learn to express myself with the subtleties of the language. Getting food on my plate and finding shelter is tough as I struggle with verbs, but this particular route will help me in the long run. I also repeatedly told some local English teacher in my best Chinese to get off my lawn.

So long, and thanks for all the fish!

Sorry I’m useless with poetry.

Everyone has their own opinion of which affects their views. Their views affect the way that they interpret things which is driven more by assumption than by understanding.

[quote]I don’t see the point of using a library if my goal is to create a library. Using a library is a short-cut. I feel that I’ll learn more by going the longer route
[/quote]
Saying that not using a library does not relate to disregarding knowledge. A library can be thought of as a mask; it hides required knowledge. By creating my own library I gather that hidden knowledge, thus I learn more.

Anyway, this meaningless conversation is going way off topic.

The thing is this, everybody starts out creating his own library, because they think in the same way as you. But after a while all agree that it is better to just use a lib instead of creating an own.

Let me try to convince you with another analogy -

How would you rather learn a foreign language?
[x] by writing a book in said language
[x] by reading a book in said language

When writing the book, you always find yourself being held back by your current knowledge. You’ll barely make progress, and if any, often in the wrong direction. When reading the book, you find yourself quickly gaining knowledge, allowing you to write a much better book much later.

TLDR: don’t write libraries for things you don’t grasp yet, if you want to get anywhere.

Actually you wouldn’t be able to read the book.
I’ll learn the way I decide to learn.

I learned freaking French in high school with a book that only had French words in the first dozen pages.

[i]Au secours! Au secours!
- Qu'est-ce c'est?
Un serpent!
- Non, c'est un tuyau...
[/i]

I guess some people want to make their own mistakes.
Each and every one of 'em, ofcourse. Have fun!

Huh, I never wanted to make my own library :stuck_out_tongue:
Probably because I’m too lazy…

It doesn’t sound like he is disregarding existing libraries. A tremendous amount of understanding and (especially) confidence can be gained by implementing one’s own approach to a solution and then comparing it with what is considered to be the accepted solution. For example, if I am writing a function that mostly mimics the behavior of a function in a given library, then through comparison I can see what it was about my approach that works and meanwhile isolate whatever it was that I was trying to do differently. Does another function exist in the library that will cover this extra utility? If so then great. If not then you just uncovered some valuable work to be done.

It is incredibly foolish to be learning a language and expect that you will be able to improve what the general purpose libraries have to offer–they benefit from the input and review of numerous people, each with ample experience, and are there for a reason. This seems to be the argument that most of you are making, but that doesn’t seem to be what is going on here: he is creating his own personal set of tools which he will refine as he gains more experience. If they serve some utility then he will keep using them. If not then he will toss them out and either use that which has already been made available by others or fine tune his approach and start again.

The issue is that he’s targeting developers beside himself:

[quote=“Troubleshoots,post:1,topic:45801”]
There’s a reason the JGO community is barely productive. Most of us roll their own stuff, and as a result never quite rise above mediocrity.

Well, I think documentation has a very big role to play in that as well.

Many users will see tools and have no idea how that tool would work for their project. I mean, a big part of that can be solved if developers would spend a bit more time documenting what a tool does. However, usually that part is left on the backburner soo long it is a pile of burnt mush.

[quote=“Riven,post:31,topic:45801”]
The issue is that he’s targeting developers beside himself:

The reason I’m trying to “target” developers beside myself is because I want to design it in an object orientated manner that’s easy to use. The reason I’m creating it however is for personal use. I did not in any way say that I want to release it.

You make that sound like a bad thing… I know I enjoy solving the problem and gaining the knowledge by “rolling” my own stuff. But then again I have no ambition to become the next Notch :stuck_out_tongue: