
Why waste time? - dnoberon
I&#x27;m frustrated and I feel like I&#x27;m in a position that other, more experienced and talented, developers have probably gone through. I&#x27;m hoping that someone has a &quot;magic bullet&quot; answer for me, though I&#x27;m starting to think that there isn&#x27;t one.<p>Right now, when I have an idea for a tool or library - something that would make my job easier, or just be generally useful - I almost instantly find someone that has done it. Most times more than one person, and most times more than one person who has done it better than I feel like I could. After going through this cycle a few times I&#x27;m getting a little disheartened.<p>Why waste time building something that someone has already done better?
======
greenyoda
If you learn from doing it and enjoy the experience, it's not a waste of time.
And if you work at your craft long enough, eventually you'll be the person who
can do it better than other people can. But that doesn't come quickly or
easily.

For inspiration, read Peter Norvig's article, "Teach Yourself Programming in
Ten Years":

[https://www.norvig.com/21-days.html](https://www.norvig.com/21-days.html)

In particular, see the paragraph that begins with: "The best kind of learning
is learning by doing."

(Norvig has had a long career in computer science, and is currently a research
director at Google.)

Also, if you build a tool for yourself that makes your job easier, it will be
a lot easier to customize it to your needs than a tool built by other people,
who have different priorities.

~~~
dnoberon
I loved that article. Thanks for your response - I did like the bit about
customization a lot. It makes special sense in a work environment in which you
might not want to introduce a third party dependency I guess

------
golemelog
Nothing's perfect.

> Why waste time building something that someone has already done better?

That's merely your opinion. Why did you discount your potential
users/customers opinions?

I guess the "perfect" way to build something better is to build it for
ourselves first (scratching our own itches, so they said) & the rest will be
history. Yes, easier to be said than done.

~~~
dnoberon
The post was pretty self-deprecating for sure. I didn't even think about the
opinions of other people, or customers, in building a tool. A hiccup in a tool
or library that I can live with or understand, might not be acceptable to
another party. Thanks :)

------
twobyfour
Don't. Use the existing library to build the thing that you thought it would
be useful for in the first place. Stand on the shoulders of giants and
appreciate the time you saved by not having to cut down a tree and whittle a
ladder yourself.

~~~
dnoberon
Excellent point. I was talking about this to a friend of mine - he has a
coworker who calls this type of thing "developer traps". Talked about using
the tool and moving on, eventually finding something that someone hasn't done
or that you do feel you can do better

