Hi, the developer wiki mentions that the source parameter is no longer recommended, because using oauth, twitter can already know the source of messages.
However, there are a few use case scenario's that are limited if source is only available through oauth. Oauth is all about delegated authentication. It's about the user granting access to his resources to a service. There are services out there that do not use the user's credentials at all, but use their own account. E.g. I built flackr.net, and it logs in with its own @flackr account to follow its own timeline and aggregate news on a website. I don't need user's credentials at all for that. The Flackr backend is autonomous and runs on a server that has no web frontend, it just fetches data and processes it. It does send out tweets when it has aggregated something interesting. If I were to use oauth in this scenario I would have to build in full oauth support in my backend script, only to login once with my own account to grant myself access. Since this is not about delegated access, I don't need oauth and can authenticate against twitter directly. This is a perfectly good use case scenario, and the source parameter would have to stay in order to support this use case scenario while still providing a different source.