🐐 The Greatest Episode of All Time 🐐

Shay Nehmad:

This show is supported by you. Stick around till the break to hear more about that. Welcome to Radio Cup A Go for no. No. Just do the normal one.

Shay Nehmad:

Okay. This is Cup A Go for 08/23/2025. Keep up to date with the important happenings in the Go community in about fifteen minutes per week. I'm Shay Nehmad.

Jonathan Hall:

And I'm Jonathan Hall. And I'm so confused.

Shay Nehmad:

That, like, morning DJ radio thing?

Jonathan Hall:

Was that morning, or was that, like,

Shay Nehmad:

Monday night? Coming to you live. Yeah. Hauling the oats. It's right in the morning, giving you all the harsh truths about rust.

Shay Nehmad:

Go. Blah blah blah.

Jonathan Hall:

I think I think maybe you missed a calling, man.

Shay Nehmad:

Man, I wish I could work at the radio. I actually did, real radio work. Have you ever done real radio work?

Jonathan Hall:

I don't think so. No.

Shay Nehmad:

I've done. I've had four shows. Let's see if anybody can dig that up. It was, like, when I was 14 for a school project.

Jonathan Hall:

I did

Shay Nehmad:

four shows on radio Jerusalem against violence. It was very, very nice.

Jonathan Hall:

Nice.

Shay Nehmad:

How are you doing? What's that clicking sound I'm hearing?

Jonathan Hall:

My fingers are cramping and and and confused and hitting all the wrong keys. I I got this new Kinesis Freestyle Pro keyboard today. Congrats. Yeah.

Shay Nehmad:

Can you, like, pull it up to the can you pull it up to the camera? I'll take a screenshot. Oh my god. Very cool.

Jonathan Hall:

So I used it for a couple hours, and then I went back to my regular keyboard for the livestream I was doing because I didn't wanna be fumbling over my keys on on live TV or whatever. But I'm back to it again.

Shay Nehmad:

In media res, this person doesn't know how to type. It was a rough adjustment. I have the ZSA Moonlander. It was a rough adjustment. They sent me an email.

Shay Nehmad:

It was crazy. It's called, Typing Yoga. I think it's, like, free. I don't think it's just for ZSA customers, which is actually a meditation online guided meditation session

Jonathan Hall:

Oh, wow.

Shay Nehmad:

For, like, ten minutes while typing. It's like, feel your space key. How does it make you feel? How relax your shoulders, blah blah blah, whatever.

Jonathan Hall:

My goodness.

Shay Nehmad:

And unironically, it was pretty good at, like, easing me into my new keyboard.

Jonathan Hall:

So I I did consider the Moonlander, and and I may consider that yet still in the future. But I debated, should I go, like, all the way to the extreme or should I sort of do baby steps? And some of the advice I got online was to go to a split keyboard for sure rather than one of the, like, molded ones, like the Microsoft Ergo keyboard. And if it doesn't make the pain go away, then then consider the the full upgrade to the ortholinear style and everything.

Shay Nehmad:

I will say, the one nice thing about the ZSA Moonlander is it's very portable. It has this nice carrying case, so it could help me, with it coming to all these meetups that we're about to talk about. That sounds handy. And also, unironically, pulling it up at a meetup or a hackathon, at least in San Francisco, is basically the equivalent of showing up with, like, a hot date to the party. All the engineers are like, oh my god, I love your keyboard.

Shay Nehmad:

Oh my god, can I like like moths to a flame? But what what's up with all these meetups?

Jonathan Hall:

Yeah. So we have a couple, to talk about. The first one is sort of an unofficial one. Well, it's official, unofficial. We've already talked about GopherCon twenty twenty five coming up in New York City.

Jonathan Hall:

But some of the folks on the channel, some of the listeners to CupiGo are planning to get together in GopherCon in the NYC. So if you are going to be there, check out the thread on our Slack channel, Cup A Go. I'll put a link directly to that thread in the show notes so you can find it easily.

Shay Nehmad:

If you do get up to that after party, take a selfie, send it to us on

Jonathan Hall:

the Gopher Slack. Looks like there'll be at least three folks, I think, have said they're gonna be there. So, yeah, send us a photo of your of your Cup O Go after party at GopherCon.

Shay Nehmad:

Not not this year, but maybe next year. I'll plan my schedule better, and I'll go. When is the GopherCon? Just for if people haven't listened to the previous episodes. This is like the GopherCon.

