Why is coding important?

Why is coding important?

It wouldn’t be easy to imagine things we use today that do not rely either fully or partially on software in one form or another. Code powers the world we live in today. A SaaS application, smartphone apps, desktop productivity tools, an apple watch; and even microwave and washing machines rely on code written by software programmers in order to operate. Even when jobs of repetitive nature would be replaced by more strategic jobs as a result of widespread automation, coders would ultimately control what is to be automated and code the machines accordingly. In the next phase of AI evolution, when machines learn and begin to “code” themselves, humans will create and programme the next generation of artificial intelligence. Hence coding is going to stay forever and remain as important as it is today, if not more.

 

Disclaimer – This is not related to the buzz that is around coding with the Edtech startups. I am not a big fan of teaching coding to a 7-year old! Don’t push someone into coding at a very early age. Most of my generation started after our age of 20 and we aren’t so bad. If there is intent you can learn coding at any age. 

Back in our days (early 2000) we started with C and C++. Is it still a good starter?

 

The answer to this question “Is C++ still a good starter in 2020?” is a resounding YES. C as well as C++ have always remained one of the top-10 programming languages. And they still are in the list of the top 10. According to the PYPL (PopularitY of Programming Language) Index, C/C++ is the number six most popular programming language globally. As per GitHub statistics both C and C++ are the best programming languages to use in 2020.

 

Several enterprise applications that were developed on C and C++ still exist today. UNIX OS, for example, was rewritten in C. Oracle DBMS was re-written from Assembly into C. Similarly, the Linux kernel is also written in C. Most of Microsoft's flagship products are written in C++ and C. Many other major software applications such as Adobe, Google, Mozilla, etc are all written in C/C++. All these multibillion-dollar giants and thousands of other tech companies continue to hire resources that have strong C/C++ background. 

 

In the long run, more than language your logic matters. You need some programming language to get started and C and C++ is a good starting point for all coders because if they understand C and then C++, they should be able to easily switch to any new programming language. This is so because when learning C/C++, we learn some of the core concepts of programming.

Artificial Intelligence and Machine Learning

 

I see a lot of excitement for AI / ML and rightly so as it makes you look cool (just like hacking or blockchain... just kidding). Although this section of AI/ML and Coding may appear a bit off the track but it was important to bring this up while we are trying to understand why coding is important. Of late, we have seen developers evaluating careers in coding vis-a-vis a career in AI/ML. This is not really about this or that. Even to have a strong foundation in AI/ML, one needs to have a good understanding of coding. Afterall, even AI applications are ultimately software. So, as it is in the case of the development of most software applications, an AI app developer has too a variety of languages to use in writing code. By selecting a programming language, connecting it to a data source, and implementing an appropriate algorithm, we can make AI. The most preferred AI programming languages is Python but it is solely the discretion of a software developer or the project manager to choose which of the AI languages would be best suited for the desired functionality of the application. Python has emerged as the favourite language for developers in AI app development. Python is particularly encouraging for machine learning as it is less complex as compared to C++ and Java. Python is a very portable language as it can be used on almost all popular platforms including Linux, Windows, Mac OS, and UNIX.

 

In short, it would be fair to say that having a knack for coding is important if one wants to have a career as an AI engineer. Proficiency in languages such as R, Python, Java, and C++ would be crucial in addition to having the applied knowledge of maths and statistics. This kind of knowledge set will help a developer understand concepts like data structures and classes.

 

The Introduction of coding into school curriculum is a good step by the government

The New Education Policy (NEP) 2020 introduced by the Modi government appears to be revolutionary. One of the most prominent aspects of the new policy is the introduction of Coding from Class 6. It is literally impossible to overstate the importance of coding in the world we live in today. Almost every human being on the earth right now is touched everyday by software. In such a world where software is omnipresent, learning to code right in the beginning of the career is important and beneficial.

 

This will prepare students for a future that relies heavily on digital tools. Even if a student does not pursue coding as their primary career, having the basic knowledge of coding can still benefit. Just like Math and Science, coding can be yet another subject. There are numerous career options within the software development industry that may not necessarily require someone to code, yet the knowledge of coding helps. Some of these career options include the roles of business analysts or functional consultants, etc. Most importantly, teaching coding from Class 6 will help alleviate the fear of coding in many students and it will help India develop early starters who will continue to bring in new and innovative ideas and solutions.

