Squeaky Fan

forlorn, adrift am i acursed
blood boiling heart ready to burst
in the halll the fan doth squeak
downcast my mind, moood bleak
for every step i strode
wishing it to be fixed, truth told
yet the sun doth rise day after day
and discomfort never fadeth away
why must i deal with such obstinance
nails on chalkboard Consonance
i yearn for a deep reprieve
yet thee fan must cleave
my soul from thy body
its quality so shoddy
my life now cast adrift
by this devils little gift
digging my gravel with a shovel
is thy fate living in a hovel

Read more...

Why I will never use AI for art

I’ve been listening to a reading of Dante’s Divine Comedy recently and in it I think that Dante mets a poet in Hell or Purgatory that comments how he and all poets steal others work. When I search online for the passage or character I cannot find reference to this but perhaps it was a dream or I made it up.

Read more...

A place that could have been, but never was

a place that could have been but never was
is it dark, is it light, silence or a buzz
in this place, hope does permate the air
scatter around, many a soul it does ensnare
“I could have been” teeth clench and break
mind fantasizing, body refusing, unable to wake
but for a faustian spirit only heart will ache
walking thou lonely path, a truly broken road
sand carassesing feet, a forlorn river flowed
indominable spirit with promethian fire glowed
a place of promises of El Dorado gold
yet touched, inspected show only mold
go forth brave spirit past this place’s gates
show thy sentinels what true Fate awaits!

Read more...

Greek Myth Data: Timing CTEs vs Plain SQL

I’ve been working on a personal sql project like a monk scribbling on a scroll: 120k deities, 150k heroes, 1.5M quests, 2M omens, plus hundreds of thousands of battle logs. Everything ships in a Docker image so you can spin up mythic-cte, run the bundled benchmark_queries.sql, and immediately compare Common Table Expressions against equivalent “plain” SQL.

Read more...

Learning to Sew Part 2: Burlap

Steam rising, up, up, my eyes watch it dissipate as I turn to my mug to take another sip. I recently moved to a new area in my city that I am unfamiliar with. Naturally, I have been having a grand time exploring the unknown. Like Bilbo says, “It’s a dangerous business, Frodo, going out your door. You step onto the road, and if you don’t keep your feet, there’s no knowing where you might be swept off to”, but to take the first step you need a first sip. That’s why I have been checking out all the interesting coffee shops in the area. They say to truly appreciate a good coffee you have to understand the phrase “bean to brew”. I am not a sophisticated guy, but if I cannot understand that maybe I can do something else. Maybe, just maybe, I can become the bean, or failing that, at least become a coffee bag. That’s how we come to Learning to Sew Part 2: Burlap Edition

Read more...

Setting Up a Postgres, Go Gin, and React project on Kubernetes

I spent past few days setting up a Kubernetes project Finance Dashboard and this post is the curtain fall of a useful side project. The core code lives inside a single file: finance-dashboard.yaml. Much of the documenation on how to set it up is provided in the README of Finance Dashboard. Instead I’ll briefly mention some issues I encountered.

Read more...

Learning to Sew Part 1

After the sudden and tragic death of Paul Vincent this summer and my brother making his own suit for a 1920s-inspired lawn party I have been inspired to learn sewing to make my own clothes. After much delay, I have finally started this journey and this is the first in what is planned to be a long series of posts documenting my foray into the art.

Read more...

Building a simple python epoll server

How can you make your python server fast? One method is through using the Linux system call epoll. Epoll is an I/O event notification system that monitors file descriptors of I/O events.

In your first foray into writing python http servers you will likely encounter or write a simple program as seen below:

Read more...
1 of 1