How an FKFD Comic is Made


2024-02-20: Fixed broken links in footnotes thanks to anonymous reader via email

I don't consider myself a cartoonist, let alone good cartoonist. I am unqualified at comics in all aspects, you know? I can hardly draw anything that's not a rectangle, circle, or straight line; for every final stroke you see on the canvas, I have undone and redone three times; my update frequency is like abs(tan(x/k)) where k is around 10 days\^-1 [1]. One day in May I pushed 4 comics. And then I completely skipped June.

Let me keep it short and talk about how an fkfd comic is made. Not technical details (i.e. export as webp, then png, then run ./ but how I come up with ideas and express them in comics.

Life -> Idea

However boring your life may be, you always find ideas bumping from inside your brain; they may just be a little dull. I catch my inspirations right away when I come up with one. Here is a list of common ideas.

  • I look at things that vaguely resemble others, and make fun of that[2].
  • I ask myself questions "what if we...?" and imagine the possibilities in the wildest way[3].
  • I contemplate about today's society and world, and when I cannot squueze jokes out of them, I make them look thought-provoking[4].
  • I voice concerns about today's technology and its relationship with human life[5].
  • Also comics that are straightforward xkcd parodies[6], or even ones that reuse xkcd graphics[7].
  • Giant buildup for giant fun, like flowcharts and tables[8].
  • Irony pointed at one certain type of person[9].
  • Inevitable graph jokes[10].
  • Personal rant[11].
  • Puns and wordplay[12].

The ideas can be funny or serious, revolving around an outdated or emerging topic, whatever. Apply the craziest spices until the idea is hot enough to attract a handful of people. Avoid really niche hobbies, and definitely don't go to depths (i.e. inside jokes), for the sake of audience coverage. As a side note, I never deliberately check if my idea has been taken. Too much trouble. I do avoid copying ideas I know to exist, though.

Others' Idea -> My Idea

My comics are large influenced by xkcd. A few other influencers:

  • SMBC for sociological ideas and single-panels
  • C&H for the puns
  • Poorly Drawn Lines for the anthropomorphic figures
  • Random Reddit posts for random ideas

Idea -> Comic

There are certain periods when I was super innovative and others super productive and/or artistic. The best scenario is when these overlapped, and I was able to commit my ideas on the canvas on the fly. That was definitely efficient, but later when I reflected on comics produced over this period, I would often sense creeping embarrassment for lack of due thoughts before submission, or regret over some imperfections like a forgotten punchline. The second best is those moments when I had a genuinely great idea (at least to me at that time), and had a notebook handy. Once I would jot down a few hint words, like "dead kids sent from heaven to haunt their anti-vaxx parents", but turns out I was terrible at remembering details. Soon I learned to draw a rough sketch, and continuously iterate, fixing grammatical problems and pruning unnecessary words (canvas space is precious). Occasionally, I do it on a whiteboard. Finally, I boot up my lappy, draw what's on the paper/whiteboard through my wacom tablet into krita, sometimes verbatim and sometimes with a few minor adjustments, then re-orchestrate the elements so they fit on a digital canvas. Behold! Digital "art".


[1] Which means my update speed peaks about once per month, while somewhere in the middle it's zero.

[2] Notable examples: Heroic Ball Pen, Chihuahuatamayo, and Keychane.

[3] Notable examples: Night Plane Spotters, Soul Counter, and Amazon Ring.

[4] Notable examples: Intolerance, Zeta-373, and Stray Cats.

[5] Notable examples: Innovations, Intended Internet, and JavaScript.

[6] Notable examples: Code Quality, Technology, Inc., and Irrelevant xkcd.

[7] Notable examples: Python, Entropy Harvesting Daemon, and Childhood Misconceptions.

[8] Notable examples: Partitions, X-over-Y, and Python Code With No Documentation.

[9] Notable examples: Flat Earthers, Blogging, and Wish.

[10] Notable examples: Time Consumption, Turning Point, and Graph Nerd Sniped.

[11] Notable examples: Smart Home, Middle Button, and Grades.

[12] Notable examples: Wheeled Armchair and Armed Wheelchair, One-Letter Modifications, and Company Rules.