Coding, the word that is being thrown around by almost every tech geek from a student to developer level is surely the way leading forward. Since childhood, I have been fascinated by the word “coding” and I have been deeply attached with this word ever since. Check out code.org’s video on “Coding is not difficult” which shall give you an insight into how the famous tech people like Mark Zuckerberg, Bill Gates, etc. started their career. Many people are intimidated by coding, and hence I would like to share my views and experience so far!
I still remember I was in grade 5 when we first started to code in QBASIC, the basic programming language for kids to understand. The ecstasy of running a “Hello World” program in any language is unparalleled and my case was no different. I remember I shouted out loud in the lab calling for my teacher and she assumed I had done some serious software malfunction and hence I might be freaking out! I knew it then that this would be my passion that I want to follow. But I didn’t realize the hardships that I would face on this journey!
The next significant thing I learned was HTML and DHTML (I do realize these are not programming languages so please, no backlash) :p. The syntax seemed easy and pretty weird at the same time with those <angle> brackets in each and every line. This still wasn’t that daunting as I got the hang of it.
Then entered Java in my life. The popular jargon during that time and everyone talking about it. I read various blogs and websites about Java and all I found was more technical complexities. This kind of withdrew my interest from Java. I was quite discouraged by those posts. Since it was compulsory in my school curriculum, I had to do it. However, with time, I started falling in love with Java! Yes you read that right! As I kept on practicing more and more programs and started understanding the logic behind the working of those programs, I felt more and more confident. My real testing was done when we had to submit a project for my board exams. I began facing the real challenges at this point of time. I was actually supposed to build a project on my own? What? Are you kidding me? My situation was something like this:
But little did I know that this was the thing that would be the fuel to my passion for coding! As I began to explore more out of syllabus stuff, I learned more. There were times where I helplessly browsed through websites due to my inability to express difficulties I faced in a structured manner. I managed to break out of my cocoon of school syllabus and expand my horizon into new things Java had for me! I eventually made a Banking app (may sound silly, but I was beginning to explore then) and the faculties were pretty impressed! I managed to get a 100/100 in CS and that shall forever stay with me. This was the ignition needed to start the vehicle of “passion for coding”.
Learning how to code made me realize that I hadn’t used my brain much before and now that I’m actually using my brain, it hurts. It’s like how the first time you hit the gym and your muscles really hurt. But eventually, you get the hang of it if you regularly hit the gym. Coding is the gym of the brain! Continually being exposed to programming concepts, and coding in general, helps to relieve the ‘soreness’ and builds that ‘brain muscle’. The experience gets you used to this new and fabulous way of thinking and the ‘less hard’ it becomes.
Fast forward to my freshman year in Computer Engineering. Like every University, we too began with coding in C. I was not impressed with the syllabus and hence started exploring new domains and continued exploring Java. I was both enthralled and taken aback to see the flurry of programming languages out there in the world and how passionately everyone is busy developing them. I went on to learn concepts like Git, Mutex, File Handling, etc. and started exploring new languages like Python, Julia and Rust.
I started with Python first. It helped me visualize and connect coding with English meanings to understand it in real life, thanks to easy sentence like syntax of Python!
Today’s generation is about maintaining open-sourced programming languages, and there is a lot of progress in open source technologies development. I felt that this is something that should definitely be in my arsenal! As I started exploring Rust, I was taken aback. Understanding the documentation and code on GitHub? This was something I had never done before! I tried a lot on it but let it go for the time being. But this doesn’t imply I am not coming back for it!
After consulting some of my amazing seniors, I realized that CS is not equal to coding. There is a vast universe of domains in Computer Science! Not only do you need to know programming languages, but also need to know how to use various tools and frameworks to ease development!
So, I started with learning about Machine Learning and Deep Learning, the buzzwords of Industrial Revolution 4.0! However, let’s keep this discussion about my journey in Machine Learning and Deep Learning in my sophomore year of Computer Engineering so far in another post! Let’s now try to analyze the problems we face in coding and how to overcome them:
1. I am intimidated by the syntax.
For beginners, yes, it’s absolutely normal to be intimidated at first! After all, that’s how you begin!
It is only with practice that you get used to anything. Nothing comes easy, you need to work hard for it. It is only with hard work and practice that you can overcome the technophobia. Yes, it’s a real thing, even I was surprised when I first heard about technophobia.
2. Never give up attitude.
Though John Cena is such a popular meme character, his words definitely aren’t. You should “Never give up” in coding and keep cracking your knuckles and logic to yield the result!
This quote by Patrick McKenzie is one of my favorites:
Every great developer you know got there by solving problems they were unqualified to solve until they actually did it.” -Patrick McKenzie
You will never learn how to code if you quit altogether, am I right?
Once you understand that, you then look at what you’ll go through in the learning process because it’s kinda ugly but also very satisfying in the end.
3. Approach coding like a hobby.
You do what you love in your leisure time, don’t you? Various studies have found that approaching things you don’t love yet or don’t understand yet, if approached differently, often lead you to loving it and understanding it well. One of the most efficient way is to take it up as a hobby! What do you normally do in leisure time? Play music? Dance? Well, in this post by Dorothy Eves, she describes how coding is like music. It’s definitely worth reading to relate coding with hobby!
4. I am stuck, how do I get out of this vortex?
Hey dude chill. There’s no need to be panic stricken. Look around you. Talk to your peers who are just entering the field like you. Maybe they have solved a problem that you haven’t and vice versa! Don’t feel shy to reach out to your seniors and ask even the dumbest of questions because they have gone through the same phase like you and they will not judge you! Plus, there is a plethora of online sources available like Reddit, StackOverflow, GitHub and many other resources that can help you in almost any problem you are stuck with. You have to be lucky enough to generate a new problem that hasn’t been solved by this huge internet community yet!
Always remember the iceberg illusion!
Well, congrats for making it till here! This is it for my first post. If you can relate with me and my experiences, do spread this post to help a newcomer enter this exciting world of coding and I would definitely appreciate a clap if you would! Do not forget to share on your social handles! 😉
Do not forget to check out my blogging website for more content!