Exporting Foursquare check-ins to Day One

This is the project that I expected to do for my November 12 Apps in 12 Months challenge but, as you will see, that wasn’t actually possible.

Don’t rely on someone else’s API

I had two projects in mind for Day One: sync my WordPress blog posts and my Foursquare/Swarm check-ins to it. I felt that the latter was probably the easier of the two, so I started with that last September.

I went through the OAuth process to get my key and then started making authenticated calls to the https://api.foursquare.com/v2/users/self/checkins endpoint. This should have returned a list … Read the rest

Exporting WordPress Posts to Day One

For this month’s “12 Apps in 12 Months” challenge I decided that I wanted to try and import my WordPress posts into the Day One app. Given that Day One is now owned by Automattic who also “own” WordPress I was surprised that something like this didn’t already exist as an option within the app.

Into the Unknown

As a local app, albeit one with cloud storage and syncing, there isn’t an API for Day One. Instead there is a CLI which you can use to create new entries from the command line. This was the approach I took to … Read the rest

What Should I Watch Next?

Back last December I wrote about a project that I had written called What Should I Play Next? where it would randomly choose something from my record collection to play. This month’s project, part of my 👨‍💻12 Apps in 12 Months challenge, is the visual equivalent.

The Plex API

When I want to watch a film I am sometimes constrained by the amount of time I have and usually have some feeling of the genre I want so I wanted something that catered for that plus could also exclude things that I had watched before.

While I do subscribe to … Read the rest

Discogs Wrapped

If you’re not a Spotify user, as I’m not, then all the self-congratulatory Spotify Wrapped posts at the end of each year can become quite wearing. It’s not that I don’t listen to music; it’s just that I don’t consume it through streaming. I’m an old-fashioned, physical music kind of guy, and I have lots of vinyl records.

What I thought if I could have my own version of Spotify Wrapped? Enter…

Discogs Wrapped

My music media collection is all catalogued in the online service Discogs which also has an api. In fact, it was this that I used this … Read the rest

jolpica2ergast F1 Database Updater

In addition to this blog and my personal blog I also maintain a Williams Racing fan site at https://williamsdb.com. In fact, this is my longest running site having first gone live on 6th May 1996. As you can imagine this has gone through a number of itterations over the years and the latest makes extensive use of a results database called Ergast.

And then it was gone

About a year ago the maintainer of Ergast announced that he was going to discontinue updating it at the end of 2024. To be honest, I don’t blame him as it … Read the rest

What Should I Play next?

I’ve got a lot of records (At the time of writing 1,076 Discogs tells me) and I always seem to gravitate to the same ones. I decided I needed help to selecting something to play so I wrote Now Playing to help guide me.

The Discogs API

Like many, I record details of my collection on the online service Discogs, which contains a user-generated database of audio releases in whatever format they are or were available. It also has an API that allows you to access certain information that is held within its database. If you are authenticated that … Read the rest

Posting to Bluesky via the API from PHP – Part Ten – Adding ALT tags to Images

NOTE: This post is mainly about how I developed the php2Bluesky library. If you are looking for information on using the library in your own code please see here: https://github.com/williamsdb/php2Bluesky/

I have to admit that I didn’t think I’d be back with another post on my php2Bluesky library quite so soon but Dr Paul Lee on Bluesky pointed out that while you can post images from the library you can’t also send ALT text to go with them.

But what is ALT text?

Alt text is descriptions of images added to the HTML or metadata of a post on social … Read the rest

Posting to Bluesky via the API from PHP – Part Nine – Handling Hashtags

Bluesky has gone from a very niche platform to one that is getting more coverage and seeing explosive growth thanks in part to the actions of the overlord at Twitter. The following was the count of users when I wrote this post.

Expanding functionality

At the same time as the user growth, the platform itself has been growing features to bring it more in line with what its competitors are offering. This includes hashtags, which are now fully supported both in the app and API. What this also means is that I can now add support for … Read the rest

A Minor Update to my Bluesky Library

A quick post to say that my Bluesky library has had a small update. This is to take into account that from version two of Clark’s library that handles the calls to Bluesky the connection method has changed. Therefore, if you have updated to version two then remember also to update the PHP2Bluesky code which can be found here.

You can read all the posts on the PHP2Bluesky library here and get in touch if you find any issues or have an enhancement suggestion.… Read the rest

Posting to Bluesky via the API from PHP – Part Eight – Retrieving a Post

NOTE: This post is mainly about how I developed the php2Bluesky library. If you are looking for information on using the library in your own code please see here: https://github.com/williamsdb/php2Bluesky/

Once again I have been looking at the Bluesky API as part of a question posted on my Github respository. This time the question was “Can I specify one URL and use PHP to retrieve only one bluesky post by someone else?”. You don’t actually need my library to do that but I thought it would be useful to post details here as it’s not immediately obvious.

Identifying an

Read the rest