At this moment I have 3 applications, but I am planning to develop many others, in my spare time.
The first application is based on communication using sockets: the server, written in Python is on the Raspberry Pi, set to start with the operating system. It receives messages for directing the robot, also starting the other applications. The client, written in C# can be installed on every computer which is in the same local network with the Raspberry Pi, and has Windows with .NET 4.5 installed on it. It listens for key events coming from the keyboard and sends messages through TCP socket objects to the Raspberry Pi. Using the arrow keys from the keyboard and this two programs, I can drive around my robot. The LED's on the back of the robot signals which pins are used for every arrow key.
The second application is also based on sockets: both the server and the client is written in C++, and they use OpenCV for streaming live footage from the Raspberry Pi. It can be helpful if it is used with the first application, giving the user a preview of the surroundings of the robot.
The third application is a stand-alone application, using image processing. The algorithm is searching for specific green signs I made, after one sign is found it determines the distance between the robot and the sign, approaches it if it is too far, then reads the command from it and finally it executes it. All this using only image processing, without other sensors or accessories for the Raspberry Pi. The following images should give a basic idea of what I just described, but as soon as I can, I will make videos too.