Meaning of CODE- DECODED!!
Ronit Chaudhuri
Product Manager at StrideOne| Driving Customer-centric Innovation | Ex-Novartis| Computer Science @VIT
Programming or what is popularly known as coding among the youngsters has rapidly emerged as one of the most powerful skills one can have in the last three decades. Everything in this world is connected by Internet. You want to shop, just use your phone, you want to see your long distance friend use the video calling option, you want to share your knowledge use platforms like YouTube or any other social media site, and you want to gain knowledge, learn from the lectures of some of the best colleges through online courses. Life becomes so easy when we have all these with us, and according to me "Internet connects the world to me and vice versa". Every application you use be it a web app or a mobile app, even the smart devices are developed with the help of code. Bill Gates once said that
Programming has changed my life and every one should learn programming.
The world is slowly moving from the age of developing simple applications to the age of developing smart human like applications. Computers are mimicking humans and performing 100 times better than humans in the work they are assigned to do. Automation is the new trend which every business is trying to capture aggressively to secure a position in this ever competing market, and behind every story there is only truth that is CODE.
If you ask what does the word CODE mean in this age of rapid development of Information Technology I would say CODE means Create, Observe, Design and Develop and Execute.So I would explain what are these four qualities which forms the career path of every programmer and paves the success path of every application or product developed.These four qualities may not be necessarily there in a champion coder of any institute, the reason being, it is enough to be the best coder in the college by just having the skill of design and development but real time coding requires some more qualities as well, and I am writing this from my experience of college life and the transition I faced by leaving the college and joining a company.
- CREATE: This is the first phase of every application or product development. This is the phase in which you successfully identify and create a problem statement. So from this step you can understand how this coding is different from that of the college. Here you create your own question and you answer that unlike what happened in your college, and the users are your teacher and they will mark you both on the creation of your question and the usefulness of your solution. So very well you can understand there is not a single teacher but there are several teachers and more importantly the marks you get which is equivalent to the users feedback is based more on the question you choose than the solution you provide. If you create a problem statement of printing hello world against a problem statement of developing a social network site, you very well know which one will fetch you more marks.
- OBSERVE: This is a very important quality which will basically help the quality of creation of your problem statement. When you create a problem statement, you have to first discuss with the people you live around, whether they at all face the problem. It is not at all desirable to create a solution for a problem which is not at all a problem, so careful observation is required.. If the feedback is positive then there is one more step to it. You also need to observe the feasibility of the solution with the resources you have, the skill set you have and the possibility of implementing the solution required. It is also required to analyze whether a given problem can be solved by code or it requires any other skill set. Although 60% of the problems of the modern worlds are solved by codes but the rest 40% requires other skill set too.
- DESIGN AND DEVELOP: Finally when you pass through the first two steps you come to this step where you design the algorithm to solve your problem. The stage of designing is the more crucial one over here, where you exactly draw the flow of your program which will solve the problem and once you have your flowchart ready with you, your work is now to choose the appropriate tool and language which will help you to write the program with the least effort and in the least time and with maximum efficiency.
- EXECUTE: This seems to be the easiest step but it is not at times. When you execute your code, there may be a 1000 s of errors, so the skill of debugging becomes very crucial in this last stage, and even after the solution you provide is successfully deployed, the user requirements changes with time, so the code needs to be debugged again, so sort of execution and debugging goes hand in hand, and very often the coders have to go back to the previous step of development and if it is worse they start designing it from the scratch, and to avoid all these as a skillful coder it is very much required to divide the big program into small modules and execute it at each step and check thoroughly whether the desired output is obtained at each step.When small blocks are correctly compiled it is becomes very easy to integrate the small blocks and get the final solution.
So these are basically the four qualities or steps which completes a successful coder. In other words if I say the entire thing in the form of a code it would look like:
Coder x; if(create==true and observe==true and design_develop="Awesome" and execute=true):
x.coder=True; x.skill="Awesome"; x.status="Success";
So guys this was my analysis or the meaning of code, if you have some different views about the meaning of code please do share it!!