I was fortunate enough to speak at OKCjs this afternoon. OKCjs is our local usergroup, and I can say the best bunch of nerds I’ve ever met. I could write an entire post on how sweet, welcoming, and helpful these people are to beginners. In large part because of the people I’ve met at OKCjs, I am further in nine months than I could’ve hoped to be in years of self-learning.

Seriously, if you are in Oklahoma City, definitely check out OKCjs, and Techlahoma and see all the cool stuff that is going on around here. It might surprise you!

Today I spoke at Lightning Talks, which is essentially a mish-mash of short, very insightful talks. Other people who spoke included Nicholas Lindley, Jonathan Yarbor, Raymond Lewallen, and Adam Rackis. All of their talks were fantastic! It’s really great that we have so many knowledgeable speakers willing to share what they know in the Oklahoma City area.

In my short five-minute talk, I went over JavaScript libraries.

Basically, a library is a collection of JavaScript functions that you can include in your project. Someone has gone in and written out these nitty-gritty functions so you can have the benefit without the nitty-gritty. I am deeply appreciative of anyone who writes libraries.

A framework is also a collection of JavaScript functions. Essentially ‘library’ and ‘framework’ can be used interchangeably. However I did find an explanation of the differences between the two that I really like. (Note: I will say library throughout this post, but I am referring to both libraries and frameworks.)

A library will allow you to pick and choose which functions you would like to use. Much like a physical library doesn’t require you to read every book in a specific order, and you can check out whichever books you want.

A framework will provide a very specific way to write your code. And much like the frame of a physical structure, if you don’t follow the framework layout specifically, things can begin falling apart.

There are loads of different libraries out there, and I’m not in the business of telling people that one tool is superior to another. I will tell you to research a library before you start using it, and really consider whether or not you need it. A library is adding complexity to your project. If you project doubles in size from your library, consider if you can do complete the project without the library.

I said this several times during the talk, but I really believe it can’t be said enough.

If you can’t write the code without the library, please don’t use the library.

It may seem nice in the short term to just get your work done and out the door, but you will do far better in the long run if you can write the code without the library. Don’t take shortcuts in your learning, you’ll end up shortchanging yourself.

Also beware of using multiple libraries together, as this can cause compatibility problems. Using more than one library isn’t bad, you just need to research and make sure you can use them together.

And whatever you do, make sure the version of the library you are using has the word ‘stable’ in there somewhere. You don’t want to use a version that is still in development!

You can see the slides from my talk here.

Questions? Tweet me!