Shay Nehmad:

Right? That's the big one.

Jonathan Hall:

Yeah. The GopherCon is coming up starting August 26, so that's, right around the corner here next Tuesday.

Shay Nehmad:

Wait. August 26? No way. Should be pretty cool.

Jonathan Hall:

It will already be over by the time you listen to our next episode. Our next episode, not this one. Not this one. Unless you listen to this one late, which maybe you do, and welcome. Thanks for listening even if it's late.

Shay Nehmad:

How's go 01/28? Tell us if you're listening to this one and a half years in the future. You know what? I have I have heard of listeners that actually war work through the backlog, which is not how I expected people to consume the show.

Jonathan Hall:

I I agree. Yeah. But I guess

Shay Nehmad:

if you give up some people a an API, they will find all ways to use it, even if you didn't plan on them. It's like an RSS feed you should subscribe to and listen every week. Oh, oh, I can download any episode whenever I want? Alright. I'll listen to it like years after.

Shay Nehmad:

In another big city meetup, I'm planning to host my own meetup. We did this already in San Francisco, and it was actually super awesome. It was at at Elastic. Thanks again, Elastic. Not sponsoring this episode, but I mean, they did sponsor that one.

Shay Nehmad:

So yay, Elastic. So there's the San Francisco, meetup. It's, going to be somewhere towards the September, October. I don't know yet, and this is a call to action. If you think there's a chance, a remote chance you would show up to that meetup, which is going to include some food and some venue, one Cup o'Go episode live recording, and a few other talks, please respond to the poll.

Shay Nehmad:

I'm gonna send like an availability poll to see when people can mostly show up. It's right around, like, it's kind of uncomfortable timing because it's my parents are here, are gonna be here in The US, and it's, like, the Jewish high holidays. So it's just picking which day out of a few days in that month is gonna work for you, and then, whatever wins the most votes, we're gonna try and find a venue. Awesome. So, yeah, the the I'm gonna send this link in a few places, you know, my LinkedIn and Go for Slack and the in in the San Francisco channel and probably the channel for the show as well.

Shay Nehmad:

If you think you're gonna show up, please let me know and we'll make it happen. Also, I need, like, talks and a venue. I have nothing. I just need the date first, and then we'll see what happens. Alright.

Shay Nehmad:

And there's another conference that showed up on our Slack.

Jonathan Hall:

Yeah. So this new conference, let me just read off the website the part I can. Let's go conf. Let's go conf twelve three hundred lightning talks. There's a bunch of

Shay Nehmad:

other stuff here that I can't read. Maybe you can? So not really, but I'll try. There's a listener called Pavel Druzhin who's hosting this Go conference in Moscow in Russia. It's relevant to Russians.

Shay Nehmad:

I'm trying to learn Russian, so please forgive me, but I'll try. Pavel vanash Nanashemslakkanal, Raskas Almenia, Konferniz Pagot. About Go, you got it? I'm gonna stop here. I'm gonna sorry, guys.

Shay Nehmad:

I'm trying. I'm trying. I'm gonna stop here. Pablo's hosting a Go conference, in Moscow, September 12. The lineups looks, pretty good.

Shay Nehmad:

Like, if you you can use, like, Google Translate to translate it.

Jonathan Hall:

Yes. Have.

Shay Nehmad:

In true yeah. In true Russian fashion, there's a Telegram channel about the about the, like, event, if you wanna join. I actually joined it, and I see a screenshot from our channel, which is pretty funny. The it's, like, about the one twenty to one twenty one x tools breakage, so it's making the rounds. Yeah.

Shay Nehmad:

But, yeah, the the conference looks pretty pretty serious. It's in Moscow, September 12. The lineup of, speakers and the topics looks pretty cool.

Jonathan Hall:

There's one talk here I really wanna see, except that I want it to be in English. Reducing Sego in the video platform, the path from FFmpeg to PureGo. I've been using working on a project that uses SEGO to call FFmpeg, and a PureGo version would be amazing.

Shay Nehmad:

It's it it definitely looks like there's a lot of talks that seem interesting. The program just seems great overall. If you're in the Moscow area around that time, like, be sure to drop by. I don't know if it's relevant to American listeners to get on a plane to Russia right now. I I definitely can't.

Shay Nehmad:

