After reading Alex Krupp's excellent article[1] and ProblemFactory's comment
If a developer needs a balanced binary tree, they will first look for an existing implementation in the language they are using.
If one doesn't exist, a good developer will check Knuth/CLRS/Wikipedia for the suitable algorithms and build it based on these recommendations, instead of jumping in and hacking something together on the spot.
I became suddenly aware that most of my product and UX design is based basically on intuition, spontaneous ideas and trial-and-error.Like many people here, I'm mostly a programmer who dabbles in design for my own projects. I'd love to get more familiar with academic work from HCI and Psychology that's relevant to this. Can anyone recommend some resources (web, people, journals, papers, etc.) that would be worth reading or following to keep up with this stuff? An overview of the relevant fields would be even better.
[1]: http://alexkrupp.typepad.com/sensemaking/2014/06/the-most-important-tech-job-that-doesnt-actually-exist.html
[2]: https://news.ycombinator.com/item?id=7861689