Blog
$
- High Modernism & Software Design
- What Might Happen If You Share It
- But What About the Bus Factor?
- Welcome to the Twitterscape
- On Working Alone
- Mocking Classes with TypeScript
- Museum of the Analog Native
- A Tale of Two Issues
- Notes on AngularConnect 2017
- The Covert Opt-In
- Going Static with Hugo
- Productivity Is Happiness
- The Elevator of Infinite Abstraction
- Some notes on Angular 2 AoT mode with Webpack, Sass & ngtools
- An Early Look at SKQW: JavaScript Audio Visualizer
- Why I Haven’t Fixed Your Issue Yet
- Components with Custom Templates in Angular 2 (beta.7)
- Angular 2, CommonJS and Circular Dependencies
- AngularConnect: Summary and Analysis
- The Republic of Virtue: Terror, Tolerance and the Internet
- Fixing Chrome Autofill: Mysterious Wrong Values Solved
- Automatic @import of Less/Sass files with Gulp
- angular-wordpress-seed: A complete example project with AngularJS and the WordPress JSON REST API
- A Note on Angular Expressions And JavaScript Identifiers
- Book Review: Responsive Web Design with AngularJS; plus Musings on Technical Writing
- Exploring ES6 Classes In AngularJS 1.x
- The Programmer Dad
- One Year of GitHub and Open Source
- Building a 3D Game with CSS + HTML
- My Thoughts on ngEurope 2014 and AngularJS 2.0
- Writing Multi-Element Directives in AngularJS
- CSS + JavaScript 3D Butterfly: A Case Study
- Experiences Building a Website with AngularJS + WP-API (WordPress API)
- A Note on Touch (Pointer) Events in Internet Explorer
- Enable Rich Social Sharing in Your AngularJS App
- A Killer Startup Idea
- What Makes A Good Tech Talk?
- Site-Wide Split Tests With Google Analytics Content Experiments
- Paginate (almost) Anything in AngularJS
- Auto-breadcrumbs with angular-ui-router
- Simple 1D Noise in JavaScript
- Confessions of an Intermediate Programmer
- Audio Visualization with Web Audio, Canvas and the Soundcloud API
- Using Disqus with AngularJS
- An Overview of the ng-conf 2014 Presentations
- An Ordinal Date Filter for AngularJS
- How I got Zurb Foundation 4 to work with IE8 with zero lines of code
-
High Modernism & Software Design
Brasília was envisaged as the dawn of a new Brazil. Purpose-built from the ground up on a pristine site in just 41 months, it attempted to remould and redefine what it meant to be Brazilian in its own logical, elegant, efficient image. Brasília by Ramon Buçard on Unsplash This style of large-scale urban planning is labeled high modernism by James C. Scott in his book Seeing Like A State. -
What Might Happen If You Share It
I grew up in the Winamp days. Napster, Limewire, cracks & warez, remember? Winamp was always open. And alongside my playlist of illicitly-downloaded mp3s would always be MilkDrop. If you don’t know, MilkDrop is absolute zenith of audio visualization software, and it spawned my love of generative visualizations. I’ve never got my head around all the maths involved. I’ve dabbled with shaders, but it still boggles my mind. Nevertheless, I would spend my evenings playing with the HTML Canvas and WebAudio APIs, exploring and building things just for fun. -
But What About the Bus Factor?
The term “bus factor” refers to the number of project maintainers who, if hit by a bus and incapacitated, would cause that project to stall. You can replace the bus crash with any other form of physical or mental incapacitation or even changes in life circumstances or priorities. The lower the bus factor, the greater the risk that a project might suddenly become unsustainable. Credit: Romain Chollet via Unsplash This is a topic close to my heart. -
Welcome to the Twitterscape
The land is flat and vast, extending as far as the eye can see. There is no sun, as such. Rather, an ambient glow with no obvious source permeates. Occupying this Plane is an ocean of people, gathered into groups large and small, distributed irregularly, coalescing and scattering like slow-motion static on a last-century TV. There are minstrels, artists, trinket-collectors and writers; bards and scientists, astronauts and soldiers. Most huddle together amongst their own kind, but at the periphery a continual jostling and switching takes place. -
On Working Alone
Earlier this year I quit my job to work full-time on an open source ecommerce framework. After three years working as the lead of a small team within a department of around 20 devs, I’m now back to working alone. Here are some reflections on the thrills and perils of the lone developer. Photo by Noah Silliman on Unsplash Communication & Efficiency The problems of development teams are essentially problems of communication. -
Mocking Classes with TypeScript
In unit testing, we often want to create mocks of other parts of our app in order to better isolate the particular component under test, and prevent us from dragging the whole dependency graph into our simple little unit test. Dependency graph of a component we want to test In the example above, we could mock out ListComponent, InboxComponent and MessageService and thereby forego the need to pull in all of the transitive dependencies (dependencies of dependencies). -
Museum of the Analog Native
If you, like me, were born in the 1980s, then you are a member of the generation of analog natives - those who grew up during that period in which the Information Age reached the masses. Of course, all of humanity up until that point lived fully analog lives; but uniquely, our generation is the one which experienced first-hand the transition from the analog to the digital world. So “analog native” is only meaningful in a world in which such thing as a “digital native” exists as a counterpart. -
A Tale of Two Issues
Zoid is a JavaScript library for simple arithmetic operations. The project has been around for a few years and has a sole maintainer, who works on it in her free time. Photo by Oliver Thomas Klein on Unsplash Here are a couple of issues picked out of the issue tracker - one from a couple of years ago and one very recent, presented without comment. Issue #37 - clicking button does not add 1 hecter88 commented on Jul 13, 2015 Hey. -
Notes on AngularConnect 2017
I write this from somewhere above Western Europe as I fly back to Vienna from the AngularConnect conference which just took place in London. Since a lot of the news and announcements from conferences typically take a long time to percolate out into the wider community, I thought I’d jot down a few notes of the things which I found interesting from the talks I saw (it was multi-track so I missed at least as much). -
The Covert Opt-In
About 13 years ago I built a web shop for my dad’s company. Like many small businesses, the company does not have an in-house development or IT department, so anything vaguely website-related tends to end up in my inbox. This is how I recently found myself in a conference call with Dom from IntegriMart1, a company which provides marketing tools for websites. This type of business is known as a “marketing tech” company, sometimes abbreviated to the crap-sounding “martech”, and a close cousin to “adtech”.