Will Lyon Seattle Bressuire Poitiers

Reflections, Wrappers

2/12/23

The first read in a book club hosted on Twitch.
The first read in a book club hosted on Twitch.

I am twice-late! Alas. I spent these past two weeks improving UX on the Gallica Grapher. I added a zoom feature to the graph, and made multi-term graphing more apparent and intuitive, I hope. I could add more features, such as an auto-sampling program to detect popular words in the vicinity of a target word. But each new feature detracts from the core purpose of the app, which is easy, intuitive exploration of archived newspapers. So, I am content.

A few researchers have expressed interest in the Python integrations I built for the Gallica archive. Anticipating their needs, I have tidied up the code, added type hints to critical functions, added comments, and done my best to ensure the code is maintainable by whoever might follow me. My contribution is straightforward, parsing Gallica’s XML into Python objects, but it is time-consuming. I would be overjoyed if my code might help researchers focus their efforts.

Apart from maintaining the Gallica API wrapper, my foot is off the gas pedal. I am taking time to read and engage with the developer community on Twitch. A book club started this past month, reading Bruce Tate’s Seven Languages in Seven Weeks. It is project-based, which follows my philosophy of programming pedagogy: build things. I knew nothing of web applications when I started the Gallica Grapher this summer. I knew, however, that the Gallica archive is an amazing resource, and I desperately wanted more people to access it. React, and Javascript more broadly, became tools, not abstract topics to be studied. Even now, having built a non-trivial React application, I would say I know only 40% of the React API surface. I know the parts that let me build what I want. Theo, the former Twitch developer, speaks clearly on the subject of developer goals.

The joy of programming comes from seeing lines of code lurch to life. The horror of programming is solving Leet Code problems for hours on end. I fell into the Leet Code trap early in my journey. Leet Code is devoid of substance, it is soul-crushing. When I switched my focus to the Gallica Grapher, my confidence grew substantially. Neither Leet Code solutions, nor interviews, nor job offers, measured my worth as a programmer. My projects measured my worth, and I had exact control over my projects. The Gallica Grapher is my coding garden, to steal a metaphor. It started barren, I tended to it, it is now an impressive oasis. What I learned from building the Gallica Grapher allowed me to speak eloquently of technical problems, and likely got me a job.

So, to learn to code, find your garden, your problem space, and tend to it. Seek community. Twitch and Youtube have been excellent sources. There, I was not an aspiring developer but a fellow developer. Confidence!

That is all. An excellent week to you, reader.