I understand which category of people you are describing, but this is what a proper programmer actually does:
- Check stackoverflow only for very niche issues, never finds what he needs but reaches a solution reading multiple answers and sometimes used to post a better solution for his issue
- Have his own templates if he does repetitive and boring stuff (common), implements the complex logic if any first and get the rest done as fast as possible being mildly disgusted.
- Imports libraries and often take a look at the code noticing stuff that could be improved. Has private forks of some popular opensource libraries that fix issues or improve performance fixing silly errors upstream. Sometimes he is allowed/has time to send the fixes back upstream. When using those libraries sometimes he finds bugs, and the first thing he does is checking the code and try to fix them directly, no tickets to the maintainers, often opens a PR with the fix directly.
- Check stackoverflow only for very niche issues, never finds what he needs but reaches a solution reading multiple answers and sometimes used to post a better solution for his issue
- Have his own templates if he does repetitive and boring stuff (common), implements the complex logic if any first and get the rest done as fast as possible being mildly disgusted.
- Imports libraries and often take a look at the code noticing stuff that could be improved. Has private forks of some popular opensource libraries that fix issues or improve performance fixing silly errors upstream. Sometimes he is allowed/has time to send the fixes back upstream. When using those libraries sometimes he finds bugs, and the first thing he does is checking the code and try to fix them directly, no tickets to the maintainers, often opens a PR with the fix directly.