Approach to Projects

Sometimes the most difficult part about a project is starting. It can reduce a lot of stress and put you well ahead if you have a process for starting a project.

For example, something I commonly do is to spend time setting up the structure of the project and the processes needed to test and minify project files. That little bit gets my head into the project and then I can get going. Otherwise, I feel like I languish before I can really get started.

The other day I read a great article at Sitepoint about how to approach projects. I thought it organized all the starting tasks really well. These starting tasks are not only important, but I realized they can accomplish the same thing of getting your head in the project and getting you going in the right direction.

Give it a read here.

What approaches do you take?

Finding JavaScript Libraries and Frameworks

Several weeks ago I wrote about javascripting.com. At that time I had just discovered the site and found it very helpful in providing information about JavaScript libraries and frameworks. Since that time I have created a video on the All Things JavaScript YouTube channel that talks about three sites that can be used for gathering information about libraries and frameworks.

The tutorial not only provides more information on javascripting.com, but also talks about microjs.com and Github’s explore page. If you have found javascripting.com helpful, you may also enjoy the information on the other sites. He is the tutorial that was recently releases on the YouTube channel.

Selecting DOM Elements with Pure JavaScript

When I first encountered jQuery, I loved it because of the simplicity provided for selecting DOM elements. Back then, selecting DOM elements with pure JavaScript was even more involved than it is now.

Because of the ease jQuery provides, it is very easy to rely on it completely. In fact it is not uncommon to see JavaScript questions posted on Stack Exchange that are really questions about jQuery. In some cases the two have become synonymous. However, as of late there has been a push back against jQuery from the JavaScript world saying it has neared the end of its life.

Whether you believe that or not, I feel it is important to not become so reliant on jQuery that you forget basic tasks in JavaScript. Let me give you a scenario. Lets say you need to do some simple JavaScript coding for a basic web page. It may consist of 100 lines or so. As you get working on it, you realize you need to load jQuery because you don’t know how to affect the DOM any other way. That is a huge library to load for something so small. I believe it should be done in pure JavaScript.

In this tutorial we cover how to select DOM elements using pure JavaScript. I think it is a good idea to know the pure JavaScript way of doing certain tasks that might be done with JavaScript libraries and frameworks. What do you think?

Enjoy the tutorial.

Another Book from the You Don’t Know JS Series

Several weeks ago I reviewed the book ES6 & Beyond. I found it to be the best source for ES6 features in JavaScript. I am about finished with another book in the You Don’t Know JS series entitled: this & Object Prototypes.

Kyle Simpson, the author of the You Don’t Know JS series, is very knowledgable when it comes to JavaScript, and he doesn’t disappoint in this book. I especially found the detailed discussion regarding the keyword this very informative. this can be difficult to grasp fully and Kyle deals with it thoroughly. He organizes the discussion in such a way that the concepts affecting this and its value are easy to compartmentalize.

The second part of the book is object prototypes. Before diving into prototypes, he makes sure to cover objects in good detail. So you have a grounding as you dive into prototypes. I also found this section very informative and gained new insights.

If I were forced to point out a negative with the book, it would be the ongoing discussion of whether JavaScript uses the right terms for Object Oriented design, inheritance, and so forth. Kyle prefers the term Delegation Oriented design because of how prototypes actually work. These tangent discussions involved a lot of class theory and were insightful, but I found them less useful for the practical side of my brain which is usually looking for application.

If you would like to deepen your understanding of this and prototypes in JavaScript, it is a must ready. So pick up a copy and jump right in.