Cube Drone



single image


Warbeard is at a conference, walking by an un-manned table with a computer and banner that reads:
“, your security API in the cloud! Now with: single sign on… cryptography…”
Warbeard: Hmm…
In the third panel, Warbeard has taken the computer.



single image


Morpheus: npm installs per-project dependencies, isolating environments.
Morpheus: in order to deploy in a reproducible way, we use Docker containers, which load the environment into a chrooted virtual environment that simulates an operating system.
Morpheus: Docker must be run from a Linux distribution, so we run it from Vagrant and VirtualBox, which wraps our Docker containers in another virtual operating system when running on non-Linux operating systems, including Os X.
Morpheus: This is your last chance. After this there is no going back.
(Morpheus holds out two pills, one red, one blue.)
Morpheus: You take the red pill and you stay in Wonderland and I show you how deep the virtualization rabbit hole goes.
Morpheus: You take the blue pi-hey!
(Cube Drone has already taken the blue pill.)
Cube Drone eats the blue pill.
Cube Drone makes a rude gesture.
Cube Drone fades away, while still making the rude gesture.


Docker? I Barely Knew 'Er

single image


Melissa: Each Docker container should just run one process.
Cube Drone: But these containers are hundreds of megabytes each! We’ll run out of disk space before long!
Melissa: Now you understand why the Docker logo is a whale that is also a cargo ship.


A Thrill A Minute

single image


Cube Drone does nothing for three panels.
“The exciting world of startups”.


The Law Offices of Cease & Desist

single image


Sparky: You have to check out this sweet game I built!
Sparky: It’s called The Copyright Violatrix! You and Mickey Mouse fight off the cast of Friends while Beatles songs play.
Sparky: This is going to be so popular! I wonder why more people haven’t thought of this!
Cube Drone is rolling his eyes



This would be a good time to bring up James Mickens’ hilarious article on security.

single image


Miloslav: You can use public and private keys for more than just Git and SSH, you know. If you have someone’s public key, you can send them a message that only they can read.
Sparky: But then how do you know which public keys you can trust? Any key could be anybody!
Miloslav: I went to a key-signing party, once. I came with a cryptographic key and left with somebody’s wife. She didn’t want to do GPG stuff at all.


Virtual Insanity

single image


Every Kind of VR Game:

  1. Stuff that would be boring in real life.
    Cube Drone: Wow! It’s like I’m really playing Billiards!
  2. Weird fetish stuff
    Cube Drone, standing next to a man wearing a cat head and leather gimp suit.
    Cube Drone: I’m not sure what ‘cat-kin group cuddles’ means, but I feel like I have made a mistake in coming here.
  3. Games with motion
    A space ship: Space, the final BLEUUUGH



Free the slaves! Hey, you, get away from our production servers.


Cube Drone: Look, Master-Slave is still a shitty naming scheme for distributed systems that makes light of some very real horrors.
Miloslav: That is the way it has always been. Why make waves?
Cube Drone: Let’s imagine that instead of a garbage collector, we had a process called “brutal dictator” and it rounded up all of your program’s unfit memory to be shot. Would that be okay?
Miloslav: In this situation it is best to keep your mouth shut, convert your hryvnia into rubles, and flee the country.
Cube Drone: We are still talking about programming!


Tone Deaf

single image


The CEO, Miloslav, and Lain are sitting at a “Women in Technology” panel.
CEO: Of course - our company is a great place for women to work. It’s a complete meritocracy, so everybody has an equal chance to succeed - even our two women!
Lain: Actually, it’s
CEO: Oh, I’m sorry, we’re out of time. We’re going to have to get back to you.
CEO: Hey, cheer up. At least we remembered to invite you this year.


Cyberpunk 2016

single image


Cyberpunk 2016 Guy: I’ve got to VR into the Cyberverse before the deckers can crypto through my firewall!
Actual 2016 Guy: Damn these Chinese IPs and their automated vulnerability scanning, they’re filling my logs with garbage!
Actual 2016 Guy: Also I think someone on the bus is doing some kind of Shadowrun cosplay.
Cyberpunk 2016 Guy: I’m gonna hack the Gibson!


The Long, Long Con

single image


Step 1: Invent an as-yet unheard of Unix variant from the 1960’s.
Melissa: I shall call it… Mel-OS
Step 2: Go to a university website and select a particularly crusty old computing science professor. Generate a GitHub profile using this professor’s name.
Step 3: Using a combination of Photoshop and some basic web publishing tools, fabricate an elaborate backstory for this OS, including fake academic research papers, under the professor’s name.
Step 4: Issue dozens of pull requests to high-profile open-source projects claiming to add Mel-OS compatibility. Each pull request one more link in an elaborate chain that, when invoked together, finally activates the viral payload.
Times Square, New Years’ Eve: A giant banner is displayed with a picture of Milo, reading “I slept with your wife. Call me. I fight you. 1-788-555-9831”
Milo, to Melissa: Why?
Melissa: You didn’t refill the coffee after you poured the last cup.
Milo: This is not a proportionate response!


HTTP Status Codes

I’m really looking to corner the market on HTTP status code based humor, but I’m not the only game in town.

single image


200 OK
271 Great!
2.99 Hot Dog w/ Relish

301 Moved permanently
302 See 303
303 See 301
307 Moved temporarily
309 Relocated to San Jose
311 Moved emotionally

