Deep down, computer hardware can only understand very basic commands written in machine code. As machine code is basically just ones and zeros, it’s difficult for people to understand. Programming languages allow us to instruct computers using concepts and words more like human language, like LOAD and DO, and convert these to machine code that the computer can understand. To create a programming language you first need to define its words and rules.
You then need to work out how instructions in your language relate to instructions in machine code, a bit like translating to a foreign language. Next, you need to create a program called a compiler or an interpreter, which turns programs written in your language into machine code for the computer. It’s a complicated process, and new programming languages are often written using existing languages to try to make it easier.