through the mists of time

A little behind the times I know but Happy 2018 to all of you. I hope you had a great break over the festive period. I was lucky enough to have nearly two weeks away from work — some welcome time to do the things you never get a chance to do with a busy career in IT.

Yes, a perfect opportunity to fire up my WebStorm and cut some code!

Should auld acquaintance

New Year is a time for looking back, remembering old friends and those you have loved. This year my thoughts were with Userland Frontier — fine memories indeed of…

curlers and headers

Following hot on the heels of my previous article about creating a JSON Feed newsreader with FileMaker, this post looks at how to enhance that solution by implementing an HTTP Conditional Get — to ensure that the feed is only retrieved if it has changed since the last time.

Solution file

I’ve created a FileMaker database to go along with this post which you can download here. …

the joy of json

A couple of weeks ago, Brent Simmons and Manton Reece announced the release of JSON Feed. This is a specification for a news feed format in JSON.

Wheel recast

I can hear you now. A new news feed specification? You cannot be serious! 🎾 What’s wrong with proven specs such as RSS or Atom?

And perhaps a few quieter, more timid voices. What’s wrong with XML?

And there you have it. JSON is a very straightforward format for software development, and because of that it’s now supported out-of-the-box by all manner of software products, and because of that it’s use as a…

the state I am in

Vuex is the official Vuejs library for managing application state. It borrows heavily from the concepts of Flux, implementing the same uni-directional data flow approach that I find works so well. The diagram below, slightly simplified from one of Vuex’s own, shows the basic data flow involved.

route with a vue

A router is a key component of most non-trivial javascript front-ends. In Vuejs, the router is not part of the core framework, but is split out into a plugin called vue-router.

Vue-router is published by the vuejs organisation, so it’s an official plugin and thus, not surprisingly, it is very well integrated with the latest and greatest releases of the core Vuejs framework.

If you use vue-cli to create your vue projects — and I heartily recommend that you do — then if you use the webpack template it will give you the option to include the vue-router plugin from…

finding the right slot

I’ve been taking a look at vue.js recently. It has many similarities to react, but I find it more accessible — i.e. easier to learn. And the separation of html into templates gives it that familiar and comfortable feeling that I often yearn for.

Vue.js also has an optional plugin called Vuex. This introduces state management along the lines of Flux. In fact, Vuex follows the Flux architecture pretty religiously and, since you may remember that I am a big fan of Flux from way back, you will not be surprised that I strongly recommend Vuex for anything more than…

the cerebral router

routing redux

With a remarkable display of my fabled good timing, just as I hit the publish button on my original article on Cerebral routing, the Cerebral team released a refresh of their excellent framework and website!

Although the concepts are very much the same, this is a re-issue of the article with minor changes including updated links to the latest and greatest — I have also converted the example code to React from Snabbdom based on overwhelming feedback (yes, that means from one reader!) that introducing Snabbdom was distracting from the main purpose of the article.


I always enjoy evaluating different…

the cerebral router

I always enjoy evaluating new JavaScript frameworks. The plethora of different ideas can be frustrating in terms of agreeing a direction and getting on with the real work — but as a purely academic pursuit it’s great fun!!

Cerebral is one of the frameworks that I have recently been following and which has managed to maintain my interest and understanding beyond the introductory video. It was their approach to routing that grabbed me first:

When using the Cerebral router you have to leave your previous experience with routers at the doorstep

As my previous experience with routing has always been…

anatomy of a query

This is the second in a series of articles about using Om Next to re-create the flux-chat example provided by Facebook to demonstrate their Flux framework for building user interfaces with React.

In the first post, we looked at normalization of application state data in Om Next. Moving on from there, this article looks at the Om Next query and how it influences data normalization.

Flux Chat React Components

In Om Next, the overall query for an application is generally composed from query fragments that are defined in the React components that make up the overall app. …

get in there my son!

It’s hard to work out where to start with Om Next. The docs are starting to build up nicely but it’s still a steep learning curve, or at least it was for me!

Application state is held in a global atom in Om Next. When you load your app, typically one of the first things you will do is populate that global atom with your initial state, so I’m going to start there. …

Colin Fallon

Software development. JavaScript and other stories.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store