Boomer Brain

/media/images/boomer_brain0.jpg

Apparently there is an endless scroll of AI generated pictures on facebook and the boomers are eating it up. I've read that the accounts posting these things are bots so it's possible the likes are also coming from bots, but it still suggests something horrible.

During elsagate youtube had a abundance of strange cartoons and live action plays targeting children featuring elsa and spiderman. Each video was receiving millions of views. The screenplays were procedurally generated using all the keywords young kids were searching for on youtube. They contained things like "Frozen Elsa Dates Spiderman", "Supderman saves Frozen Anna!", "Spiderman & Frozen Elsa vs Joker!", and "Joker Kidnap Frozen Elsa baby e/ Police Baby vs Spiderman Baby Rescue Elsa".

/media/images/elsagate.jpg

The facebook bots are producing things based on what is typically liked on facebook; jesus, veterans, babies, dogs, and nature, and it's like shining a mirror into their brains.

/media/images/boomer_brain8.jpg /media/images/boomer_brain4.jpg /media/images/boomer_brain6.jpg /media/images/boomer_brain5.jpg /media/images/boomer_brain2.jpg /media/images/boomer_brain1.jpg

I never heard what happened to all those young children manipulated by the capitalism driven ai, and I'm not sure what will happen with our older (voting age) generation, but I know as the AI gets better it will begin to creep in from both sides, targeting older children and younger old people.

What happens when the internet is completely full of AI generated content tailored towards your specific interests? Will we crave authenticity, or will we be content?


Update 240503:

/media/images/crab_jesus.jpg

I'm including one more picture I originally left out because it was too creepy. I didn't realize if you squinted you could make out the outline of jesus among the creepy malformed underwater children and chitinous sealife.

linux permissions

/media/images/linux_parent_directories.jpg

I don't have a good image for this subject.


I learned something new about linux permissions. As long as the immediate parent directory is user writable you can write to it, even if that parent directory lives in a non user-writable directory.

For example:

/usr/                # drwxr-xr-x root:root
  /share/            # drwxr-xr-x root:root
    /nas_folder      # drwxr-xr-x na:na    <-free to read and and write by na

All these years I've assumed you needed writeable parents all the way down. This changes how I would organize my web service directories.

Maybe when my sbc explodes and I have to rebuild everything I'll organize things better.

Gitea, TinyTinyRSS, and FreshRSS

/media/images/freshrss2.png

While pushing code to my git server yesterday I realized I wasn't running the latest version and I decided to update.

I was a little nervous about breaking things, but I use a sqlite backing store so I don't have to worry about schema migrations, I can just back up the directory. The upgrade went fine. Apparently the program checks and migrates the schema automatically on boot so I didn't even have to worry about that going wrong. Gitea is pleasant. It's a single binary, comes already cross-compiled for my arm64 sbc, and to setup a reverse proxy you just send it through:

location /git/ {
    proxy_pass http://localhost:3940/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

I wish all my network apps were as easy.

After the upgrade I started thinking about my feedreader server. My hosted tiny tiny rss feed reader isn't public and hasn't been updated in a while. As a hosted feed reader, ttrss is sufficient. It seems to handle my giant list of feeds without a problem, but it has some irritating rough edges.

The last time I installed it from scratch I discovered they'd deprecated the extension that allowed me to hit a button to advance to the next feed. TTRSS has its own built in shortcuts, but they conflict with my tridactyl settings, and you can't change them. I could use the arrow keys to advance to the next article in the list, but this was super irritating. Stepping through the list with the arrow keys would open each article, but it would continue to show the closed entries in the list above. Eventually the top of the opened article in the list would be a few steps above the bottom of the view and I would have to either refresh the feed (with the mouse), or I would have to use the page down key. As I read a feed, the articles would gradually open lower and lower in the window. Because of the gradual way it degraded I often didn't notice I was missing the bottom of images or the end of paragraphs until I ran into something I really wanted to see, and then I would have to interrupt my train of thought to fix the article position in the window. It made just using the software annoying like having a low grade headache.

It's possible this functionality has been fixed in the latest version of tiny tiny rss, but I don't know because the developer is an asshole. Rather than offering official releases he advises people to just use master HEAD. He tells you you're stupid if you try to run it in anything other than a docker container (which won't run on my arm64 sbc not to mention play nice with all my other nginx reverse proxy settings). Also he requires postgresql as a back end because he considers sqlite a toy database.

Tiny Tiny RSS was my only option when google shut down google reader, but I'm sick of its ethos, so I initiated yet another search of self-hosted feed readers. Unfortunately there arent many options. There is a go-powered hosted RSS reader called yarr but it seems too simplistic for my needs. FreshRSS was another promising option, but it uses a strange reverse proxy layout where you put some of the application in /usr/share, mark it as web readable, and then symlink a subdirectory in this filetree into your hosted directory. The reverse proxy settings also make the assumption you're not acting as a reverse proxy for anything else, and I couldn't get it running the last three times I tried it.

