|There's more than one way to do things|
Not being an author yet myself, I'm becoming enlightened on what it means to be an author and just how much of a jerk module users can be CPAN Author Struggle: Am I a jerk? (unter-jerk).
I've been using Net::SSH::Perl for a long time now, not only because it's practical for what I'm trying to do, but the idea of someone re-implementing the SSH protocol using just perl alone, was just, well...neat!
Being a heavy user, I ran into a bug that I was able to hack up a fix for (I still don't believe it's fixed, but that is another story).
Recently, I found myself needing to connect to a far end machine via SOCKS proxy, and first asked here on what to do Using SSH via SOCKS5 Proxy (Solution Posted). What I really wanted was for Net::SSH::Perl to use Net::SOCKS to get the job done, so I went ahead and modified it myself. Well, hacked it with a ball-peen hammer is probably more accurate however it did work fine. Then, before sending it I stopped to think about the stuff I learned from my unter-jerk experience, and realized that my hacks would probably not be viewed as usable by the author. After some internal debate, I sent them anyway, just in case the author didn't think they're as bad as I do.
After additional research, I found a much more elegant way in the form of the Net::SSH::W32Perl module, and so hacked that up to do the SOCKS stuff. Much better result!
Now I'm torn on what I think the right solution should be. Ideally, both the SOCKS and W32 functionality should be in the Net::SSH::Perl module, but again there are probably reasons why W32 was created. Hmmm..., I'm learning all the time.
The upshot of this long story is that if you're interested in teaming up with me (and hopefully the author) with Net::SSH::Perl, I'm game!