Skip to content

Dan Q

    • Articles
    • Everything
    • Notes
    • Reposts (shares)
    • Checkins (geo*)
    • Videos
    • Reviews
    • Comics
    • Tags
    • Stats
    • Subscribe
    • Blogroll
  • About
    • Hide posts of type:
    • Choose how Dan's dressed:
    • Hair
    • T-Shirt
  • Contact
  • Podcast

Tag: programming

  • Last year, a colleague introduced me to lazygit, a TUI git client with a wealth of value-added features.

    Somehow, though, my favourite feature is the animation you see if you nuke the working tree. ๐Ÿ˜˜ Excellent.

    Animation showing lazygit, a command-line git client. The working tree has one changed file, config/routes.rb. With a couple of keypresses, the working tree is nuked, with a colourful ASCII-art animation illustrating the destruction of the changed file (actually, it being reset to the previous version).

    • Note
    • posted 21 January, 2025
  • Recreational programming

    Foone shares that "the world needs more recreational programming". I agree.

    Read more (201 words)

    • Repost
    • of this original
    • posted 6 December, 2024
  • Even when it's technical, not all of my International Volunteer Day work for Three Rings has been spent using our key technologies (LNMR [Linux, Nginx, MariaDB, Ruby] stacks).

    Today, I wrote some extra PHP for our WordPress-powered contact form to notify our Support Team volunteers via Slack when messages are sent. We already aim to respond to every message within 24 hours, 365 days a year, and are often faster than that... but this might help us to be even more-responsive to the needs of the charities who we help look after.

    Full image of A filled contact form alongside a Slack message and a resulting ticketing system message.
    Alt

    A filled contact form alongside a Slack message and a resulting ticketing system message.

    • Note
    • posted 5 December, 2024
  • Not every code review is fireworks, but most Three Rings changes come from the actual needs of the voluntary organisations that Three Rings supports. Some of our users were confused by the way the Admin > Roles page was laid out, so one of our volunteers wrote an improved version.

    And because we're all about collaboration, discussion, learning from one another, and volunteer-empowerment... I've added a minor suggestion... but approved their change "with or without" it. I trust my fellow volunteer to either accept my suggestion (if it's right), reject it (if it's wrong), or solicit more reviews or bring it to Slack or our fortnightly dev meeting (if it requires discussion).

    Full image of GitHub screenshot showing a suggested change to a pull request. Dan-Q is suggesting that the new sentence 'These roles belong to .' should not have a full stop at the end, for consistency with other similar headings.
    Alt

    GitHub screenshot showing a suggested change to a pull request. Dan-Q is suggesting that the new sentence 'These roles belong to .' should not have a full stop at the end, for consistency with other similar headings.

    • Note
    • posted 5 December, 2024
  • Good news! It turns out that the new code to fix the mail merge fields in Three Rings doesn't introduce an inconsistency with established behaviour. It was important to check, but it turns out all is well.

    I touched bases with a fellow volunteer on Slack. Three Rings volunteers primarily communicate via Slack: it helps us to work asynchronously, which supports the fact that our volunteers all have different schedules and preferences. Some might do a couple of evenings a week, others might do the odd weekend, others still might do an occasional intense solid week of volunteering with us and then nothing for months! A communication model that works both synchronously and asynchronously is really important to make that volunteering model work, and Slack fits the bill.

    Full image of Slack screenshot showing a discussion between Dan Q and another volunteer about whether it's reasonable for a volunteer to be able to send another volunteer an email containing private information accessible only to the second volunteer, so long as it's embedded via a merge field and the actual value is never shown to the first volunteer. Ultimately, Dan suggests that we stick to the established behaviour, which turns out after testing to be that volunteers can't send such private information to one another.
    Alt

    Slack screenshot showing a discussion between Dan Q and another volunteer about whether it's reasonable for a volunteer to be able to send another volunteer an email containing private information accessible only to the second volunteer, so long as it's embedded via a merge field and the actual value is never shown to the first volunteer. Ultimately, Dan suggests that we stick to the established behaviour, which turns out after testing to be that volunteers can't send such private information to one another.

    We get together in person sometimes, and we meet on Zoom from time to time too, but Slack is king of communication at Three Rings

    • Note
    • posted 5 December, 2024
  • My first task this International Volunteer Day is to test a pull request that aims to fix a bug with Three Rings' mail merge fields functionality. As it's planned to be a hotfix (direct into production) we require extra rigor and more reviewers than code that just goes into the main branch for later testing on our beta environment.

    My concern is that fixing this bug might lead to a regression not described by our automated tests, so I'm rolling back to a version from a couple of months ago to compare the behaviour of the affected tool then and now. Sometimes you just need some hands-on testing!

    Full image of Screenshot showing web application Three Rings viewed on a local development machine, being used to compose an email about International Volunteer Day. A merge field called 'first_name' is included in the email, and it's hand-annotated with the question 'working?'. Alongside, GitHub Desktop shows that we've rolled-back to a revision from two months ago.
    Alt

    Screenshot showing web application Three Rings viewed on a local development machine, being used to compose an email about International Volunteer Day. A merge field called 'first_name' is included in the email, and it's hand-annotated with the question 'working?'. Alongside, GitHub Desktop shows that we've rolled-back to a revision from two months ago.

    • Note
    • posted 5 December, 2024
  • Me, hacking challenging Javascript at work: "Damn, I need a holiday."

    Full image of Dan sits at a laptop in a hotel bar, a view of Barcelona out of the window behind him, a beer bottle alongside him.
    Alt

    Dan sits at a laptop in a hotel bar, a view of Barcelona out of the window behind him, a beer bottle alongside him.

    Me, hacking challenging Javascript on sabbatical: "Ah, so relaxing."

    • Note
    • posted 27 October, 2024
  • The Beeb continue to keep adding more and more non-news content to the BBC News RSS feed (like this ad for the iPlayer app!), so I've once again had to update my script to "fix" the feed so that it only contains, y'know, news.

    Full image of Screenshot from a web-based RSS reader, showing an item "Download the BBC iPlayer app"
    Alt

    Screenshot from a web-based RSS reader, showing an item "Download the BBC iPlayer app"

    • Note
    • posted 19 October, 2024
  • This morning's actual breakfast order from the 7-year-old: "A sesame seed bagel with honey, unless there aren't any sesame seed bagels, in which case a plain bagel with honey on one half and jam on the other half, unless there aren't any plain bagels, in which case a cinnamon and raisin bagel with JimJams on one half and Biscoff on the other half."

    Full image of Dan, looking confused, next to a cinnamon and raisin bagel with JimJams on one half and Biscoff on the other half (and their respective jars).
    Alt

    Dan, looking confused, next to a cinnamon and raisin bagel with JimJams on one half and Biscoff on the other half (and their respective jars).

    Some day, this boy will make a great LISP programmer. ๐Ÿ˜‚

    • Note
    • 3 comments
    • posted 3 October, 2024
  • Screengrab of a remotely-delivered conference talk: Juan talks about a complex-looking mathematical formula; a section labelled 'chaotic energy factor' is highlighted.

    Calculating the Ideal "Sex and the City" Polycule

    When Juan Pablo Sarmiento thought to himself "couldn't Sex and the City's love triangles be squared-away by polyamory?" he didn't just sit down and write slashfic. No; he came up with a formula for idealised polycules, and open-sourced the algorithm. That's my kind of nerdity!

    Read more (327 words)

    • Repost
    • of this original
    • 1 comment
    • posted 20 September, 2024
  • Photo of chicken nuggets with "AI" written on each of them.

    AI posts on social media are the chicken nuggets of human interaction

    Ruth shares her thoughts on the current state of generative AI, and I had a surprising amount to say about them. But mostly, I just love her metaphor about AI-generated social media posts!

    Read more - about 5 minutes (1119 words)

    • Repost
    • of this original
    • 2 comments
    • posted 10 September, 2024
  • Clearly-spammy message shown in a ticket management system.

    Roll Your Own Antispam

    The Web contact form of a nonprofit I founded started attracting a huge volume of spam, and conventional tools weren't helping. But a little analysis allowed us to block almost all of it without compromising on accessibility, privacy, or the false-positive rate.

    Read more - about 3 minutes (710 words)

    • Article
    • 2 comments
    • posted 29 August, 2024
  • Dan, a microphone in front of him, smiles at the camera.

    So... I'm A Podcast

    As you might have already noticed, I started a podcast. Let's take a look (or listen!) into how and why I adapted my WordPress installation to double as a podcast host, and discuss what kind of content you're likely to find on it...

    Read more - about 6 minutes (1390 words)

    • Article
    • with an accompanying podcast
    • 1 comment
    • posted 22 August, 2024
  • Screenshot showing the Twine 2 IDE, with a story map alongside a scene description.

    Where Should Visual Programming Go?

    Niki has some great thoughts on the future of visual programming. I consider that maybe the IF community are already getting ahead of the curve.

    Read more (364 words)

    • Repost
    • of this original
    • posted 23 July, 2024
  • ASCII table with Decimal, Hex, and Character columns. Character blocks (dec) 0-31, 32, 33-41, 48-57, and the combination of 65-90 and 97-122 are individually highlighted.

    The Elegance of the ASCII Table

    ASCII, a standard whose legacy defines to this day how most of the letters and numbers in your computer get encoded into ones and zeroes, is elegant and beautiful. Via lessons in computer history, punched tape, and typewriters, I'd love to share some of its logic with you.

    Read more - about 9 minutes (1923 words)

    • Article
    • with an accompanying podcast
    • 38 comments
    • posted 21 July, 2024

