Sign in

Alex Garcia

@alexgarcia.xyz
617 followers 413 following 50 posts

software engineer alexgarcia.xyz

PostsRepliesMedia
Reposted by Alex Garcia
Ence Morse @ence.bsky.social · 02/10/2026
bluesky question! anyone know if there are any 2026 election news starter packs out there, or solid hashtags/feeds for election coverage?
293
Reposted by Alex Garcia
Simon Willison @simonwillison.net · 11/09/2026
Datasette 1.0a39 and 0.65.4 security releases - datasette.io/blog/2026/se... We ran an extensive audit using Claude Fable 5.1, GPT-5.6 Sol and GPT-6 Astra, then fixed a range of different bugs. If you're running a Datasette instance on a public website you should upgrade.
datasette.io
Datasette 1.0a39 and 0.65.4 security releases - Datasette Blog
3428
Alex Garcia @alexgarcia.xyz · 10/08/2026
bloop
michael scott shaking hands meme
030
Alex Garcia @alexgarcia.xyz · 10/08/2026
testtesttest
michael scott shaking hands meme
000
Reposted by Alex Garcia
Nael Shiab @naelshiab.bsky.social · 29/05/2026
Four years ago, I got frustrated constantly switching between different languages and packages just to get my data analysis work done. So, I built @nshiab/simple-data-analysis. It's an easy-to-use, high-performance library for tabular, geospatial, and vector data. 🧵 (1/3)
181
Alex Garcia @alexgarcia.xyz · 22/05/2026
The city of Garden Grove in CA has an active chemical emergency right now, and they posted an evacuation map that's obviously created with AI And honestly, it looks great. Can't imagine being in a time crunch to get something like this out. ggcity.org/emergency
Screenshot of the Garden Grove emergency page. Titled "Evacuation Zone - Chemical Incident" with a map showing the evacuation zone, and a list of "open evacuation centers" labled as Garden Grove Sports and REcreation Center and Cypress Community Center
010
Reposted by Alex Garcia
Simon Willison @simonwillison.net · 21/05/2026
I released the first alpha of Datasette Agent - a conversational AI assistant for Datasette that can answer questions about data in SQLite databases, and can be extended with plugins to add extra tools and features You can watch a demo video or try it out yourself on agent.datasette.io
6563
Reposted by Alex Garcia
Allan Lasser @allanlasser.com · 13/05/2026
On Friday, I’ll be revisiting the session I led at NICAR, *Enhancing public records work with LLMs*. I’ll show off some workflows that combine LLM tools with @documentcloud.org and @muckrock.com. If you missed it at NICAR, now's your chance! Registration: us02web.zoom.us/meeting/regi...
us02web.zoom.us
Welcome! You are invited to join a meeting: Building with MuckRock. After registering, you will receive a confirmation email about joining the meeting.
Welcome! You are invited to join a meeting: Building with MuckRock. After registering, you will receive a confirmation email about joining the meeting.
063
Reposted by Alex Garcia
MuckRock @muckrock.com · 13/05/2026
Join us this Friday and explore Python libraries for the MuckRock Requests and DocumentCloud APIs, and how they can be used with large language models (LLMs) to streamline records requests and assist in analyzing responsive documents. buff.ly/snxwvd1
us02web.zoom.us
Building with MuckRock
Miss this session at NICAR 2026? Join this session of Building with MuckRock!
021
Alex Garcia @alexgarcia.xyz · 12/05/2026
re the tanstack hack: It took a lot of digging but I finally found a good summary of "here's what we're doing to avoid this in the future" Also TIL about zizmor, a CLI that statically analyzes github action YAML for security vulns, with autofix support! news.ycombinator.com/item?id=4810...
We had a few revisions of the postmortem with this included, but ultimately felt premature to include given how quickly we released this notice.

That's not to say that we're not working hard on preventative work, however. We:

- [x] Temporarily removed the cache from our PNPM setup

- [x] Removed all caches from GitHub Actions

- [x] Locked down all GitHub actions on the org to commit IDs instead of version numbers

- [x] Enforced non-SMS GitHub 2FA (NPM & GitHub 2FA was already enforced, but SMS was previously allowed)

