I certainly wouldn't suggest to someone that they shouldn't charge for their hard work, BUT, take balinor's criteria seriously. If you do charge, expect that people will need your help implementing and altering the code.
See this thread to witness what happens when people pay for code and then can't get support.
If it works well, I would consider buying it, but I'd need support.