Babbage's Bag

 

Charles Babbage invented the modern computer and with it started the development of computer science and all the computer technology that we take for granted today. Babbage's Bag is a look at many of the interesting ideas that are at the heart of computing. It's not quite theory and it's not quite practice. It certainly is fun if you give it a chance and it will provide a background of knowledge that it's all too easy to miss.



Data Structures Part II - Stacks And Trees
Written by Alex Armstrong   

Part II of our look at data takes us into more sophisticated structures that are fundamental to computing  - stacks, queues, deques and trees. If you don't know about these four then you are going to find programming tough and you will have to reinvent the wheel to solve otherwise simple problems.

Read more...
 
Dates are difficult

Date and times follow their own regularities - and computers have had to devise ways of handling them.

Read more...
 
Ethernet
The story of how Ethernet was invented and how it works is quite a story – so read on.

 

Read more...
 
Face recognition
Written by Mike James   
Face recognition features in most crime drama on TV. It's portrayed as fast and accurate. How does it work in real life?
Read more...
 
Finite State Machines
Written by Mike James   

Finite state machines may sound like a very dry and boring topic but they reveal a lot about the power of different types of computing machine.  Every Turing machine includes a finite state machine so there is a sense in which they come first. They also turn out to be very useful in practice.

Read more...
 
Floating Point Numbers
Written by Mike James   

Inconvenient though they may be, fractions are the real stuff of number and to work with them we need to know about floating point numbers ...

Read more...
 
Fractal Image Compression
Fractal image compression is of great practical importance and how it works is fascinating ...
Read more...
 
Genetic Algorithms

Genetic Algorithms are currently a hot topic. If this is an unfamiliar concept, or one you are unsure about here's an explanation.

Read more...
 
Grammar and Torture
Written by Mike James   

Computational grammar is a subject that is sometimes viewed as a form of torture by computer science students, but understanding something about it really does help ....

Read more...
 
Graphics Accelerators
The GPU - Graphics Processing Unit - now rivals and even exceeds the CPU in processing power but how does it work and what's special about graphics that it needs a custom processor?
Read more...
 
Hard disks

How does a hard disk work? Understanding can help you pick your next drive and make you more aware of what can go wrong.

Read more...
 
Hashing

 

Hashing solves one of the basic problems of computing - finding something that you have stored somewhere.

Read more...
 
Hexadecimal

Hexadecimal is the most common way of displaying the raw data sitting in a machine's memory, but if you are not familiar with it you might ask "What the hex..?"

Read more...
 
How Error Correcting Codes Work
Written by Harry Fairhead   

Error correcting codes are essential to computing and all sorts of communications. At first they seem a bit like magic. How can you possibly not only detect an error but correct it as well? How do they work? In fact it turns out to be very easy to understand their deeper principles.

Read more...
 
How Memory Works
Written by Harry Fairhead   

Exactly how does computer memory work? What is surprising is that  it still works in more or less the same way as when Babbage designed his Analytical Engine or the IBM 360 accessed core memory. So where do all our programs live?

Read more...
 
Information Theory
Written by Alex Armstrong   
So you know what a bit is – or do you? How much information does a bit carry? What is this "information" stuff anyway? The answers are, unsurprisingly, all contained in the subject called Information Theory, which was invented by one man.
Read more...
 
Inside Bitcoin - virtual currency
Written by Mike James   

Bitcoin is a new currency that exists entirely in software and is under the control of no central authority. Some claim it will destabilize governments and bring the world economy down - others just think it's the future of money.

Read more...
 
Inside Random Numbers
Written by Mike James   

We often refer to things that are unpredictable as being "random" but this is not the same as truly random behavior - which is something we have to work hard to achieve. Put another way - how can a logical deterministic device like a computer produce a random number?

Read more...
 
Inside the Computer - Addressing

Where you store data is as important to the computer as the data itself, yet the importance of the address is often overlooked. In this introduction to the low-level mechanisms of addressing in assembler, it is surprising how easy it is to recognize familiar high-level abstractions.

Read more...
 
Inside the processor

When it comes to processor architecture we still don’t  have a clear agreement on what sort of design philosophies should be followed.

Read more...
 
«StartPrev12345NextEnd»

Page 2 of 5
 

   
RSS feed of all content
I Programmer - full contents
Copyright © 2013 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.