in reply to How do I make this?

This isn't at all hard, but it may be impossible. There are two ways you can tell if a program is running on a remote system:

1. Login to the system (a standard login on Unix, perhaps some kind of remote admin on Windows) and see what programs are running. Obviously this requires that you have (at least) login access to the system, which it doesn't sound like you have.

2. If the program you're checking for listens for network connections on a particular port, you can connect to that port and talk to it, and see if it responds the way you expect. See Net::Telnet for one possible tool to use for this.

If neither of those things is true, you can't do it. If I give you my IP address, you can't somehow scan it from the outside and see if I'm running Emacs, for example. But you could see if I'm running a web server on port 80 or a DNS server on port 53.

Aaron B.
My Woefully Neglected Blog, where I occasionally mention Perl.