Whether you’re watching this video on your laptop, smartphone, or smart watch – although, why would you do that!? – they’re all different types of computers.
The widespread use of computers in the last century has radically changed the economy, society and even our personal lives!
And, like any useful machine, engineers are always looking for new ways to build and improve them.
If you need evidence of how good a job engineers have done at making computers smaller, faster & more efficient, try using an old cell phone from the 90s.
But the relationship goes both ways.
While engineers are making more effective computers, computers are making more effective engineers.
[Theme Music]
Computers are a little tricky to define, but generally, you know one when you see one.
Technically speaking, they’re machines that perform, or ‘compute,’ a series of mathematical calculations, like addition or subtraction, usually with electronic circuitry.
The exact nature of those calculations depends on the electrical inputs to the computer, and they happen much faster than humans are capable of.
Computers also have machinery that stores the states associated with its electrical inputs and outputs, called memory.
But they’re so much more than glorified calculators!
Because computers can execute different kinds of computer programs using the same physical hardware, they’re incredibly versatile tools.
But to be useful, computers need computer engineers.
Like in other fields of engineering, computer engineers are concerned with improving the various parts of a computer and developing new ways to use them.
Usually, that involves dealing with two main categories: hardware and software.
Hardware consists of the physical parts of a computer.
The exact components can be different depending on what the computer is for, but virtually all computers have two core parts:
memory, and a central processing unit, or CPU, which executes computer programs.
The CPU contains the electronic circuitry that actually performs calculations.
It can also coordinate the different processes happening in a computer simultaneously, and allocates computing resources to different tasks.
Memory, meanwhile, can serve a few different purposes.
Computer memory provides the physical space where computer outputs can be permanently stored,
like that picture you took of your cat trying to fit into a tiny box.
It also provides a temporary working space for a CPU to store relevant bits of information while it carries out a task.
The signals carrying that information, even if they were originally recorded as analogue, are passed between computers in digital form.
With digital signals, the voltages in the circuits occupy binary states – some form of ‘on’ or ‘off’ – that represent 1s and 0s.
Binary is the underlying representation that computers use to operate.
As a human, though, you’re not going to sit there and manually send an enormous string of voltage signals to a CPU yourself, unless you have a lot of time to spare.
That’s why computers tend to have what are called peripherals – things that make it easier for people to actually use them.
That might include a set up like a keyboard and mouse for sending signals to a computer.
To see what your computer outputs, like this video, you’ll probably have a screen and a speaker somewhere on the device.
In some cases, like on a touch screen, the input and output peripherals can even be the same thing.
Peripherals take human-style outputs, like keystrokes on a keyboard, and convert them into the appropriate binary signal for computers to interpret and vice versa.
Other hardware associated with computers includes things like printers, sensors, and network cables.
These are the sorts of things a computer engineer might bring their electrical engineering expertise to design and improve.
The other side of computer engineering involves software.
Unlike the hardware of your computer, which you need to physically replace to change a computer’s capabilities,
software can be added to or changed to produce different results with the same hardware.
So it’s essentially the programs your computer runs.
For example, you can write a piece of software to store the phone numbers and opening times of every pizza place in the area to your computer’s memory and retrieve it as needed.
If you have a camera connected to a computer, you could even program the software to recognize when the pizza delivery person comes to your door and turn down your music so you can hear the doorbell.
In short, software is how you tell a computer what task to perform.
Writing software to accomplish a task on the hardware you have is what’s broadly known as computer programming.
Those are the two main elements of what computer engineers work with.
On the hardware front, they find ways to physically improve the capacity of the machinery that
carries out computations, exchanges signals, stores them to memory, and connects everything together.
On the software front, computer engineering has a lot in common with programming.
But in addition to programming specific tasks, computer engineers might, say, find the best way to carry out a task on a given piece of hardware.
Or they could find more efficient forms of software that make computer programs run faster.
Besides for improving the general designs of computers,
computer engineers can also apply those skills to developing specific devices for aerospace, transport,
municipal engineering, medicine, and telecommunications.
So there are a lot of options!
But you can get a sense of the sorts of things computer engineers work on by looking at some of the challenges facing the field today.
For example, you might have noticed that when it comes to size, most commercial computers have been getting smaller over the years.
Things like laptops, smartphones, and gaming consoles are able to fit much more computing power into smaller hardware.
The reason that’s happened is because more and more computer circuit components, like transistors, were developed to fit into less and less physical space.
In fact, since the 1970s, the number of transistors able to fit on a computer chip has doubled roughly every two years!
That’s what’s known as Moore’s law, named after American engineer Gordon Moore.
Moore’s law describes how engineers have managed to create more sophisticated computers in smaller physical spaces.
But the law may not last much longer, because we’re approaching the limit of what we can do with electrons.
Some think Moore’s law has already ended.
Electrical components are meant to direct the flow of current in a particular way.
For example, transistors use a smaller current to stop and start the flow of a larger current.
But that job gets tricky as you shrink the components down.
A thin channel can often be hard for the electrons in the current to pass through.
And if you’re packing all that circuitry right next to each other, you also have to keep the current from hopping from one circuit to another.
Not to mention, you have to be able to make your transistors out of something.
To keep shrinking them down to fit more of them onto a computer chip, you need to use less and less material for a single transistor.
Eventually, you’ll have to build your transistor from just a few individual molecules, or maybe even just a few atoms.
But you can’t really build with anything smaller than that!
To reach the limit of tiny electrical components,
engineers are looking into alternatives to the standard way we’ve been constructing transistors, like by using nanotechnology.
Some nanoengineering designs aim to create transistors that operate on a current of just a single electron.
There are already chip manufacturers on their way to developing transistors just five nanometers long – so a few dozen atoms wide.
But having a large number of transistors, while generally great for computing purposes, creates other issues.
One major consideration is the energy computers need.
Like most sophisticated electrical devices, the internal circuitry consumes a lot of power.
Providing all that power is becoming more of an issue.
Computers are being designed with greater processing power in their CPUs and bigger amounts of memory storage, which all generates more energy demand.
Right now, about 3% of the energy produced on Earth is used for computing.
So making computers more energy efficient would not only reduce the amount of carbon dioxide released from burning fossil fuels,
but it could save large companies billions of dollars.
Engineers have a few tricks up their sleeves to try and tackle this.
A lot of the actual energy consumption comes from producing the binary signals computers use, the 1s and the 0s represented by voltages being turned on and off.
In the memory, the smallest unit of that signal, called a bit, is stored by changing the state of an electrical component,
such as turning a transistor on or off, or by charging up a capacitor.
Switching a bit from a 0 to a 1 or vice versa takes some amount of energy.
So engineers are looking into methods of computing that can somehow keep the “1” bits intact as they’re passed through the circuit,
so they don’t have to be rewritten during processing, saving energy.
On the software side, computer engineers are also developing algorithms, special sets of rules used in computer programs, that work more efficiently.
For example, they’ve developed ways of sorting and searching for information that require fewer calculations to be performed by the computer, which can also save lots of energy.
Even better, using less electrical energy means less heat building up within the computer,
which in turn could allow computers to operate faster.
So that’s what engineers are doing for computers.
But computers are also doing a lot for engineers.
For example, computers are essential for the control systems we’ve talked about,
automating the measurement and adjustment of industrial devices like heat exchangers to make sure everything operates smoothly.
But computers can also help engineers design and create components for use in other fields of engineering.
That’s accomplished by Computer Aided Design and Computer Aided Manufacturing, or as they’re more commonly called, CAD and CAM.
CAD is the process of using special software to design two or three dimensional objects on a computer.
With CAM, you take those CAD designs and manufacture them.
Both CAD and CAM allow for well designed, precise, and replicable components.
For example, printed circuit boards, or PCBs, are found in lots of common household electronics, like remote controls.
Designing them can be tricky, and you don’t want to have to print several prototypes using an expensive material like copper to test each one as you improve the design.
CAD software provides tools to model your design on a computer before physically manufacturing it.
You can then check various design elements in the model and simulate what might happen in your circuit before it even exists.
That saves the material, energy, and time needed for testing physical components.
In the same way, it’s easier to see if a complicated system of gears and pulleys is going to work as intended on a computer,
rather than having to assemble them every time.
Plus, CAD designs are useful for detailing the exact specifications of a component and sharing them with other engineers in a convenient way.
Of course, once you’re happy with your design, you’ll want to create the object in real life.
CAM is simply the process of taking the designs you created using CAD and interfacing with manufacturing machinery, like circuit board printers or laser cutters,
to tell the machine how to actually produce the components you’ve designed.
Both CAD and CAM are used everywhere in industry, from designing and manufacturing cars to making custom golf putters.
NASA engineers are also testing ways to use CAD and CAM to help astronauts on the International Space Station.
They can use CAD to design tools here on Earth, then send them up to the station to be printed on the 3D printer up there.
So even engineers who aren’t strictly computer engineers should be familiar with computers.
Programming is also used in a wide range of engineering disciplines,
and the most complex and sophisticated machines are often operated, or at least designed, using computers.
So, however you choose to apply your engineering skills, computers are a tool you probably can’t do without.
And with the work being put into computer engineering, the computers of the future will be even better.
Although they might still bug you about software updates.
In this episode we looked at computers and computer engineering.
We looked at the differences between hardware and software;
how engineers are working on making computers smaller and more energy efficient
and how computer aided processes such as CAD and CAM make it easier for engineers to design and manufacture parts needed in machines and products.
Crash Course Engineering is produced in association with PBS Digital Studios, which also produces ReInventors,
a show that introduces you to the scientists and tinkerers on the cutting edge of green technology.
Subscribe at the link in the description.
Crash Course is a Complexly production and this episode was filmed in the Doctor Cheryl C. Kinney Studio with the help of these wonderful people.
And our amazing graphics team is Thought Cafe.