For us Software Developers, researching on technical QA sites like StackOverflow is something we do almost daily, irrespective of our years of experience. Sometimes, the answer you're seeking lies just in front. Other times, you need to endless try every solution and what's recommended in the comments to achieve your goal.
One thing I often note when using this site is that I search for the issue I'm having: open the potential answer, skip reading the question asked by the original poster, go towards the first answer and without reading the details, copy and paste the codes into my editor. I of course modify the variables and parameters to make it match the one in the application.
The reasons I work like that are:
- I might be too mentally exhausted to read each and every word in the description and answer
- I have other important things to do within deadlines
- I don't think it's relevant reading every piece of information concerning the answer
- the summary should in theory be enough
However, more often than I can count - the codes do not work as expected - even if everything appear normal. I go back and through, comparing to what I might have missed. Nothing looks different from the proposed solution. Finally, after spending several minutes glaring at the screen, I decide to read the whole question and the answer, usually described in paragraphs.
It's at this point that I most probably stumble upon another answer or a trivial detail that can make all the difference. For instance, the codes in the answer that I might have copied is from another version that my application is. Therefore, it's no longer compatible.
Read Aloud Feature
One tip I've learnt long ago when reading long articles, especially technical ones, was to use the Read Aloud or Narrator function depending on the Operating System you're using.
You highlight the text you want to hear, either in the same speed or twice as fast, then follow at the same time the text is being read.
In MacOS, this is quick and easy to do. Narrator in Windows 10 looks a bit more challenging.
From my experience, using this feature makes it easier on my brain to read all the relevant technical details.
A recent example for me in an Open Source Dot Net Core application was trying to add files to the Assembly and use them from there. The answer is straight forward yet was not working when I tried it.
For me, I didn't understand at this point the importance of having the namespace in the resourceName, otherwise the file won't be detected by the runtime. I skimmed the whole paragraph above.
Nevertheless, instead of writing down the whole namespace with the file name and extension, I implemented another solution that only checked the resource ending with the file name and extension, which worked.