in reply to Reinventing the spaceship

I save time in the long run, and learn more on the way.

I find this hard to believe.

If I were to summarize your post, it would reduce to "I don't like these other things because I don't understand them."

Granted, there are modules with lousy interfaces -- some of them are in the core. Granted, there are modules that don't do their jobs very well -- some of them are in the core.

For all but the smallest jobs, though, I personally don't have time to research the laws of physics, come up with my own propulsion formula, and devise ceramic heat shields for my own spaceship. I've had far, far better success from learning to read code and documentation than by trying to write everything on my own.

I've finished planning... Now comes the implementation.

This is telling.

Perhaps the reason some of the modules seem too complicated is because you don't understand the problem space well enough. How can I say that? Because you don't have any code yet. I've never seen detailed plans for any significant project survive the first couple of weeks of code. Things change too much.

Of course, I'm not the world's best programmer. You could be a lot smarter than me and it could work out very well for you. In that case, just treat my post as a yellow caution flag waved from my experience. People prove me wrong all the time.

Replies are listed 'Best First'.
Re: Re: Reinventing the spaceship
by nothingmuch (Priest) on Apr 08, 2003 at 18:29 UTC
    You're taking my debate to the extreme. I don't mean researching the laws of physics for a ceramic heat shield. I mean reading the code for this and that ceramic heat shield which is in the wrong shape for me (set shape aside from physics a second), and understanding how it works. Then plagiarising the heat shield, to roll my own collage, more suitable for me.

    I don't like these other things because I don't understand them - "I don't like these other things because I've tried to understand how to use them best, but it seems like more of a challange to write code which thinks differently than me"

    I've finished planning... Now comes the implementation - Planning is very dynamic while coding. Planning is drawing itty bitty circles with names. It's deciding where the borders of what repsonsibilities the different parts of your code have. It's not how the code will work - that kind of planning does tend to break, i agree. I need this planning because otherwise i go a bit astray, and then I realize this will actually work very badly with the rest of the stuff, and i'm all frustrated because i have to do everythign all over again.


    Surprising as it may seem I do share the ideas you propose here. It's just the proportion we differ upon...

    -nuffin
    zz zZ Z Z #!perl
Re: Re: Reinventing the spaceship
by shotgunefx (Parson) on Apr 08, 2003 at 20:42 UTC
    Good points. Though sometimes the issue is the author's problem space is just a little down and to the left of the users and there's no way to get there from here.

    -Lee

    "To be civilized is to deny one's nature."