Writing
25 posts
5.7km is not enough
AI productivity gains are real — but who actually captures the value?
UI in the age of AI
When the backend can reason, what does it mean for the frontend?
Automating Voiceover with ElevenLabs: The Reality Check
An honest look at using AI voice generation for production video content—the wins, the friction, and whether it's actually worth it.
Turning Claude into a Football Opposition Analyst with MCP
How I used Model Context Protocol (MCP) to give Claude access to football event data in Neo4j, bridging the gap between raw data and actionable insights.
TIL: R-strings Are Essential for Regex Pattern Matching with RecursiveCharacterTextSplitter
The quickest way to get counts of nodes and relationships in Cypher
Turn your CSVs into Graphs using LLMs
A guide to using LLMs to generate a Graph data model from flat CSV files
Natural Language to Database Query with LangGraph
Natural language to database query is an integral part of Retrieval Augmented Generation (RAG). This post outlines how to create a LangGraph workflow that writes and corrects a Cypher statement.
Natural Language Queries on Pandas with LangChain and DuckDB
Using DuckDB to perform natural language search on a Pandas DataFrame
TIL: Plotting Neo4j Results with Matplotlib
Discover the two lines of code required to convert a Neo4j result to a Pandas DataFrame and plot it with Matplotlib
TIL: Passing Output Parameters Between Jobs in Github Actions
How to pass the output of one command to another in a GitHub Action
The Abridged Guide to Neo4j Cypher Generation with OpenAI GPT-4
Learn how to build a chatbot that connects to Neo4j with minimal code and minimal Cypher.
TIL: Quick & Convenient Cypher Counts
The quickest way to get counts of nodes and relationships in Cypher
Next level Cypher aggregations using WITH, COLLECT and UNWIND
YouTube Shorts Explained: Create a window function with Cypher using WITH, COLLECT and UNWIND.
Converting HTML to PDF with Node.js like it is 2023
Today I Learned - How to convert HTML to PDF with 4 lines of javascript.
Starting Over - What would I learn?
I was recently asked on a podcast what advice I would give to someone starting out in development today. I botched the answer, this is what I should have said...
Calculating TF-IDF scores in Neo4j with Cypher
When extracting information from documents using NLP, attempting to separate important terms from noise can be tricky. Calculating a TF-IDF (Term Frequency-Inverse Document Frequency) score allows you to identify the important terms in a document.
Analysing Football Events in a Graph Database
How Graph Databases can be used to analyse event sequences in sports
Importing Wikidata into Neo4j Using Neosemantics
How I imported football data from the Wikidata API into Neo4j using Neosemantics.
When and how to implement Sharding in Neo4j 4.0
When you are dealing with large volumes of data, you may need to shard your graph across many physical servers. Here's how…
Multi-Tenancy in Neo4j 4.0
How to manage and connect to multiple databases in Neo4j 4.0
Building a Real-Time UI on top of Neo4j with Vue.js and Kafka
How to build a Real-time UI on top of Neo4j with VueJS using websockets, driven by Kafka and the Neo4j Streams plugin.
Social Feed Cursor Based Pagination
How to squeeze as much peformance out of a high-traffic, high-volume social feed using Neo4j's Core API.
Importing Google Analytics to Neo4j via BigQuery using APOC & JDBC
Take back control of your website visit data by importing it into Neo4j via BigQuery.
An introduction to Temporal Date Types in Neo4j
A comprehensive guide to using temporal types in Cypher, including Date, Time, DateTime, LocalDate, LocalDateTime and Duration.
Using the Neo4j Driver with NodeJS
A guide to using the Neo4j Driver in a NodeJS application
No posts match. Try another topic or search term.