I'm curious about the balance that software developers and algorithm engineers find between searching the internet for pre-existing solutions and coming up with their own unique algorithms from scratch. Do you find that you search for solutions more often, or do you prefer to create your own? Is the usage pretty split down the middle, or does it lean more in one direction? Given the vast amount of code available today, I thought it would be interesting to hear some perspectives on this.
3 Answers
As a developer, I really think the balance varies with experience. Learners should definitely try to solve things themselves first, even if it feels clunky. For professionals, time constraints make it a lot easier to use tried-and-true solutions. But ideally, we should know how to tackle the problem ourselves first!
I'll be honest, I rely on internet searches quite a bit. In my 50 years in the industry, I think I've only created a few truly unique algorithms. Most of the time, I'm building off the work of others. It's about adapting and applying what’s already out there to fit my needs.
During my own learning, I often reinvent solutions, which is super fun! But when it comes to work, especially with deadlines, I’m all about using existing solutions. I'd say around 30% of the time I’m coming up with my own stuff, the rest is spent using what’s already on the web.
That sounds about right! I think it's smart to use existing materials when time is tight. Learning through experimentation is still valuable, though.