Thursday, January 21, 2016

Programming

Programming

What is programming?

 

Programming is the set of directions to carry out a certain response that was told in the programming language. Programming can also be called coding. Around the world there is a an activity called the hour of code. This is very important to this generation because we are very tech savvy. Every where you will go, phones, games, TVs, computers and more are used daily and always. This is created by programming. Any thing that delivers a response created by humans in the world of technology was programmed to do that task. For example, when you press the remote of a TV to watch ESPN in the morning, that remote and TV were programmed to play ESPN with the click of a button. Each game anyone will play was programmed to work like that. Robots are all programmed to do certain tasks. In the 21st century, there is a need for technology better than the last. This requires people to create new pieces of technology and programming is the basis of the technology world.

 History of programming

 

Ada Lovelace
The first programmer was Ada Lovelace. In 1842-1843, Ada Lovelace was a British mathematician who worked under Charles Babbage. Babbage is known as the father of computers. He created the difference machine. This machine used and solved mathematical equations. Also he invented the analytical machine which solved even harder equations than the difference machine. Ada got to see the difference machine before it was done and was fascinated by it. Furthermore, Ada was asked to translate an article about the analytical machine from French to English. In fact, she added many of her original thoughts to the article and turned out to be 3 times longer than the original. It was then published. Soon enough, she generated ideas such as looping, coding instructions into computers and other ideas that are used in computers today. This makes her the first programmer in history.

Although Ada Lovelace is considered the first programmer, she never created an actual language. The first real programming languages was created in 1957-1959. This was Fortan (Formula Translation) , Lisp (List processor) , and Cobal (Common Business Oriented language). This language was used by NASA and things like credit cards and ATM's. Then in 1970, Niklaus Wirth created the PASCAL language. This was a high level language where it taught structured programming and data structuring. Skype used PASCAL when created. Later on in 1972,  Dennis Ritchie created C which was used by UNIX. C actually is a low level language even though  high level is much more popular, it is the second most used language. Then in 1983, Bjarne Stroustroup created C++.  This language is an extension to C and was used by many great computer programs such as Adobe, Google Chrome, Mozilla Firefox and internet explore. Then in 1983, Brad Cox and Tom Love created Objective C which was the primarily used by Apple. Later, in 1987, Perl was created by Larry Wall in which was used by Amazon and IMDb. Next, in 1991, Guido Von Rossum created Python. Now python is a very famous for coding. This was used by Google, Yahoo and Spotify. Now in 1993, Ruby was created by Yukihiro Matsumoto. Ruby was influenced by languages such as Perl and Lisp. This was used in Twitter and Hulu which also are big successful companies. Soon enough in 1995 Java was created by James Gosling. This language was used by android and its products. Right now, Java is the most used language. In the same year, PHP (Hypertext processor)  was created. This was used by Facebook and Wikipedia. Finally, in the same year JavaScript was created. This language was used by Gmail, Adobe Photoshop, and Mozilla Firefox. All of these languages shaped the world we are in today. We use technology so much that the world is blind to how amazingly these phones and software were created. By geniuses who figured out a language that makes the world a better place.


Types of Programming

 

Coding

 

Binary code
Coding is a type of programming where things like websites, app games, and computer software are created. Coding is basically directions to create words, images and movement on a screen.  Coding starts out as when you write a code, it gets changed into a language where the computer understands what to do. To start, coding is written for the computer. But the computer really doesn't know what you are writing. Programs such as python language change the instructions inputted into binary code. Binary code is a series of 1 and 0s that represent transistors. A computer is basically made up of many different on and off data called transistors. Anything the computer does is made up of a unique set of transistors. Each digit in binary code (Example: 0011010) represents a transistor. A computer has billions of transistors where creating a computer by typing out 0s and 1s would take forever. Instead coding changes basic instructions (written in a language we understand) into binary code to create a task.

There are many different kinds of languages to preform different tasks and to complete/ create a different program.  The code that created a program is called a source code. When a machine gets a task to accomplish, the source code first changes to assembly language. Then the assembly code changes to machine language. Then the machine language finally changes to binary code. The assembly code is a low level language to change numbers to represent binary code. Now there are two types of levels. High level and low level language. High level is where it is easier to write in this language due to being less detailed and uses easier to use words for us. While low level is closer to being binary code. The reason code is made is because you dont want to write billions of digits of binary code and make it simpler. That's why high level (which is a lot less like binary code) is used for most of things created today other than low level language.  Now another step in the change from source code to binary is the machine language. This is basically a language the computer can understand in which it can be directly changed into binary. To conclude, coding is basically an easier way to make something do something without having to actually plug in binary.

Robotic Programming

 


Robots to preform a task or to carry out a task, they must be programmed to do so. We are not so far into the future where the robots know what to do if we told them. We need to specifically tell them what to do and how to do it based off a computer. Programming is basically the written out code to complete certain tasks without the need of humans. When programming a robot, humans specifically say and write the motions of these robots exactly the way shown to complete the task.
This graphic demonstrates the interaction between a physical robot and computer controls when programming a robot.The problem about robots is the robot is always guessing about the real world. The robot does not have eyes and a brain to tell what an object is or where something is. It guesses what the world is like based on measurements from sensors. Upon building a robot, you must create a model which will give the robot the simulation of life. As the world goes as the model goes, the robot will function and make decisions correctly. But as the robots in their field are so perfect in the lab, it may not function correctly in the field. This is due to their model being so specific and narrow only working in certain conditions. Once put outside of the lab, the model will not work and their decision making will not be right. This is the reason robotics is so difficult. So in the future, robots need to be able to be flexible and make decisions on the spot without interaction with humans. Once that happens, robots will be revolutionary and unstoppable.

There are different types of robot programming such as:
 joint  co-ordinates- This tells the robot basic movements of arms or any joint
Global co-ordinates-  This tells the robot basic movements in the planes x,y, and z. Also rotations can be preformed
Tool co-ordinates- This, similar to the global, this moves on one tool center point
Programming in the technological world is a very big part. Almost electrical ran piece of technology was built off of programming giving the world these gifts of smart technology and a huge part of the 21st century.


Computer Programmers and The World of programming 

 

In the 21st Century, computer programmers are a very very important job. These people sit at a computer writing and testing code. These people use languages such as C++ and Java and test them to check for faulty and or errors. Also these programmers update and expand on the previous languages and lines of code. These people are very skilled and are very important to the world. This world we live in has a thirst for computer programs. People everyday check their Facebook or twitter. They live on these devices and apps. These websites and apps are created by digits that are placed over and over again. Billions of lines of code that work together to create a website. Now the world is and will always from now on be all over technology. We always need a new iPhone or iPad. That's another reason why computer programmers are even more important. With things like Objective C used by apple. The world wants an evolved phone. A new phone. Programmers are trying to find the best types of programs. They are trying to make new things to make the world even more convenient. With a new generation, people are trying to create the newest things. Maybe in the future, someone can create a new language in which all languages before look so small and out of date. This is the goal of a computer programmer. This is what the world is looking for.

http://www.toptal.com/robotics/programming-a-robot-an-introductory-tutorial
http://www.scientificamerican.com/article/robot-learning/