I’ve been working with Javascript for more than a decade. Last week while helping another developer debug a problem, I had to Google how to check if an element exists in a Javascript array, something superbasic, that one would expect most newbies to know. I’m sure I Google some superbasic thing at least once a week. It’s not embarassing or anything, it’s a common occurrence. I’m surely not alone. Just last night a tweet about this crossed my TL:
In C++ we don't say "Missing asterisk" we say "error C2664: 'void std::vector<block,std::allocator<_Ty>>::push_back(const block &)': cannot convert argument 1 from 'std::_Vector_iterator<std::_Vector_val<std::_Simple_types<block>>>' to 'block &&'" and i think that's beautiful
— mcc (@mcclure111) June 1, 2018
People joke about how developers wouldn’t know what to do if Stackoverflow wasn’t around, but it’s a fact of modern software development that most developers will have access to a ton of easily searchable reference material available online. That’s why things like phone interviews where people ask you to explain what the volatile
keyword means in order to test whether you’re really a Java expert are BS. (I have a Java certification and while I’m sure I knew the answer to that at some point, if I needed it today, it would certainly come in the form of a search result.).
Software development is a difficult field, and it can sometimes be intimidating to work with more senior developers or ask them questions or show them your code. But it gets easier when you realize not everyone knows everything all the time, and that not even the most senior people know everything. And that this ability to seek out advice and yes, even stackoverflow results, is part of the skillset you need to be developing.
The nature of the field is that we are almost always encountering new situations and new problems and new challenges (well, either that or be bored doing something irrelevant). That means a lot of the time when we are working on something worthwhile, we are figuring out things as we go.
See Also