Drawing the rest of the owl
Originally posted to my internal blog at VaccinateCA
My ambitious goal for the day was to get the new Django/PostgreSQL preview into a state where we could start sending example API requests to it from the help.vaccinate
app.
I didn’t quite get that far, but I made a lot of progress. Here are today’s commits. I’ve also created a milestone for this goal, which is currently 6 issues down, 6 to go.
A few highlights from today:
- I renamed
CallReport
toReport
(#26) after realizing that some of the “reports” we make about the vaccine status of a location do not come from a phone call—they may come from reading a trusted website, or even from a site visit. - I changed
AvailabilityTag
to have new fields for the group (yes/no/skip for the moment, with space for more in the future) and aslug
field for values such asskip_call_back_later
andvaccinating_50_plus
—so we don’t need to send around human strings that we might want to change later (#21). Here’s a screenshot of the new model:
- I did a bunch of work on the Auth0 implementation—including reworking the model a bit (#30) and finishing the work on using it for the Django Admin (#8). Any user with the
Vaccinate CA Staff
Auth0 role (should be everyone with an@vaccinateca.com
email address as-of a few days ago) can now visit https://vaccinateca-preview.herokuapp.com/ and click the sign-in link to access the admin, in read-only mode. We can open up further edit permissions as we decide what things need to be editable. - I finished implementing the logic for applying an
AppointmentTag
to an imported report based on the data in the Airtable record. This was quite tricky—see issue #20 for blow-by-blow details of how this works.
Tomorrow morning things should get much more exciting: after some discussion on #25 I now know what the first version of the API will look like—essentially an imitation of the Netlify function API documented here—so I’ll be building out a working version of that. Follow that issue for progress reports.
More recent articles
- Weeknotes: Parquet in Datasette Lite, various talks, more LLM hacking - 4th June 2023
- It's infuriatingly hard to understand how closed models train on their input - 4th June 2023
- ChatGPT should include inline tips - 30th May 2023
- Lawyer cites fake cases invented by ChatGPT, judge is not amused - 27th May 2023
- llm, ttok and strip-tags - CLI tools for working with ChatGPT and other LLMs - 18th May 2023
- Delimiters won't save you from prompt injection - 11th May 2023
- Weeknotes: sqlite-utils 3.31, download-esm, Python in a sandbox - 10th May 2023
- Leaked Google document: "We Have No Moat, And Neither Does OpenAI" - 4th May 2023
- Midjourney 5.1 - 4th May 2023
- Prompt injection explained, with video, slides, and a transcript - 2nd May 2023