# Introduction To Programming 1

### **WHAT IS PROGRAMMING??**

**\- Definition of programming**:

![A guy programming](https://cdn.hashnode.com/uploads/covers/6ae648e025d90129d8b63718/38b1a08a-7c9f-45a0-ab26-85ae9d5f2de0.png align="center")

Programming is the act of giving a computer a set of precise instructions. Instructions are programs(ordered agendas) fed into the computer to get an expected output or outcome. Without instructions, the computer is useless...without instructions, the computer sits and does nothing because it doesn't know what to do on its own.

---

**\- Brief history of programming languages**: Programming's origin is traced to [**<u>Ada Lovelace</u>**](https://www.britannica.com/biography/Ada-Lovelace) and [**<u>Charles Babbage</u>**](https://www.google.com/search?\(1883\)gs_ssp=eJzj4tDP1TcwLMytMmD04k_OSCzKSS1WSEpMSkpMTwUAc24I1w&q=charles+babbage&oq=charlse+&aqs=chrome.1.69i57j46i67i433j46i67i199i433i465j46i10i433j46i10i131i199i433i465j46i10i131i433l3j46i131i433.6422j0j4&sourceid=chrome&ie=UTF-8) when they worked together on a primitive mechanical computer ([**<u>The Analytical Engine</u>**](https://www.britannica.com/technology/Analytical-Engine)). Ada figured that numbers could represent more than just numerical values of things. She wrote an algorithm for the Analytical Engine, the first computer program, to compute [**<u>Bernoulli Numbers</u>**](https://www.whitman.edu/documents/Academics/Mathematics/2019/Larson-Balof.pdf).YES! a female originated it--ADA LOVELACE.

![Ada Lovelace and Charles Babbage](https://cdn.hashnode.com/uploads/covers/6ae648e025d90129d8b63718/e4def43d-5f9a-4c20-a4db-79b82e21fc51.png align="center")

---

**\- Why Programming??** : As you know, the brain of a computer is the central processing unit (CPU). Some computers may have more than one CPU inside. A CPU has millions of transistors that make use of electronic switches. The electronic switches have only two states: off and on.

![Binary](https://cdn.hashnode.com/uploads/covers/6ae648e025d90129d8b63718/9b612c2d-47f4-495d-92cc-8eaf9cd0218e.png align="center")

(Symbolically, 0 and 1 are used to represent the two states.) Therefore, a computer can only understand instructions consisting of a series of 0s and 1s. In other words, machine-readable instructions have to be in binary format.

Programming languages(compiled/interpreted) serve as the knot "linking" human-understandable language and binary language.

![Compiler](https://cdn.hashnode.com/uploads/covers/6ae648e025d90129d8b63718/d65879de-ca25-4d91-91ac-cd0e7ce46928.png align="center")

---

### **Programmes vs Programs:**

![Comparing program and programme](https://cdn.hashnode.com/uploads/covers/6ae648e025d90129d8b63718/a028d171-87c8-4f8d-a5b8-29b1f4199fb8.png align="center")

Homophones!! One great difference is that Programme is a British English word while Program is an American English word. They can be used interchangeably because they have similar meaning, but in coding, **PROGRAM** is used. To highlight the difference, two sentences would be used.

1-She asked the Tech geek to program the computer tomorrow.

2-My father watches this TV programme on repeat mode.

---

### **Programming vs Coding:**

![Coding Vs Programming](https://cdn.hashnode.com/uploads/covers/6ae648e025d90129d8b63718/612327b8-535a-4aeb-a4df-17c04089bcc7.png align="center")

Let's settle this by knowing their meaning:

- Coding:Computer coding is the use of computer programming languages to give computers and machines a set of instructions on what actions to perform. Coding is the initial step of developing any software and thus it is much easier and simpler to analyze and understand than Programming.
- Programming:Computer programming is the process of performing a particular computation, usually by designing and building an executable computer program. Programming involves tasks such as analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms. Wikipedia... Programming deals with different types of complex scenarios and programs to ensure the proper implementation of the product.

---