But the the conference looks, awesome, like politics aside. And Pavel also has, like, Rust conferences and Python conferences. So it seems like if you wanna go to conferences in Russia, if that's your thing, you should probably connect with him. And he's on our Slack, the Kapagor Slack. So thanks a lot for informing us about this, Pavel.

Shay Nehmad:

I hope I didn't ruin like, I sent everybody away by saying something wrong. But, yeah, Spasiva, and I guess, tell us how it went. Awesome. I was like I was like so excited to do that Russian segment, and now I feel I feel like I've totally butchered it. I guess he'll give me some feedback.

Jonathan Hall:

That's

Shay Nehmad:

alright. Let's talk about releases.

Jonathan Hall:

I wanna try to jog your memory a little bit, Shadi. Do you remember back in March, we had Grant Nelson on the show?

Shay Nehmad:

Yes, of course.

Jonathan Hall:

Yeah. We talked you remember what we talked about?

Shay Nehmad:

Yeah. It was like a Gopher JS, Workiva. Wait. I am honestly, I'm opening the transcript, but Of course.

Jonathan Hall:

Yeah. So we we had go Grant Nelson on who was doing some work on Go for JS, trying to get it updated to support generics.

Shay Nehmad:

Go for JS is the compiler from Go to JavaScript.

Jonathan Hall:

JavaScript. Right. Right. Go to WebAssembly is built into the Go compiler, but Go to JavaScript is a separate project. And I'm excited to announce that just this last week, his work finally came to a point of completion and Go for JS 1.19 beta two was released with support for generics.

Jonathan Hall:

So if you've been waiting for that, and I know a few of our listeners have, very few, but a few of them, generic support is now in Go for JS. Now we are on the fast track to add support for Go 1.2 and then 1.21 and so on. Hopefully within a few months we'll be caught up to 1.25. But man, I have to say this has been, at least for me, several years waiting. I've been waiting several years for this to happen.

Jonathan Hall:

It's a big step for anybody who's been following Go for JS.

Shay Nehmad:

I even see you approved some of the pull requests. Like, I'm seeing you approving upgrading Node. Js from 12 to 18.

Jonathan Hall:

That that was a big one. Oh

Shay Nehmad:

my god. Yeah. So who is this relevant for?

Jonathan Hall:

Also, before I answer that, also, since our last conversation with Grant, Grant has been made one of the official. Now three of us are official maintainers of the Go for JS project. Who's it for? It's it targets a lot of the same people who might wanna use WebAssembly, but it lets you integrate with JavaScript libraries in ways that WebAssembly doesn't. So if you need your Go code and JavaScript code to talk to each other, Go for JS is probably what you want to be using.

Shay Nehmad:

Well, well done, Grant. This seems impossible basically. Yes. It honestly seems like looking at the release notes like an impossible list of features.

Jonathan Hall:

He has done a great job and I've been doing my best to review his pull requests. Many of them I like, I don't see anything wrong, but that doesn't mean I understand everything that's happening. For sure. So big thanks to Grant for making the making that happen.

Shay Nehmad:

An update on previous news, do you remember the stricter JSON tag checking thing, the the security foot guns? I'm jogging your memory now.

Jonathan Hall:

Mhmm. Mhmm.

Shay Nehmad:

Blog post version of your knowledge in a sense.

Jonathan Hall:

Oh, okay.

Shay Nehmad:

It's from the trail of bits blog, and, Vesco Franco, I hope I'm saying that correctly, wrote a whole write up about JSON, JSON v two, XML, YAML, about, like, surprising behaviors. So following that discussion, we actually told you about the proposal being opened a few, episodes ago, and now it's closed. It's been accepted. And even someone two hours ago suggested that they could take it up if no one is working on it yet. Yeah.

Shay Nehmad:

It's like moving pretty fast, but it's just implementing two semgrap rules in the struct tag tool instead. Should make usage of the new JSON thing much safer. And and get rid of, like, real foot guns, which is important. We don't wanna shoot our foot. We need it to kick down, interpreted languages.

Jonathan Hall:

That's a stretch. Nice thinking on your feet feet there. On your foot?

Shay Nehmad:

Yeah. The ones I haven't shot, the ones I haven't shot yet,

Jonathan Hall:

for sure.

Shay Nehmad:

Alright. So that's the proposal we updated on. Actually, all through from the blog post to the proposal to the, acceptance, now one of us one of y'all need to go implement it. But there's a new proposal we you wanted to tell me about, something with errors.

