So, I’ve been on a kick gluing together my site with other services using IFTTT to PESOS. Because if I can get away with it, the less code I have to maintain, the better. Let’s do more.

I now have my passive “watch” and “listen” posts syncing to my site using Trakt and Last.FM, but I had to use Zapier this time. The reason being is that both of these implementations depend on using an RSS feed to grab the data, but for some reason, IFTTT keeps not recognizing new items in an RSS feed for me. Perhaps it will work for you to use IFTTT, but I got frustrated and decided to try out Zapier, which worked very well.

Alan Rickman flipping a table over in frustration

Plus, I love that it lets you test actions. The downside is, Zapier isn’t free. πŸ™

Anyway, onto the configs and setup! As always, point the service at your micropub endpoint, and get an Auth token for your site with at least a “create” permission. You can use your software to generate a token if capable, or feel like a hacker by using Gimme A Token.

Trakt

Ah Trakt, I love it. It lets me keep track of and manage all of my shows and movies. Plus it has nifty reports, which if you are a data nerd like me, you’ll love.
First, a warning: you need Trakt premium to get the RSS feed. Go to your dashboard , and scroll down to “Recently Watched”. There is an RSS button there. Grab that URL and head on over to Zapier/IFTTT.

RSS button to the left of the Recently Watched section of the Trakt dashboard

The action should be connecting RSS to Webhook. Both IFTTT and Zapier have these actions. The HTTP method is POST. I used the form data type as I was having some trouble with the JSON format.

Here is my config for Zapier:
Data field in Zapier with the following entries. h and entry. watch-of and link field. syndication and link field. name and 'Watched' plus title field. published and pub date field

You will also want to set up the header near the bottom with: “Authorization” and “Bearer: AUTHTOKEN”. It’s really cool that Zapier allows you to set headers, which IFTTT doesn’t really let you do. πŸ™‚

For IFTTT, the config would probably be something like

access_token=AUTHTOKEN&h=entry&watch-of=<<<{{EntryURL}}>>>&syndication=<<<{{EntryURL}}>>>&name=Watched+<<<{{EntryTitle}}>>>&published={{EntryPublished}}

“watch-of” is the key argument that tells micropub that it’s a watch post type.
“published” tells micropub when you watched it and posts the entry at the time you watched the show or movie. You can omit if accurate times don’t matter to you.
“syndication” tells micropub that the watch is also on Trakt. Again, omit if you don’t care.

Last.FM

Now, this one is tricky. See, Last.FM doesn’t have a feed for scrobbles, just new releases. Which is a problem for us. But thanks to the internet, there are a few options to get around that. The particular site I used is called lastfm-rss. There is another option beside that, or you can roll your own via the Last.FM API.

Since I’m extraordinarily lazy, right now I’m using the link from the github project, which is this. You will want to change the “user” argument in the link to be your own username unless you feel like stalking my scrobbles and putting them on your site. πŸ˜›

After that, it’s basically identical to the Trakt implementation. I literally copied the Trakt one and edited the source RSS feed to be the above link, and “watch-of” becomes “listen-of”. Everything else stays the same.

Issues

If you are on WordPress, like I am, and you use the “published” field, there is a chance that the post won’t actually be posted. Instead, you get a nice shiny red “Missed Schedule” error in your post list. Fun. I’m not entirely sure why that happens, but you have a few options. The first option is to go in and just update and publish the post manually. The second is to use a plugin to check for those errors, and automatically publish them. The plugin I use for this is Scheduled Post Trigger.

One day, when I get around to actually learning why this is happening, I might post an update on how to fix it more natively, but until then, I’ll rely on the existing work of others.

Conclusion

Well, this has been fun, hasn’t it? I would eventually like to evolve this to be more advanced, with backfeed and ratings and such. I’d love to create a service like Bridgy or OwnYourSwarm to handle all of this. Alas, right now I just want things to work before I write a complete solution to a problem I don’t know needs that level of solution yet.

I’d also love to look into an alternative music scrobbling service, like Libre.FM or ListenBrainz. ListenBrainz is especially interesting since you can host it yourself and there are several scrobblers that can access a custom server, such as Pano Scrobbler.

I hope it helps! <3

Hey all!

