Any one can code — From 16 Y/o Software Developer

xXAlphaManXx
xXAlphaManXx
Published in
5 min readFeb 24, 2018

Programming isn’t only for those prodigies out there. It’s going to be a basic fundamental thing in your life. Coding isn’t easy. It’s just a marketer’s way of telling it is, just because they wanna sell courses or books to you.

Most articles ask you to learn to code, even does this article. But the way others encourage you to learn programming is like encouraging every human to learn plumbing. Nah! Sounds bad this way. But yeah, programming, unlike plumbing, is the best way to express yourself — to the world with nearly no investment.

“Everyone needs computer programming. It will be the way we speak to the servants.” — John McCarthy

Coding isn’t a skill, it’s kind of a language — pretty similar to English. The day one you start to learn may be daunting, you might think it is not for you. But since you learned it, you don’t feel any problem with it. You didn’t memorize. It’s just soaked up in your blood. It comes out when you want it to come out.

Same happens with coding. It’s hard at first sight. Start with the basics, try to devote one-hour-a-day.

Books teach you nothing

WAIT! Let me explain. Books does expand your knowledge. It helps you to learn in other aspects, but not in programming. Coding is something that you must experience, not something you memorize. There are great programming books out there. They are great only if you use them correctly. The first time you open a page, reading line-by-line, you seem to understand everything. But after going on for 10 pages, when you are asked to show what you’ve learned, you stumble. You get doubts. You get a hell of errors. You forget everything. Period.

Instead, open your computer, search online. There is a plethora of resources online for free better than the paid useless garbage. Learn how to install a Text editor, how to fire up things.

What to learn first?

Every beginners stumble upon this question — “What should I learn?”. Just because internet has plethora of resources, you can’t get a grab of what to do. I would suggest everyone to learn Javascript (JS). I don’t want to start a war between the easy language for beginners. But I recommend you to learn JS just because it’s cross-platform. It is used in the web, it’s used in your IoT, it’s used everywhere and could be.

You learn one language and you can go to any side without learning a new language. Mostly people recommend you to learn C, C++, Java. But they all are shit. They are verbose. You don’t need to write 30 lines of code just to say “Hello World”. Javascript could be run anywhere. So, learning JS, you could once be a Front-end developer, a Back-end developer and more while these are just to name a few. A simple “Hello World” in JS would be like this:

But the same program in Java would be like this:

I am not here to compare JS and Java. But I am just showing that there is nothing to understand and simply a lot of useless code inside that. There is no use of Classes in every program. There is no use of getting arguments. The only motive is to print Hello World and we did it in one line using JS. Moreover, no other language could be run both on browser and on server. It’s only JS. You learn it once, use it anywhere.

Build something. Just don’t look.

So, you started learning, now what to do? What should I build? The common misconception with beginners is that they want end result soon, without doing work. You cannot build the next multi-billionaire project by spending just some weeks of coding. You need to start from the ground level. As I said, coding is a way of self-expression. You can express your feeling to the internet via apps or websites.

Try to build a portfolio for yourself. Learn on how to bring it online. Keep blogging every day or once in every three days on what you’ve learnt.

“The best way to learn is to teach”

Learn something new, keep tweaking your portfolio. Add new features to it. Do a side-project. Try making an app that forecasts weather, an app that displays news. Or your own portfolio in the form of an app.

If you are sincere, you might now had a good amount of projects abandoned. Take a day off from learning, open those abandoned projects and appreciate yourself on how much you have changed. If time permits, tweak them performance wise or design wise.

I usually won’t encourage my friends to build clones of other websites like Facebook or URL shorting services. They might be educational, but beginners work on it so hard that they waste time building it instead of learning. It is not going to be the next Bit.ly or Facebook (one day might!) but certainly not today. Keep learning. If you are found to stuck then stop. Take a break, learn something more, building something else and then come back to the old project so you can know what you’ve missed.

Learning to give life to abandoned projects helps you to read code. It helps you to collaborate. In a big company, you are not the only one to code, you are gonna be one among hundreds. You need to read other’s code, understand it. It is not going to be easy.

What to do after portfolio?

You might have finished your portfolio. I did say not to waste time just tweaking one project all the time instead start new ones. Since assuming you might have knew basic programming fundamentals by now, you can try to automate things. Look the works you find to do repeatedly. Think about automating it.

After turning the computer, you might fire up Chrome and your favorite text editor. Now automate that. Make a program that starts the applications for you as soon as you login. Now think more. You might write a program that reminds you things. The list of ideas in endless. You can do anything.

Conclusion

Coding is damn hard. Learning English is damn hard. Anything you want to learn is damn hard. You are the person to make it easy for you. It depends upon your interest. You learned English and so you were able to read till this line. Same happens to you while coding. I bet one day, you will look back and feel proud of what you’ve become from what you’ve been.

--

--

xXAlphaManXx
xXAlphaManXx

Developer, designer, system engineer. What more should I write?