101 posts in this category · all categories
WordPress loading theme assets of a different theme to that selected
15 January 2026
Handling 403 errors in BuddyPress's new_activity_comment
10 December 2025
ERROR: failed to build: failed to solve: failed to compute cache key: failed to calculate checksum of ref XXYYZZ
3 December 2025
Lando giving '404 page not found'
1 December 2025
Using a public API, or the instability of MusicBrainz IDs
9 October 2025
Hacking the full site editor in WordPress
17 April 2025
Testing 1, 2, 3 (on software testing and why it's interesting even to non-developers/non-coders)
14 March 2025
Swimming upstream
21 February 2025
Getting external access to BuddyPress's notifications (for Knowledge Commons)
18 February 2025
Getting Knowledge Commons Works running locally
8 January 2025
Evaluating Document Similarity Detection Approaches for Content Drift Detection
21 December 2024
Rusting Away (or: packing the entire Crossref database into a SQLite file)
9 January 2024
Blocking My Crawl
9 November 2023
Connecting to AWS OpenSearch Serverless using Python
20 October 2023
Self-referential language counting (I learned another word today bringing my total to fourteen words and twenty letters)
12 October 2023
Creating a voice-activated AI responder in Python
24 September 2023
Converting Excel date serial numbers to Python datetime format
10 August 2023
On application observability in serverless cloud contexts
25 March 2023
Integration testing locally and on GitLab CI using LocalStack
19 March 2023
A data pipeline with Apache Airflow and Dask
9 March 2023
Getting to grips with Airflow on Amazon AWS
13 February 2023
Reloading SQLite databases in Django when there have been external changes
18 June 2022
Running Django apps on AWS Fargate with a serverless RDS
19 May 2022
Static site hosting in the cloud should not be this hard in 2022
7 May 2022
Resizing image uploads in Django
30 April 2022
Using Django ORM, Click, and Rich to create useful command-line python apps
24 January 2022
Headless PDF printing in Chrome: when the standard timeout isn't enough
18 October 2021
On programming/languages
23 August 2021
Zotero and auto-downloading open access books
10 April 2020
What size should my music studio be?
1 June 2019
On automatically detecting parenthetical citations
10 February 2017
Introducing Cemmento: A digital preservation tool for annotations
13 December 2016
Overriding AngularJS directives' isolate scopes
20 July 2016
Continuing javascript execution after total DOM body replacement using DOM mutation observers
12 July 2016
Selecting specified text ranges in a browser using javascript and xpath
26 June 2016
Creating a generic loader for Annotator.js plugins inside a hypothes.is extension project
25 June 2016
CaSSius now supports full headless PDF creation from JATS XML
19 June 2016
Initial parsing work on large JSON corpus
10 June 2016
Identifying 26GB of JSON Novel Data
9 June 2016
Hypothes.is v0.8.14 error: "OSError: [Errno 2] No such file or directory"
11 May 2016
Overriding hypothesis's interface the right way
3 May 2016
Visualizing textual variance/genetics with SankeyVariant
24 December 2015
Fix some of your writing tics with a bit of technology
7 August 2015
Some lessons in writing Python web scrapers
18 May 2015
Object Thinking, Systems Description Languages and the Future of the Book
2 March 2015
Semantically marking up JATS bibliographies using meTypeset and Zotero
5 July 2014
Dumping JATS from Zotero
23 June 2014
Typesetting JATS bibliographies using CSL and Zotero
22 June 2014
Debugging meTypeset using a git filesystem
27 February 2014
MathML support in the meTypeset typesetter
26 February 2014
Modularizing the meTypeset typesetter for the user interface phase
24 February 2014
Handling the absence of a (newline) break tag in JATS
13 January 2014
Introducing eprintsCV: a python script to create an academic web CV from your eprints record
6 January 2014
Getting free_cite running on your own server
12 May 2013
CrossRef, DOIs and Preparing for Future Assignment
26 March 2013
Starting a Digital Humanities Project: epiLog
11 April 2012
Account aggregation with UK banks and a free software Lloyds TSB scraper
30 December 2011
meXmlGalley now supporting image insertion (OJS: XML to PDF)
16 December 2011
.NETIDS development restarted. Participants wanted.
19 November 2011
Writing a plugin for Open Journal Systems: Part 2
25 September 2011
Writing a plugin for Open Journal Systems: Part 1
17 September 2011
Publishing articles in PDF via XML/XSLT using Open Journal Systems 2.3.6
14 September 2011
Satchmo payment modules
26 August 2011
Crossword Helper for Android
21 April 2011
Mendeley for Android Update
21 February 2011
Mendeley for Android: Progress update
24 January 2011
Rockaby: Mission Statement and Implementation Plans
19 January 2011
Getting a custom Sync Service and Adapter to show up under "Data and Synchronization" on Android
14 January 2011
Mendeley for Android: screenshot of collection display
11 January 2011
Android Rom Update Utility extractor for Linux
9 January 2011
Automated CPanel Backups with SCP
8 January 2011
Mendeley Android Client: now implemented as a user account with sync
5 January 2011
Mendeley Android Client Progress (w/ Video, Source and APK!)
4 January 2011
OAuth for Mendeley on Android: solved and a bug
4 January 2011
Mendeley Android client; first preview and OAuth problem
20 December 2010
Djiscography: a Django-based discography generator
13 December 2010
Rockaby refactoring and abstraction
2 December 2010
Rockaby: text annotation software [GPL, alpha, announcement]
19 November 2010
Online crossword helper: http://ana.grammatic.org
14 November 2010
PoC Code for Facebook Friend Profile Gatherer
26 April 2010
sshsplit featured
11 March 2010
sshsplit: a dynamic tunnel multiplexer
2 March 2010
FTP URL FastSnap Parsing in .NET
1 February 2009
Creating an IRC front/back-end from a C# web application
17 September 2008
C# DataExecutor class again
31 July 2008
Expanding a treeview to a specific node in WPF
30 July 2008
Building a robust, SSL, CRC-Verified server/client solution in the .NET Framework with C#
23 July 2008
C# MemoryManagement Class
6 July 2008
Binding to RadioButtons in .NET Windows Forms
6 April 2008
wp-aspxrewriter alpha test
23 February 2008
An XML based XSS PoC platform
2 February 2008
IE7 Javascript - modify the DOM without crashing the browser
17 November 2007
XSS for the common good - GreaseMousey
9 November 2007
JavaScript internal numerical representations
5 July 2007
HttpOnly cookies in .NET 2.0
26 June 2007
C# DataExecutor class available
26 June 2007
.NETIDS v.0.1.1.0 released
26 June 2007
C# MySql DataExecutor class
25 June 2007
.NETIDS v.0.1.0.0 released
19 June 2007
.NETIDS can now detect fragmented XSS
15 June 2007
dotnetids
25 May 2007