A factory function is any function which is not a class or constructor that returns a (presumably new) object. In JavaScript, any function can return an object.
Other articles you might enjoy
ABEM. A more useful adaptation of BEM.
BEM (Block Element Modifier) is a popular CSS class naming convention that makes CSS easier to maintain. This article assumes that you are already familiar with the naming convention.
Using CSS Counters
The CSS counters are variables which we can increment or decrement with the specific property. With the help of it, we can achieve some generic iteration like in a programming language.

Generating Wireframe Boxes with CSS and HTML5
I was recently noodling around with some new layout ideas for An Event Apart’s speaker pages (e.g., Chris Coyier’s or Jen Simmons’) and wanted to share the ideas with other members of the team. But what I really wanted to show was wireframes to convey basic arrangement of the pieces, since I hadn’t yet done any time polishing details. https://twitter.com/meyerweb

Redux: A Practical Tutorial
However, to summarize in a few words, the idea here is to show through practical, short examples how Redux works and what are its main pieces. https://twitter.com/brunoskrebs

JavaScript Performance Optimization Tips: An Overview
We’ll try to stick to the “Tools, not rules” mantra and keep the JS buzzwords to a minimum. Since we won’t be able to cover everything related to JS performance in a 2000 word article, make sure you read the references and do your own research afterwards. https://github.com/ivancuric

Super Tiny Website Logos in SVG
You may not realise it, but bandwidth is expensive. It costs you time, money, and battery power whenever you download a file larger than it needs to be. https://shkspr.mobi/blog/

Learn CSS Grid in 5 Minutes
Grid layouts are fundamental to the design of websites, and the CSS Grid module is the most powerful and easiest tool for creating it. https://scrimba.com/

A free guide to elements
Below are the essential tags for basic, minimalist websites. Consider meta tags for multiple devices and essential upgrades. https://joshbuchea.com/

Intersection Observers: the beginning
Today I spent about an hour in writing a few very simple Intersection Observer tests, two hours in running them in a few browsers, and now an hour in writing down the results. https://quirksmode.org/

Airplanes and Ashtrays
On 11 July 1973, 123 passengers lost their lives when their Varig 820 flight from Rio de Janeiro to Paris crashed due to a fire on board1. Only 11 passengers survived. The fire started when a cigarette was disposed of in the waste bin in the lavatory, where someone had gone for a secretive smoke. https://csswizardry.com/