Energized by the asshole energy emanating from the ttrss guys I tackled FreshRSS again and finally got the service running through my reverse proxy only to discover it only gave me the choice of postgresql as a backing store (the docs say sqlite3 is the built-in default). This led to hours of trying to understand how php works. Apparently you can have the php sqlite3 module installed but not enabled. I eventually discovered that my package manager provided the sqlite module for php8.2 but not for 8.1 or 7.4. I don't know why it thinks I need three versions of php installed on my system when two of them are crippled, but the distribution is based on ubuntu, so maybe they just want to charge me for the missing debian packages.

I set it up last night and in the morning when I saw it had pulled down 6600 articles I killed the ttrss updater and replaced the ttrss tab that had been open for more than a decade with freshrss. I'm subscribed to ~300 feeds and I get 500-700 new articles every night. The sqlite database file is 45MB. There is no way in hell this needs postgresql.

/media/images/freshrss_shortcuts.png /media/images/freshrss_sticky_articles.png

FreshRSS encourages you to use sqlite. FreshRSS gives you an option to make your opened articles stick to the top of the window. FreshRSS lets you set different shortcuts. FreshRSS will let you automatically advance to the next unread feed when you exhaust the current one. FreshRSS doesn't tell you you're stupid for trying to install outside of docker. FreshRSS has actual releases and a changelog you can read on it's github page.. These things are a low bar to hit for a hosted service but rss readers never really recovered after google stabbed us in the back to promote its social network. I honestly can't recall the name of that social network now. It was killed a few years later like most google services.

I'm happy with FreshRSS, but I'm still on the market for a hosted feed reader written in go or rust, or anything really, as long as it will run on various architectures, consists of a single binary, and supports a range of databases.

Crazy Chef

/media/images/shop_backdrop.jpg

So I happened to design a card game. You can buy it here if you are so inclined. The price is a bit steep at $46, but you get 230 very nicely finished cards and the game is really fun.

I've been playing variants of this card game with my friends for more than twenty years using several modified UNO decks with alternate rules scribbled on the face. Over the years I clarified our house rules, dropped some of the more crazy ideas, and documented all the edge cases. Since I now have free time to actually pursue my own interests (albeit without income or health insurance, thanks capitalism), I decided to look into creating my own custom deck.

I loaded up inkscape for the first time in years and after a few tutorials (I can recommend LogosbyNick's videos), I started some line art drawings. It was an opportunity to make use of my XP-Pen drawing tablet for a real project.

/media/images/apple.png

I wanted to avoid copyright issues, so I worked out a new theme for the game (namely you're all chefs trying to go home) and I spent a couple months working on the card design. I started by drawing an apple in a line art style I liked and for a while I planned on doing all the images in black and white until I remembered this is a pattern matching game, and it's probably better to have some color. Thankfully it's easy to color a line art drawing in inkscape. Because all my drawing were in SVG it was easy to resize them when I accidentally exported all 60 cards at the wrong size and in theory I could enlarge the images for a poster or t-shirt without losing any quality.

/media/images/cheese.png

Still, I'm not a graphic designer and I hope this isn't too obvious. I know I got better as I went along because I cringe when I look back at my earlier drawings. You might notice some inconsistency in art styles as I tried different approaches to the line art. I originally rendered this slice of cheese in shaded black and white and then had to replace it with different shades of yellow. This sort of thing bothers me but I don't know if you'll notice.

/media/images/potato.png

Some of the drawings, like this potato, took days to complete, but I liked the end result so much I almost went back to make all the other foods similarly whimsical. I only decided against it because it seemed the project might never get done.

Joe, my local board game expert, suggested I look into thegamecrafter.com to have the cards printed, and I discovered they have a pretty nice setup. You send in your designs (in my case ~60 unique card images) and they will print, coat, and cut them for you. They also give you the option to sell the game in their shop and will give you a percentage of the sale.

I'd already achieved my goal of owning a custom card deck for my favorite game, but I figured it wouldn't hurt to also make it available for others to purchase. Unfortunately this involved more work, and for the past several weeks I've been writing and rewriting documentation, assembling marketing material for the websites, and basically doing administrative things.

I got the cards last Tuesday, we played it for the first time on Thursday in a little 3-person game, and then again on Saturday in a massive 11-person game at the aquarium which I'm still kicking myself for not taking more pictures.

I think the new cards are much better than my hacked together deck, but I'm still wondering if the rules are clear enough for someone else to understand and immediately have as much fun as I experience every time I play.

Check out more pictures and buy a copy of the game here.

I will be sending this link to my game groups. Most have shown some interest in buying a copy but they might just be being nice. I don't have any grand aspirations for this game. It's clear I'd have to spend much more effort on marketing to make it a legitimate/successful product, but I'm happy just owning a nice new deck of cards.

/media/images/action_01.jpg

Roadhouse

/media/images/patrick-swayze-road-house.jpg

We watched the rifftrax version of this movie last night. Afterwards Amanda read through the trivia on imdb and found this:

Swayze had both groins insured for over $3 million such was their importance to the plot. Towards the end of filming, production was briefly stopped when Patrick felt what he thought was muscle tightness but the medic discovered Swayze had accidentally put on 2 pairs of underpants that day.

Common Flying Dragons

/media/images/flying_dragon1.jpg /media/images/flying_dragon2.jpg

The Agamidae Draco Volans is native to Southeast Asia and Southeast India.