Tuesday, June 30, 2015

Learn Node.js through NodeSchool

As I am building more demos for the Red Hat Mobile Product, I wanted to become more involved in the Node.js community in addition to learning different aspects of Node.js.  One way to learn Node.js as well as become involved in a community of Node.js'ers is to find a local NodeSchool chapter or start a new one.  We have started an Augusta, GA chapter of NodeSchool and trying to start our first event.  You can find our site at http://nodeschool.io/augusta/ and the repository at https://github.com/nodeschool/augusta.  So I wanted to include more information below about NodeSchool so you can learn how to be involved.

NodeSchool is an open source project run by volunteers with two goals: to create high quality programming curriculum and to host community learning events.

Interactive tutorials

The defining characteristic of the workshopper is the interactvity and automation. Workshoppers are made up of challenges of increasing difficulty. Each challenge starts by explaining a concept, and then presents a list of requirements for solving the challenge. Learners then try and write a computer program that satisfies the criteria.

When they feel confident about their solution they submit it to the workshop for verification. The workshop runs their solution and checks if all requirements were satisfied. If any are wrong or missing the learner gets contextual feedback and they can try again. If their code passes all of the criteria then they pass the challenge and move on to the next challenge.

All of this happens in an automated way. Workshoppers can be thought of almost like a unit test suite that the learner must make pass by implementing the correct code.

A wide range of topics

All of the NodeSchool workshops are written using Node, but the subject of a workshop doesn't necessarily have to be about Node. The NodeSchool community has developed some really great tools for authoring new workshops. If you have an idea for a workshop we encourage you to check out our Building Workshops page.

Events around the world

We have had communities on every continent except Antarctica host a NodeSchool event. Anyone can host an event, and as a community we try to compile useful information, guidelines and tips for making events fun and welcoming for everyone. See our page on hosting an event to learn more.

Get in touch

We use GitHub for organizing NodeSchool. The best place to get in touch is our organizers repository. You can open a new Issue on that repository and organizers will get notified and can respond. This method is a lot better than directly e-mailing any of the organizers.

Hear and see people talk

In episode 55 of the NodeUp podcast Mikeal Rogers, Max Ogden and other community members talk about NodeSchools.  At Cascadia JS 2014 Jason Rhodes, from Baltimore, talks about running NodeSchools.