304 Cached
344 The real HTTP response was friendship all along
348 Hidden, but badly enough to find easily
350 Purchased by Google in 2012. Purpose unknown.
372 Purchased by Yahoo in 2003. Mismanaged into obscurity.

400 You dun’ fucked up.
401 Credentials missing
403 No, dammit
404 Not found
405 Method not allowed
406 Unacceptable!
410 Just went out for a bit to buy smokes - back any day now
418 Teapot (self-explanatory)
429 Cool your jets
431 Your request is too damn big!
451 Your government has deemed this resource a threat to security.
458 Request too sexy

500 Something bad and unexpected happened.
501 Didn’t finish building this bit.
502 NGINX broke
503 Servers currently very on fire
504 Not sure if 502 or 503
505+ Programmers broken


Bug Bestiary

single image


Bug Types: Beezlebug

The greatest trick the Beezlebug ever pulled was convincing the world it didn’t exist.

Notes: While our users are certain the Beezlebug exists, they are unable to provide proof. May be imaginary, like the SaaSquatch or the Deadlock-ness Monster.

Mating Habits: Can not reproduce.


How it Feels to Learn Cookery in 10,000 BCE

You might consider this a rebuttal to a previous comic I did, although it’s also about an article which makes fun of Javascript and references an earlier article that made fun of Docker.

single image


Og: Og want to eat meat. Just put in mouth, right?
Uk: No! Use fire! Cook meat!
Og: Fire hot! How I not burn hands?
Uk: Use pointy stick! Or use hot rock! Or keep fire in box!
Og: Too many choices! How I pick?
Uk: Dunno
Og: Ok, meat on fire! Now eat, right?
Uk: No! Wait! Let cook! Then add salt rock and flavor leaf!
Og: So in order to eat meat, I need fire and stick and wait and rock and leaf? I just eat meat raw, stupid. Mmmf!
An Og-Like Man, 12016 years later: And that’s why I think that modern Javascript is too complicated.


Social Media Math

So, there is this stupid Social Media Math Horse Algebra thing going around, where hundreds of people all fail at a very simple math problem, because the problem contains not one but three different sneaky tricks - one trick that requires knowledge of correct order of operations, and two tricks that involve varying the number of symbols (horseshoe-horseshoe presumably being double the value of simply horseshoe and boot-boot being double the value of just boot).

What’s interesting is not the math puzzle. What’s interesting is the virality of it.

The social media trick at play is that each person who looks at the puzzle figures out one of the tricks, or maybe two of the tricks, and then notices how many people got a different answer from theirs (everyone else, presumably), and wants to post, crowing about their superiority, to the channel. Hilariously, this has led to over 500,000 comments, the bulk of which are “you are all idiots”, and the bulk of which are wrong. It’s viral in the same way as those people who repeatedly post “everybody stop hitting reply-all” to an overcrowded mailing list.

My puzzle is much simpler and a lot less viral. The solution is a PUN, obviously.



single image


Walt: There need to be professional associations for software developers - like doctors, lawyers, and engineers have. We could keep frauds and incompetents out and build trust in our professionalism and skill.
Milo: The word does not need more walls, my friend. Code is for everyone.
An explosion happens behind the two of them.
Sparky: Guys, I’m not sure what a fork bomb is, but I can tell you that our microwave is broken and we need new forks.
Milo: Almost everyone.


The Many Songs of Programming

single image


let arr = [];
arr.push(‘it good’);
arr.push(‘it real good’);

float ON;

let blondie = {}; = () => {};;

repeat 100 [fd 100 bk 100]

vowels = [‘a’, ‘e’, ‘i’, ‘o’]
def compare_vowels(str, compare):
for char in str:
for vowel in vowels:
yield compare(char, vowel)

def war():

public class Mine { … }
public class Sweet extends Mine {…}

char* bird;
bird = (char*) malloc(8);

def recursive_walk(sides, fin):
for side in sides:
if side.status == ‘wild’:
recursive_walk(side.children, fn)

catch ValueError:

def getDay(n)
puts getDay(1)


Many-Factor Authentication

I used these same guys to demonstrate Tuckman’s Stages of Group Development some time ago.

single image


Introducing our exciting new nine-factor auth!

To log in, you need:

  • something you know
  • something you have
  • something old
  • something new
  • something borrowed
  • something blue
  • somebody that you used to know
  • but you didn’t have to cut me off
  • make out like it never happened and that we were nothing


Yes Ok Yes

single image


Alexa, wake me up at 3AM, yes, ok, yes
Alexa, turn off the lights, yes, ok, yes
Ok Google Text Mom butthole butthole butthole, yes, ok, yes
Xbox bing anal fissure, yes, ok, yes
Alexa play “Melissa’s Cool Hacking Song”, yes, ok, yes
Alexa buy this song, yes, ok, yes
Alexa turn the volume up!
Alexa turn the volume up!
Alexa turn the volume up!
Alexa turn the volume up!

Cube Drone Patreon

Razzle Dazzle

This art project is pretty neat.

single image


Lain: And with a few minor modifications to my hair and make-up, I render myself invisible to face detection algorithms like openCV.
Lain has a brightly colored hair poof and has arranged blue lines of make-up on her face.
Lain: Oh, I see you’re already on board the privacy train.
Milo is wearing a giant orange-and-red striped collar and he has an orange-and-teal lightning bolt painted on his face.
Milo: Hm?
Milo: David Bowie died one year ago today. January 10 is a dark day for music.