Jonathan Hall:

Yeah. There's a couple of new ones. Let's start with the errors one. So the the proposal so new is a relative term here. When I say new, I mean it's been recently added to the the weekly discussion about features.

Jonathan Hall:

The the proposal itself was created back in 2022 on March 25. So the proposal's been there a little while, but the proposal is to add a new variant of the errors. As function. I don't know how often you use that function. Do use it very often?

Shay Nehmad:

Yeah. Like when you need to find, like translate errors in catch thing, right?

Jonathan Hall:

Kind of, yeah. So like you have an error and you want to know, does

Shay Nehmad:

it You want to deduce if this error is of type x, because then you handle it differently.

Jonathan Hall:

And then you can, like, look at maybe the fields of that particular error type or whatever. Right. Normally, I

Shay Nehmad:

talk with APIs, right, I I check if it's a HP error and then, oh, if it's a four two nine, I'll just wait for Exactly. A while and retry If it's a 400, I'll raise it back up somewhere.

Jonathan Hall:

Exactly. So yeah, it's sort of like a recursive type assertion on the error interface, right? So the proposal was to make a new variant of that that's generics aware. So errors. As takes two arguments, original error and then a pointer to the error target that it would assert into.

Jonathan Hall:

The proposal is to create a new one that takes a type parameter as a single argument and then returns that in Boolean. So it would just be a little bit virtually exactly the same functionality, but a little bit more ergonomic way to do it. I kind of like it that they're spelling it in the proposal as error. IsA because obviously they can't use as since it's already been used. Don't know if this is likely to get accepted since it's so close to the existing functionality, but it does have a fair number of comments in the last few days and a bunch of upvotes on the original proposal.

Jonathan Hall:

So if you feel strongly one way the other, head over there and leave your opinion.

Shay Nehmad:

If functionally doesn't propose, anything over, what already exists and it looks the same, like you have to give the customer and the actual instance anyway, What's the benefit other than the fact that it's, like, it justifies a a generic solve? But you see you see, we did need it.

Jonathan Hall:

I think I think the annoying thing about the current approach is you have to create this error value that you may or may not use, which I don't I don't think from a performance or operational standpoint it's any different. But like from a code cleanliness standpoint, you have to create this extra thing and then maybe you use it, maybe you don't. With the new version, you can at least put that in an if block. So you could you have your error assignment inside of the I don't remember what they call it, but like the preamble in your if statement and then the value is is the new variable value is constrained to that scope. So it's it's a tiny bit cleaner from a code readability standpoint.

Jonathan Hall:

That's really the only benefit I can see. Maybe there's some slight performance improvements by not creating that type or that that variable when it's not needed. But I don't know that other than how it's implemented under the hood. I I can't imagine that being a major consideration.

Shay Nehmad:

There is one thing about the error as which looks weird. You almost never pass to the standard library, like, sort of input output argument types. You know what I mean? Yeah. Like, you pass the error, which is makes sense.

Shay Nehmad:

And then you pass the error type, like, a reference to the error type, which is super rare for STD stuff. Like, I can't think of any other function that looks like this. Now this is an exceptional case. Like, you don't do a lot of this reflection y type work in Go anyway. As always, like, I don't know, dealing with errors is is not normal flow.

Shay Nehmad:

So I think I I would actually I'm I'm gonna go ahead and upvote this. Mhmm. I actually think that is a looks better. Even just the name. Like, I don't care about the generics versus not generics, but there is is a and then you first put the type and only then the value reads much better as, which I never like, without reading the documentation, you would never know what it does.

Shay Nehmad:

So I'm

Jonathan Hall:

I'm gonna I'm gonna remember something that I think is an argument for the proposal, and that is that I sometimes get confused about what type of argument to pass as the second argument to errors dot as. It's supposed to be a pointer to an error value, but when your error value is a struct, like sometimes you I don't know if it needs to be a pointer to the struct or a pointer to a pointer to the struct, and that kind of depends on how your receivers are set up. This doesn't have that ambiguity. So that that's a in my opinion, a bonus that makes it worth voting for. Cool.

Jonathan Hall:

I'm not gonna cry if I don't approve it, though. It's not that big of a deal.

Shay Nehmad:

I like it, though. I like that we're trying to improve the language. Yeah. Generally. Like, oh, we have the this new tooling.

