Last Day

Today is my last day working for UCLA Library. I’ve accepted a job elsewhere, but this post is not about what’s next (tune in next week for my first day post). This post is about my past three years, and the awesome group of folks I’ve had the pleasure to work with at UCLA.

Remote Work is Awesome!

I have loved working as a remote developer. I knew it would be great, and very convenient as a parent of two teens and an almost-teen. That part, being at home when my kids come home, I knew would be great. But what I didn’t account for is that, working at home can have a huge impact on many aspects of your home life, most of them good. Like, I did not anticipate how much I would enjoy cooking for my family. And food prep stacks very nicely with afternoon meetings. Not that I did that much, but you can always chop an onion when you refill your mug of tea. Or fix tiny little things you mean to fix… or just being close to the family calendar, not having to copy info into another calendar. These small things add up to a huge improvement in quality of life.

Working from the Midwest with folks on the West Coast obviously means some evening interruptions, but honestly that hasn’t been much more of a problem than it is with any job I’ve ever worked. And everyone (my team at UCLA, and my family) has been very understanding. It doesn’t happen often, but when it does, we make space for the long meeting, late conversation, or the need to make dinner because hungry kids have come home.

Support for learning and service

I have had so many fantastic opportunities, including in-person and remote Ruby and Rails training. I even got to attend Advanced Samvera Camp which is brain-melting fun. What I most appreciate, though, is the unwavering support for attending Code4Lib every year. And the support for continued learning. I’ve been allowed freedom to explore new topics, like infrastructure testing, and encouraged to incorporate what I’ve found into my own work.

And always the work was challenging and a chance to learn, all on its own. I spent a year as part of our Services team, building back-end services, mostly to facilitate working with images, including a delivery pipeline for the very cool Cantaloupe IIIF image server (extending work originally done at MIT, adding many tests and automating the build and deployment pipelines). Check it out, if you’re curious: Docker-Cantaloupe . We also built a wicked-fast TIFF to JP2 image conversion service, called Bucketeer which I’m sure you’ll hear more about in the next year. And a IIIF presentation manifest generation service, called Fester .

Wrapping my head around writing software in a reactive fashion, throwing out an armload of messages in bottles, trusting they will come back, and then writing the code that works when those messages do come back… is weird, and cool. The pay-off is really fast code, that does one thing really well, and together with other similar things, contributes to a very sturdy whole.

While I’ve managed to do a bit of work with DSpace and Samvera in my time with UCLA Library, I know the writing is on the wall for that style of repository work. The future is less about silos, and more about building collections of great, limited-scope services, which work together on the use cases we need to deliver. Which isn’t to say there’s no place for community, far from it. I think there’s a real need for people to share information, what works/what doesn’t, so we don’t all end up with a bunch of stuff that doesn’t work together. There has to be room for us to keep working together. Communities of shared experience naturally form around software… take the shared software away, you will need to work at building the community. Maybe it doesn’t have to be either/or, though… maybe microservice-based approaches can live side-by-side with traditional repository software? Heh, I know they can, and many people are making that work right now. More on that later, I hope.

Saying goodbye

Alas, I didn’t get to work with DSpace long, and had to hang up my active DSpace committer lab coat last year. I briefly joined the Samvera community, but that hasn’t progressed farther than lurking on Slack. I’ve enjoyed learning more about Blacklight , which is part of the Samvera front-end, and the basis of UCLA’s front-end website, Ursus .

Learning new ways to work

It was an honor being part of the first large-scale adoption of Agile development practices at UCLA Library. I owe a debt of gratitude to the kind guidance from the folks at DCE , I’m especially grateful for their gentle correction that continuous integration isn’t a software testing service, but an attitude .

One big take-away for me, from working in an agile fashion, is the idea of breaking tasks up into smaller pieces, so the work is doable, and the flow is constant. Prioritizing flow feels right to me. And I’ve taken that attitude towards all the different tasks in my life… it’s a way of looking at and processing work that has been very beneficial to me. I know at times it has made me an “ornery” team mate, pushing to split up difficult tickets into smaller ones… I’m grateful for the patience showed to me by my teams at UCLA, and hopeful that my next team shows me the same patience.

Another theme in the past few years for me is working towards making dev workspaces shareable. I’ve spoken about this publicly, and have facilitated some conference panels and unconference sessions on developer workspaces. I’ve spent a ton of time working with Vagrant , and in the past couple years, have transitioned to using Docker pretty much all the time. For now, Docker is the best fit for the kind of work I do… it’s fast, reliable, and focused. I plan to use it more.

Wrap it up

I’m proud of the work we’ve done together at UCLA Library. Today will be a challenge to finish without tears. Keep in touch, you know how to reach me. I know our paths will cross again. See you soon. Check back next week for what’s next for me.