> But as for my own projects, it's increasingly discouraging to find out my ideas have been done inside and out.
Sure, but if you are solving a problem you come across, and the current solutions cannot solve it, there is no reason to not build it yourself!
There are different ways to solve a problem, and chances are your solution may be very useful to other people as well.
And lastly, I'd say don't focus too much on data structures and algorithms until you actually need to think about them. "premature optimization is the root of all evil" (or something like that, at least what I take from it is don't do it until you have to. But that's just my take on it.
Sure, but if you are solving a problem you come across, and the current solutions cannot solve it, there is no reason to not build it yourself!
There are different ways to solve a problem, and chances are your solution may be very useful to other people as well.
And lastly, I'd say don't focus too much on data structures and algorithms until you actually need to think about them. "premature optimization is the root of all evil" (or something like that, at least what I take from it is don't do it until you have to. But that's just my take on it.