Data, Program et. all.
Data
Programming is a creative endeavor. Every single second, we are engrossed in a virtual world. A world full of constants, variables, conditionals, loops, sometimes objects and functions, and other abstractions. For everything in a machine, we have a name. A name is either data or it points to a memory location. The name itself is also a memory location. Thus, we have named data structures like simple datatypes and more complex ones like arrays, stack, linked lists, etc. Data gives rise to data structures that have their properties. Depending on the use case different forms of data structures are strung together like beads in a garland. All this is akin to nature, which is this enumerated data. Data is cool, but it requires to be fondled (for the lack of a better word) munged, wrangled, or crunched in some context.
Program
The program is what gives meaning to the data or to be more precise is the meaning extracted from the data. There are just 2 operations on data
- Query
- Add/Modify/Remove
Query is when the program just reads the data whereas Add/Modify/Remove changes the data as we know it. Hence it may be important to make a copy of the data, as and when these operations are done. Program is equivalent to perception. It is the program that interprets meaning from the data. Depending on the data that is interpreted, the program may choose to further handle the data as an action or a transformation, as it may deem fit.
Data – Program (Relation)
Everything inside and outside is data. A program is also data but of a special kind. For those who understand the difference between data and program, they are termed as processors. There are many types of them around, each to its specialization. For example, an ADD instruction in an Intel Core CPU may be represented by 01100100 whereas inside of an NVIDIA GPU maybe 10011011. These instructions are called operation codes or opcodes in short. When a processor gets an opcode, it knows that the instruction needs to be executed and most likely it will be working with data that will follow. By execution, we mean that the directive for which that instruction has been written will be carried out. They simply change the status of various registers and memory. Registers are also a type of memory, but they are used as a scratchpad.
Data is indeed special because a program would be irrelevant without it. Data is projected to rise to 200 Zetta Bytes (200 with 21 zeroes) by the end of 2023. This deluge of data is often referred to as big data. To process this huge amount of data we can’t generally scale up the hardware. The reason is that we will approach the limits that the hardware has imposed. The only answer is scale-out, where we have many processors working in parallel to process the data. Hence you must have heard of terms like Hadoop / Spark which are nothing but parallel processing architectures that crunch big data. There is another alternative altogether. That is quantum computing. This new phenomenon works on what are called ‘qubits’ and they work by superimposition or quantum entanglement. (qubits also have states, but they are quantum)
Our Mind
Our mind works similarly to our silicon counterparts. Our mind is made up of 2 things most of the time
- Program
- Data
The data is what is called as ‘manas’, or the memory imprint of the past. Every second we are accumulating troves of data. This is done using our sense organs (eyes, ears, nose, tongue, skin) Like it or not, everything inside the mind is in a constant state of flux. Although data occupies most of the parts of the mind, there are also programs inside the mind. They execute themselves as thoughts. Some of them are automatic and some are consciously created. These thoughts are like processes inside a program. When the program (which is nothing but a single or a bunch of thoughts) executes, our body chemistry changes, and we feel emotions.
Our conscious mind if considered to be 10 meters of data is puny as compared to our subconscious mind which will be 10,000 acres of data. This is the same as saying that our data (conscious mind) is paltry compared to the world’s data. (subconscious mind) 95% of our thinking is done by our subconscious mind. Of the remaining 5% that our conscious mind concocts, some are truly innovative or creative. Others are just regurgitation of existing programs. 90% of the thoughts that we have every day are repetitions of the days before. Hence most of the days we feel the same way that we felt yesterday. Strong emotions (and sometimes thoughts) create a new neural pathway in our brain. Change is difficult, but not impossible. Even if we manage to change our minds, there is a bigger challenge. That is to change our conditioned bodies.
Remember
Don’t force the mind or body to change because there will be a lot of resistance. Just become aware of them. So next time a thought or an emotion passes your way, see them like waves on an ocean. They arise and subside. Simply watch. Don’t mistake yourself for the waves. You are the ocean. Calm and changeless, deep inside.
God Bless !