I used to share a lot of sources with other programmers on forums. But
after a while, I got tired of those same programmers releasing competing
programs to mine. Since then, I've stopped sharing a lot, but still help
others with specific problems.
Most of what I've seen in my years is that when they ask for the source
code, they don't want to really learn from it, they want to cut and paste
most of the code because they don't want to take the time to learn it the
right way. They want to create that *killer App* right now without having
to learn to become a real programmer. So they find programs that are
similar to what they are trying to make, scavenge the code out of it, ask
for code from others, then call it all their own and not even give one
little bit of credit to those who helped, those they jacked most of the code
from or anything.
The reason they flame and dog you when you don't is because they think
their tantrum will eventually get you to cave in and cough up the source
so they don't have to learn how to do it on their own. But don't give in
to them, because they really need to learn on their own and not by simply
grabbing the code from someone else and moving on without ever really
knowing or understanding what the code does.
You can tell who these people are when they come back to the forum
asking for help on an entire program that they just started last week!
And they can't seem to figure out why it just won't work for them. LOL
Programmer: "Did you declare all your constants?, Did you initialize
those variables? Are all your flow controls ended properly? Did you
add some error checking?"
Code Jacker: "What do you mean declare constants? and what are
variables and how do I initialize them? Can you help me fix my program
please? I will give you some of the money from the sales of it!

"
I could on with this scenario, but I think most programmers who've been
around for a long time know where this goes.
Anyway, no, not rude to ask, but make sure you politely say no and do
not say anything else, no excuses or reasons why, just simply say no.
And if they start the bashing of you after that, do not reply to the bashing,
just ignore it and move on. Mature people will see the jerk for who he/she
really is and you'll be fine. And the other person will either find some
other sucker, or actually learn how to do it, or give up and go back to
popping pimples and playing video games. Either way, you'll have acted
in the correct manner and saved yourself from any personal guilt.
Well, that's all just IMHO