A few weeks ago, I made a post about how I got PESOS working for Facebook and Instagram using IFTTT. Now, I’ve gone ahead and done something similar with Pocket and IFTTT!

The code is similar to my linked post. As always, you’ll want to customize everything for your own needs, as well as add your own auth token.

access_token=ACCESSTOKEN&&content=<<<{{Excerpt}}>>>&h=entry&category[]=pocket&bookmark-of=<<<{{Url}}>>>&name=<<<{{Title}}>>>
Anyway, here is the first successful PESOS I’ve done with Pocket

A friend had asked in chat what the best things that came out this decade were. After thinking about it, this decade has been too wild a ride and needs a bit of a breakdown. So, here is my list of the best and worst things that happened this decade!

Best

Movies
Okay, this one is kind of hard. I don’t watch a lot of movies, and those I do watch aren’t always the most recent. I still haven’t found something to top two favorites, and sadly those came out in 2009.
  • Coco – I saw this on my birthday and cried like a damn baby in the end. I still can’t watch it without tearing up a little towards the end. 
  • Spiderman into the Spiderverse – Not sure why I love this so much, aside from literally everything about it.
  • Sorry to Bother You – It’s really, really hard to find a movie that is so in your face about the struggles of the working class. But this one is pretty subjective, as my girlfriend was so uncomfortable while watching it that we had to stop the movie halfway through. I always enjoy seeing the media skewer the entire idea of people like Musk and Bezos, and this was glorious.
  • The Last Jedi – A friend of mine described it as “KOTOR 2, but worse”. I’ll agree with that, but I think KOTOR 2 is so good that even a watered-down version for the mass market is still gold.
  • Kung Fury – I dunno. If you don’t like this, you are wrong.
Shows
Disclaimer: I usually watch animated shows. So, cartoons.
  • Steven Universe – What I expected: a light show about a kid hanging out with his magical moms. What I got: a deep dive into how imperialism and a rigid caste structure can lead to the misery and repression of everyone involved, even those on top.
  • Star Vs The Forces of Evil – What I expected: a fun romp of a silly girl with magic and her human sidekick. What I got: a look into the causes and effects of structural racism, and how the idea of “Evil” really isn’t what one would first think. People aren’t bad, but the system they live in can make them do terrible things. 
  • She-Ra – I have to thank the so-called “rationals” for the recommendation, as I wouldn’t have bothered to watch this if it weren’t from them complaining about her lack of cleavage. Anyway… What I expected: basically an up to date rehash of the 80s IP. What I got: a brutal, uncomfortable look into how trauma affects lives, how trauma perpetuates, and how good, likable people can become toxic through little fault of their own aside from the environment they must exist in.
  • Ducktales – It’s just… really, really good.
  • Infinity Train – Well, this snuck in at the last minute. It’s also about trauma but focused on the healing process. With likable characters, a tight script, and so much mystery that I don’t know where to start, I consider this to be one of the coolest shows ever made. It’s a great companion show to watch with She-Ra.
  • Stranger Thing – I’m not going to say that there is much depth for this, but I enjoy almost all of the characters, and it’s a fun ride that blends together the X-Files, Goonies, ET, and slasher films into a fruit cake that tastes good. That made more sense in my head.
  • It’s Always Sunny in Philidelphia – This is going to be hit or miss. The joke is that it’s about terrible people, doing terrible things, and they are all losers. I think everyone has at least one episode where they can’t watch again due to how uncomfortable it makes them. If you can get past that, it’s a hilarious show that has a surprising amount to say about issues that we grapple with.
  • Rick and Morty – Ignore the fans. Please, for the love of god, ignore them. It’s similar to the above but animated.
  • Sense 8 – A show about human connections, and also exceptionally queer? Hell yes. My girlfriend and I both feel warm and fuzzy while watching it, even though it’s not the happiest show in the world. Guess there is something reassuring about people being able to relate to each other on a level that transcends words.
  • Petscop – A creepy web series that could only be made now. It’s very scary, with a ton of mystery, and has not one jump scare to hack fear.
  • CatGhost – A hilarious psychological horror on YouTube. It’s about a cat, and a ghost. Also there is a hedgehog. And retro graphics and hacker bait. FelineSpirit also has an awesome concept where every episode comes with a game to play, which elaborates on the backstory and lore. Tons of neat ideas here.
