My exposure to it prior to entering the mainframe world almost seven years ago was quiet limited. My friend Walt Mankowski has worked with COBOL over the years, and I’d been to a few talks of his talks that would recount stories of working with it. I even hear my uncle was a COBOL programmer back in the day. But it did feel something that was from a time passed, and as a person in infrastructure, how much of an opinion could I intelligently have on programming languages anyway?
When I joined the mainframe world almost seven years ago, I realized I was mistaken about a lot of things, and COBOL was one of them. It’s still widely used. New compilers for IBM Enterprise COBOL for z/OS are still being released. Want to hook COBOL into a modern API? Go for it! It’s been an interesting journey, which I reached an interesting point of in 2023 when 2023 when I took an introduction to COBOL course and started thinking more thoughtfully about why COBOL still exists. It’s a domain-specific language that has a very specific use case. And programming in COBOL? It may be completely unintuitive to a seasoned programmer, but to an infrastructure person like myself I didn’t feel like I was treading on completely foreign lands. Throughout my career I’ve seriously worked on at least a half dozen configuration management systems, and COBOL actually felt like a bit like this same scaffolding and definitions, except for data. Now, you may be reading this and think I have it all wrong, but your brain works the way yours works, and mine works the way mine works. Indeed, upon listening to Advent of Computing: Episode 60 – COBOL Never Dies I found the host, Sean Haas, spend a decent amount of time saying how clunky and designed-by-a-committee the language is (and how it’s not our beloved Grace Hopper’s fault – hah!). That’s ok, it was nice to get a refresher into what developers of newer languages think of it.
Now, sometimes when I talk about this, people laugh, but others are curious, so I’d point them to a blog post that I wrote for IBM Developer back in 2023, but oh no! I discovered recently that it had been retired and was no longer accessible. The Wayback Machine also didn’t index it. Fortunately, I was able to dig up the markdown from git so I could share it here:
Originally published on IBM Developer, February 2, 2023, small edits have been to resources and for clarity
I spent nearly 15 years as a professional Linux systems administrator, which later morphed into a site reliability engineer (SRE) role before I joined IBM in 2019. When I entered the mainframe space, my programming experience was mostly scripting of bash, plus some Perl and Python, with a little Go thrown in. So it took me some time to decide to look into some of the languages that were more popular among mainframers, but ultimately I kept bumping into COBOL so I decided to check out the Open Mainframe Project COBOL Programming Course!
The relevance of COBOL today shouldn’t be understated, though it often is. An estimated 1.5 billion of lines of code are still being written each year, some of which is maintenance but there are also new projects being developed as efforts to update technology stacks are underway. The Open Mainframe Project COBOL Working Group’s 2021 survey reported the following:
I had never really used a proper domain-specific language (DSL) or programmed in a structured programming manner, so that was probably the first thing I had to learn.
COBOL is usually used for very specific use cases and it’s very good at what it does, but that means it can take some time to learn the proper way to construct programs. It also requires a thorough understanding of your environment and data sets — Where does your data live? What type of data is it? What size considerations are there? It’s said that COBOL is easy to learn, but you must invest a significant amount of time in learning your environment.
And then there is the actual programming of COBOL itself, which is like nothing I’ve ever been exposed to. In some ways, it’s meant to be easier since the code is designed to look like English-language sentences. For those of us who grew up on general purpose languages that all have very similar key concepts, COBOL is a different beast entirely.
It’s almost like learning to program all over again, and I have found that refreshing.
The main thing about walking through this course is that I’m gaining a more holistic view into the tech stacks we all depend upon. As hybrid cloud projects take off in all kinds of organizations, the key to success lies in understanding the strengths of technologies from COBOL to containers. You may find that something trivial and fast to do in COBOL is complicated and slow to do as a front-end layer, or vice versa. And if your data resides on a mainframe and you already have COBOL available to you, the most efficient option for your organization may be to leverage COBOL for data processing and then pass it up the stack to a container-based front end on the cloud.
The key here is that in order to have an effective approach to integrating distributed and other cloud-based technologies in your stack, you need to have the expertise to make the most sensible decisions for your organization. This should include assembling a technical team that has the skills needed to properly analyze and implement an effective solution. However, if you’re the SRE on this team, I highly recommend getting a cursory understanding of the rest of the stack by doing something like taking a COBOL basics course.
The Open Mainframe Project COBOL Programming Course community is made up of a range of contributors — from hobbyists and students to faculty and COBOL professionals — who come from multiple organizations, including colleges and universities. This course uses VS Code to set up your environment on a real mainframe using IBM Enterprise COBOL for z/OS.

As of today, the course is comprised of four sections:
With these under your belt, you’ll find yourself with a much more informed perspective in any work your team is doing.
If you’re able to review instructional materials, you can get started by navigating to the Open Mainframe Project COBOL Programming Course on GitHub. Alternatively, you can do what I did, with sections 1 and 2 covered in the Learning COBOL Programming with VSCode course, which is available for free (you can also find it on Coursera if you’re more comfortable in that ecosystem). It’s presented by the funny and entertaining Jeff Bisti, who makes what could be very dry content quite amusing.
And if you find errors or want to make improvements to the course along the way, the aforementioned community is a friendly and vibrant one, so you’re welcome to submit issues or pull requests if you have a solution or enhancement. I hear they’re always looking for contributors, and I happen to know a guy.
Either way, I think you’ll have a lot of fun digging in, and you can expect to come away with a much better understanding of your environment and where to most effectively implement improvements. I sure did!
Finally, if you’re part of a team that’s undertaking one of these efforts, I highly recommend Marianne Bellotti’s book Kill It with Fire: Manage Aging Computer Systems (and Future Proof Modern Ones), which gives an excellent tour through various modernization efforts that she has been involved with, and what she’s learned from the successes and failures along the way.
]]>I also had the unfortunate situation of battling a sinus infection while figuring out the answers to all these questions. I always forget how painful those are, and how debilitating the sinus headaches can be. My stomach also didn’t respond to the antibiotics very well this time. Oof. When I say this was a doozy of a holiday season, I hope you get where I’m coming from. We figured it out though!
First: Prep! I’ve already written that we put up lights and decorations, and set up the model trail that we set up for Hanukkah. I realize that Christmas holiday glitter has infiltrated our Hanukkah quite a bit with all of this, but I love holiday glitter and this is just how it’s going to be in our house. Besides, Christmas got the glitter from solstice celebrations. It’s fair all game.
1st Night
To kick off Hanukkah we invited Rebeca over to celebrate with us, and so she could be around for the boys opening the present from her.
I also sent MJ and the boys out earlier in the day to hunt for some jelly doughnuts so we could enjoy a sufganiyot-ish treat this first evening.
2nd Night
Dreidels, gelt, and Hanukkah art!
The boys were relatively self-sufficient with their playing with the dreidels this year, which was fun, aside from the inevitable fights that broke out over strategic dropping rather than spinning of the dreidel to get the desired outcome, hah! They both got the hang of spinning it though.
3rd Night
Around 3:30 in the afternoon, a collision occurred on Interstate 580 near our house that caused a car to be inexplicably vaulted from the flat bed of a tow truck to the BART train tracks that reside in the middle of the highway. It’s incredibly bizarre, I hope details are released at some point as to what they believe happened because it would be fascinating to know how it was even possible. The one thing we do know is that it it caused a traffic NIGHTMARE all evening. Adam was scheduled to meet with the leads of a program he’s been enrolled in to celebrate his graduation, and they were a full 90 minutes late – for a 90 minute visit. Still, they made it and we got to celebrate!
Alas, a family friend who was scheduled to come by did rethink her visit into that traffic nightmare. That meant that the latkes I was preparing (recipe here) for her visit had one fewer person to feed, and it was a bit of an anticlimactic conclusion to my latke preparation. Aaron and I really enjoyed them though! And MJ was able to enjoy some leftovers before we left for Philly.
That evening the boys had a lot of fun listening to the news helicopters fly overhead, and following the news about the car on the BART tracks, including watching a live broadcast as the rescue truck with a crane lifted the car off the tracks.
I enjoyed my third night of Hanukkah beer with my latkes and apple sauce.
4th Night
Packing for our trip, and managing a chaotic week that included work, taking the cat to two different specialists, and an emergency dermatologist appointment for Aaron who has a knee wound that’s taking longer than expected to heal. We did presents and lights and it was lovely, but I didn’t take pictures because the evening was a lot.
5th Night
On to Philadelphia! My solution to in-flight Hanukkah was giving the boys a couple gifts on the plane that they could use on the plane. So they each got to enjoy a new game for the Nintendo Switch. Aaron got a Bluey game and Adam got a Cars game that he’d been eyeing at a game shop in Hayward, that MJ had the foresight to pick up as a Hanukkah gift.
When we finally got to the townhouse in Philly, we lit the candles for the fifth night and munched on our quick dinner picked up from Wawa. Then it was straight to bed!
6th Night
I phoned it in with present wrapping this night because while I had presents available to give the boys, I had a busy day at work and zero time to wrap presents. After going out for dinner, we lit the candles and the boys got to open the presents I had tossed into a gift bag with some tissue paper on top. Voila! Everyone was happy.
7th Night
Things were a bit more together today, but it helped that it was a weekend. Lights were lit, and Aaron got his favorite present of the holiday: a really simple ice cream maker. He’s been talking about it for over a month, and has kept talking about it, so he really seems to be enjoying it.
8th Night
We spent the day downtown, and then joined grandpa, his aunt Irina, and cousin Sammy for lighting the candles the final night. With our menorahs full of candles, it was great to have family over, and we all had an enjoyable evening.
And thus concludes Hanukkah for the year! Now that I’ve done the split coast thing once, I think I’m in a much better position to continue it when the need next arises, but with it landing in early December in 2026, this probably won’t be that year. Thank goodness.
]]>But over the summer we picked up some fun light up FasTrack that we thought would be fun around the holidays, and I mentioned over Thanksgiving we got it set up. Now that I’ve had some time to sit down and take pictures I’d like to document what we came up with a bit better.
Starting point: Circa 2000 train set and transformer with classic Tubular Track, including the Lionel CTC Lockon.
Where we wanted to get to: Use our fancy new Lighted FasTrack!
The first, obvious, challenge was that my transformer didn’t connect to the track with a plug, it uses the CTC Lockon. How do I get power to this fancy track that has a plug hole? Fortunately, I explained my setup so when the local train shop sold us the Lighted FasTrack, they also sold us a FasTrack Accessory Power Wire (6-12053) which we’d need. Except that I didn’t have any idea how to use it. As I mentioned in my last post, this post on Reddit included enough photos for doing the same with some standard track.
But if you’re looking for something more direct and clear, here’s the photo of what I did:
As you can see, there’s a wire that extends from the plug, and I’ve unplugged that. In its place, I’ve attached my new FasTrack Accessory Power Wire. And that’s it! Time to find all those tiny screws and close it back up.
From there it was a matter of attaching the other end of my new accessory power wire to my transformer. The wires are exposed, so you can test them by touching them together, but you should secure them in some way. That’s when I grabbed my husband for some help because I knew he had a collection of wire couplers that could come in handy for this project. He attached some detachable couplers that could be used with either track type.
Now I just need to address the squeaky wheels.
Have something to add or share? Or did I get something wrong? Drop me an email: lyz@princessleia.com
]]>The day after we got home, I grabbed tickets to Oakland Zoo Glowfari. The tickets for weekends tend to sell out quickly, and it’s busy, so I decided that we wouldn’t wait and would just grab a weeknight far enough before the December holidays that it wouldn’t be too crowded. So the boys and I went with Gaby, our new au pair Ana, and then their former au pair Rebeca joined us! It was a ton of fun, the structures are beautiful and there are a lot of them. The first area we explored was a future of Oakland-themed village which had all kinds of great Oakland landmarks, including the Tribune tower, the boot from Children’s Fairyland, and a Chabot Space & Science Center observatory.
Plus, they had a BART train you could go inside! And run inside, which the boys did, of course.
From there we walked through areas devoted to insects and African animals. Of particular interest to every kid there was a tile you could jump on to trigger a stink bug to spray “smoke” out of his rear end. Oh boy.
We then met up with Rebeca and got a bunch of great photos of the boys and three generations of au pairs. I’m really glad we were able to do that before Gaby went home! With Rebeca, we took the Gondola up to the California Trail to explore the ocean part of the Glowfari. Up there the bubbles filled with “smoke” were a big hit with the kids. They were pretty cool. We didn’t get to go on the Zoo train which gets you to even more light up goodies, but since just train tickets are required for that, I’m hoping that we can go with MJ some time in January to just do that.
I mentioned Gaby leaving, and that was a pretty big deal for all of us. She’s our first au pair to actually go home at the conclusion of her term (the first got married, the second stayed to go to school in the US). As a result, the boys still see their past au pairs! We’re really going to miss her. I think we got really lucky with our new au pair though, the boys immediately connected with her and she’s been great so far.
The following weekend we joined a bunch of other Bay Area Rapid Transit (BART) fans at Rockridge station for Sweaterfest. It was a whole little celebration with BART crafts and other related pop-ups with little activities for kids and photo opportunities. At the end, they took a big group photo with us in our sweaters! MJ wore one from when we attended a couple years ago, Adam and I had matching BART sweaters from this year, and Aaron donned this season’s BART winter hat (no shirts in his size this year). We got to ride the BARTmobile (a hilarious train with tires that use used in parades and other events), and managed to get in the group photo.
We checked out the craft table briefly and the boys got to jump around inside a big inflatable winter bubble. It would have been nice to arrive earlier since things closed fairly promptly around 3PM, but we still had fun, and it was probably for the best that we didn’t go on such a long adventure, did I mention December was very busy?
The next day, we went to the Great Train Show, which was set up at the Alameda County Fairgrounds. This is also an event we’d gone to before, I think it was last summer? Last time, MJ realized he knows one of the folks who regularly attends with one of the model train clubs, as they used to work together, so he likes to use it as an opportunity to say hello.
Plus, it’s a great place to shop for model trains to expand our Hanukkah train layout! Sadly, the engine on ours wasn’t working well. In spite of buying it just five years ago and only taking it out for the winter holidays, think it was dropped a few too many times by small kids. We brought it to the train show to test it on their test track, and that’s where it completely failed. We tried to get a replacement engine, which is lovely! But will take some work to get it going with our equipment. Still, the fellow who sold us the engine also had a really cute Hanukkah box car that we bought along with it. And maybe I’ll see if I can get our other engine repaired.
The boys also got to check out a couple of retired maintenance cars that are kept running by members of the West Coast Railroaders Group. Some people have boats and sail over water. Some people buy old rail maintenance cars and ride down tracks through beautiful forests. MJ spent some time talking with them as the boys kept themselves occupied by sitting in the cars and playing with the controls.
It was a fun afternoon, but I was tired. I had developed a sinus infection that was being treated with antibiotics, but I think what I needed was rest, and not a weekend full of train adventures,. I was also prepping everything for Hanukkah, which had me up on a ladder outside hanging Hanukkah lights during this time too, something I thought I’d skip this year but ultimately wanted to do because I love holiday lights. And prepping to come back to Philadelphia. It’s no wonder I was feeling worn out.
We’re in Philadelphia now, and while I didn’t take much time off of work through the winter holidays, I am grateful to be able to focus on more project work that tends to bring me more peace and calm. I’ll try not to overdo it activity-wise while we’re here. I think I’m finally over the sinus infection, but both my body and mind could use some time to relax and recharge. Maybe some time reading a book by the fire. We’ll see how that goes.
]]>We also picked up some cake at the airport that he could enjoy on the flight. When we boarded, wearing his new birthday t-shirt, he also got to enjoy a quick little tour of the cockpit. Plus, the change in time zone means he had a 27 hour birthday. Not bad!
His actual birthday party was held on Sunday when we were all back home. Guest-wise, our previous au pairs, Rebeca and Gaby, joined us and our new au pair Ana. As requested, it was Paw Patrol themed!
It was a fun afternoon. Maybe next year we’ll extend the birthday to some kids Aaron’s age, but pandemic habits die hard, and it’s been a pretty busy season for all of us.
Aaron has been enjoying his new-found access to video games. He’s starting out with a Paw Patrol game and Mario Kart, but I expect he’ll quickly graduate to some more complicated ones. I’m super proud of how much he’s matured in this past year. He’s doing great in Transitional Kindergarten at the public school, and he surprises me all the time with what he’s learning and understanding about the world.
]]>So first, thanks to Beth Lynn, Vance Kochenderfer, Susan Rose Dudenhoefer, and the other volunteers who brought the event together this year on a tight deadline. I’m so grateful I thought to include the conference on my quarterly event requests in spite of it not being announced yet!
I’ll also mention that I keep calling it “Ohio LinuxFest” but they rebranded as “OLF Conference” to reflect “Open Libre Free” and their goal to include operating systems beyond Linux, mea culpa!
The event itself was a lot of fun. It was smaller than in years past, as they went with one track. They mentioned at closing that doing it in December is too late in the year, and along with the short runway for the conference likely impacted attendance. Still, if I had to guess I’d say there were a couple hundred people there.
I saw a lot of familiar faces. My friend Scott came out from Pittsburgh, and though we still chat regularly in a group cobbled together from our Ubuntu Pennsylvania days, we hadn’t seen each other in person in years. It was really cool to catch up, and to laugh about kid stories, since we’ve both became parents since we last saw each other. I also got to spend a bunch of time with Amber Graner, who I also got to know very well during our time in the Ubuntu project. We’ve stayed in touch, so we’re still pretty close, but this was the first time in a while that we had more than 20 minutes to catch up. And new people! I got to chat with a student who was attending an open source conference for his first time, and met several folks who have been working in open source for decades. It really was a great mix of folks.
I really enjoyed the opening keynote from Don Vosburg on Passion and Pragmatism. He tugged on a familiar thread in the open source world around the fact that a lot of folks got into open source software “for fun” or the passion of it, but most of us eventually had to get professional jobs that may have tested our fundamental commitment to open source. Or other things that have arisen in our lives that require us to make a choice. I’ve definitely had to walk a line throughout my career, but consider myself quite lucky to have found myself a series of good positions that have allowed me to follow my passion and make a living.
My talk was just after the keynote, and I was very happy that most people stayed! It’s a re-working of a talk I gave last year, but I notably added an architecture and made some adjustments to my slides about software testing. I was amused to learn that my closing keynote back in 2018 was about doing software testing on your open source project, and that this could be seen as an expansion of that. I joked at the beginning that I was very glad everyone listened to me last time, and now that they all have software testing, it was time to add non-x86_64 hardware architectures into that testing matrix. The slides are available here: Will_your_open_source_project_run_on_a_mainframe_Or_a_watch_OLF_2025.pdf (1.2M)
Catherine Devlin’s “Graph Data for Heroes II: Rise of the Bot” was an interesting one. A large chunk of it had her scraping web data, and as I was live-posting about it on Mastodon and Bluesky I was speculating about how web scraping is one tech that hasn’t gotten a whole lot better in 25 years, then mused that it was actually a good use for AI/ML technologies. Indeed, that’s where her talk went!
Scattered throughout the conference foyer were a few tables from supporters and sponsors, and I was delighted to see a series of ChromeBooks that had been repurposed to use various Linux distributions. I was delighted to see that Xubuntu made the cut, and when I walked over to check it out I was presented with our shiny new website. Lovely!
In the afternoon I enjoyed seeing Steven Pritchard’s “The Great Open Source Rug-Pull” where he talked about open source software license changes, which have caused a lot of disruption and contention in the open source world these past few years. And although I had heard of Hacker Public Radio before, it wasn’t until murph’s talk on the topic, along with a bunch of great tips, that I got a serious look into what it was and how the episodes are crowd sourced. These folks are doing great work.
Amber Graner concluded the day with the closing keynote “Bless Their Hearts: Open Source, AI, and Southern Survival Skills.” She took us on a personal, funny journey through some of the characters and situations in the open source world. I particularly loved at the end where she shared a list of things she wished people had told her when she started contributing to open source. I’ll be keeping some of these things in mind as I continue working with students who need more than just the basic misconceptions about contributing corrected so they can effectively contribute.
The end of the event crept up quickly! The group hosted a small closing after party in the hotel lobby with pizza and my favorite, cake!
In what is perhaps one of my shortest conference trips, I flew out at 5AM the next morning to get home by midday on Sunday. It left me pretty tired, but it was worth it.
]]>We arrived on Saturday night and were able to meet with my father in law for lunch the next day. MJ and I worked Monday through Wednesday while our new au pair settled in with the boys and started exploring the area with them (library! trampoline park!). As we prepared for the holidays, the boys and I set up the Hanukkah train (a vintage Lionel train) and put away the LEGO train we usually have out. When we were in town over the summer, we had stopped by Joe’s Train Station, our local train hobby shop, and picked up the Lionel Lighted FasTrack that we opened to use for the first time. Since our train is older, it didn’t come with modern FasTrack, and has a clip that went on the metal tracks, that also meant it didn’t have the standard power cable that’s often used. When I bought these lighted tracks, they also sold me the FasTrack Accessory Power Wire (6-12053) and I was left to figure it out myself. Thankfully, the model train community is very active! And eventually I found this post on Reddit helped me get the wires from my transformer connected the way they needed to be. I wish I had taken a better picture before I put the bottom plate back on, but it’s transparent so you can kind of see where I disconnected the power from where a plug would generally go, and replaced it with my wire. And then, voila! It works!
Well, it worked with some wires exposed and Adam was scared of being zapped (fair) so MJ put some connectors on the ends of the wires so we could not only more easily use the lighted track, but also switch back to the metal track easily. No more fiddly connections at all!
The light follows the train, now I just need to convince the boys not to put so many cars on the track at once.
Speaking of building things, the drawer on my desk has been unstable for a while, and finally broke entirely over the summer. I’ve been living out of some bins next to my desk, not optimal! MJ bought the wood and brackets needed to fix it, and the boys helped them with the repair this trip. Woohoo! A working drawer once again!
The boys have also been building a lot of Lego. I always thought that the skill levels for Lego sets were based solely on the complexity of the components involved, but we picked up a Bluey House set recently and there’s more to it. On the Bluey set the pieces are simple, but the instructions are also much more detailed and even show hands holding a specific piece and exactly where that single piece goes. I was helping Aaron (almost 5) build the house at first, but after a while he said he wanted to do it himself, and he did! So proud! Now he’s got the bug and wants to do a lot more.
On Thanksgiving we woke up and made Death Star waffles! And then I spent a big chunk of time in the afternoon making food for the potluck dinner we had at my sister-in-law’s house. I’m not much of a cook, but I could manage carrots, green beans, and stuffing, and everyone was quite happy with vegetarian brown gravy from a jar and cranberry sauce from a can. The dinner came together beautifully at her place and our usual chaotic family Thanksgiving was fun.
Being over there reminded Adam that she had a fire pit, so that’s how we ended up with an outdoor fire, in Philadelphia, in November. It was COLD! But I’m glad they got it going for him, they kids really enjoyed it.
As our visit wound down, we spent an evening at Astra Lumina, a nighttime walk through various light features in a forest in Jenkintown. We went with the parking option that used the shuttle, which we figured would be more fun for the boys anyway (yep!) and was a lot cheaper. The frequency of the shuttles made it quite a reasonable option. From there, we got to explore the lights! The boys love being outside and playing with lights in the dark, so it was a perfect mix of things they enjoy. It’s on the pricey side, but for us it was all worth it. Afterwards we had a great dinner at Vintage, a restaurant MJ’s grandfather was a fan of, and I had a spectacular seafood dish while Aaron fell asleep on the bench.
Following the weekend, it was back to work on Monday and then we packed up on Tuesday to fly home. If not for the kids going to school, we probably would have stayed through the winter holidays. Our next trip back east was just 15 days away.
]]>That week my Aunt Mary Ellen and Uncle Joe were drifting through town following a conference in Napa and we made plans to meet up. The boys were excited by the prospect of a ride up to San Francisco, but then some plans shifted and it was rainy. We made the best of it though, instead of meeting up early for dinner, the boys and I took BART, MUNI
Metro, and then hopped on a Caltrain for a few stops before taking BART back downtown to meet for dinner. It was a lot of trains for what amounted to a big loop, but the boys have been asking to go on Caltrain for quite some time, and I figured this was the perfect opportunity. It was also a nice opportunity for us to pause and have some snacks since Caltrain is the one local train that they can eat on!
After the trains, I took the boys up to the roof deck at the condo (between tenants right now) to take in the gorgeous sights of downtown San Francisco at night. Adam actually gasped at the sight when we got up there. It really is beautiful.
We met MJ in the city and met my aunt and uncle for dinner at Fogo de Chao for a lovely dinner. It was really nice to see them, it was our fourth attempt to see them in the span of 18 months, which every other plan being ruined by illness (COVID, flu). We had a nice time finally catching up, and it was the first time that Joe was able to meet the boys, and the first time Mary Ellen met Adam. They boys did great, actually engaging in conversation rather than instantly demanding their phones for TV, which was nice. We definitely kept them up too late though, Aaron fell asleep on his chair toward the end, and they both zonked out in the car on the drive home. Carrying Aaron out of the restaurant, I completely forgot to get a family photo! Whoops. Next time.
The first week of November concluded by celebrating Gaby’s last birthday with us. I finally succeeded in making brigadeiro! With her help. And we picked up a custom cake that I had ordered the week before. Adam decorated, which is how we ended up with jungle animals on the tablecloth, hah!
We then had a rather chill Saturday that concluded by attending the Castro Valley Light Parade. It’s funny, we’ve lived in Castro Valley since 2018, but this is the first time I actually managed to see the parade! I was either working or traveling, and one year life with little kids meant we simply made it out of the house too late to see the parade. But I finally saw it!
Aaron got a light-up balloon that he swiftly asked me to hold (I’m glad we only got one!) and after about 45 minutes of parade the boys had enough and we walked out to our favorite restaurant just down the Boulevard. It was enough to get a nice taste of the parade though, and we really love enjoying events in town with the rest of our neighbors.
MJ flew out for a work trip later that night, so the boys and I had Sunday to ourselves as we did swim class, haircuts, and a trip to one of their favorite playgrounds. That evening, Aaron and I made banana bread for his monthly school project where he also got to draw the ingredients and take pictures. For a quiet weekend, it was surprisingly tiring!
We spent the week with normal life stuff, lots of school and work and random things like appointments, including a follow-up to check on Aaron’s infection (getting better!). The next day, he fell off his bike and landed on his face, earning him another visit to the urgent care. Thankfully, he was OK, having narrowly escaped getting stitches on his lip. Yeesh. Kids.
The next morning we were up bright and early for a Saturday morning garage sale! The boys and I go to a lot of garage sales, and Adam has been talking about his desire to have one of our own for over a year, but we’d never done one ourselves. We didn’t take the request very seriously because sitting in our yard for hours for a few bucks doesn’t sound like fun, but with Gaby heading back to Brazil soon she was looking to sell a bunch of things so she could have a lighter collection of things to bring home. Well, if Gaby wanted to do a garage sale, we might as well toss some of our things in too!
I don’t think I thought it through completely. Garage sales are actually quite a bit of work, from developing the listing online and putting signs around the neighborhood, to figuring out what we’ll get rid of. Then actually setting up, and then cleaning up when we were done! It was nice to get rid of a bunch of stuff, and the $100 we got for it was nice, but it wasn’t nearly enough to make me want to do it again any time soon. Next time we’re going to just make some donations, maybe sell the higher value things on a local Marketplace board or something. Don’t tell Adam, he’s already making plans for our next one.
That evening, we picked up our new au pair from the airport! She had a week of overlap with Gaby so she could settle in and get shown the kiddo care routines. I was grateful for all of this, since both MJ and I have been slammed with work lately, and it would have been a real challenge for either of us take off time from work right now.
The weekend wound down with a visit to our local Lego reseller shop where we all had some fun digging through Lego bins for a couple projects we have in the works (including one related to work which led to: “We have to go to the Lego store.” “Have to?” “It’s for work!” “I doubt it.” hah!). We also started prepping for our Thanksgiving trip to Philly and generally trying to get things in order for the winter holidays.
Mix in with all this, I’ve also been doing a lot more cat care than I expected. I haven’t written about it much here, but it turns out our beloved Zara came to us with a paw and tail wound that have been taking forever to heal. Her paw seems better now, but the tail wound became infected with MRSA and is proving to be a lot more stubborn. We’ve tried a whole slew of treatments which I’ll write about at some point, but it’s been a lot.
Still, she’s an absolute sweetheart who continues to love her wild human brothers, so she is still the right cat for us. Thankfully, as Gaby enjoys some vacation time before returning home, she agreed to watch Zara and take care of her, even taking her to a specialist vet visit that was really tricky the schedule. I hope she starts to heal up soon, but at least she’s in good hands while we’re in Philly this week.
]]>To celebrate, I wanted to bring our success story and opportunity for projects to GitHub Universe this year. I was lucky that it was taking place in San Francisco, so there were no travel costs for me, and doubly lucky that the IBM team sponsoring the booth was willing to have me join them. It was a great experience working with the organizers and my fellow booth staff, we had representation from various parts of IBM so it was easy to direct attendees to someone helpful based on what they were interested in. For my part, I wish I had brought along a bigger sign saying something like “I give free stuff to OSS projects!” so the hobbyist contributors weren’t scared off by the more enterprise nature of IBM. Maybe next time. I was able to have some great conversations though, and could show off the work we’re doing with a screencast of the on-boarding process that I prepared on my tablet.
And I wasn’t the only mainframer there! Folks from Broadcom had a booth where they were showing off their Code4Z products that integrate into a standard VS Code environment.
It was a great event for me to be at to show off mainframe goodies to a distributed tech world that’s less accustomed to them. I was even able to clue in a few IBMers to the business we’re doing over in IBM Z land.
Personally, it was a wonderful event to be at to catch up with folks I haven’t seen in a while from across my tenure in open source.
I think my two biggest takeaways from the conference were 1. Wow, AI. and 2. How different conferences are when the talks aren’t necessarily the centerpiece.
Most of us in tech have a very different immediate relationship with AI than people in the general public. For us it’s less about results from ChatGPT and AI-created images, and more about what AI that knows how can code will do to transform the tech industry and what’s possible. We all knew that basic Python coding tasks would start to be replaced by AI, but we’re actually seeing that in practice now. No longer just autocomplete, we can vibe code a whole application.
One of the keynotes showed the presenter finding an old Bluetooth-enabled Furby in a closet and using an AI coding assistant to update an old open source software library so he could use it in 2025. The story here was that as a silly fun thing, he probably wouldn’t have ever had time to tinker with it, but now it’s easy. I’m not saying anything new here, and I do understand the difference between vibe coding a Furby and writing a production application, but in the near term it clearly will make some of the more mundane tasks easier to pass off to AI. I really would like one to automatically keep up on Node.js dependencies for me, it’s the most dreadfully tedious task.
All of this is to say that at the conferences I attended this year, I saw a real maturity turning point in the AIs-that-can-code realm. And GitHub is a big player here because of how integrated their code tooling already is in so many organizations, and throughout open source software communities.
Phew.
As for my second point, the talks not being the centerpiece. I’d say there’s still the spine of what holds the conference together, but there were fascinating experiences scattered throughout the event, both from vendors and from GitHub. The vendor booths was woven throughout all the buildings, and there was often a seamless transition between GitHub activities and vendors. One moment you’re designing your own Octocat sticker, and the next you’re getting a coffee while chatting at the IBM booth.
I enjoyed the building activities, our options were a GitHub light or a GitHub Copilot Lego model, and I went for the Lego. It was a nice little relaxing break from conference chaos.
The venue of Fort Mason was also lovely, and they had regular shuttles from downtown San Francisco which made the hurdle of transportation a more surmountable one. Both mornings I had an easy journey on BART to a shuttle that left from Embarcadero station. Once there, the gorgeous San Francisco weather we enjoyed offered the perfect backdrop. If I needed some air, I could walk down a pier and get a glimpse of the Golden Gate Bridge. They also cleverly placed a giant GitHub sign so that you could see beautiful Alcatraz Island through it.
They served good food and we had lots of places to sit and enjoy it. And after one tour through the main keynote building where I played a game to get a juice, I had no problem finding a shady spot to sit down and do a half hour of urgent work that I had to knock out.
The electronic badges were also a lot of fun. You had the option of getting one during registration, and they were little devices powered by an ARM SBC. As “hackable” badges you could play with them as-is, but also make some changes to the code included on them to do things like show your GitHub stats and they had a whole area with laptops that would allow you to do this (good thing, I can’t plug anything USB into my work laptop!). Once mounted on your device, they have a whole website of activities and other tools you can add to them. Cool. The scavenger hunt was also fun. I found they held a charge for about 10 hours, depending on use, so while I charged my overnight and took it off the charger at 7AM to head to the city, it barely made it to 5PM. I brought my digital badge home and it’s sitting here by my desk, maybe I’ll vibe code some new stuff for it, haha!
I’m certain that having such a fun and engaging space is all designed for encouraging brand loyalty. People have a great experience at these events in addition to learning things. I have always had mixed feelings about GitHub, and I still do, but some of the high points are definitely around usability, in spite of being built around Git, a tool that’s notoriously difficult to use! And usability includes feeling comfortable, which GitHub Universe did beautifully this year.
]]>One evening after school we went over to the pumpkin patch and handful of carnival rides that we can see from the highway. It’s expensive for what it is, with the rides all being pretty quick and forgettable, but I kept our activities within some clear parameters as we all had a good time, even if I still hate bumper cars.
A week before Halloween was the Halloween carnival at the elementary school. This is always a fun one for the boys, and it was the first year that it was Aaron’s school too! As usual, they had lots of little activities set up around the schoolyard to play and win prizes at. I really enjoyed the photographer who got a great picture of the boys and I (rare, since I’m usually holding the camera!) and I’m grateful that the pumpkins the boys picked out from the little pumpkin patch there weren’t too big for the walk back to the car.
Over the weekend we met up with my friend James at Hiller Aviation Museum. With MJ traveling throughout a chunk of October, it was nice to have another adult join me on a Halloween-themed adventure! In this case, it was a pumpkin drop from a helicopter, because, why not?
They had kids sign their name on the pumpkin that would be dropped, which was fun until Aaron realized the pumpkin would be completely smashed upon landing, along with his name. Oops.
They had Halloween-themed games and crafts set up throughout the space, and then a “Haunted Hanger” with a TON of spooky decorations throughout their exhibit space. We enjoyed making our way through the exhibits before the pumpkin drop, but we wasted no time getting outside in time to see the pumpkin get loaded into the helicopter and take off.
They had everyone stand behind a temporary fence and look away as little rocks and dust were kicked up during take-off, and then we all got to go over to the runway fence to see the helicopter actually drop the pumpkin. It did a couple loops before the drop and I have to admit, the actual drop was a little anticlimactic. We were close, but a pumpkin compared to a runway is quite small! Still, it was an amusing activity, and if nothing else the boys LOVED being so close to a running helicopter. Me too.
The next day the boys and I glimpsed outside to see some gloom and potential rain, but there was another Halloween activity to get to! The park next to the school the boys go to was hosting a Halloween Make-a-thon where kids got to go to various tables to do crafts. It’s the first year they did it, and all of the volunteers seemed pretty overwhelmed with the constant flow of kids clamoring to do the crafts – even with the threatening weather! I suspect they need a bit more organization and volunteers next year, but I see a lot of potential.
As the event wound down, we went to the indoor space where I enjoyed making Halloween-themed magic wands more than anyone else, but Adam got to finish his scavenger hunt, which was quite satisfying for him. When we went to leave, the rain had finally showed up, so we waited a few minutes for it to calm down before our soggy walk back to the car, but thankfully we didn’t get too wet.
The final activity before Halloween was pumpkin carving. After work on Thursday, the day before Halloween, was the time we chose for it because of how quickly the pumpkins grow mold here, even when outside in the shade. We had someone over who has been helping with the boys, and she was delighted to help Adam carve his giant pumpkin into a cat, and Aaron and I got to work on the bat design he picked.
The both came out beautifully, but I’m glad I didn’t give in to their request to carve any more, because as expected, the adults did the vast majority of the work. Still, we had fun and the boys were enthusiastic throughout the whole process.
And then it was Halloween! MJ was home for Halloween and donned a Zoo Keeper costume, since he’d be herding around a cat and a bat all evening as we trick-or-treated. I went with a witch costume, and joked we were going with the classics this year. Our old au pair and current au pair joined us for the evening as well, which was really nice. We stay always stay in our neighborhood for Halloween, which gives us an opportunity to see and meet neighbors.
We also have several neighbors who go all out with Halloween decorations and activities, some of which are scarier than others. And enough of our neighbors in general participate in the holiday so the walking:candy ratio is perfect for us.
The boys got to bed much later than expected as they raided their candy bowls, enjoyed handing out candy to other kids who came later, and generally got to enjoy spending time with Gaby and Rebeca. It was a great night.
]]>