Shay Nehmad:

There is a way to do it. Maybe we can do it better. And now with the Modernizer, you know what I mean? Like, since you have the Modernizer,

Jonathan Hall:

it's It'll fix.

Shay Nehmad:

It's slightly yeah. It's slightly less evil to me to suggest improvements that might make the language better, but are not necessarily whereas because in a couple of years, everybody's gonna run that thing on their code base, then as long as you don't break the old one, that's fine. It's not that bad to have two ways to do things. Maybe five ways is not great. Like, I would be super happy if we had a new time format in Go.

Shay Nehmad:

Yes. I'm bringing it up again.

Jonathan Hall:

Speaking of GoFix, have you ever run GoFix and noticed that all your references to XNet context disappeared?

Shay Nehmad:

No. No. I've never used the XNet context. I just used the context.

Jonathan Hall:

You've never used it.

Shay Nehmad:

I might have, but my first usage of Go was in an air gapped environment. Uh-huh. So none of the code, like, made it with me. You know what I mean? I

Jonathan Hall:

see. I see.

Shay Nehmad:

And all my open source, work, like not necessarily open source, but things that happened on the Internet are, like, since 2018 ish, 2019. So I think 2019, like, it was just a context package. Right?

Jonathan Hall:

So, yeah, for those of you who don't remember or who weren't using Go eighteen million years ago when this was relevant, xnetcontext was the original context package that existed there for, I don't know, a while. And old code, know, code that predates 2016 will sometimes still reference Xnet context. That was sort of their experimental version of it, you know, and then they upgraded to the standard library. Xnet context still exists. The new proposal now is to deprecate that package.

Jonathan Hall:

And one of the comments in the thread points out that GoFix has already supported this migration for ages, you know, since Go 1.7 probably came out. So it's it's truly some old code that uses Xnet context. I would be happy to see deprecated. Although this is another one. I won't cry.

Jonathan Hall:

I haven't used Xnet context in ages either. I've seen it mentioned in some comments and code bases I've been working on lately, but the comments are just outdated comments as comments tend to become.

Shay Nehmad:

What's the implication of making it deprecated? I think the main thing

Jonathan Hall:

is that it would cause GoMod to tell you that you're referencing a deprecated package and encourage you to upgrade.

Shay Nehmad:

And then if you don't care about it, you can just move on with your life.

Jonathan Hall:

Can still ignore it. Yeah.

Shay Nehmad:

So what's the the the benefit is Go team has to maintain less code, and they can focus on really important things. And the downside is, like, there's this one guy with a tinfoil hat unwilling to upgrade beyond Go 1.7 Well who's gonna get a little a little warning when he does Go mod. I mean, come on. What's the question?

Jonathan Hall:

Yeah. So the original proposal was also included to pass possibly tag and delete the package. I don't think they're actually seriously taking that into consideration, at least not right now. There's no I I see no harm in leaving the package there, but deprecating it would encourage people to upgrade.

Shay Nehmad:

And and Google the is hurting for, like, server storage space.

Jonathan Hall:

No. And the new context package has a bunch of new functionality that could be beneficial that maybe people aren't aware of if they're still using this for some weird reason. So, yeah, I don't think it's a big deal.

Shay Nehmad:

I'm willing to delete some videos from my Google Photos account if they need space back. And I assume, like, one ten second video that I have of, you know, my daughter accidentally picking up the phone and filming the floor is is can it can have, like, a million of these packages in their service for it.

Jonathan Hall:

If you are Alright. Personally attached to that XNet context package, go speak your mind right now because it's about to be accepted. So

Shay Nehmad:

If anybody opposes this, speak now or forever hold your shaw.

Jonathan Hall:

That's right.

Shay Nehmad:

As mentioned at the top of the show, this show is supported by you. The main way to support the show is directly financially via Patreon. We don't make money off of this, but this does like cost time and money for us to produce. So if you wanna support us, the best way to do that is to join our Patreon. We wanna re welcome jose underscore d underscore s for rejoining the Patreon.

Shay Nehmad:

That's one great way to get your names spoken again. Just cancel and re add yourself. Please don't do that. If you wanna find the link to the Patreon

Jonathan Hall:

But if you do cancel, please re add yourself.

Shay Nehmad:

Yeah. That's no. I mean, if you cancel and you can't pay for it, it's fine. This is all just for fun. Like, we do appreciate your support.