Music
Most of the music I discovered this decade has been via pandora. My all-time favorite band is still Pink Floyd, and though they technically did release an album this decade, I wasn’t a fan.
  • This Way To The Egress – These guys. Oh man. They are quirky and weird and their music videos are really cheaply made, and I love every bit about them. Forming a six-piece band of an accordion, piano, trombone, guitar, tuba, and drums, they make catchy music about being just under the upper hand and travel. My favorites are Tarentella, We Won’t Go, and See No Evil. Check them out!
  • Steam Powered Giraffe – They came on my pandora, and all I was wondering was “Why is this demon bragging about his suspenders and banjo?” I stopped listening to them for a while due to personal reasons, but I still highly, highly recommend them, and I recommend seeing their live show at least once!
  • Darby O’Gill – Irish band from Portland. I got a chance to see them live in 2016, but due to a scheduling issue, it turns out that they weren’t playing on the day that I thought they were. So, they actually came out to the bar and gave the bar a private show on the benches outside. So, nicest guys in the world. Their songs are funny, their music is catchy, and they even have callbacks!
  • Tub Ring – Where the hell has this band been all my life? “Killers in Love”, morbidly, has become my girlfriend and I’s song.
Gaming
  • Nier Automata – If I have to pick game of the year, then I’ll say that is too narrow. This is game of the decade. Fun gameplay, a tight soundtrack, and a story that I consider to be an instance of “Profound”. We’ve seen robots being more human before, that’s dead. Instead, we get a deep dive into what gives life purpose, and what makes anything human. I wept like a baby during the final battle. 
  • Factorio – Not profound, but fun. This scratches my inner engineering itch. Plus, a friend and I like to blast this song while driving a tank to biter nests, in what we call “Liberation Missions”. If I can do lefty shitposting and engineering at the same time, that’s a good game.
  • Dark Souls / Bloodborne – I’m a sucker for punishment. I’ve beaten I Want To Be The Guy. Tough gameplay, with amazing aesthetics, and mystery of the lore is a very nice package. In addition, I’m going to go ahead and say that Bloodborne is the best Lovecraftian story ever made
  • Hollow Knight – It’s Soulsborne as a metroidvania.
  • Pokemon Sword and Shield – Okay, this is a hot take if I’ve ever had one. I know people are pissed off about Dexit. I get it. But for me, I haven’t successfully played one of these games since Red. I tried to get back into it with X/Y and Sun/Moon, but I’ve always had this issue: There are too many pokemon that I have choice paralysis. By cutting down on the number, and streamlining a lot of things, I was actually able to enjoy a game in a franchise that I hadn’t been able to access in 20 years.
  • Little Inferno – I can’t say why I love this game. It’s about setting things on fire. It’s a parody of mobile games. But between the music, the art, the writing, and the fact that the message is “What are you doing with your time?” it struck a chord with me. IDK.
  • Monster Hunter – Just in general. I like difficulty. I like boss fights. I like cool monsters and insect glave.
Society
Misc stuff that happened this decade that I like.
  • General queer acceptance – Hot damn. I transitioned in 2016, and seeing the internet stan with trans and other queer people has been nice.
  • 2FA – Probably the most important thing to happen to security in a while. Now if we could just move beyond passwords.
  • General class consciousness – In 2014, I was seeing memes about fandoms. I’m still seeing that, but now I’m also seeing memes about anarchism, which is tasty.
  • IndieWeb – I ran into this only relatively late in the game, but it’s an amazing concept. Rather than use a silo, like Facebook, where you don’t own your data and you are being mined for information for ads and influence, you can own your own data and still interact with the rest of the web. The hacker spirit still thrives, even as everything about us is bought and sold.

Worst

This is a list of things that I hated this decade.

Movies

  • The Rise of Skywalker – Every interesting decision it made it then immediately backtracked on. Every new direction the previous movies decided to take, it undid. I hated this. I hated it so much.
  • The Brave Little Toaster Goes To Mars – Yes, this came out in 1998 or something, but my girlfriend made me watch a few weeks ago. I am broken.
  • The Dark Knight Rises – I honestly thought that everyone in the movie was an idiot. No one made a sane decision.
Shows
If you like these, cool. I didn’t, but I don’t want to give people a hard time for enjoying things.
  • Adventure Time – I’m sorry. I don’t like it.
  • Kill La Kill – Eh, I don’t really care for it.