- [x] Removed all usage of `pull_request_target` from our CI pipeline (already wasn't in our CD)

- [ ] Are introducing `zizmor` as action linting to every repo via a PR check

- [ ] Are likely introducing `CODEOWNERS` on `.github` folders to restrict merging to only the 7 core maintainers

- [ ] Will replace the PNPM setup cache with `actions/cache/restore`, which has more secure defaults

- [ ] Will replace the PNPM setup cache to be isolated between release and PR envs

- [ ] May close the ability to make a TanStack PR as an external contributor (But we're absolutely not going closed source)

We'll have a follow-up blog post that outlines all of this and how maintainers are able to secure themselves simiarly.
010
Alex Garcia @alexgarcia.xyz · 15/04/2026
Happy #FECFilingDay ! If you're a journalist/researcher covering today's filings, consider my `libfec` CLI tool to make your life a bit easier! Learn how to use libfec for bulk exports, live updates from the FEC RSS feed, and alerting on individual donations! alexgarcia.xyz/blog/2026/li...
alexgarcia.xyz
Using libfec for FEC Filing Days, April 2026 Edition
A short guide on using the libfec CLI to cover today's FEC filing deadline
012
Alex Garcia @alexgarcia.xyz · 27/03/2026
sqlite-vec mentioned
030
Alex Garcia @alexgarcia.xyz · 10/03/2026
Big thanks to everyone who came to my #NICAR26 session for libfec last week, it was a lot of fun! NICAR is the only place where you can chat about federal campaign finance data and actually enjoy it... It wasn't recorded, but I made a video version of it here! youtu.be/UdkQ5HEiF20
youtu.be
Introduction to libfec! (NICAR26 re-record)
YouTube video by Alex Garcia
1145
Alex Garcia @alexgarcia.xyz · 04/03/2026
I will be at #NICAR26 this week teaching classes! For campaign finance folks: come to my Thursday 11:30am class on libfec, a new fast CLI tool for working with FEC data! Also get limited-edition libfec stickers + a campfin "zine"! (Bonus: find @simonwillison.net and I for Datasette stickers)
Assorted stickers and documents on a desk. One group of stickers says "libfec" in green font. The other group says "Datasette" in purple. One document stack has the title "NICAR26 libfec manual". The document says "libfec cheatsheet".
062
Alex Garcia @alexgarcia.xyz · 11/02/2026
Wow, never noticed that the SQLite docs have a sponsor message. Added in November of last year sqlite.org/cli.html
1.2. GUI Alternatives To The CLI

The sqlite3 program is written by and for the core SQLite developers and is the officially supported way to accessing SQLite database files interactively. However, some users might prefer a Graphical User Interface (GUI). Several such programs are available from third-parties. One of those is Visual DB, a sponsor of the SQLite project:

Thanks to Visual DB for helping us make SQLite better for everyone!
010
Alex Garcia @alexgarcia.xyz · 23/01/2026
I know jq terminal output when I see it
020
Alex Garcia @alexgarcia.xyz · 13/01/2026
One trick with this, using libfec + SQLite: - "Hollywood Democrats" has raised $216k in 2 years, treasurer is Benjamin Eisenberg - Has spent $88.5k (~40%) on "General Campaign Fundraising" exclusively to "Summit Campaign Strategies" - "Summit Campaign Strategies" is owned by... Benjamin Eisenberg
! libfec-dev export C00833129 -o hw-dems.db --clobber
.open hw-dems.db

Finished exporting 10 filings into hw-dems.db, in 1 second
Opened database at hw-dems.db

select sum(col_a_total_receipts)
from libfec_f3x;

sum(col_a_total_receipts)
216605.36
1 column × 1 row

select 
  treasurer_first_name,
  treasurer_last_name,
  treasurer_city,
  treasurer_state
from libfec_f1;


treasurer_first_name	treasurer_last_name	treasurer_city	treasurer_state
Benjamin	Eisenberg	La Canada Flintridge	CA
4 columns × 1 row

select 
  payee_organization_name,
  min(expenditure_date),
  max(expenditure_date),
  sum(expenditure_amount)
from libfec_schedule_b
where expenditure_purpose_descrip = 'General Campaign Consulting'
group by 1


payee_organization_name	min(expenditure_date)	max(expenditure_date)	sum(expenditure_amount)
Summit Campaign Strategies	2023-06-12	2025-06-30	88500
4 columns × 1 row
0112
Reposted by Alex Garcia
Simon Willison @simonwillison.net · 04/11/2025
Datasette 1.0a20 is out, with an entirely new SQL-powered permissions system. This is by far the most ambitious project I've attempted with the help of coding agents (Claude Code and Codex CLI) - notes on how it works and what I learned along the way: simonwillison.net/2025/Nov/4/d...
simonwillison.net
A new SQL-powered permissions system in Datasette 1.0a20
Datasette 1.0a20 is out with the biggest breaking API change on the road to 1.0, improving how Datasette’s permissions system works by migrating permission logic to SQL running in SQLite. …
3565
Alex Garcia @alexgarcia.xyz · 14/10/2025
New blog post: I've been working on a new parser for the Federal Election Commission's custom `.fec` file format. Written in Rust, completely open source, and the fastest FEC file parser out there. If you ever work with federal campaign finance data, check it out! alexgarcia.xyz/blog/2025/in...
alexgarcia.xyz
I'm working on libfec, a new FEC file parser and CLI tool
Parse federal campaign filings
071
Alex Garcia @alexgarcia.xyz · 15/04/2025
Love this approach for seeing if ChatGPT is used in a document: See if `utm_source=chatgpt.com` appears in any URLs. Doesn't prove that ChatGPT wrote it, but at least shows they used ChatGPT when researching.
Screenshot from article that says:

A paragraph on page 29 also cites a fact to a 2024 Gothamist article, and includes the site where the source was generated: ChatGPT.

[23] https://gothamist.com/news/heres-what-nycs-mayoral-candidates-say-about-freezing-the-rent?
utm_source=chatgpt.com
140
Alex Garcia @alexgarcia.xyz · 18/02/2025
Great guide here by Ed for using sqlite-vec + OpenAI embeddings in a RAG system! Includes great use of the new auxiliary columns feature for storing metadata (further evidence that the LA tech scene is elite)
180
Reposted by Alex Garcia
Derek Willis @dwillis.bsky.social · 27/01/2025
NEW BLOG POST: Been testing out 20 LLMs at extracting data from political fundraising emails. See the process and results here: thescoop.org/archives/202...
thescoop.org
LLM Extraction Challenge: Fundraising Emails – Derek Willis
Academic and journalist
42010
Alex Garcia @alexgarcia.xyz · 27/11/2024
Please merge my +321,000 line PR, it's only a few small changes 🥺
Screenshot of a github pull request with the following contents

DRAFT: Add embedfile for all-in-one embeddings CLI tool #644
 Draft
asg017 wants to merge 14 commits into Mozilla-Ocho:main from asg017:embedfile-init  
+321,488 −0 
 Conversation 0
 Commits 14
 Checks 1
 Files changed 24
Conversation
asg017
asg017 commented 42 minutes ago
embedfile is a CLI tool that bundles llama.cpp / llamafile, the SQLite CLI, sqlite-vec, sqlite-lembed, and a few other SQLite extensions into a comprehensive and performant tool for generating text embeddings from CSV, JSON, NDJSON, txt, or SQLite database files.
281
Alex Garcia @alexgarcia.xyz · 22/11/2024
let's goooo
030
Reposted by Alex Garcia
Simon Willison @simonwillison.net · 20/11/2024
If you're interested in embeddings and SQLite you should be paying attention to sqlite-vec Lots of neat stuff in this release - and the blog post provides a very clear explanation of what it can do
2919
Alex Garcia @alexgarcia.xyz · 20/11/2024
sqlite-vec v0.1.6 is now out, with metadata support! SQLite vector search w/ metadata filters 👀 - Perform extra filtering w/ WHERE clause in KNN queries - Internally shard vector indexes with partition keys - Aux columns for easy lookups read more: alexgarcia.xyz/blog/2024/sq...
alexgarcia.xyz
sqlite-vec now supports metadata columns and filtering
Metadata, partition key, and auxiliary column support in sqlite-vec
2287
Alex Garcia @alexgarcia.xyz · 20/11/2024
metadata filtering has been merged in sqlite-vec. Release coming soon!
screenshot of a github pull request page for "Metadata filtering" ,showing a "merged" status and a 7,300 line diff.
010
Alex Garcia @alexgarcia.xyz · 15/11/2024
Next week I'll be hosting a sqlite-vec online event about metadata filtering, which is coming VERY soon — come through! Wednesday November 20th at 10am PST, in the @mozilla.ai Discord (will be recorded) discord.gg/4ZMAgmrwqf?e...
discord.gg
Join the Mozilla AI Discord Server!
A global space for sharing and advancing open-source AI. | 3420 members
050
Reposted by Alex Garcia
Vicki @vickiboykis.com · 02/11/2024
Sqlite now with vector search! github.com/asg017/sqlit... courtesy of @alexgarcia.xyz
github.com
1132