Mark Grealish

Cats and wizardry.

Galway City Harriers New Year’s 5k

in running

  • Date: 2019-01-01
  • Time: 00:22:21
  • Distance: 5km
  • Pace: 00:04:53/km
  • Finished: 103/344 (30/100 normalised)

Previous race: Clontarf Half Marathon

A quick fast new year’s day run around Galway city to burn off the hangover from the night before. While we weren’t awarded medal for not dying on that long and lonely road, I did bag a sweet shirt. :D This marks my fastest single-run pace, my fastest 5k pace, and my first whole-race sub-4:30/km pace. I’m super happy with the results!

Don’t Like This Post

in me

In early December I began the deletion of my social media presence. My Facebook, Flickr, Mastodon profiles are all now gone. My Instagram and Twitter accounts are on the endangered list. I kept them so far because Twitter is still a great way for me stay keep in touch with friends.

Back in November I read Ten Arguments For Deleting Your Social Media Accounts Right Now by Jaron Lanier. Mr. Lanier’s book put into words feelings that I’ve talked about back in 2010. Since the time of the linked talk by me I’ve had an ambivalent outlook on social media:

  • Social media brings together a broad network of loose connections. It’s a great way to keep up with people.
  • Social media isolates and polarises.
  • Social media operates on a negative feedback cycle. Over time it tends magnify and worsen any problems you have.
  • The true customers of social media are anyone with the desire to change behaviour and the means to pay for it. Companies with a product to sell are only one among many.

That I built an social network of almost 100k users was a unique experience of the other side of things. One of my last projects in that job was to expand and personalise newsfeeds on a per-user basis. The only things that matter to social media are our “engagement”-our clicks and eyeballs and time. Click on a post, click on an advert too. Read a message, read a sponsored message after. Your happiness, your dignity, and your ability to connect in a meaningful manner with other humans are all irrelevant in such a context.

Last week one of my Twitter contacts tweeted out that they were sick of seeing the 2019 Golden Globes. Twitter decided they had to see it. Their tweet was the first and only mention I had of it in my own timeline. Social media balkanises us. There’s no common ground to find with other people without shared experience.

Separate to all this, I’ve been on a journey to rediscover myself, change the context of my life and build something new from the old. More and more, I felt like Facebook kept me locked into an unchanging negative newsfeed. It mandated how I interacted with people I hardly knew in the first place, let alone in the here and how. So I put up my phone and email and an explanation why I had to decided to leave. And I went.

While getting rid of Facebook wasn’t a panacea, it has left me feeling free in myself for the first time in years. The deletion removed a powerful sense of a lurking monolithic past that I had bring everywhere and make a part of my life. I don’t have to worry anymore about the thoughts and reactions of everyone who added me as a contact. I can be me.

North Sligo from Benbulben

in ireland

The north Sligo viewed coast from Benbulben

So shit, this climb was one for the bucket list. From Lisadell on the left to Bundoran on the right is about 30 kilometres in this view which encompasses the entire north Sligo coast, the Leitrim coast (all one kilometre of it) and the town of Bundoran in south Donegal. The peak of Slieve League is visible above far coastal fog.

Today, now, at this moment, I should be in Tenerife in the Canary Island, but I overslept by three hours and missed my flight. Surprisingly I’m at peace with this other than being angry over money wasted, because I can always go again in future! My in-the-moment fallback plan was to strike one off the bucket list with a climb up Benbulben in Sligo.


in iceland

Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik
Hólavallagarður in Reykjavik

Some will answer Hallgrímskirkja and others Harpa or the Perlan, but to me Hólavallagarður is the most remarkable location in Iceland’s capital, life and death intertwined like nowhere else that I’ve been.

From Oregon!

in family

My ex-wife has moved herself and the kids to near Bend in Oregon. The kids love it there-the Internet is better, there’s so much outdoors to get lost in, and it’s snowed consistently over the past few weeks. Only last night Garrett blistered his hands in the cold because he kept going out in the snow.

Caira and Garrett

Remap a JavaScript Object

in code

Eh, gods, this one bothered me a fair bit. At work our API returns some data that I’ve found I have to remap. As it happens with any organically-grown system, there are a number of small inconsistencies between different objects with similar attributes. For example:

interface Foo {
  ices: {
    type: 'vanilla';

interface Bar {
   icecream: 'vanilla';

interface Fizz {
   confectionaries: {
    ice_cream: 'vanilla';

I want to map all of these consistently so I could call (say) foo.ices.type. For this I found schm’s translate method through a founder’s blog post. Using Lodash’s _.set to go with _.get, I can set arbitrary paths as well as being able to read from them:

import { get, isObject, set } from 'lodash';

function translate(source: object, map?: object): object {
  if (isObject(map)) {
    return Object.keys(map).reduce(
      (acc, key) => set(acc, key, get(source, map[key])),
  } else {
    return source;


const map = {
  'ices.type' = 'confectionaries.ice_cream',
  'ices.taste' = 'appraisal.deliciousness'

My next step will be to create a higher-order function that takes the map and translates the passed object.