Music
No entry here. If I don’t like something, I usually don’t listen to it.

Games

  • Notch – Not a game, but a creator. I played Minecraft from the start. I have interacted with him before, back on the indie gamer forums. My disappointment in this man is immeasurable.
  • Silent Hill PT – It could have been great. Screw you Konami.
Society
  • Nazis – I thought we dealt with them almost a century ago.
  • Blockchain – I love blockchain. But I hate that it’s only used for money. And the money isn’t really money, but a speculative investment. I mean, bitcoins aren’t even fungible. What.
  • Facebook – It just makes us miserable, and we are giving up more and more of our privacy and data in order to opt-in.
  • The general trend of autocratic tech companies playing with our lives and society for a quick buck, while also obfuscating their true value under the spectacle of innovation – I mean, I like magic tricks, but not when they mess with our lives.
Obviously, this is just my opinion. Nothing here is meant to be an attack. Unless you are disagreeing about the nazi part of the list, in which case, fuck off. 
Anyway, I hope the next arbitrary slice of years is a great arbitrary slice for you all!

So, I spend a long time trying to set up PESOS for individual silos on IFTTT, specifically Facebook and Instagram, because they are terrible. I’ve got it currently set up to publish my initial post, but no back feed support yet. Also, this is going to wordpress, but it shouldn’t matter (in theory, because all software is terrific in theory)

Since I got a headache, I figured that someone else might get one, so let’s save them the pain and I’ll just post the templates for my recipes webmentions. You’ll need to get an auth token for your micropub endpoint. This IFTTT recipe is set up as a webhook, and the trigger will be your silo. The URL should be your micropub endpoint. Replace all instances of ACCESSTOKEN with your generated token value.

Facebook Status Update:


access_token=ACCESSTOKEN&&content=<<<{{Message}}>>>&h=entry&category[]=facebook

{{Message}} is the message of the contents. Facebook is the category. Remove category[]=facebook if you don’t care about that.

Facebook Photo Post:


access_token=ACCESSTOKEN&content=<<<{{Caption}}>>>&photo[]=<<<{{ImageSource}}>>>&h=entry&syndication=<<<{{Link}}>>>&mp-syndicate-to[]=flickr-bridgy&category[]=facebook 

{{Caption}} is the text of the post. {{ImageSource}} is the URL of the picture. Only use the syndication part if you want your site to link back to your post. mp-syndicate-to[] syndicates the photo to flicker via bridgy. Omit if you don’t use bridgy, or you don’t wish to syndicate.
Instagram Photo Post:


access_token=ACCESSTOKEN&&content=<<<{{Caption}}>>>&photo[]=<<<{{SourceUrl}}>>>&h=entry&syndication=<<<{{Url}}>>>&mp-syndicate-to[]=flickr-bridgy


This is almost identical to above.

Obviously, you probably don't want to just cut and paste. You'll want to look up the micropub documentation.
Anyway, I hope that helps. PESOS is not as good as POSSE, but Facebook decided to lock down writing rights after the scandal with reading rights, so what can we do except being bitter?

Hey there!

So, one of my goals is to make my site as compliant to IndieWeb as possible, but there was one particular protocol that was giving me trouble: delete.

See, the issue is that WordPress doesn’t have a way to distinguish trashed posts versus posts that are no longer available. Buuuuut, I think I found a hacky workaround, involving categories!

The first thing I did was to create a new category, in this case, “deleted”. The actual name doesn’t matter, but I figured that’d be intuitive enough. Then, I faced three issues:

  • Hiding the posts from the main page and blog roll
  • Creating a tombstone page distinct from the 404 page. 404 doesn’t mean 410
  • Setting the status code for the HTTP response to 410

With that said, let’s look at the code.

For the first issue, it’s pretty easy to hide posts, using a filter. I found a tutorial here, and I used a modified version of method 2:

function exclude_category($query) {
if(is_admin()) {
return $query;
}
$query->set( 'cat', '-55' );
return $query;
}
add_filter( 'pre_get_posts', 'exclude_category' );

55 happens to be my category id. Yours will be different, probably. Of note, I experimented quite a bit with the conditions to hide it, because just changing the query across the board would also hide it from the admin page, meaning we can’t quite see the posts we deleted. So, we only filter if we are not on the admin pages using is_admin().

