It depends how much you want to hold onto in terms of rights to control how something is used and adapted.
If you're feeling really generous, you might look at MIT/BSD licenses. People would be able to use or adapt your work into their projects with no attribution and they wouldn't have to distribute the source of their work. But anybody could use it for whatever they liked.
GPL and LGPL would allow them to use your source but if they're distributing their program, they'd have to publish the source - which is an issue for some people as they either don't want everybody to have their source, or they legally can't give it out (because they don't have those rights). LGPL makes things a little easier by allowing closed-source redistribution as long as your part isn't modified (eg using it as a library).
Creative Commons licenses are somewhere in the middle but they're less popular.
People favour GPL licenses because they force things to stay open-source in the hope that if somebody else does improve it massively, everybody might one day see that benefit. It's a really difficult question to answer and it's really going to come down to what you want people to be able to use it in and if you need to be able to see their changes.
(By the way: it is possible to multi-license something. If people approach you and say they need to be able to use your GPL-licensed app in a closed source setting, as long as you have the permission from all the contributors, you could provide it under a more permissive license.)