5 Steps to Start Programming

5 Steps to Start Programming

You are a beginner in programming, Hacking or computer in General? This article is right for you.
More specifically I will give you the 5 steps to follow to get started with programmingI.e. choose the good programming language, learn quickly and correctly, and use best practices to a level that suits you in programming.

Step 1: Find areas that you like

This is a very important step. Ask yourself the following question:
Why do I want to learn to program?
Note the 3 main reasons that come to mind and do not continue until you have no 3.
Why do this? Because a programmer is more motivated when he makes what he like. It is one of the best ways to learn and so to start programming :
Do what you want.
By doing what we like we give up less easily and move faster.
It's done? you have noted these three reasons that push you to learn programming?
Are these 3 reasons that will guide you in any of the following to find out where you should start. You can simply choose them in General but are simply sure at this stage that these are the areas which you like the most.
So that you understand me, I'll do the process at the same time you with an example, here are my 3 reasons:
I want to learn programming for:
  • Create software
  • Better understand the systems
  • Create web sites

Step 2: Add clarification to these areas

par ou commencer la programmation
If you want to learn programming because it looks cool or fashionable, you will know what to doI'm not saying there is no need to learn to program just because it's "fashionable", but you need to achieve your desires in this 2nd step.
He must now clarify each of your previously established reasons. So take them one by one and add detailsAmong these details must note the time you want to spend to learn as well as the operating systems coveredHere is my example:
  • Create software-> create software Utilities quickly for Windows (disinfection, cleaning, antivirus).
  • Better understand the systems-> better understand how operating systems (Windows and Linux) and How to interact with them on the side programmerIt can take as long as it takes.
  • Create web sites-> create personal web sites to make way for my imagination without having to pay a developerHere the operating system will not change but the site should be functional on the mobile. I want to learn enough fast (in 6 months max).
Note: Your reasons may be initially broad like "teach me computer" but need you the clarify the most possibleIf your details are many, write a paragraph, but find most important for you until you have something concrete to start which, as in my example.

Step 3: Deduce (s) language (s) of programming by the (s) what start

les langages de programmation
Now that you know why you want to start programming, as well as the time and the target system, you will much more easily get the languages in which you start.
I go back to my example, then I will give more general information:
-If I want to create utilities under Windows in a timely manner, I'm naturally going to point me to the languages 'dotnet' (.NET) Visual C++c#VB.NETTo come to this conclusion, simply do a quick research as "programming Windows" or "programming language for Windows. We also learn that the languages Java or even Python (not exhaustive) can also be usedDotnet languages are simply more adapted. And this because they are created by Microsoft itself, the editor of Windows.
Let's say that there is a choice to be made here between dotnet and others: Java and Python are portable that you can later use to program under other systems like Linux On the other hand the dotnet languages are targeted for Windows only (I do not count portability via third-party programs () tests and can therefore be programmed more easily and quickly, especially via the Visual Studio integrated development environment. If I prefer to learn a less portable but language that allows me to do a program windowed in less than an hour, I'll choose a dotnetlanguage. Conversely, if I want my program embarks on other systems, I would choose Python.
Let's say here that I choose VB.NET or c# because I am not particularly systems other than Windows.

-Regarding my desire to know the OS in detail at my own pace I'll have to take a common operating systemsprogramming language, and allows to have the hand on themThe C language is the one that will be most suitable because it allows to be close to the system, and it is portable. But Python will be easier to master, and will give me more flexibility in the future. I will start with C to understand the basic operation of the systems, and then I'll come to Python as a language of 'every day '. I do that again because I want to take the time to understandYou can see at the same time there is need to stay fixed on a given language.

Important note: You can very well learn other languages not mentioned or even learn languages in different areas like C for glass applications Windows. But it all depends on your goals, for me who wanted to build Windows quickly, the C language programs also works but I can't do much less quickly than the c#If I have all my time to do it, that portability is important to me and I wish well master the system, I can actually choose the C instead of a language dotnet.

-Finally on websites, say because I don't have that much difficulty choosing not only there are not a lot of different languages but they are automatically adapted to all systems by the nature of the Web. The problem of adaptation is rather browser. The choice in this case is to learn two languages simultaneously : A language client and a language side Server. This is how it works. The typical language client/server pair is JavaScript/PHP.
For more information and explanations on the difference Customer Server I invite you to read the following article: https://www.leblogduhacker.fr/la-securite-avec-javascript/
Note about HTML: I don't know who is at the origin of the myth that you have to start with the HTML, but it's totally falseRemember once again what I said above: it all depends on your goals and "learn to program" is not a precise goalHTML is a markup language, not other languages referred to here approaching. And personally I think that learning HTML (which is fast in itself) we will not teach you to program and won't give you useful databases if you do not want to do web development then.
I do not know whence the myth that you have to start with HTML, but you're wrongCLICK TO TWEET

In summary:
  • C/C++...etc : learning thorough systems and networks but they need time to master them
  • .NET/Java/Python...etc : versatile and easier to control. They are very popular.
  • HTML, JavaScript, PHP : classics of the web. Note that learning a query language of databases such as SQL (Structured Query Language) comes in handy.
  • AssemblerPerlGoSwift.. .etc: required, depending on your goals.

