Kind notes

#BirdsOfPrey was awesome. I'm writing some notes because I'm going to do an actual review of it, because it was so good but has had some pretty bad press. Feeling like I could go rob a police station with a confetti cannon right now!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: birds-of-prey .

Just got my first credit card! So of course the best way to prove whether I've got a high enough credit limit is to go to Five Guys πŸ˜‚πŸ”

by Jamie Tanna's profile image Jamie Tanna .

Folks using #Jenkins, how do you manage your jobs? Only through the UI? Or using #JobDsl? If not the latter, would you like a talk on being able to track all your jobs in repo and peer-review changes? While being able to quickly spit out duplicate jobs

by Jamie Tanna's profile image Jamie Tanna . Tagged with: job-dsl jenkins .

Been a pretty good start to the day - woke up naturally with Hue, closed off a couple of stories just after standup, and spent the rest of the morning sending unsolicited positive feedback to colleagues and requesting some for myself - amazing what a good start to the day does for you!

by Jamie Tanna's profile image Jamie Tanna .

So I sorted my Webmention sending issue after an incredibly frustrating day of fighting with Jackson parsing my XML sitemap. I'm still not sure what the issue was, as I've ended up replacing my POJO with another one, but πŸ€·πŸ½β€β™‚οΈ at least Webmentions are sending again

by Jamie Tanna's profile image Jamie Tanna . Tagged with: .

Woops, looks like I broke my Webmention sending yesterday when I upgraded all my versions of Spring / Spring Boot. That'd explain why things haven't syndicated to Twitter today. Film time now, so will fix tomorrow!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: .

I interact a lot with Twitter from my website, and as such the interactions you see are i.e. "Like of @indiewebcamp's tweet" which isn't super helpful. So I've just added the ability to mark up my interactions with some context of what the post was so it's eaiser to see without navigating there.

This is using the awesome and will hopefully make reading Twitter interactions through my site much nicer!

You can see for an example of what it'll look like (including photos!), and for more info from around the #indieweb

by Jamie Tanna's profile image Jamie Tanna . Tagged with: indieweb .

Hope folks going to #fosdem this weekend have a great time. I decided not to go this year but will have a look through the talks and watch live/once they're uploaded

by Jamie Tanna's profile image Jamie Tanna . Tagged with: fosdem .

I've just updated with a note that last night, helped me get the h-feed support in over the line!

It required some changes to return a valid parsed-MF2 location which it didn't up until now (