Posts navigation

Older posts
Newer posts

Get in Touch

I'd love to hear from you! Why not...

  • email me on blog@danq.me?
    (my spam filter is aggressive, so use a good subject line, i.e. not just "hello"; encrypt your email if you like)
  • say hi on Mastodon, where I'm @dan@danq.me?
  • send a letter or postcard to
    Dan Q, Unit 159610, PO Box 7169, Poole, BH15 9EL, UK
  • reach out some other way?
  • ยฉ Dan Q 1998-2026
  • Creative CommonsAttributionNon-Commercial except where stated (how to use)
  • powered by BloqClassicPressHTML5CSS3
  • privacy
  • Read articles, checkins, notes, reposts, and more...
  • @dan@danq.me
  • contact
  • subscribe
  • Dan Q
  • Creative Commons Attribution Non-Commercial license
  • ClassicPress
  • CSS is awesome
  • Created by a human, not by AI
  • LGBTQ+ pride flag (2018 progress variant)
  • Polyamory flag
  • Say no to Web3
  • Mastodon (it's like email... no, come back!)
  • Tested on Firefox
  • Best viewed on the Internet
  • PHP
  • Ruby
  • Debian
  • Caddy (webserver)
  • Find me on Melonland
  • Check out my GitHub
  • Three Rings - by volunteers, for volunteers, since 2002
  • I'm a fucking webmaster
  • Looks best at: any resolution!