A year of Twitter memes

A little over a year ago, I made a silly meme to share with some people I know:

[![](https://i.imgur.com/wSU3656.png)](https://twitter.com/jusrin00/status/875238742621028355)

Within hours, my phone was constantly getting notifications from this being liked and retweeted, with the notifications continuing for the next two weeks. And so, my year of being a "FP meme lord" started.

## "Inspiration"

There was actually no specific thing to motivate me to make this meme. It was just some boring day after getting back from ZuriHac 2017, and I had been writing some very normal JavaScript, which, as you may know, means that you have to deal with just about anything encoded in strings. Strings? Strings. Numbers? Often strings. Enumerations? Definitely strings. Dates? Strings. Arrays? Sometimes strings. Objects? Strings. Data? Strings. You name it, it's a string. There's even one group of people, who even use a statically typed language with sum types, but suggest that using a list of strings might be preferable to writing boilerplate for enum-like sum types, since their language does not have a concept of a larger organization of types such as `class Enum` nor derivation for it.

Well, probably you'll find various explanations of [cardinality](https://en.wikipedia.org/wiki/Cardinality) online, especially related to programming, so I don't really want to try to bother you with it too much.

## Results, one year later

Now, a year later, I have over 70 memes on my [Twitter memes](https://github.com/justinwoo/my-twitter-memes) repository, which means that I pump out roughly one and a third of a meme a week. Many of my memes don't have very general appeal, as they're very specifically PureScript/Haskell related, but some of the more popular ones have been related to either anime or making fun of TypeScript/other languages. People often think my memes make fun of certain programming language(s), but really, the ones that don't name TypeScript are quite general. If anything, the one thing that is heavily targeted is that so many people love to repeat the saying "make invalid states impossible", but they don't bother with approaches and/or type systems that actually would help them encode information into their code in such a way to make that more viable.

## Why

Overall, I make these memes to amuse myself and share these with people I know directly, and post them on Twitter since they're publicly shareable. I admit, I have made some "illegal" memes, but I do not share them since I mostly believe in the ["Golden Rule"](https://en.wikipedia.org/wiki/Golden_Rule).

I guess the reason I'm able to make these memes now so "quickly" is that I'm always somewhat annoyed, angry, or just positively enthusiastic about some programming topic, and I have made plenty of these memes over the course of the year.

## Response

Since last year, I've gained an average of 62 followers a month, with a growth of 812 followers (599 to 1411). A lot of the people I had followed for years before started following me back also, coming from either seeing retweets of my memes or retweets of my PureScript blog posts. When I went to Haskell eXchange last year, some of the people I had not talked to the year before came up to me to talk about my memes, and at ZuriHac this year, many more came up to talk to me about the same. Even now, many of my Twitter followers seem to only engage with my memes and not with any of my other tweets like my PureScript blog posts, demos, or unrelated, but hopefully at least following me exposes them to some information (especially about PureScript/Haskell). I hope I can get more followers in the future to read my blog posts, which is the "actual" content of my Twitter, but maybe that's impossible. Maybe I should be making a meme to go along with every blog post, but seems quite hard to do.

## Conclusion

I guess there's no real point to this blog post, other than to just go a little bit over why I make these and what I think about what's happened with them. I will probably continue to make memes with similar content, so hopefully nobody expects me to pump out a masterpiece or something.

If this post made you want to read some "real" PureScript blog posts, check out my repository with titles and links to my posts: <https://github.com/justinwoo/my-blog-posts>