And I also made a change to render the HTML description from Meetup actually show as HTML for the consumer, as well as rendering a plaintext format (

by Jamie Tanna's profile image Jamie Tanna . Tagged with: meetup-mf2 .

Good news: after a week on holiday my body is now waking up consistently at a reasonable time.

Bad news: that time is 0830 when I'm meant to have already left the house for work

by Jamie Tanna's profile image Jamie Tanna .

Last night I was dreaming about Mutual TLS. Damn you #PSD2 and eIDAS certs!

Even more surprising that its a few days into a relaxing holiday in which I've not thought about work at all!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: psd2 tenerife .

How can we assume that the layperson can say that they knowingly "opt in" to terms of service when they're incomprehensible, some great points in @KrishBhasin's talk at #TechNott tonight about the privacy implications of online advertising

Artwork illustrating the huge size of Terms of Service between different platforms

by Jamie Tanna's profile image Jamie Tanna . Tagged with: tech-nottingham .

Really interesting talk at #TechNott about high performing teams and building safety culture. I'm a huge fan of this, and embracing blameless culture, and now I've got some new tips to apply to it, too! Thanks @tom_geraghty

by Jamie Tanna's profile image Jamie Tanna . Tagged with: tech-nottingham .

Very much looking forward to tonight's #TechNott, not least because it'll be the first meetup I'm owning every interaction first from my website in #IndieWeb fashion, as well as converting hashtags to tags on the posts themselves!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: tech-nottingham indieweb .

Watched John Wick 3 last night. Great movie, shame we missed it in the cinema - even more ingenious ways to kill people, and we learn more about the underground, too

by Jamie Tanna's profile image Jamie Tanna .

So I started to write a short 2019 in review blog post before realising I should finish my 2018 in review post first.

Woops! It's mostly written, but a bit longer than this years will be

by Jamie Tanna's profile image Jamie Tanna .

Real shame to see that @Meetup are further restricting their platform by locking down API access - maybe document this better before going through the process to register?

Thank you for submitting an application to access Meetup’s API and authenticate with OAuth2. This process provides a better and more secure experience for all Meetup members. Your request for API Access through OAuth has been denied. In order to be eligible for API access through OAuth you need to have a Meetup Pro Account.

by Jamie Tanna's profile image Jamie Tanna . Tagged with: .

Since setting up the ability to syndicate posts from my website to other sites automagically the other day, I've been manually ticking the boxes in my posting UI, which isn't the best experience.

So I've now got it to automagically syndicate to Twitter any notes (like this one) or interactions such as likes/replies/reposts on Twitter, so folks still on Twitter are able to see the content I'm publishing to my site, too.

by Jamie Tanna's profile image Jamie Tanna .

No spoilers:

Just seen Star Wars Episode 9 and damn JJ did it - what a great ending to the series. Expect more when the spoiler embargo lifts.

I'd seen some tweets similar to this and was a bit apprehensive but it was so good. Wanna go see it again!

by Jamie Tanna's profile image Jamie Tanna .

What do all you lovely #IndieWeb folks use to consume Twitter? I'd like to hook some of my favourite people into my reader but not sure the best way to do it

by Jamie Tanna's profile image Jamie Tanna .

Just trimmed my site's build/test/deploy pipeline's lifecycle from 10 minutes to about 5 minutes. A fair saving but still not as speedy as I want.

My next job is to see whether I can cache the images on my own infra running a GitLab-runner, but I seem to be having some difficulty getting it running with a Unix file socket rather than a TCP socket - a shame because in the past the GitLab-runner has worked literally out of the box

by Jamie Tanna's profile image Jamie Tanna .

For anyone having issues not seeing #MrRobot Season 4 Episode 11 in their Fire TV / Prime video account, try skipping through Ep 10 until it autoplays 11

by Jamie Tanna's profile image Jamie Tanna .

Sorry to anyone who's just received a tonne of webmentions from me - I'm tweaking the way the sending works so there are a few new places you may see them come from

by Jamie Tanna's profile image Jamie Tanna .

I thought something weird was happening - I've not seen any incoming webmentions since Friday from my own posts, and it seems that my webmention sending post-deploy isn't working.

I'll look into that tonight!

by Jamie Tanna's profile image Jamie Tanna .

Being in First Class on a train is great and all (only Β£2 more expensive than an open return - bargain!) but they can't make tea correctly. They put the milk in first!!

by Jamie Tanna's profile image Jamie Tanna .

After seeing my Spotify Wrapped playlist for the year, and some of the usage stats, I think I'm definitely going to be writing an application to get that data out for myself and my own usages

by Jamie Tanna's profile image Jamie Tanna . Tagged with: indieweb .

So around ~1312 my server that hosts services such as and but also my Micropub endpoint and other things restarted. Not 100% sure why (as it turns out that the logs didn't persist) but turns out that my webserver ( ) hadn't been configured to restart post-boot, but all the other services had. Woops! Glad I didn't have a tonne of content to push, but it was a bit worrying having no way to resolve it, as I had no laptop to SSH and diagnose.

by Jamie Tanna's profile image Jamie Tanna .

Well, I think I've cracked it - after a few weeks of on-and-off work on making my webmention sending not spam everyone (see ) - it's now not re-sending them if they're successful. This is a good first step, but I'll be improving it to re-send if the post's data has changed since last time it tried (in the future).

Note that this isn't quite done yet, expect it to be live tomorrow perhaps.

by Jamie Tanna's profile image Jamie Tanna . Tagged with: webmention .

Lots of trick or treaters out tonight. So the best thing is to turn the lights low and pretend you're not in.... Right?

by Jamie Tanna's profile image Jamie Tanna .

Woo, thanks to for releasing an update of the wonderful Android app which adds in a fix to not send multiple bearer tokens in Micropub requests ( )

This started breaking for me when I upgraded my Micropub endpoint to use the spring-oauth2-resource-server module ( ) which is a well-formed OAuth2 server, whereas my previous implementation was not.

Super speedy fix, and glad to be back to using the app again!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: micropub .

Day trip to London tomorrow, so 4+ hours on the train - hoping to finish my writeup of DevOpsDays London as it was a great conference and I'd love to share it with y'all!

by Jamie Tanna's profile image Jamie Tanna .

So very close to having my IWC Amsterdam blog post finished before WIT Notts - may have to see if I can get the last bit sorted before the talks start!

by Jamie Tanna's profile image Jamie Tanna .

It's been an awesome day at IndieWebCamp Amsterdam!

The afternoon was chatting about licenses and ownership, then looking at how to migrate folks from silos to IndieWeb with a long term strategy, then some discussions about events, RSVPs and calendars, and finally all things syndication.

Got some great discussions, and lots of interesting things to play with tomorrow at the hack day!

by Jamie Tanna's profile image Jamie Tanna .

Interesting start to the morning at IndieWebCamp Amsterdam - we've spoken about accessibility of the Web and IndieWeb, and about how private posts and privacy should work

by Jamie Tanna's profile image Jamie Tanna .

I'm really enjoying the intros at IndieWebCamp Amsterdam. Its nice to see the range of websites, the technology usages, and that some folks are posting while they're talking while others haven't touched their sites in years.

It's an exciting chance to get reinvigorated!

by Jamie Tanna's profile image Jamie Tanna .

En route to my first IndieWebCamp (Amsterdam) after a great couple of days at DevOpsDays London.

I'm really looking forward to meeting some folks and talking about owning more of my little corner of the Web, and meeting the faces behind the websites I frequent!

by Jamie Tanna's profile image Jamie Tanna .

But I also have some tweaks to make sure I render a title for /mf2/ entries, as currently search doesn't help as it's just an empty string returned for things that match

by Jamie Tanna's profile image Jamie Tanna .

I'm happy to announce that all three instances of Homebrew Website Club Nottingham in October are going to be dedicated to Hacktoberfest! This is super exciting, and I'm hoping to possibly get some extra swag for it.

I hope you're able to come along and contribute back to some of the projects we're all using for our websites, or maybe find something new to play with for your site.

I'll also be looking to create a blog post about what Hacktoberfest is and why you should get involved - keep an eye out!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: hacktoberfest homebrew-website-club-nottingham .

I want to say a big thanks for everyone who came to this evening to hear my talk about the IndieWeb!

I hope you all got something out of the talk and it's encouraged you to look into it a bit more - come along to for more IndieWeb + personal website building.

I'm looking forward to getting a blog post out, covering it, but that may have to wait until I give the talk at in October.

by Jamie Tanna's profile image Jamie Tanna . Tagged with: indieweb phpminds events .

I've just removed categories as a thing from my website. I'm still using tags on all the content, but categories no longer exist. This is for a few reasons:

  • categories are not Microformats2 markup-able (as we can't distinguish between tags and categories, it's just p-category which we use for tags)
  • categories in the site are not currently hierarchical - although they may be defined as such, they're not presented like it
  • categories are not any more meaningful than tags, as they're almost always the same, or a reduced set, compared to the tags

So we may as well just remove support for them, as they serve exactly zero purpose.

by Jamie Tanna's profile image Jamie Tanna . Tagged with: .

Correctly using bookmarks (instead of reposts)

As I've embraced indie post types, such as reposts, I've noticed that actually I've been using them wrong.

Looking at it appears I've been conflating a "retweet" on Twitter with a "repost", thinking they were the same. Alas, they are not, and it makes more sense to be a bookmark.

I've since updated the posts using the wrong type and will get things right next time!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: indieweb .

My first impressions with the Pixel 3A

Last week I replaced my OnePlus 3 with a Pixel 3A.

Both Anna ( and I have been thinking about getting a new phone for a while, but as both our phones were doing fairly ok, and we didn't want any unnecessary expenses, we decided to keep an eye out but not yet get anything.

I'd originally heard about the Pixel 3A on the TechMeme Ride Home podcast ( which sounded really nice.

But then when I saw both Ed George ( ) and Graham Smith ( ) tweeting about the fact that they had just got one, I was very interested. As respected Android devs, I see them both as having done the research and know what they're doing - so it meant that I didn't have to do as much research, right??

I could've waited, in all fairness, but Google did a deal where you got a Nest Home Hub, too, so it meant the phone was effectively Β£280 instead of Β£400, and we all know I love a good deal. Unfortunately that it still in the box, as is the Google Home Mini I've got, but maybe one day they'll make their way out - we're an Alexa household currently, but are looking at being multi-platform.

So what are my opening thoughts, one week in?

  • The migration tool was pretty cool, especially being able to just connect up another phone and have it sync, but for some reason my Google Play Store decided not to download anything so that didn't quite work as expected
  • I had rooted my OnePlus 3 so I could get better privacy control over my device, but hadn't used much on the rooting side for a while, largely because Google are making it such a pain to do. I decided I wouldn't root this device quite yet, which means I'm able to use Google Pay - which so far I've done a couple of times and it's been pretty useful, but has just saved me getting my wallet out
  • Battery is much better than my two year old OnePlus 3, and the second day I had it I was tethering + playing music almost all day without it even running out of charge the following morning. Pretty decent!
  • I am however missing some of the convenience gestures I could use from the lock screen - turning the torch on quickly, and controlling my music
  • I'm a fan of the always-on display, especially as it prompts me with the upcoming calendar event
  • The fast charge seems to be on par with the OnePlus Dash Charge - again a big decided in whether I got it or not, as being able to quickly boost battery was very important
  • It has a headphone jack, so I'm happy
  • Booting is super speedy - not that I need to that often, but it's good to have!
  • I'm liking Android Pie, although I'm sad I no longer have the multitasking button so can't toggle apps as quickly
  • I bought an official case, which although a bit pricey was quite nice, and has a good feel to it
  • The camera seems to be pretty decent, from the few shots I've taken of our black cat, Morph

Overall it seems to be going well - hopefully it'll last as long as my OnePlus 3!

EDIT: And something I forgot to mention was that the fingerprint sensor isn't in my location. I'm very used to it being where the home button is on my OnePlus 3, and combined with the placement of the headphone jack on top, it means I'll regularly unlock my phone as I'm taking it out of my pocket, which is quite annoying.

EDIT: I also found the way to easily swap between apps is by swiping on the soft touch buttons, left to right. And by holding it for longer I can skip between multiple apps - nice stuff!

by Jamie Tanna's profile image Jamie Tanna . Tagged with: android phone .

Joining PHPMiNDS' organising team

I'm super excited to announce that I'm joining the organising team for !

Trawling back through the group for PHPMiNDS, I found the earliest time I marked myself as attending was November 2016.

I've never been a PHP dev, although I've dabbled for years. But I've always seen it as a great community, and have been attending for most months since then.

Attending tech meetups has always been about bettering myself, and learning more, and the talks at PHPMiNDS can absolutely be applied to my work, despite it being a different tech stack.

Before Shaun had mentioned to me about looking for another pair of hands with organising PHPMiNDS, and after a little bit of time to mull it over I decided I would definitely be interested in getting involved.

I'm really excited to start to help out Adoni ( and Shaun ( with organising the meetup, and I hope continue making it as awesome for others as it has been to me.

by Jamie Tanna's profile image Jamie Tanna . Tagged with: announcement phpminds .

Extending to allow for other post types

Announcing support for posting notes to my website.

Welcome to my first ! Notes are short-form content that will be purely plain text (for now!) and are similar to tweets on Twitter or toots on Mastodon, but won't be size limited.

I've been wanting to creating other post types since starting to use and having a social feed. I've found that I want to interact with other posts, such as like or repost others' content, much as I would do with Twitter.

Discoverability of notes currently aren't super amazing, but I'm tackling it as part of because adding these post types was a large enough piece of work.

With this note, I'll now be able to , , , , and .

RSVPs are an interesting one, because the end goal I want is for my RSVPs to be syndicated from this site to i.e.

I'm hoping to work on bringing support to this site, too, but as it's a static site with and hosted on with a full build/test/deploy pipeline, it'll be a little less straightforward, and slower, than other solutions.

I've designed the content schema to be Micropub-first, as I want to be writing these posts using a Micropub client, rather than my usual workflow. I've made the source files JSON files (which Hugo natively supports) which makes them easily machine writeable - hopefully it'll teach me to prioritise my Micropub support so I don't have to manually write JSON!

In terms of licensing, I'm going to start by them in line with my posts, as , but down the line I may look at other licenses.

by Jamie Tanna's profile image Jamie Tanna . Tagged with: announcement indieweb licensing .