programs are basically written in any editor. a simple notepad or an advanced Integrated Development Environment (IDE). We call the code you write source code. A good IDE is usually as important for the programmer as good quality tools are for a mechanic. An IDE will assist the programmer while he or she writes code by pinpointing spelling errors and wrong syntax.
You can split programming languages into two different kinds: those who need to be compiled and those who needs an interpreter.
The interpreter need to interptret the code every time you run the code.
If you language needs a compiler (e.g C#, Java, or Go) running your application willl require two steps:
Using such a language would require a compiler instead of an interpreter installed on your machine and then you ask your compiler to compile your program. The compilation results into a compiled verion of the source code
You only need to compile the code once (Except for when you make changes to the surcecode)
Some compiled languages (C#, Java) still needs an working environment installed on the machine you want to execute your code on - Other compiled languages (C or Go?) is directly understood by the CPU or runs on bare metal as programmers says. Using languages that relies on an environment is good if the environment is available for your system, and languages that compiles directly for the CPU are clever if it supports your CPU (Some CPUs takes different instructions than others but most computer CPU's are compatible)
Many students thinks that programs are written from the first line to the last. Luckily that is not the truth! Programming is much more like small patches put together at the end. I would write something I think will be needed and then elaborate a bit on that, then realizing that som of the code Iwrote were unnecessary and another part of the code was just plain wrong! Then Imight add another tiny part and make it work together with the first part. Coding is a mess unless the programmer is very experienced in that particular domain he is programming in.
First of all: There is now correct way to write a program!
That being said there are some general advice I would like to give you: