I think it depends on the particular culture you find yourself surrounded with when you start learning.
For many where I began, a chat client was a "rite of passage". In my WinMX programming chat room there must have been at least 10 of them made, some of them with chatbots included.
Then there was the "competition" on the network to see who could create the best WinMX compatible chat server.
Then the gazillion plugins for everything related to any software used on the network...most notably, Winamp/WinMX compatible chat room music spammers. (I could kick myself repeatedly for coming up with the idea for the first one) Any piece of information they could grab from somewhere else and display in the chat room, they did it, from system information, running processes, translations, google searches...the works. It made the network a crazy place.
You weren't one of the cool kids unless you made something to "enhance" someone else's winmx experience. I used to get teased for not being interested in making any of that stuff. I was content to make stuff for use outside of WinMX, like a text editor, a mini browser, a desktop clock, etc.
And it didn't stop on that network...it started all over again when we branched out to Ares Galaxy, and that was before it was open source.
Renko (one of my mentors) opened a chat room there and developed a chat server with a built in javascript interpreter and debugger that could do absolutely amazing things (Arca Eclipse)....for the purpose of teaching all the kids there how to program, too. (he was the original instigator of the WinMX coding fury)