Attention: The following article was published over 6 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.Egon: Don’t cross the streams. Peter: Why? Egon: It would be bad. – Ghostbusters (1984) In this post I’ll touch on the emergence of JavaScript reactive streams. We’ll look at a cool …
About the Author


Reinforcing The HTML5 Canvas With Fabric.js
Attention: The following article was published over 7 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.This world is but a canvas to our imagination. -Henry David Thoreau Dynamic Web Graphics The past… Applets In the previous millennium, HTML markup had limited support for graphics. If we wanted …
JavaScript Promises Are Cool
Attention: The following article was published over 8 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.“And when I promise something, I never ever break that promise. Never.” ― Rapunzel Many languages have libraries of interesting schemes called promises, deferreds, or futures. Those help to tame the wild …
MongoDB Geo-Spatial Mobile Demo
Attention: The following article was published over 9 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.Mongo: noun (pl mongo or mongos) – a monetary unit of Mongolia. Equal to one hundredth of a tugrik. Origin from Mongolian “silver” I’ve written about NoSQL DBMS [https://keyholesoftware.com/2012/10/01/is-nosql-the-sql-sequel/]. We know that …
Mapping Shortest Routes Using a Graph Database
Attention: The following article was published over 10 years ago, and the information provided may be aged or outdated. Please keep that in mind as you read the post.We often model interconnected data by cramming it in and out of table structures. Why don’t we simply model interconnected data as … interconnected data? I recently wrote that there are several …