The next part is the tombstone and status code. Fortunately, I was able to modify both in the same place by modifying the template I’m using. At the time of writing, I’m using Autonomie with my own modifications.

Here is the full modified Single Post template:

<?php
/**
* The Template for displaying all single posts.
*
* @package Autonomie
* @since Autonomie 1.0.0
*/

get_header(); ?>

<main id="primary" <?php autonomie_main_class(); ?><?php autonomie_semantics( 'main' ); ?>>

<?php while ( have_posts() ) : the_post(); ?>
<?php if(in_category("deleted")): ?>
<?php status_header( 410, 'deleted' ) ?>
<div class="entry-content e-content" itemprop="description articleBody">
<div class="h-entry">
<time class="dt-updated" datetime="<?php echo get_the_modified_date(); ?>">Removed on: <?php echo get_the_modified_date(); ?></time>
<p class="p-name p-content">
There was a post here. It's gone now.
</p>
</div>
</div>
<?php else: ?>
<?php get_template_part( 'templates/content', get_post_format() ); ?>

<?php
// If comments are open or we have at least one comment, load up the comment template
if ( comments_open() || '0' != get_comments_number() ) {
comments_template( '', true );
}
?>
<?php endif; ?>

<?php endwhile; // end of the loop. ?>
</main><!-- #content -->

<?php autonomie_content_nav( 'nav-below' ); ?>

<?php get_footer(); ?>

The status code is easy to change. Just call status_header( 410, 'deleted' ). For the tombstone, we just need to add a conditional tag to check the category: if(in_category("deleted")):.

Yes, I’m absolutely certain there is probably a better way to handle the tombstone via how WordPress handles templates, but… I’m really, really new to wordpress and PHP, so a hack it is. If this was Sitecore, I’d be all over that. But you know, Sitecore and IndieWeb probably form some sort of contradiction. πŸ˜›

Check out the result for the deleted test post I made: Test.

There are still some issues, though. I’ve noticed that deleting a post in this way doesn’t automatically send a web mention, so Bridgy needs to be notified by hand. I’m also unsure if I need to do any additional modifications to my feed.

I’m contemplating actually pulling out all this behavior into its own plugin, to let WordPress handle deletions much more gracefully, including notifying any downstream servers of the removal.

So I decided to start a garden.

I actually started it a few weeks ago, but I figured, hey, why not write about it?

 

In order, we’ve got a window box planted with Sweet Pea flowers (My girlfriend’s favorite) and flowers good for bees and hummingbirds, a grow box made from an old plastic bin growing about four or five potato plants, and a shallow planter with a kidney bean plant and four garlic plants.

I’ve also got a pot full of basil and other common herbs I use in my cooking.

It ain’t much right now, but soon it’s gonna be BIG! My plan is to basically create a balcony garden that can supplement most of our produce needs. Been looking into permaculture techniques to handle this. Granted, permaculture has very limited use in a balcony context, but any techniques that I can apply will be of much use.

The first thing I did was start a composting system! I used a bin that I’ve had lying around for about 7 years, which seems to be perfect for a balcony worm compost system.

Once I had the holes drilled, I obtained about 500 worms from a local supplier. Cost about $20. It should be a one time cost, as long as I don’t manage to kill off the worms. Then we get to the gross part, filling it.

 

It’s mostly kitchen scraps. Old strawberries, veggie scraps, and such for the green. Since I don’t actually get any newspapers, I’m using paper towels, napkins, and used papers for the brown. Not ideal, but hey, the worms seem happy so far.

I’m actually really happy to start composting. Food scraps that go to the landfill break down in an anaerobic environment, resulting in both a slower breakdown, as well as creating a TON of methane, which you’ll probably recall is a far worse greenhouse gas. So, doing this gives me good dirt for the gardens, and reduces my carbon, er, methane footprint.

(Yes, I’m aware that most of the issues with greenhouse gases are due to industry, and the narrative that individuals need to take responsibility is propaganda to shift the blame to us lowly proles, but I don’t think at least avoiding adding my drop of pollution to the ocean of doom is a bad idea)

Anyway, my next step, I think, is to get a couple of micro fruit trees. It would be glorious to be able to walk outside and just grab a fresh peach or lemon.