How to learn (appreciating) programming

I frankly hate it when, people start programming just to get a job with a six figure salary! We are beginning to forget the beauty of programming, we have forgotten to appreciate it. I am quite happy that my programming journey didn't begin with rote memorization, but that's a story for another day. Today, I want to share how I began programming and how you should too!

Why do you want to program? There are five types of people who join programming. First are the people who want to create a website or an app. I recommend them to just use an app or a website maker like Wix or Natasha. Programming is hard and not for you. Second are the people who are interested in the robotics and electronics. They learn programming in order, to make things work and move around. Well if you are one of those then you should learn the language, which your micro-controller or micro-computer uses. For example, the Arduino uses a simplified version of C and for the Raspberry Pi, you can use Python, C or C++.  

Thirdly, we have people who want to make their own games. Well, your journey will be a tough one. Fourthly, we have people who like AI and want to work with the same. And lastly, we have people who want to learn to hack. (*  ̄︿ ̄)

All of those categories other than the second and first one, should not start with a programming language! What do I mean? Ideally, you should not start with either Python, Java, C etc, but with a few fun and educational platforms. 

If you are interested in music, then you have to start with Sonic Pi. This is a platform where you can code music! It is pre-installed on the Raspbian OS and you can download it from https://sonic-pi.net/. Created by Sam Aaron, this wonderful app can allow you create beats live and also DJ-ing from writing lines of code. Even if you aren't into music, you should spend at least a day or two with Sonic Pi.

Next I would recommend you to learn Scratch. Yes that childish game developing platform. That childish platform, taught me the fundamentals of programming without even realizing it! Scratch allows you to create games by dragging and dropping in blocks, to form a game logic. This platform is best for children but grown ups, don't shy away from making games!

After this, you are on your own you can now learn almost any language within weeks. I had next learnt HTML and CSS, and then moved on to Python. You can learn these languages from W3Schools, Free Code Camp and well, YouTube! Creators such as Sentdex and Tech with Tim have a plethora of tutorials ranging from basics to making AI play Cyberpunk 2077!

Although, I personally would recommend you to go to the documentation of the language or learn from a text based tutorial. The reason being that, if you move on to learn other lesser known libraries such as Pyglet, it does not have many video tutorials, thus you can only resort to the documentation. As you move on to become an advance programmer, you would realize that sometimes you have neither a text-based nor a video based tutorial, thus you would have to learn from seeing peoples' code on GitHub. 

You should always be open to changes and constantly try and learn frameworks and libraries, if something doesn't work for you, use another library. If you get stuck or get a bug you can not solve, try to search up the meaning of the error that you get. If you don't get an answer post it on some forum. While learning you will pick up some essential skills that will not only help you not only while coding, but also in life. 

Happy Learning!! 

PS

If you are still wondering why the title of this blog asks you to appreciate programming, I would ask you to go and learn the languages and use the platforms that I have mentioned and finally come back and read this blog 2 years later.

Comments

Most Popular Posts