If you know coding well, you can start working on your own ideas

 

Entrepreneurs are brimming with ideas. However, more often than not, they lack the technological tools and the required know-how to precisely manifest those ideas into tangible products or business models. Most successful startups are the one where a founder or a co-founder is techy. The knowledge of coding gives us the ability to be able to develop the projects that exactly match our vision, without losing the essence while communicating the idea to a business analyst or a developer. Ideas are merely vivid imaginations that very often aren’t acted upon because we lack the ability to understand the nuances such as limitations or capabilities of the technology tools available to us.

Whether it is about building a world-class web application or developing state-of-the-art mobile apps, a software program goes a long way towards the fruition of those dreams. It’s immensely fulfilling to be able to develop everything exactly the way you visualised without being compelled to count on ‘templates’. Or, that you no longer have to explain your business models and logics to a bunch of people, who in turn, depend on someone else to develop a program to help improve a specific workflow.

 

In this approach, not only the real idea gets diluted, the business owner ends up spending critical hours that could have been spent on relatively more strategic tasks. We all like Bill Gates, Steve Jobs and Jeff Bezos. Bill Gates, the second richest person in the world, was an excellent software developer and so is Mark Zuckerberg. Jeff Bezos and Steve Jobs were not hard-core programmers but they understood technology to the core. And this trait of theirs, helped them drive their companies - Amazon and Apple - to offer products and services that completely ride on world class software developers.  

Coding helps you think

 

Learning a programming language is not only about adding new skills to your curriculum vitae. It also let’s an individual take a fresh look at life as a whole. It's a proven fact now that coding boosts our brain to deal with real-life challenges, we face in different ways altogether. In other words, coding helps us think better just like a game of chess that improves your strategic and tactical thinking. Research proves that coding markedly improves our logical, analytical and problem-solving skills. Programming forces us to develop an ability to get deeply understand the most unfathomable concepts, ideas, models, and logic, etc. This essentially happens because a software developer needs to take into account the minutest permutations and combinations of all possible business scenarios with respect to a given project at hand, think of scale, think of performance and code management. Such deep thinking helps the developer develop a clear vision of the problem and its solution in order to code. The same principle of in-depth thinking is often applied by developers in real-life scenarios.

 

Over the years, scientists have studied the effects of computer programming on the human brain. Scientists claim with confidence that coding does affect how we think. While studying the effects of computer programming on cognitive outcomes, scientists found that students with computer programming experience scored much higher on cognitive ability tests time and again than students without computer programming experience.

 

While most non-programmers believe that coding is just math and logic, it is much more than that. Programmers do think differently than other people. There are studies that establish that computer programming hones some high-level abilities such as creative thinking, questioning, problem solving and critical thinking.

A world after 10 years

 

Trends such as serverless technologies, containers, and low code platforms make us believe that developers would work at relatively much higher levels of abstraction in the future in contrast to lower-level details of coding. We will witness increased usage of augmented reality (AR) and virtual reality (VR) on the front end. This means that developers would need to gain the skills to build those applications, with voice and natural language processing (NLP) capabilities built in. AI has begun to infuse itself into the newer versions of existing developer tools. Microsoft, for example, added an AI platform into its Windows 10 update so that every developer building apps on the MS OS will be able to use pre-trained machine learning models. More development tools are in the offing that will precisely predict developers' intent, and make it quicker for them to express that intent. However, as we discussed in the beginning of this article, it's unlikely that these technologies would replace developers. Instead new cognitive technologies would enable them to develop solutions even quicker than they are today. For students, programming will join reading, writing, and arithmetic to become a part of the mainstream curriculum. And the future looks very promising! 



Meldon M.

Marketing and Partnership | SaaS Consulting | Strategy and Growth | Martech, CRM, CXM |

4 年

Code is the soul of every technology and programmers are the creators of that soul. Even AI is nothing without a programmer and the code.

要查看或添加评论,请登录

社区洞察

其他会员也浏览了