Shay Nehmad:

If you wanna find the link to the Patreon or our Swag Store or the Slack channel where apparently all the action is happening, including hardcore discussions about the Go tool chain being broken and then being fixed again, etcetera, etcetera. It's hashtag, cupago kebab case with hyphens in the Go for Slack. Link for that is in the our site, cupago.dev. That is cupago.dev. And finally, if you just wanna email us, it's news@kapogo.dev.

Shay Nehmad:

Another way to support the show, we don't pay for advertising or pushing the show or anything like that, so it's worth-of-mouth. I've been looking at our, analytics as I often do when I tell people about the show. We've been doing pretty well. I'm happy to see the show making the rounds. You can help us there in three ways.

Shay Nehmad:

Write about it somewhere like LinkedIn, on Twitter, or your blog. Leave a review on Spotify or Apple Podcasts or whatever you use to listen to podcasts, or just share the show word-of-mouth, like with a friend or a colleague. That would be great. Thank you so much. Let's run to a quick lightning round.

Shay Nehmad:

Lightning round. I

Jonathan Hall:

have found the greatest library of all time. It is truly the GOAT.

Shay Nehmad:

Oh my

Jonathan Hall:

god. It's is called drum roll, please. GOAT. GOAT is the Go Ascii tool. What GOAT can do for you?

Jonathan Hall:

It converts Ascii art into SVGs.

Shay Nehmad:

Honestly, it's crazy. Like, look at the examples.

Jonathan Hall:

This is pretty amazing. I'm imagining it. I'm curious how sophisticated this is. Can I convert a mermaid chart into ASCII and then into an SVG?

Shay Nehmad:

It sounds like a perfect, job for an LLM, but I've tried it and it sucks. Yeah. Like, it can't do visual thinking.

Jonathan Hall:

Oh, you're right. Yeah. That was a terrible idea.

Shay Nehmad:

But the the sort of diagrams you can do here are really advanced, way more advanced than Mermaid.

Jonathan Hall:

Yeah. Definitely.

Shay Nehmad:

You can have these all these, like, super complicated arrows, overlapping line decoration. It's, like, really unbelievable.

Jonathan Hall:

I mean, at some point, I I get I'm thinking, like, why would I wanna spend so much time doing that much ASCII art? Like, it would be easier to pull this up in an actual GUI tool in some cases, but I love it. It's a great tool.

Shay Nehmad:

I think it's just fun. I think it's fun. I don't know if it's good, but it's fun. Anyway. And again, it's called the Goat, which is great.

Jonathan Hall:

It is. Yeah. Check that one out. What do you have for us?

Shay Nehmad:

Fun with slices.

Jonathan Hall:

I saw this Fun with

Shay Nehmad:

You know these sorts of blog posts where someone is like, I'm new to a thing. I'm just gonna play around with it a little bit to learn it. That's how I like to learn things. I admit that recently I've been I've fallen into the trap of having LLMs teach me about things. I'll just, like, ask an AI, how does x work?

Shay Nehmad:

Where actually opening up my like, firing up my terminal and trying it myself would be faster and more educational. So this is the the sort of blog post of, someone fired up Go. They just started working with Go. It's from Monique Mudama, and they created a slice, and then they appended to that slice. And it's like, oh, wait.

Shay Nehmad:

Where do the pointers go? And it's it's not obvious. It's definitely not on an obvious behavior. It's this, like, classic LinkedIn. LinkedIn.

Shay Nehmad:

Oh, look at this piece of code. What do you think is gonna happen? Blah blah blah. Here's the slice and a pointer to the slice and I append to it. Blah blah blah.

Shay Nehmad:

Just a short blog post. I liked it. You can see all the code. If you wanna learn how slices work, pretty cool.

Jonathan Hall:

Sweet. I think that's it for our show. Thanks for listening.

Shay Nehmad:

Yeah. See you next week, and hopefully in San Francisco if you want to join my meetup.

Jonathan Hall:

Program exited. Goodbye.

Creators and Guests

Jonathan Hall
Host
Jonathan Hall
Freelance Gopher, Continuous Delivery consultant, and host of the Boldly Go YouTube channel.
Shay Nehmad
Host
Shay Nehmad
Engineering Enablement Architect @ Orca
🐐 The Greatest Episode of All Time 🐐
Broadcast by