August 30th, 2024 10:05 UTC · 1 month ago

StatusGolangpgdoPostgreSQL

2024, Week 35

pgdo

Last week my focus moved to pgdo. Well, that didn’t last long. There’s something about this project that draws me in, but when I spend time with it I lose sight of what I’m trying to achieve and my enthusiasm wanes.

I see a lot of work that people are doing with PostgreSQL and:

  • I compare the work of others to my little project and come away feeling like my work is inconsequential.
  • I am fascinated by the work of others and get carried away thinking about how I can use it in pgdo.

These are kind of in conflict with one another! Maybe I’m overloaded with the cognitive dissonance of holding both these thoughts in my head?

Anyway, this week I got sidetracked by pglite. I’m certain I’ve bumped into pglite before because this was the name I wanted for pgdo originally, but this time it was from the devtools.fm podcast, specifically episode 105 with James Arthur of ElectricSQL. This was a fascinating talk1 and it got me thinking about using pglite in pgdo. Sadly, pglite runs in single-user mode and that’s not going to work for pgdo, but I’m going to watch that space to see where it goes.

Crafting Interpreters

This is my focus now. I’m working through the book Crafting Interpreters by Robert Nystrom. The first half creates an interpreter for a new language called “Lox”; the second half creates a bytecode virtual machine for Lox. I bought the book some time ago but a recent post, You should make a new programming language , reminded me of it.

The book uses Java and C as the implementation languages, but I’m going to take the advice in that post and use Rust instead. Well, I might use C because I think it’ll teach/remind me of lower level details that would be useful when writing Rust. I’ll read the parts involving Java, but I left Java behind >20 years ago for good reason and I don’t want to consume my time on it now.

Relearning Golang (finished)

The series is all published; there are no more posts waiting to go out. I started writing the post I talked about in my last weekly update but what I’ve written doesn’t add much yet. For now that’s staying in the vault.

Conclusion: The angry fire in me that disliked Golang so much is down to embers now. This is a good thing; it was too much before. That said, I still think Golang was and remains a missed opportunity.

Enveritas

Last but not least, I signed with Enveritas this week. They’re a non-profit working on sustainable coffee farming. For me it’s a new domain, though I’ll be using familiar tools like Python and PostgreSQL. My start date is in late September.


1

James puts “sort of”, “like”, or “just” into almost every sentence. Every ten minutes I would find myself hearing only those filler words and phrases, having tuned out the important stuff. I would take a break before rewinding a minute and going again. James, if you ever read this, please forgive me, but also: what you were saying was so interesting that it pulled me though anyway.