Learn to code or learn to program

Programming Coding

Computer and internet technologies are evolving fast, and new programming languages, frameworks, and libraries come up all the time. Some of the programming languages become popular and stays for decades, while others cannot get traction. For example, the C language is here for almost 50 years, while C++ is still relevant in 2021. On the other hand, programming languages such as Objective C and Perl and Ruby are on the decline and becoming dead programming languages.

You might have heard about the “Learn to Code” movement as most of the major news publications are posting articles promoting the role of computer programming in a completely computerized society of the future. In reality, coding is a small part of the overall computer science and computation field. 

Research shows that it takes roughly a decade to convert a newbie into an expert coder; however, there is no best way to tech programming at educational institutes. Research is also going on to develop technology (transcompiler) to convert source code from one programming language into another and possibly built into the IDEs.

We propose “Learn to Program” rather than “Learn to Code” so that you can think independent of any programming language or framework. Misha termed it as “the coding mindset.” Sooner or later, advocates of learn to code such as code.org and other coding boot camps will realize it as well. A programmer solving a software problem in C two decades ago is similar to solving the problem using the latest language in 2021. What is changed is the programming language to solve the problem; however, steps to solve the problem or design of the problems is more or less the same.

Focusing on coding inflates the importance of finding the “right” method to solve a problem rather than the importance of understanding the problem.

TechCrunch

The programming standards and patterns are still analogous to old-style software development. An experienced programmer can be much more efficient as compared to a beginner in programming due to his experience in problem-solving skills and not the skills in a particular programming language.

The core essence of programming is to understand the bare metal and its architecture, underlying operating system, designing algorithms, understanding different data structures, optimizing the code for performance and memory management. Switching to a new programming language isn’t a challenge if you understand the basics and spent time in algorithm design and problem-solving. 

Web developers in 2017 still build software that runs on the same technology that was around twenty-two years ago.

Forbes

Final Thoughts

Computer Programming is a fun field and changes your entire way of thinking. Take your time to understand the basic concepts of computers and programming. Aim to become a problem solver rather than a typing-master sort of coder. 

You can always learn a new language, tool, or framework as per the new lucrative job requirement as long as you know how to design algorithms and solve the problems.

Categories: Blog
M. Saqib: Saqib is Master-level Senior Software Engineer with over 14 years of experience in designing and developing large-scale software and web applications. He has more than eight years experience of leading software development teams. Saqib provides consultancy to develop software systems and web services for Fortune 500 companies. He has hands-on experience in C/C++ Java, JavaScript, PHP and .NET Technologies. Saqib owns and write contents on mycplus.com since 2004.
Related Post