Documentation first — google later

How many times there has been these situations where you are scratching your head and thinking: “this should work…this definitely has to work…but why it isn’t”.

Well, I know I’ve been in these situations and still sometimes am. What comes next is quite clear — you want to solve the issue, bug or piece of broken code — of course you google stuff. And then there is these cases when you spend a decent amount of time on googling around, trying different keywords and combos of keywords, and you find something similar, but not quite the case you have. Still, you try those different solutions, tweak them a little for your specifics, at one point you start trying the things you know won’t help, but you still do try and those solutions fail leading you into even bigger frustration. After hour or hours wasted you decide to be decent developer and check the documentation for any possible hints on how to find your solution, aaaand…damn, the solution is there, straight in front of your face — after reading just couple of lines or paragraphs on official documentation. Or, sometimes it is even worse — you end up asking a question on stackoverflow, git, forum or other source for Q&A’s and the answer you get is a link to the specific part of documentation or even a quotation from the documentation…ohhh, what a joyful moment.

For me, such moments are probably worse than the frustration I get from searching and not finding the solution. I usually do feel embarrassed in front of myself, and in case of Q&A channel — in front of others(the person that answered and all other folks that saw and will see the post).

To avoid these moments I promised myself to ALWAYS check the documentation first. Also, I do try to never forget to share the solution on some of the possible communication channels — to help others in similar situation to avoid this embarrassing feeling.

Checking the documentation first is best option to start your search, because:

a) people writing documentation are trying to help you, so by reading documentation you honor their effort and hard work
b) you most likely will save a lot of time and nerve
c) if you won’t find the answer you will definitely learn some other useful stuff about coding language, framework, library or etc. you are using. Basically — no time is wasted.

Bonus points(contributions):

a) by reading documentation and not finding the solution you are able to contribute and update documentation(if it is open source) after you finally manage to solve the case
b) you save someone a lot of time and nerve

Conclusion is quite simple — read documentation before starting your journey on google, stackoverflow or other recourses.