JavaScript is everywhere! In the front-end, backend, and database!? As if its not obvious, I’m a huge fan of JavaScript! In my constant obsession with learning as much as possible, a coworker told me about a free online training and certification program for MongoDB. MongoD is the leading “NoSQL” database that is powered by JavaScript. Your data is JSON and you can execute JavaScript functions as queries. Its really an incredible thing!

mongo_nodeThe main MongoDB website offers free online training and certification in a number of different flavors including Python, JAVA, and node.js as well as for DBAs! This is real training too – instructor lead with homework and a final exam. The homework and final are graded – each worth 50% of the final grade, and you must achieve a passing score in order to receive an actual certificate.

The courses are typically broken up into an 8 week program. Each week starts Tuesday morning, and presents you with a large collection of short, easy to digest videos lead by an instructor that have been previously recorded. At the end of almost every video, a short (ungraded) quiz is presented. Most of the time the quizzes are easy, although sometimes they will throw a trick or two to make sure you are on your toes.  There is no schedule to the course material, you simply watch whenever you can.  The great thing is that the videos are so short that you can squeeze in parts here and there throughout the week and never feel really burdened.

In addition to the course video material for the week, also provided are 2-4 homework exercises. Each homework assignment took me anywhere from 15-60 minutes to complete. As you submit each homework assignment, it is graded instantly in real-time so you know if you submitted an incorrect answer or not. Typically you have 3 attempts before the question is locked down.  The homework for each week is due by the following Monday @ 9pm EST (with the next weeks course material typically made available the following Tuesday morning).

During the 8 week process you can track your progress and always refer back to previous week’s content at any time should you need.

*Note: the node.js course is technically only 6 weeks, as the final exam is made available during week 7 and week 7 covers Mongoose with node.js which is not actually in the final exam.

This course also goes from beginner to advanced – covering everything from installation and basic querying to advanced topics like indexing, aggregation, and server administration with topics such as Replication and Sharding.

If you don’t consider yourself a node.js programmer or have very beginner level experience – no worries. The node.js requirements are pretty basic, and if you know JavaScript you will do fine. The core of the course has you revisting a super basic blog engine written in node that you will need to fill in missing pieces to get it working properly. Pieces like inserting new posts, returning a list of posts based on tags, submitting comments, etc.

In addition to writing some basic node.js code for your homework, you will also be working extensively in the Mongo shell, which is a command line prompt that allows you to interface with the MongoDB server and execute queries against collections.  The course material typically provides sample databases you will download and import to run queries against (and at times have to in order to complete the homework assignments).

The final exam was 10 questions, with about half of those requiring coding a custom throw-away app in node or writing a sophisticated query in the shell.  The other half was multiple choice or check-all-that-apply type questions based on analysis of a query, scenario, or output provided.

When I started the course, I had literally ZERO knowledge or experience with MongoDB and little experience with node.js. By the end of the 8 week program, I was amazed at how well I was doing with the homework assignments and writing really advanced queries as well as some interesting node.js code!

If you’re at all interested in the concept of a NoSQL database and/or node.js – definitely check out this great free resource:

https://education.mongodb.com/courses

The next MongoDB for Node.js Developers course starts on Jan 13, 2014.