21 Tips To Become Better In JavaScript, Much Much Better!
JavaScript is a web programming language that is designed and used to make interactive web pages. Interactive is a fancy word which can be boiled down to the interaction between the user and the web page. This interaction is based on the functionality of the web pages and not any manual intervention.
For example, let’s say you are building a website which displays a current score of the ongoing cricket match. Now, a cricket-match becomes a nail biter in the death overs. As a developer, you can follow two approaches. First, just keep updating the value on the server and the user will refresh on his end which will reflect the latest values or you can refresh the page at the user’s end automatically as you update the value in the server. Needless to say, the latter will be preferred by the user and is more efficient. This is what JavaScript does. JavaScript eases the pain for user and provides an interactive user experience.
Today, there cannot be a web page which does not constitute JavaScript code into it. It has become the part and parcel of a developer’s professional life. As a matter of fact, it is growing day by day. Although JavaScript is hugely known to be used inside the web pages and provide the functionality to it, JavaScript is used at other places too which do not comprise of JavaScript. These may include Node.js, Apache Couch-DB and Adobe Acrobat.
Major web browsers today have in-built JavaScript execution engine for executing JavaScript. If you are a thriving web developer, you cannot escape the encounter with JavaScript. Today or tomorrow, you have to face it. Why not become a JavaScript master beforehand and be ready for it when the time comes? This is what this tutorial brings to you. It tells you how can be one step ahead then your fellow web developers and polish your JavaScript better.
1. Grasp The Basics More Thoroughly
I will start with a very naive concept and statement that you have been hearing since childhood. Learn and practice the basics. Many times it so happens that you are applying the logic with coding but forget that there is an already built in function for that like slicing an array. Sometimes, you get an error while running the JavaScript code and due to it, many other functionalities are also not working. Just a small colon or inverted commas can cause this. These things happen due to unclear basics. A simple loop like for, which or do while is used many times in a single program. Loops are very basic things inside programming. If you are not clear with the looping and other basics, it is really very hard to code and even get a chance to get hired for a company. It is very important to brush up your basics as they give you a strong base on top of which you can build the complex logics of a solution and strong reputation.
2. Use Functions To Define Different Modules, Even If They Are Small
Functional approach is a great approach in programming. Why? It divides your program in the modules that work together but is still apart. Let me take an example to clear it out. There is a function to calculate Root Mean Square of the numbers. For this, you need to square the numbers, take their mean and their take square root of the mean. There are three steps involved in it. Therefore, we can make use of three functions. But see, all these functions are interlinked. The output of one goes to another and we get the final answer then. Now, let’s say instead of three functions, you are using only one function to calculate RMS using various variables. As you see, the final answer is wrong. It will become really hard for you now, to check where what went wrong in such a big function. Instead, having three small functions will help you analyze quickly. Hence, use functions to define various modules of the code, even if the functions are small. This tip would work like magic to help you become a JavaScript master.
3. Keep Cross Browser Compatibility In Mind
When you work in web development, the main issue to keep in mind is cross browser compatibility. Cross browser compatibility briefly means the representation of your website on different browsers. Different websites render HTML differently, hence the browsers have compatibility issues. These issues are not easy to resolve once your website is complete and you did not check it online. For this, earlier people used to follow the exhaustive and conventional method of checking the website on different browsers and versions individually. Not anymore though, today online browser compatibility testing tool such as LambdaTest have taken that headache for you. You just need to enter your website name and select the versions and browsers (along with the operating systems) on which you want to test the website. This will create a virtual machine on LambdaTest servers and you are good to go. You will get detailed report along with screenshots and you can also run your website as if it is running on the browser.
4. Use Object Oriented Approach
Object oriented approach is the most famous approach used today in programming. Started from C++, object oriented approach has been exponentially popular since. All of the major languages are today invented in object oriented style only. An approach oriented towards an object is called an object oriented approach. An object becomes a basic entity then. This object is then taken as a base and used to apply properties and functions to the page.
For example, I create an object car. This object can be wrapped with many functions such as color, specifications, price, etc and everything that we do is on this object. We can select car.Color(“red”) to change the car color to red. Similarly, we can change the price by car.Price(“50”). An object is a base for everything that you do in the programming language. Now, it is not important to create an object and use them. They are used in object oriented approach but you can also go through the conventional approach of just writing the code top to bottom without any functions and object. This is too exhaustive and is never recommended.
As we discussed above, a functional approach should be used while writing the code and if we are using functions, we use objects. So, try to convert your exhaustive code to the object oriented code in the beginning and practice writing your code always in object oriented style. When you will read the code of others, you will be looking at object oriented approaches all the time. So it is better you have your hands on it, if you wish to become a JavaScript master.
5. Use Tests Should Always Have A Near Perfect Code
This part is as important as the development part. You can never know while developing that where your code is wrong. JavaScript is used on a website or to develop a web page. A web page is for a user who will be accessing your website. A user can input many things when it comes to your JavaScript forms, let suppose. You, as a developer obviously will not invest your time in checking each and every possible input that can be entered by a user. This is where testing comes into play. Testing helps you with finding bugs that are highly unlikely to check while development. They are of different types like when a user enters the number on a text field etc. Testing helps you write more efficient code and develop a great website. This in turn, will increase your understanding related to the product aesthetics & help you excel to become a JavaScript master.
6. Error Handling
If you are into coding, your code is prone to errors. Normally, if you are working on a big project, errors are a common thing. And they should be. They open other possibilities that you might not have thought about while writing the code. But these errors are needed to be handled correctly or else they disturb the flow of the program. Now, console.log is a conventional method to log errors. But they are extensive and time consuming. To handle the errors more efficiently, you can use the Error Objects. An error object looks like,
1 2 | const err = new Error(‘Please improve the time complexity of the code’) console. log (err.message) // please improve your code |
This gives you the power to display an error message too. You can also use try, catch and finally to apply validations on your code. If an error is found in the code in the try block, you can jump to catch block to either execute an error code or display some message. Finally, block executes the code in all the cases, whether there is an error or not. A sample code is given below:
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 | try { //code } catch (Exception e) { //code } finally { //code } |
7. Use Tools According To The Problem
JavaScript is not a new language. It is as old as I am. And when a language survives this long in the highly competitive computer science world, it has something special and powerful in it. When something so powerful exists, web developers generally give it more power by creating libraries. These are very powerful libraries and ease out many things. Although sometimes a library is created for a specific purpose like Reasonml created by Facebook for themselves. The reason is a JavaScript flavor 52% of developers don’t know about! Now, as a developer, you have some specific requirements for the project you are working on. This special requirement can be served via a specific tool. For example, say you are building a website for shipping apple accessories, it becomes necessary that your website delivers a smooth UX on every device, especially on iPhones, iPads, macOS. But how would you make sure of it when you don’t have access to them all?
8. Understand DOM
DOM or Document Object Model is created of a page when it is loaded into the browser. This has various levels that help accessing the various elements easily. With numerous front-end frameworks, & worldwide adoption of jQuery, you may feel that understanding DOM nowadays, is a bit redundant. I feel otherwise, to me understanding how the DOM works are very important to become a JavaScript master. JavaScript has the power to change any element inside HTML. It can change your background color, your font anything. When JavaScript has so much power and is used so intensely inside HTML, knowing what will affect what is a must. As a programmer, you should know how changing child property and parent property simultaneously will affect the overall structure of the page. DOM is one of the basic and most important things for a JavaScript developer and he should be an expert in this.
9. Handling Memory Leaks
Memory leaks are a very common issue in a JavaScript environment. A memory leak happens when you have reserved the memory but you do not need them or you are not using them. Memory is reserved through variables and objects. The outcome for this is slowing down of runtime and ultimately slow down of the website. This is not appreciated among the JS community. If you have an edge on this among all the developers, you will be preferred among all. There are many reasons that can cause a memory leak. These can vary from accidental global variables to timers (setInterval() ) declaration. These things are needed to be kept in mind. You can check for memory leaks by using the developer tools of the browsers and then continue modifying your code. Refer our article on eradicating memory leaks in JavaScript.
10. Understand The Code Of Others
No matter how good you start to code in JavaScript, there will always be someone better than you. No matter how great your logic is of a problem, there will always be a better logic for the same problem. And accepting this fact shouldn’t be a problem if you are on the path of becoming a JavaScript master.
Reading the code of other developers is a great way of expanding your JavaScript skills. It would be better to see the code of any random problem but it would be best to see the code of a problem you have worked upon. Work on the code whose solution fascinates you like a website. If you like a website and wonder how the developer achieved this, see the code. A problem has different solutions and it is better to know all to learn how to reduce the complexities of the JavaScript code. This will in turn ease out your website loading feature.
11. Asynchronicity
Asynchronicity happens in JavaScript when we execute asynchronous codes. Asynchronous code is the one that takes you outside the program flow and returns callbacks. This is just opposite to synchronous flow. Having its own advantages, asynchronicity is one of the most common things used in Javascript. Why do you wonder? Synchronous model executes the code one by one in flow. This creates problems when the code/ function is too big. A function which is too big will create the load on server and UI because the synchronous code does not allow anything outside the code to execute. Ultimately the website becomes unresponsive. This is not good for you as a developer and no customer would want to browse the website which hangs so much. So asynchronicity is the answer to this solution. Asynchronous codes execute outside of the flow. They allow other code to execute simultaneously and this makes them so popular in JavaScript today. Any developer today who works on JavaScript is required to know asynchronicity on his fingertips. Understanding asynchronicity would give you an edge among those who do not, helping you become a JavaScript master.
12. Read Books
Reading from the book has few advantages of its own. First of all, whenever someone writes a book on a language, he has full grasp and experience in that area. That is very valuable for a beginner. The author can explain in a way that is easy and quickly understandable. On the other hand, this is not the case with the internet. Internet is full of ambiguity. Many times you can come across two different contradicting points that are hard to decide. Trusting on a page on the internet is hard. When you write a book, it needs publishers and a good audience. An audience who are ready to devote their time, a lot of time actually, on a single book. This makes a book great and great books are of good authors.
13. Bookmark Reliable Sources
In the above point, we discussed that the Internet is easily accessible to everyone and hence anyone can put anything on the internet that he likes. There is no one to judge, review, etc. The other side of the internet is pretty cool. This side enables us to access anything within second and very specific. For example, if I want to learn array in JavaScript. I can just search array in JavaScript and I will read only about arrays in JavaScript. This is not the case with books where you have to find the arrays and read minimum 15-20 pages on it. Combining these two points, we come to a solution that the Internet is good till you are viewing a reliable source only. Reliable sources can be anything like a renowned programmer/author, giant companies like Microsoft or it can be critically acclaimed websites like w3schools. Always bookmark reliable JavaScript source on the internet. JavaScript is not a theorem that once stated will remain forever. It grows. It changes constantly. Bookmarking these pages will help you access anything particular in seconds. One such reliable source is the Mozilla Developer Network.
14. Subscribe Reliable Channels On YouTube
Reading and viewing almost go side by side. It is a proven fact that you can remember more easily when you watch something rather than reading about it. So, many people opt to view a video about the concept they want to learn rather than reading about it. But, this is known to everybody. So, the problem that we faced on the websites is also faced here. Anybody can upload a video with any content. I have seen a lot of times while learning a concept, the comment section is full of comments like, “The thing you said about arrays is not correct”. “Fake video”. “That thing you told on 4:30 has been deprecated” and many more. You cannot rely on any channel that is for sure. Therefore, you need to subscribe to the reliable YouTube channels that will teach you JavaScript in a most beautiful way. Again there are many academies and companies which upload these kinds of content every day. An example being, LearnCode.academy.
15. Subscribe To Newsletters
Newsletters are like newspapers. They bring you latest stuff at your doorstep which is email in this case. Many times you will jump on to various websites that present tutorials or maybe official website of that language. They are reliable sources since they are used by millions of people and the company created the language. Whenever you arrive on such websites, there will be an option to subscribe to their newsletters. Newsletters will email you the latest update on the topic on which you were looking or any update on the website. This will give you a good start among other people and will keep you updated and ahead in that technology. It will definitely help you in your coding and solving skills. It might happen that some feature you coded to apply a functionality has come now inbuilt in a library. You just have to include the library and your function is reduced to a single sentence. Keep in mind such happenings and be aware in your technology to become a JavaScript master. Don’t forget to check this comprehensive list of the top 75 Automation Testing Blogs, News Websites & Newsletters in 2019
16. Stay Updated On Twitter
Once you are done with subscribing to newsletters and YouTube channels, the next network on the Internet to follow is Twitter. Twitter is hugely popular for being the oldest and most genuine platform where I know who is real and who is not. This increases trust. If you are a fan of someone, follow him and there will be no better way to be updated than his own profile. It is for a fact that the majority of famous people are active on twitter only. In our case, we need to be updated about the latest happenings and releases on JavaScript. Some tricks maybe. For this, follow good JavaScript masters, developers, or companies focusing on JavaScript on twitter. This way, you can even get a notification before the feature is launched since many announce it beforehand.
17. Follow Developer Communities Such As Stack Overflow
Stack overflow is one of the most popular websites among the computer science engineers. It has been one of the major sources of understanding complex coding problems and concepts. There is no surprise that many companies follow stack overflow for their problems too. If you are not signed up onto the stack overflow, then follow the tag about JavaScript so that you are always aware of the problems people are facing in JavaScript. Not only that, but you can also contribute by helping other people by giving the solutions which you could not have done on YouTube or any other website. This will help you brush up your skills. This will increase your points on stack overflow which makes you popular among the community and there is no doubt that many good big recruiters search for good coders on stack overflow. Landing at such a firm will help you again sharpening your skills to become a JavaScript master.
18. Transpiling Your Code
Code transpilation is something that you are going to face in today’s time. As we are progressing towards the invention and transformation of the new technologies, we tend to forget that older technologies still exist in the market. Cross browser compatibility issues of JavaScript being the main among them. The older browser still exists in the market today. They render the JS code differently than what the newer browsers will. Maybe they won’t render anything at all. This creates a gap between the developer and the audience. So, a developer should always be prepared for such cases and keep in mind his audience. To find out these issues in the first place, you can use online tools such as LambdaTest and visually confirm where the problem is. Once you have defined the cross-browser issues, you can go ahead and change that part of a code or transpile that piece of code so that it works in all browsers, old and new. This, obviously, can be done to a certain level due to the massive rate at which technology is growing. Code transpilation is vital to become a JavaScript master.
19. Go For A Framework
Since browsers already run JavaScript engine, there is no need to develop something new. If you are using some functionalities again and again or are planning to use something repeatedly, you better build a beautiful framework that will not only help you but making it open source will help everyone. JavaScript has seen many frameworks in its lifetime. React.js, Node.js, Reasonml are just to name a few. Even JQuery is built on JavaScript. So, while you are on JavaScript, learn one or two basic frameworks. Today, good companies and good projects don’t go for the exhaustive approach of writing everything from scratch. They prefer opting for frameworks and libraries. What is the point of learning so much JavaScript when you cannot understand the code of the people written in a framework? Learn one or two frameworks. Here are the top 11 JavaScript Frameworks for 2019
20. Try To Solve Complex Things Regularly
In addition to finding the solutions and developing websites, accept the challenges as much as possible. Challenges can be in any way such as thinking of a very complex feature on a website, maybe just for practice. This will help you explore JavaScript to a level greater than others. For that single feature, you might have to learn a new library, a new concept which will definitely help you in the future. So, always try to come up with some complex things and you will learn more than anything.
21. Last But Not The Least, Remember The Phases
There are three phases in the process to become a JavaScript master or be an expert in any other area. First is the learning phase. The learning phase is the phase in which you start to get introduced to the new concept, the language, and the structure. This phase is important to create a base in your mind about the language. The second phase is the practicing phase in which you start practicing all the concepts and structure you learned in the previous phase. The last one is the expertise phase. This phase is the phase in which you enter after a lot of practice and experience. Expertise phase does not mean the end of the language. You have to keep evolving, it is just the experience that has helped you get there.
So, being a JavaScript developer is easy but being a JavaScript master is a little difficult. Just going through the concepts will not do enough. It is the should to HTML which gives HTML some life and you see beautiful elements performing tasks they never imagined. The points I shared above are very important in order to become a JavaScript master. Keep these on your tips and follow them one by one. Once you have achieved the goals discussed in each topic, you are ready to compete with anyone and develop anything (invented or not) in the website world. Cheers!
Published on Web Code Geeks with permission by Harish Rajora, partner at our WCG program. See the original article here: 21 Tips To Become Better In JavaScript, Much Much Better! Opinions expressed by Web Code Geeks contributors are their own. |
Umm, C++ was definitely not the first object oriented language as the article claims. Having coded in LISP I’d contend it was first, although many say the first language intentionally built for OOP was Simula. I’ll go a bit further and say the first “clean” and usable OOP was Object Pascal / Turbo Pascal from Borland (sad to see that go!) since it didn’t require pre-processors, modifications to basics of the underlying language, and so forth, which was the case for C++. All that said, the article is pretty good, although some simple examples would help newbies (including one of… Read more »