Nicholas Cloud's Blog, page 4
May 11, 2017
ES2015 Generators
I have written a guest blog post, ���ES2015 Generators���, on the eNotes developer blog:
Recently I had the opportunity to re-write the content tree control that we use to manage content nodes in www.enotes.com. We���ve all worked with the DOM, which represents HTML nodes in a tree structure but has some challenging deficiencies and a relatively grumpy API, the tortures of which prompted me to take a stab at a smoother tree-like design. During this process I experimented with several approache...
December 12, 2016
LaunchCode 101, Unit 1
The first unit of LaunchCode 101 is almost complete. Class size has probably halved (based on visual inspection, not exact numbers) since the beginning because, though the material is introductory, it is also challenging. Those who remain have made serious personal effort to stay on track, and the buds of knowledge are finally beginning to bloom.
What’s really interesting to me is how different minds approach the same problems. Just tonight I reviewed three assignments wherein each student ac...
November 15, 2016
You are the most important thing in your life right now
“Whatever your political persuasion, however you voted (or didn’t vote), for whomever you cheered or jeered, there is one truth that must be faced—a truth obscured, I think, in the fevers of our own tribal instincts—and that is this: a person’s salvation is of their own making.” (read more on Medium)
August 29, 2016
New presentation – Github is Your Resume Now
This month I delivered a presentation called Github is Your Resume Now at LaunchCode STL. Slides are available through the presentation link. The presentation was not recorded live, but I plan to make a screencast available in the near future. Thanks to all theLaunchCode candidates who showed up, I enjoyed meeting everyone!
June 1, 2016
ES2015 Maps
I’ve published an article on Medium.com about the ES2015 Map and WeakMap types.
October 8, 2015
The necessity and beauty of motion
I get lost in my own inner philosophical world when I ride my bike. I don’t know, maybe it’s the scenery. Maybe it’s just all that fresh air rushing by, or the pulse of blood through every inch of my body. It gets me thinking, whatever it is.
And today, as I rode, I thought about motion. Have you ever tried to stand still on your bike and maintain balance? One might think that standing still is the safest way to be, that moving on a two-wheeled bit of aluminum at high speeds is the danger. Bu...
October 7, 2015
JavaScript Frameworks for Modern Web Dev
I am thrilled to announce the publication of my newest book,JavaScript Frameworks for Modern Web Dev, available now from APress!
A year ago my friend and former co-worker Tim Ambler approached me with aproject: a list of strongframeworks and libraries in the JavaScript space that can each be effectively introducedin a singlechapter. Over the last twelve months we wrote numerous drafts and revisions, and created a somewhat frightening amount of source code for these sixteen topics:
Bower Grun...April 3, 2015
Learning Gulp? Start here.
My only beef with Bleeding Edge Press is that I was asked to review Developing a gulp EdgeafterI had already spent weeks pouring over documentation, github issues, and StackOverflow questions ad nauseam while trying to learn Gulp on my own. Developing a Gulp Edge is the book with which I should have started.
This book covers all the Gulp basics by having the reader create and run standard tasks in a demo application, publicly available on github. Anyone familiar with build systems will find c...
January 6, 2015
Conditionally adding object methods
I stumbled my way into an interesting experiment today where I discovered that, within a JavaScript constructor function, one might conditionally add a method based on whether the prototype has that method already or not.
.gist table { margin-bottom: 0; }This code ensures that when the method `bar` exists on the prototype for Foo, the instance implementation of `bar` added in Foo’s constructor won’t be applied. So the instance implementation is kind of like a “default implementation”.This m...
November 16, 2014
hintme
I use jshint to lint JavaScript code in my projects. Typically I include a project-wide .jshintrc file which contains a set of the linting options I wish to be applied whenever jshint scans my code. I keep a gist with a list of all possible options and the settings I normally use. This works pretty well but I thought it might be nice to create a tool that would interactively prompt a user for jshint settings and then create a .jshintrc file based on user response. So I created hintme, a small...
Nicholas Cloud's Blog
- Nicholas Cloud's profile
- 6 followers

