How to start learning JavaScript. And how to become JavaScript Developer

Simeon Iliev
6 min readJul 31, 2019

Intro

I have been asked how to start learning programming or how to become better in programming? For example with JavaScript programming language. Well there is no like a perfect formula or best way — it is different for everybody. It maybe depends on your current stage in life. If you are young and you have the opportunity to go the university and finish computer science or information technologies — I mean opportunity in terms of time and finances, this is definitely the way to go for you, it will take 4–5 years maybe. But if you already finished university in other discipline, and not satisfied with your current job. Or you do not have university degree at all, but you need better job and salary, then you need to walk into another path to become a software developer with JavaScript.
Off course you maybe tried programming in the past and failed, like you thought is too complex and too hard to understand, or maybe was too complex to setup and to learn etc. Or maybe somebody else told you something like this….
Well I need to tell you that this is not the case anymore. Modern technologies provide easy ways to learn and get experience into software development.
But let me try to give an example path on how to do that in this short post. And all the tools and educational materials are for free. You just need some time and dedication. Maybe 6 months of 4–6 hours a day, or 1 year 1–2 hours a day will do the job for you. And you will become software developer, front-end or back-end with JavaScript.

The guide

So first depends were you are in the moment in your coding skills so far and which language you understand. So let’s say you are total beginner and you want to learn Java Script scripting. It is easy there are so many tools and systems that help and boost you into that direction….

  1. You can start learning with basic tools or applications like SoloLearn over here: SoloLearn JavaScript training on your phone or on your computer.
  2. You can check online training courses like the one on W3schools over here: W3schools JavaScript training or the tutorials from TutorialsPoint over here: TutorialsPoint JavaScript
  3. You can perform some more advanced trainings in Code academy as well, over here: Code academy — Introduction to JavaScript
  4. Find some good coarses in platforms like Udemy over here: Udemy free JavaScript Courses
  5. Or educational websites like this one: JavaScript the right way
  6. You need to learn how to program with some IDEs (Integrated Development Environments), like this one here: MS Visual Studio Code, Sublime, Atom, Eclipse for JavaScript, Notepad++ maybe others (vRO for Infra JavaScript Automation).
  7. To Mature with coding and development best practices and recommendations like this one here: Developers best practices on Tutorials Point.
  8. Learn to use some for the language common libraries like this one: JQuery
  9. You will need to learn to use some development frameworks like: Angular.JS, Polymer, Node.JS
  10. Learn some more stuff, I mean technologies around JavaScript like HTML, CSS, SQL (+ try it on some Database System), XMLand JSON + ReST and XML+SOAP web services (+ try it on some APIs maybe).
  11. Learn to use Code Repositories like: Github or Gitlab, or just learn about how to use Git over here in this Git tutorial, CVS etc.
  12. Create your own project — web or mobile application or even create portfolio of applications.
    (Somewhere over here you can start searching and applying for your first JavaScript Development role as a Junior developer)
  13. Learn tools like maybe check this tutorial on Jenkins here for Continues Integration support (CI). As well tools like NPM (Node Package Manager), check it out over here: NPM Official website
  14. Learn what is to be part of development team and how to work in Agile way of working, maybe check this tutorial here on: Agile, as well this tutorial for Scrum and maybe check what is even pair programming here: Wikipedia Pair Programming
  15. Specialise in a certain areas like Front-end development, Back-end development or even full stack development, Infrastructure automation etc.
  16. (Optional OR Actually Some people start with this one) To Become specialist and real good software engineer you will need to pass a good intro on Data Structures and Algorithms like this tutorial Data Structure and Algorithms on TutorialsPoint, or even better one like this one in Coursera: Data Structures and Algorithms.

Or maybe you prefer Video trainings, that is fine as well, and it is for free. Maybe not that effective as SoloLearn and CodeAcademy or W3schools or TutorialsPoint way, because you have the lack of some practice, by only watching the videos. But you can start like this as well, you just need to find some good trainings on the mentioned technologies above in YouTube, and you can start learning, just spend and hour or two a day. Check for example this video for JavaScript: JavaScript Crash Course For Beginners

Off-course you can do it in a classical way and use Books, but that is not for free, neither that effective anymore as using the similar tools as the one above. But if your profile is like that maybe you should find good books on the topics above and start reading and learning. Check this book for example: Computer Programming For Beginners: Learn The Basics of Javascript
Or maybe again, check this course here if you prefer more reading: JavaScript the right way

