Thanks to languages like Go and Rust the developers can now build software for the command line that can run in every architecture and system where those languages can compile. And this is awesome, you code an application which can be compiled in Windows, Mac OS or Linux, getting a full market of users just like with web applications.
Now, the next step is create graphical applications using the same code for those systems. To get this goal is necessary to build libraries of low level that provide access to graphics, audio and input. Later can be built a graphical toolkit. Step by step.