The Perfect Guide to Self-Taught Programming

How to go from zero to landing your first Job

fotis-fotopoulos-6sAl6aQ4OWI-unsplash.jpg

Learning any skill from scratch can be very daunting, especially for such a "Complex" field as computer Programming and more especially if you're trying to learn it on your own. If not done right, might probably end up in you getting frustrated and eventually giving up. Unfortunately, this is what ends up happening to most people trying to learn programming on their own from scratch. This may sound terrifying but don't worry, In this article, I,( an "Elite! Programmer") will give you the basic steps you can follow to start your programming journey. Take note this article will not make you an *Elite Programmer *(someone who literally talks to computers and types with fricken three keyboards at the same time) but will give you the basic knowledge you need and on which you can build to hopefully become an Elite Programmer in the future just like me(Which is not true, I'm still a pretty average programmer). I really hope this will be the last article you'll need to read. Follow the steps given here please, Don't Just read it like a magazine article but actually apply what you read here and Please don't mind the silly jokes written in the post.

Though going to college may be a more convenient way to learn Programming, Self-Taught programming is very possible, and here's how you can achieve it:

1. START WITH AN OBJECTIVE

mika-baumeister-Y_LgXwQEx2c-unsplash.jpg

Photo by Mika Baumeister on Unsplash

according to a report from Burning Glass, programming jobs are growing 12% faster than the market average.

Knowing why you want to start programming can be very useful. Maybe it's because of a dream project you have been dying to work on (a dream app, website, game, etc.. ) that you think will make you the next Billionaire, maybe you don't really like your current job and want to switch to a programming job or maybe you're just a Nerd and you want to flex your programming skills with your boys. There are several reasons you may want to learn how to code but make sure it is one that really gets you excited and make sure to always keep your objective at the back of your mind. This will help you in choosing what programming language to start with but also the excitement provided by your dream project will make you want to get started quickly thus preventing you from falling into the Trap of Tutorial Hell. So you have to sit down, take a piece of paper and a pen and write down exactly why you want to learn to program

2. CHOOSING A LANGUAGE AND SUITABLE SOFTWARE

kobu-agency-67L18R4tW_w-unsplash.jpg

Photo by KOBU Agency on Unsplash

Now with your objective and goals in mind, you have to choose the technology you will use to accomplish them. This might require a little bit of research but to prevent you from getting lost in the vast territory of Google, here are some basic suggestions ( you're welcome). Next to the name of the programming language[A Special language used by programmers to interact with a computer] will be written (in brackets) the most popular IDE/text editor[An application that provides facilities for programmers] used for coding and the name that comes after a dash is the name of the FrameWork used for development in that specific field

1. Java( IntelliJ) or Kotlin(IntelliJ) for Native Android Development

2. Swift(Xcode or AppCode) for Native IOS development

3. C# -Xamarin ( Visual Studio) for Cross-Platform [write code once for both Android and IOS] mobile development.

4. C# -.NET Core (Visual Studio) for cross-platform Desktop development.

5. Swift( Xcode or AppCode) for Native MacOs Desktop development

6. HTML, CSS, JavaScript (Visual Studio Code) for Front-End web development

6.5 JavaScript, PHP( Visual Studio Code) for Backend web development

7. C#-Unity(Visual Studio), Java(IntelliJ), Python-Pygame(PyCharm), C++( Visual Studio) for game-dev.

8. Python, C++, C# for Machine Learning.

9. Python(PyCharm) if you just want to learn how to program because it's a goal you set for yourself at the beginning of the year.

You can start with any of the programming languages above (except C++ cause it's way too hard for beginners). Even though some may be more difficult than others if you follow the steps in this article you will easily learn the basics in any of these languages(except C++ of course).

Remember there is no standard IDE or programming language for anything. So you are not obliged to follow exactly what is listed above. The above are just the most popular languages and technologies used in the different fields stated but you are free to choose whatever you want as long as you feel comfortable using it.

3. LEARN THE SYNTAX

gabriel-heinzer-g5jpH62pwes-unsplash.jpg

Photo by Gabriel Heinzer on Unsplash

After choosing your programming language and IDE, it's time to start learning. Now someone as elite! as me didn't need to learn how to program, what can I say? I was literally born with a Keyboard In my hands. But for someone like you, learning the basic data types and syntax of your programing language is imperative. There are many ways to learn to program. When you research them on the internet, you often get overwhelmed and confused and end up choosing an improper way to learn, which will make the learning process very complicated. Here are some ways you can start learning :

Online Courses

This is one of the best ways to start learning to program. The websites I recommend would be CodeCademy and FreeCodeCamp. These websites provide an online editor where you can directly get started coding. And I'll cut you a deal, they're both free(which is a great price) so definitely check them out and save your coins. They have practical exercises that will help you get familiar with the syntax of the language you are going with. But you can also take a free( if you manage to find one, ha!) Udemy Course or even take the CS50 online course offered by Harvard which is free and is a great way to learn programming too.

Programming Books

If you don't feel like taking a course on one of those platforms, it's totally fine, you can still learn by reading and practicing the exercises from one of the various programming books out there that you can find online for free. The best one I can recommend is Head First. There is a Head First book for most of the programming languages. These books really get in-depth in explaining the Functionality of each data type. This will give you a more solid foundation in the programming language you want to learn. They also have a lot of practical exercises that you can do in your IDE to get you even more familiar with the syntax of your Language of choice and will get you used to working with an IDE.

4. START SMALL

clark-tibbs-oqStl2L5oxI-unsplash.jpg

Photo by Clark Tibbs on Unsplash

After learning the basic structure and syntax of the language, it's most likely you'll feel lost and incomplete(just like my life right now).As if you've not even learned anything. You will be able to program some basic stuff sure, but nothing concrete. This is completely normal and it just means it's time to take things to the next level. Now is the time to start putting that knowledge to good use. You need to go to your IDE and create a New Project. Keep in mind that this project needs to be small. This is to prevent you from quickly getting overwhelmed. This project should be related to the reason why you started programming. For example, if you started programming because your dream is to make a game like Call of Duty, you should probably begin by learning how to code a game like Flappy Bird. You can follow YouTube Tutorials on how to do it. Even though you might probably end up just copying the code line by line, make sure you try to Understand as much as possible what each function does and why it is used in that specific situation. Do this for about two or three projects with increasing complexity then you'll be ready to start doing things on your own. Try and develop 2 other small projects on your own. If you manage to complete these two projects, it'll be time to get started on your dream project. You might not still feel ready, but trust me, YOU ARE!. So just go for it.

5. Practice Makes Perfect.

roman-synkevych-vXInUOv1n84-unsplash.jpg

Photo by Roman Synkevych πŸ‡ΊπŸ‡¦ on Unsplash

You must not stop learning. Keep working on projects with increasing complexity to challenge yourself. Programming is a relatively new domain so new technologies come out every day and you must continue learning to keep up. Look at the challenges as new Learning opportunities. This will help you sharpen your skills and become a successful programmer. Being a successful programmer means thinking like one and the best way you can think like a programmer is by practicing, but also by observing other fellow programmers. It can always be helpful to enter the programming communities that you find in your area. You can also join programming Discord Communities to engage with other programmers Like the one I am currently building over at McDev.

alex-kotliarskyi-ourQHRTE2IM-unsplash (1).jpg

Photo by Alex Kotliarskyi on Unsplash

At times it will be hard, and at times you might feel frustrated, but remember if this is really your dream, DON'T GIVE UP. > Programmers can bring the revolution from their code. > It might be very daunting to start learning programming on your own and difficult at times but remember > Difficult roads lead to the most beautiful destinations.>

Thank you for reading my article, Remember to subscribe to my blog for more articles like this, and also I'm currently developing a game so if you want to follow my journey and also get some tips and tricks, subscribe to my blog. You can join my discord server by clicking on the following link discord.gg/Jmz8vR67 to start building a wonderful community and chat directly with me

Tell me what you think of my article and if there's any feedback make sure to leave them in the comment section below. Thanks once more and I hope to see you soon.

Β