Reviews for programming languages are often subjective, so you can always find examples of programs created with given programming languages to see for yourself if the language seems to be the best for you.
Note also that there is no big problem on starting with the "best language" for you or not, you can learn more at the same time or rather change if you ever notice that you don't like or don't work not. The idea here is to make the first move, to seek and engage rather than wait to find the 'best' language.

Step 4: Take an e-book, a book or a video course and practice

Contrary to what you might believe, the programming has no magic, everyone follows a learning mode. Programming requires time and practice.

Comes now the longest, but also the most exciting step if you start your adventure: it's time to learnand practice. You know what you want to do, you know what language to use, you have a computer or a device for programming. So you have everything before you left to look for resources and practice.
I'd maybe guides and specific articles about the languages that I know and that you are interested inFor this give me comment out your three areas of step 2 as well as the language you are interested inI cannot tell you if you're meant to do this or even if your goals are good (it's for you to judge), but maybe I could help you more to master a given language.
Start small, read the code, write your own code by projects, challenges.
It should be noted that it is very important to understand how to write a program to read but you'll really write it that When you have practiced and specifically wrote this program yourself.
I learned too late.
For the record, I read almost all the programming books at FNAC one year and in the end I almost forgotten everything except a few snippets of code that I've actually typed on a keyboard.
This learning by doing is the best way to learn programming and it is this learning tool that I propose in the guide getting started with Linux for those who aim to master an operating system during their apprenticeship.
By the way, if you have decided to learn how to better control the operating systems and so to understand the workings of computers, I suggest youlearn Linux which has the advantage to be more 'open' than Windows and which helps to better understand "how it works inside.

The video courses to learn programming

I also use the site Udemy to learn through video training. I have learned so much and I recommend it so.
There is a lot of content in English, you will find a lot of courses in french.
Here is for example a complete online course on valid C language whether you're on a Mac, Windows or Linux (links to Udemy):

Step 5: Publish your programs and continue to learn

This step is a bit where it is perfectedAnd it lasts indefinitely because we never really heard everything about programming.
In fact, I'll tell you a little secret: you can know how to program in one day.
The ambiguity lies in the expression "programming knowledge.
That means for you "know how to program? What does it mean for your (future) employer ?
Did know how to write a "Hello World" in C program is "programming knowledge?
On the other hand, do know debugger an error related to the execution stack of two same prototype functions called successively with the same variables is "programming knowledge?
It is besides for this is usually the difference in the CVs between 'skills in C' and 'knowledge in C '.
In fact, there is a kind of scale of programmers all know relative to program and actually there is not really level whereby it would have reached a status of 'programmer '.
Your goal is to climb this ladder up to a stage or you feel comfortable enough, according to your desires.
To climb this ladder quickly and easily I propose to write your own tutorialscreate and share your own programsThis will allow you to get some recognition in the community.
On the other hand, teacher, you learn a lot also, and by sharing your work you will receive interesting feedbacks.
You can also participate in forums, to other programs... etc to obtain the approval of the community and maybe even to make a name (I hope so).
If you feel this desire in you, if you want to join, do it now. You will regret not your decision, I promise you.

Best practices for learning programming

To finish this article, I will talk about the general good practices about programming.

Follow the good advice

débuter la programmation en se faisant aider
To learn, the ideal is to follow good advice. I mean, there are so many views totally divergent and coming from totally different people easily lost.
Truth be told, listen to those who serve as modelsYou listen to a morbid obese individual nutrition advice? No.
So don't worry about HTML because someone told you that without even having creates site.
Beware also of sentimentally attached to their favorite language who would be ready to do everything so that you follow their advice. The mini-guerres of the type "the C is well and the rest is the m * RDE" are common among computer scientists.
All the tips are not good to take, you must be critical about your work and advice. This is particularly your highest defined goals which must use path.
Conversely, discuss and get help from people who have already borrowed your road is a very good idea.

Tools to use

The world of developers is a fairly closed ecosystem that adapts and uses the same tools in General.
Here are some of them that will help you be more productive:

Services hosting and/or codes management

They can easily work together or not on the source code of your programs. They include the famous Github but also SVN.

Integrated development environments

On Windows, you have too much choice, it's Visual Studio, but in Linux you have including Eclipse, Geany.

Open Source development

The Hacker community particularly attaches to the open sourcespirit. This is to allow the rebroadcasting and modification of your program by other users including for the purpose of better it.

Resources to start programming

Finally, it should be noted that a programmer looking for a lot in books or on the net snippets of source code they can use. No one program really all head, unless you are an expert with decades of practice.
This article will soon be available as a guide which steps will be detailed from A to Z. But before that, let me know if you are interested!
Good luck to you and good luck in your learning 😉
Feel free to leave a comment your 3 target areas of learning and your desire or not to have a complete guide for one or two programming language specific.
New content coming soon to help you improve your programming. Stay tuned and feel free to indicate what you are interested!

Tags: learn to program, start with the programming

No comments

Powered by Blogger.