Software and Hardware

Hardware refers to the physical elements of a computer, such as the machinery or equipment. Examples of hardware in a computer are the keyboard, the monitor, the mouse and the central processing unit. However, most of a computer's hardware cannot be seen; in other words, it is not an external element of the computer, but rather an internal one, surrounded by the computer's casing. Software implements algorithms (problem solutions) that allow the computer to complete much more complex tasks. Hardware and software are interconnected, without software, the hardware of a computer would have no function. However, without the creation of hardware to perform tasks directed by software via the central processing unit, software would be useless.


Computer Science

The study of computers and computing, including their theoretical and algorithmic foundations, hardware and software, and their uses for processing information. The discipline of computer science includes the study of algorithms and data structures, computer and network design, modeling data and information processes, and artificial intelligence.

Computer Engineering

Computer engineering deals with hardware. This is the field that took technology that used to fill an entire room and put it in your pocket. Computer engineers are constantly designing and developing powerful components like circuit boards, microchips, video cards, processors, hard drives, and routers. Computer engineering blends the principles of engineering with the technical needs of computer science to produce the physical pieces that make the digital world possible. Computer engineering often works hand-in-hand with computer science to produce hardware that can support the most versatile software.

Introduction to Programming

Programming is a way to “instruct the computer to perform various tasks”. This basically means that you provide the computer a set of instructions that are written in a language that the computer can understand.


Computers understand instructions that are written in a specific form called a programming language. A programming language provides a way for a programmer to express a task so that it could be understood and executed by a computer. Just as many human-based languages exist, there are an array of computer programming languages that programmers can use to communicate with a computer. Each language has its own distinct features, though many times there are commonalities between programming languages.

The following are the most widely used programming languages:

Ruby on Rails


C Language

Learn more here