3 ms·
Error correction codes and transaction models have existed before computers have, of course the schemes people have settled with before computers were designed
by mantrax5 12y ago
Error correction codes and transaction models have existed before computers have, of course the schemes people have settled with before computers were designed to fit within the limits of what people could work with back then, with no computers to do the quick math for them.
People have used a simple form of error detection checksum when copying books manually (like the Bible) thousands of years ago.
Retransmission requests based on error detection like the above have been use over various pre-electronic communication channels, like telegraphs, which is a form of error correction scheme.
Of course anything that requires a modern CPU to compute wouldn't be feasible, but the basics of it, the seed, was.
Transaction protocols can be observed before computers especially in military protocols where "distributed coordination" and consistency of command are crucial for carrying out a military mission. Their channels of communications were slow and unreliable.
I suppose I don't have to also point out same military protocols often required a log where every formal exchange is written down in order, for later review if needed. Here are your modern day database transaction logs.
I can also cite famous examples of encryption schemes going back to the Roman empire, before computers existed, but we all know those.
We assign names to various inventions and we tend to think no one before had any idea like that, but truth is good ideas keep getting "reinvented" over and over, and the only difference is the level of sophistication that computers afford us in combining such concepts and building upon them into more complex schemes.
By the way in ancient Egypt, every person would be registered and written down in a set of books, books would be split and sorted by a hash of their name for easy look up.
Yup. Ancient Egypt had a hash-based index for their database of people (and books are the hashmap buckets).
- graycat 12y ago> Of course anything that requires a modern CPU to compute wouldn't be feasible, but the basics of it, the seed, was. I still believe that what Hamming did in coding theory and the Reed-Solomon codes, etc., are 'basic' and new since computers. But, you are correct that transmission error detection and correction were old needs with old solutions. E.g., there was parity with teletypewriters and old paper tape for error detection and then retransmission for error correction. Yes, and the improvements Hamming, etc., made for computers were not feasible before computers, but I still believe that, while the problem was old and had old solutions, the work of Hamming, etc. was new and 'basic'. Yes, heap sort doesn't really work as a sorting technique before computers, but trying to dream up heap sort is not easy -- just for the heck of it, once I set aside reading how heap sort worked and tried to dream up such a thing for about two weeks and couldn't do it. Heap sort's darned clever.
- mantrax5 12y agoI don't mean to disregard the work of Hamming & co. as trivial. Each one of us struggles to add something to the stream of human thought, and it's hard every time, and it's worth praise every time, but it's interesting to see it all as a part of a bigger picture, in that computers are just systems like any. They have certain properties emphasized, and certain other properties de-emphasized right now, but that's it. I actually didn't go far enough in my error detection and correction examples, I only went few thousand years back. There's an even more ancient example, going back millions of years... the process of DNA replication itself: http://en.wikipedia.org/wiki/Proofreading_(Biology) http://en.wikipedia.org/wiki/Proofreading_(Biology) One shouldn't be surprised to discover that some cellular process might have stumbled onto heap sorting, either. System design is bigger and older than any of us. To think otherwise is just a sign our culture is just too young yet to appreciate where we fit in the world. In some ways, it seems we still think we're at the center of the Universe. We're not inventing algorithms, just rediscovering them. This doesn't make any of the achievements of our inventors any lesser, but it's good to keep in mind the big picture. It helps us, among other things, to look in more places for inspiration and knowledge, and in turn, create better systems.