And usually, with some exceptions, buying the Books, is the way people starting very motivated, they buy their books on to given technology, start reading and giving up shortly after. As reading is not that effective for most of the people in comparison to the Applications — web and mobile, plus the tutorials above.

Explaining a bit the guide

How it basically goes with the hardest part, I mean for the points above from 1 to 3. (every step is like a mountain to overcome ) Points 1 to 5 in details: You will learn some basic language syntax. You will learn some data structures. You will start getting experience basic syntax and data structures. You will learn more advanced syntax structures and operations. You will learn to use more advanced algorithms and code flows. You will are able to read code and debug code. You are able to write more and more complex code. It Becomes an intuition to you :). — here you are ready to start working on professional level.
For the points in the main list, after point 6 to 15, you do not have a choice, this is part of the developers daily life, the team you join will lead you what to use. No other way. But if you overcome points to 5, you can really start developing pretty easy. You can off course in advance spend some time and to read about or to try the tools, frameworks or technologies I mention in points 6 to 14.
Anyway it won’t happen, you won’t become JavaScript developer if you are not dedicated and if you don’t spend a lot of your free time. As well you should never give up. It is really hard, but if you do not give up, you will get there. For some people it is easier and faster, for some people is harder and takes a bit more time. The secret is never to give up, and to be brave and keep trying, reading, excersing and searching and applying for jobs.

As well have in mind, that following only the tutorials above (points 1–15), you will not become like Top Software Engineer for Google, Amazon or Facebook, because you still will miss the math science, and programming algorithms and theories bellow. But you will be able to work as a Junior to medium developer in most of the companies in the market at the moment, and get really good salary. And later on get deeper dive into that as well. Or Maybe, actually if you are brave enough you should even start with the deeper stuff you can go to point 16, and after that return to point 1.

— — — — — — — — — — — — — —

All the links again in one place:

Free courses, trainings and tutorials:

https://www.sololearn.com/Course/JavaScript/ https://www.w3schools.com/js/ http://www.tutorialspoint.com/javascripthttps://www.codecademy.com/learn/introduction-to-javascript https://www.udemy.com/courses/search/?ref=home&src=ukw&q=java%20script&p=1&price=price-free http://jstherightway.org/

Tools and IDEs:

https://code.visualstudio.com/ https://www.sublimetext.com/ https://atom.io/https://www.eclipse.org/downloads/packages/release/2019-03/r/eclipse-ide-javascript-and-web-developershttps://notepad-plus-plus.org/

Coding best practices info:

https://www.tutorialspoint.com/developers_best_practices/

JavaScript Libraries:

https://jquery.com/. https://www.polymer-project.org/

JavaScript Frameworks

https://www.w3schools.com/angular/default.asp https://www.w3schools.com/nodejs/default.asp https://www.polymer-project.org/

Technologies around JavaScript:

https://www.w3schools.com/html/ https://www.w3schools.com/css/default.asp https://www.w3schools.com/sql/https://www.w3schools.com/xml/default.asp https://www.w3schools.com/js/js_json_intro.asp

Code repositories and CI tools:

https://www.tutorialspoint.com/git/index.htm https://github.com/ https://about.gitlab.com/https://www.tutorialspoint.com/jenkins/index.htm https://www.npmjs.com/get-npm

Way of working:

https://www.tutorialspoint.com/agile/ https://www.tutorialspoint.com/scrum/index.htmhttps://en.wikipedia.org/wiki/Pair_programming

Types of JavaScript development

https://en.wikipedia.org/wiki/Front_and_back_ends https://en.wikipedia.org/wiki/Front-end_web_development),

Data structures and algorithms:

https://www.tutorialspoint.com/data_structures_algorithms/index.htm https://www.coursera.org/specializations/data-structures-algorithms

Videos:

https://www.youtube.com/watch?v=hdI2bqOjy3c (Check the description of the video for more courses)

Books (well this one is not for free):

https://www.amazon.com/Computer-Programming-Beginners-Basics-Javascript-ebook/dp/B077XYHBVR

--

--

Simeon Iliev

Software Engineer, Husband and Father, Dedicated Christian Believer