I always love it when a fellow developer tells you at times he/she "doesn't recall" or "doesn't know" when you ask them a question (after doing your own research) based on something they clearly have done in the past (which is why you are asking them in the first place). Maybe that person you are asking had mentioned it to the team at some point, or maybe you know that in the past that they have done something like that, or maybe you even see it in use on their own web site. Whatever the case may be, you know that the person you're asking does know something about what you are asking or else you most likely would not be asking them. Therefore in many cases that person decides to give you a lazy response because they do not care to help at all.
As the developer who's being asked, whether that's a week ago, a month ago, or years ago that you did do whatever the person is asking you about, it doesn't matter when that was and so there is no excuse to end the conversation with a dead end "I don't remember". When a fellow developer asks you how you did something, you should do more than just shrug your shoulders and then just send them away. I feel it's pretty self centered and if you're in a professional work environment that's just not cool.
I also don't know why developers have to always feel the need to hide of information to fellow developers to protect their knowledge for whatever lame reasons they have for doing so. Life isn't about protecting your "genius". That's just being unconfident in yourself when you feel that you can't help someone out because you just don't want them to know how you did something in code to feel superior. And I bet you that in those times when you are pretty stuck or in a scrunch you'd expect the same from them whenever you needed their help. Now not everyone has time at the moment they are asked questions, but at least have the courtesy to follow-up with that person later and tell them that you will do so.
Again this is all part of the concept "TEAM" which means sharing each others expertise or experiences so you can learn from each other to become more efficient together but unfortunately does not really happen in a lot of IT shops these days. A lot of that has to do with poor team management by the Development Manager oftentimes because they can clearly hear it at times and should really do something about that so that the culture remains a healthy one for the entire team. But a lot of the time it's just developers that have a bad attitude every day they come into work and think that they are God's gift to mankind. I'm probably preaching to the choir but it's pretty sad if you think that people must act this way in the workplace. If you do not buy into the concept of "TEAM", then you should ask yourself why you are on a team of developers in the first place if you can't humble yourself to answer a few questions once in a while.
I think developers are way too self centered or lazy sometimes in general, and I just feel it's unacceptable and annoying. While this is a very strong opinion, it's pretty true in today's workplace.