BEHIND THE MAGIC SCREENS
Encoders? Decoders? What now?
Imagine waking up one day to find that not a single device can load a single app or site up. Terrifying, I know, right? Well, that’s the world we’d wake up to if software developers didn’t develop software that allowed computers to read and send files and data. On the surface, it feels like our messages and memes fly into the internet just as it was sent, but deep down in the depths of a programmer’s pain, sweat, and tears lie the true messengers of the modern world. Encoders and Decoders. Without these champions, we wouldn’t be able to use our beloved devices. What exactly do an encoder and decoder do? To put it simply, encoders package the data you input, and decoders unpackage that data to be used. This allows a computer to read that data and smaller file sizes and faster data transfer.
How Does Decoding Happen?
Decoding sounds like it can be a long process, and, if done manually, it usually can be, but what exactly happens during the procedure? Software development languages can come with an in-built encoder/decoder where a file is run through the encoder if the user wants to send a file or a decoder if the user wants to use the received file. When a file is run through an encoder, it transforms the data on a file into a compressed format that computers can read and is smaller in size. When decoding, the file is already in an “encoded” form and is translated back into its intended state.
There are many “languages” that data can be encoded to, each with its benefits and downsides. For example, all computers read in binary, a language consisting of only 1’s and 0’s, and are constantly translating data from binary into letters, photos, and videos just for you! Even when you press an app, it reads it in binary and returns it as you touch and open the app. In python specifically, “encoding represents a Unicode string as a string of bytes. This commonly occurs when you transfer an instance over a network or save it to a disk file. Decoding transforms a string of bytes into a Unicode string. This happens when you receive a string of bytes from a disk file or the network.”. Encoders and decoders, in a way, are the translators of the digital world.
How Can I Try It?
Nowadays, encoding and decoding are pretty simple. Take python again, one could go and make software that could translate from Unicode on their own, but like most modern commodities, it comes built-in. The line of code needed to initiate the process can be boiled down to;
My_file.decode()
My_file.encode()
Where My_file is the file you choose that you want to encode or decode.
Keep in mind this only works if you already have a file set up to either be encoded or decoded, and encoding can get a lot more complicated when dealing with large networks interacting with each other. However, a method for messing around and learning how encoding works is through text files. One can quickly write code and get it either encoded or take loads of already encoded text data and decode it. There are plenty of tutorials online that can explain in much greater detail with real-time examples. However, it does require a fair amount of proficiency in python to write, but it is feasible and a good learning experience for those who dare take the plunge.
Encoding Software?
When you think of encoding, you think of translating letters to numbers or vice versa, but encoding has another important use. Security. Most sites use an encryption process that involves encrypting the data sent by both parties and creating a “key” that allows both parties to decode the data sent. This way, a third party cannot interfere because they would need the key generated at that moment to decode the data. “Even if hackers manage to intercept the communication, they will not be able to use it because the message is encrypted”. Everyone is quite familiar with this encryption process. It’s called HTTPS, and they are the letters that go before WWW. It just goes to show how important it is! The craziest part is that the security software is just an encoder/decoder. It takes data and “translates” it into encrypted gibberish only to be translated back into data, only with tons of security measures on top. Some companies and programmers even use thyroid party software made explicitly for encrypting data just for an extra step because you can never be too safe.
What’s the Point?
But why go through the hassle of encoding and decoding data when you can send pure data? Remember that computers can’t read standard text or look at videos, so encoding is essential for anything that requires one. But also encoding allows programmers to compress data into smaller, faster to handle data. Just about every device on the planet uses encoders to transfer data, whether to load an article on today’s news, play your favorite music video, or even download a new game. Without encoding and decoding, the whole internet would halt grinding as pages and sites take forever to load the uncompressed data.
Encoding and decoding, in a way, have become essential for digital devices to work, as they work as a foundation for data transfer. They’re so important. They are almost everywhere. Only most people never realize it. Take a look at the black bars on an item tag. Ever wonder what they’re for? Those black bars encode messages in black and white, and the item scanner is the decoder reading that message. This device is similar to binary. Only it works through infrared. The white section would be 0, and the black 1. “Also known as phase encoding, the Manchester encoding process is used in consumer infrared protocols, radio frequency identification and near-field communication.”. Computers take that data and translate it into something we can understand, a price tag.
Cool Uses
One of the most bizarre and exciting ways we used encoding software was in a test designed to “read the human mind”. In a way, this machine can read and slightly interpret the electrical activity that happens in the brain. The experiment involved a subject staring at an image to test a software’s ability to test whether or not the person was concentrating or not, stating here, “From his computer in the console room, Hutchinson could tell in real-time whether the graduate student was paying attention to the picture or whether her mind was drifting to internal thoughts. Hutchinson could then give the graduate student feedback on how well she was paying attention by making the picture clearer and stronger in color when her mind was focused on the picture and fading the picture when her attention drifted.”. In reality, it’s astonishing that we can build software that is even capable of doing that, but it’s also a significant step in technology.
In a study that uses encoding to interpret the brain and a computer translator, fascinating to think that two radically different devices emerged from roughly the same principle. Despite that, technology like this is constantly emerging from obscure corners, showing that you can create tech with a wide variety of different uses with enough hard work and creativity.
Takeaway
When you think about it, decoding is like a puzzle game, where scattered information is gathered and pieced together to create a complete image. Without it, data is just this big bulky image that is hard to move effectively. We need encoding and decoding to help break our puzzles to make them smaller and faster to transport. As well as requiring them to help hide the images we don’t want outsiders to look at. Without security, all sorts of weird people could peer into your private life without your knowledge. And, of course, one can’t forget about the countless benefits encoding has in our everyday lives and future technology. From the IR scanners used at stores to the “mind-reading” brain analyzer, encoding can get a lot done for being something pretty simple. Yet without it, our world would crumble under the length of those load times on YouTube.
Who knew so many things were going on behind the screens of our devices. We like to feel and think that phones are these magical stone tablets capable of sending and receiving information, but they’re not. They’re something better. They were put together by real humans who built on the foundation of their predecessors to push us further ahead. It’s this behind-the-scenes software that makes the world spin. So again, these are unsung heroes of the modern world, and they deserve praise!