What I learned from coding
Tarek Atwan
Consultant | Instructor | Author | Artificial Intelligence | Data Science | Machine Learning | MLOps | Data Engineering
I am not a programmer. I have always admired programmers because they can do something I couldn’t imagine myself being able to do. I never felt I had the brain wiring they have.
But then?I attempted to learn how to write some code, not to be a programmer, but rather to take an app idea I had into a functional prototype. That’s when my journey into the programming world had just started, and I hadn’t even scratched the surface. What I have gained during this journey was more rewarding than the outcome itself, as it changed a lot about my perception of things. It was?a?transforming experience at the personal level.?
1. Inspirational. I now know that I can.
Asking someone to learn how to program can be very intimidating; it’s uncharted territory to many of us, especially if it doesn’t relate to our career or education. Many even brag that they don’t know how to program and are not technical. But here is the point: you don’t have to be a programmer or an expert guru in the language to use it. Learning how to code enforces the self-belief that, as a person, once your mind is set toward something, you can truly accomplish anything. Bragging about your limitation(s) should cease, and instead, it should spark your interest to eradicate any such restriction (s). We need to catch up on many skills, not just programming, but learning to code is the simplest one to tackle, mainly because there are a plethora of free resources out there to have you start immediately. Most of the tools are free, and you can start anywhere and anytime, and the results are instantaneous. From there, your journey begins?to learn other?skills now that you have gained the needed confidence?that no subject or topic is impossible for you.
2. Learn the building blocks of technology.?
We all had to learn about cells in biology, atoms in physics,?elements in chemistry, and numbers in math because they are the building blocks for these subject areas. The same goes for technology and?the importance of programming languages.?It is, in essence, a foundation. It will at least help us understand and gain an appreciation for many of the tools we use daily (and take for granted) without asking ourselves, “how did they do that” and “how does it?work”. You will gain better insight into technology and will help demystify many?areas in that domain. Of course, you will never see a software program the same way anymore, whether it’s your favorite social media app, website, video game, or computer program.
3. It teaches you structure and patience.?
Writing code can be a challenge for those who have no patience. Some solutions can take a few hours of coding, while more complex programs can take months of dedicated hours and thousands of lines of code. Writing code in most cases, will not work as intended from the first time you compile; even if you are following a tutorial or a course, something will always happen. This is when?patience comes in to debug and walk through the process step by step multiple times to find that “bug” and fix it. The more you write code, the more maturity you will gain, and soon you will start to develop your own style.?
To write code, though, you still need to have a plan, a structure of what you want to accomplish and how. You then need to take that?idea and break it down into pieces which later become instructions. These instructions force you to rethink what seems like an easy-no-brainer trivial task into a step-by-step approach as if you are talking to a child or an alien who may not understand your spoken language and doesn’t understand the meaning behind words. Instead, the words must be explicit, instructive, and lead to the end result.
领英推荐
4. Exercise and challenge your brain.?
Nothing can beat some brain exercises during your spare time. Writing code forces you to translate an idea into pseudocode then into a language using that specific syntax. Depending on the goal, writing code may involve many mathematical calculations, advanced statistics, logic, geocoding, manipulating data, talking to hardware via APIs, and much more. A simple idea that starts with a few lines of code can quickly explode, with time, into a complex program that does something truly remarkable. So the sky is the limit to where your creativity can take you. It all starts with a challenge to learn something new.
5. Solve a problem. Don’t wait for others to do it for you.?
If you have an idea or a need, like a situation that requires a unique tool, and searching the web for a software solution proved there was nothing out there to satisfy your need, then why not create it yourself.
Don’t wait. Just code and create.
Once you learn how to code, you have attained a particular skill that you can apply immediately. Now you can address problems from a different perspective. For example, suppose there are redundant tasks you perform on your computer routinely taking valuable time from doing something more substantial. Why not take it as a challenge to write code to simplify and automate. Many popular software solutions started that way; to solve an annoying task the inventor wanted to address for their sanity. Want a task reminder app for your unique situation? Want a custom?educational app for your child?and can’t find one suitable? Then why not take it as a challenge and create your own, you will never know how many people are out there searching for that solution until you publish it.
6. Gratification
Nothing is more satisfying than seeing your code's outcome; all these lines come together and act as a unified program. Writing code allows you to produce something you can show and demonstrate just like a piece of art; whether it is a website, a mobile app, or anything in between, seeing the results is a highly satisfying feeling. Once your code is complete, now you have taken your idea to a whole new level. This is truly the birth of the concept, something you can now show, grow, share, discuss and inspire others with. Unlike art, though, where?your art gains a higher value after you leave this planet, with code, you can immediately market your software once it is ready, and you will be able to modify and grow your solution as you start to gain a more extensive fan base.?