Sam Wilson's Website

T7: Twyne

Twyne is a the name of the software that I buid my website in. I started it in 2020, after finally getting sick of every other system of website building not doing what I want.

RSS feed icon. RSS feed for the "Twyne" tag


  1. By .

    I’m trying to figure out what I want next with my website: Webmentions, or some sort of feed reader. Probably I should focus on improving the visual differentiation of authors better. Things all look a bit same at the moment. Also need to do more work on untitled posts, to perhaps completely hide the post ID.

    We had a chat at a meeting somewhere recently about how to mark up authors, preferably with some way of adding the Wikidata ID or ORCID for each, so that they’re unambiguous. I’ve not done it yet, but it looks like it’ll be possible. I think a similar thing can be done with tags. Then things like Citoid and web2Cit can possibly extract better info (not that they’ll be citing my site).

  2. By .

    I’m trying to add a plain-text export option to Twyne (of varying sorts: LaTeX and Markdown to start with). I couldn’t figure out why my code wasn’t working.

    Turns out there is no mime type called text/pain.

  3. By .

    The indieweb gift calendar is happening again now. It’s an annual thing in which people working on indieweb stuff (software, documentation, whatever) get something done on a day in December, and put it on the calendar for others to enjoy. The definitely of ‘done’ is pretty flexible.

    I’m going to try to get the new location-estimation feature of Twyne done and dusted. It needs a bit more work, including better documentation, and then a bit more testing. But hopefully before xmas I’ll get there.

  4. By .

    I think I might have fixed one of the things that’s been stopping me using my website much lately: I kept being logged out. I’d thought I’d fixed that ages ago, and in fact I had, but then I (of course) broke it again. That’s the usual way of bodgy homebrew things I guess.

  5. By .
  6. By .

    I have this idea that if my photo albums are connected to my GPS tracks, then for the many thousands of photos I’ve got that don’t have locations I’ll be able to get likely locations based on their temporal proximity to others that do have known locations. No, hang on, that’s doable without the tracks even… but whatever, it’s still nice to have all in the same database because then I can get exact locations! Or something. (Possibly I just like stuffing around with code.)

    I’m just excited to have Twyne working again, after spending most of this year feeling like it’s all too hard. The GPS/time thing that I am interested in getting working is the one where I can give a location to a post, and it’ll tell me what the local time is for the post. Because post times are all in UTC, but I want to display their times in whatever local timezone they were written in, it’s necessary to convert a combination of date/time and coordinates into a UTC offset. It seems that the easiest way to do that might be with Overpass, because timezone relations are all in OSM now. If I knew anything about what I’m talking about, there might well be an easier way. But I’m a programmer, not someone who knows stuff.

  7. By .

    I’ve been trying to get some work done on how my website does Posse, because I want to be able to pushto other sites as easily as possible. I’ve had it working well with Wikimedia Commons for ages, and find it much quicker than othet means to get my photos uploaded there. Now I’m trying to get it sorted for Flickr, and (probably easier) for Twitter.

    The general process is to a) edit a post to satisfaction; b) open it in one of the Posse forms and change any metadata as appropriate (this doesn’t get saved locally); c) send the post to the remote site. This will upload the post and also create a local syndication record pointing to its remote URL.

    So far so good, but it’s really a post-by-post operation — I wonder if its worth figuring out a bulk cross-posting system?

    The other part of the Flickr Posse feature will be to do a bit more work on PhpFlickr hopefully including releasin a new major version (with all the deprecated code removed at last).

  8. By .

    Sometimes, being a programmer feels like it just means that I spend my spare time building software for my own purposes, with some idea that each is a necessary step towards doing what I actually want to get done. Of course, the lie of this is that I like writing code, and so the fact that every problem looks like it needs more code is quite natural. I find that it can be stressful when I don’t acknowledge this (i.e. working on something because it’s a stepping-stone towards the “actual work”), but when I give up and just work on the code because it’s fun in itself then it feels calm and easy! It also might be useful… but it might not be, and that’s okay too.

    Last night I was working on adding location-tracking to my website, so I can upload photos and have the website suggest approximate locations for them. I just went out for a coffee, and now have a nice track of where I went. There’s probably a downside to storing hundreds of thousands of points, but (oh well) at least it’s entertaining me…

  9. By .

    I’m feeling thoroughly annoyed with the ORM system I’m using in Symfony. All I want to do is merge tags! It should be a matter of an update statement, followed by a delete. But with Doctrine ORM I have to all sorts of confusing things (well, not that confusing, it has to be said, but still…). So I think I might just go back to the simple days when things made sense and database statements behaved properly (i.e. ran when and how you thought they would within a transaction).

  10. By .

    The thunder has been thundering all morning here, and now the rain has come, making for a nice Sunday morning of good coffee and some code that’s making sense. It always feels better when the code makes sense. When it stops making sense (in about an hour, I suspect), I’ll return to cutting mortises.

    I’m adding a system of redirects to Twyne, so that Tags can be merged and their old IDs redirected to the new IDs, and Posts deleted and a correct 410 Gone response returned. I’ll also add a 404 log thing, so that a site admin can keep track of what URLs are missed by users, and if appropriate redirect them to a new page (good if a domain has been migrated from a different CMS).