First, because it’s my job. It is what I do as a profession. So, it makes sense that I learn about it well. But what to learn, exactly?
Rather than this or that language, or framework, or library, I want to emphasize on learning the things that mostly do not change with time. The core principles, the fundamentals, or whatever you may like to call them. These things must be learned well, so that we have a solid grounding in the field. And we know what’s what and what is going on deeply. The particulars, anyway, can be learned.
To be able to do a job, the person must be knowing some particulars very well. But my idea is to emphasize on the grounding work beforehand. IT Systems may be looked upon as big structures. Let’s say a big building. The student of IT Systems must take himself to a position where he knows enough and has seen enough, so as to think about a new structure from stratch, keeping in mind the final requirements of the system.
One of the best things about IT Systems is that all it takes is the mind. To build this structure, we do not need physical materials like bricks, steel etc. We operate on such level, that what we need is a ‘mental structure’, that we implement in accordance with a language, framework and the like, such that it gets executed finally on a computer.
Look, it is not just about getting the system to work. We are here very much concerned about the character of the system also. Because, we must understand that while the computer can run 0s and 1s, we humans need to ‘understand’ the code logically. We need to make it a kind of ‘story’ in our minds. Only then we succeed in making bigger and more complex structures. I feel this aspect is very much like mathematics. In mathematics, I suppose that the people need to understand the ‘story’ of what’s going on. Only then, they are able to build on top of that story. Any mathematically correct equation is relevant only when we understand the story behind it or around it.
Therefore, I am keen about learning IT Systems. No matter how much we may standardize it, since it involves creation from stratch or a creative aspect, it will remain an art in some respect. It’s an art. Creating brilliant IT Systems is an art. And to become great artists, we need to become curious, obsessed about knowing the internals, non-rigid enough to correct our learning or re-learn stuff correctly, serious enough to not be lazy or careless about quality, and ‘locked-in’ enough to bring our work to fruition.