It depends. Ubuntu runs the X windowing system. It's a server/ client architecture that you're dealing with here. What does that mean? Well your computer(the server) will receive request from multiple clients(That can be on your machine or over a network). It's kind of simple yet complex. I'd recommend maybe reading up on it via google or X org. Most people will frown upon dealing with purely X org libraries since it's dying off. Here's a recommendation, GTK, it's cross platform.