🇲🇽 Café con Go, 🇨🇦 GopherCon, eh?, or 🌉 Goroutines on the Golden Gate?
I mean, this program is supported by you, our listener. Stick around till later to hear more about that. This is Cup and Go for 08/30/2025. Keep up to date with the important happenings in the Go community at about fifteen minutes per week. I'm Jonathan Hall.
Shay Nehmad:And I'm Shay Nehmad.
Jonathan Hall:Hi, Shay.
Shay Nehmad:How are you? Yet. Hola. We need What else? Wait.
Shay Nehmad:May I have more? Konnichiwa? Oh, maybe. Thank you. Baljia?
Shay Nehmad:Bonjour? I gotten really warm responses. Last week, we had a segment of the show in broken Russian that I tried to do because we talked about GopherCon Moscow or whatever it's called, like the Go meetup in Moscow. And the organizer messaged me later, was like, oh, your Russian was really good for a learner. And I was like, oh.
Jonathan Hall:Awesome.
Shay Nehmad:You know, I don't wanna stereotype, but you know when a Russian person is being this nice, they're actually like it's like, nice try. Oh, thank you for trying. Yeah. Yeah.
Jonathan Hall:Yeah. I think I've had the best compliment about my Spanish ever standing outside of a Cuban restaurant in Mexico City when I was speaking Spanish to some guy that was standing there and he says, are you from Cuba?
Shay Nehmad:Nice. I'm
Jonathan Hall:like, not at all, but I'm glad that I'm glad that you thought I had some different native Spanish accent.
Shay Nehmad:Yeah. The the the same thing happened to me in a a Ross conference. I was in a Ross conference and I asked some questions, a Ross meetup, like, in, Hertalia. And then someone was like, oh, so what Ross does your company do? And I was like, we actually do go.
Shay Nehmad:I'm just here for shits. Why are we talking about conferences and Spanish?
Jonathan Hall:That's a great question. I mean, part of it is that I just feel like I I'm feeling I'm feeling incredible FOMO for for, GopherCon. Yeah.
Shay Nehmad:We didn't go to GopherCon. Yeah. And some of our listeners did, they made it extremely noteworthy in the channel. Mhmm. Mhmm.
Shay Nehmad:Oh, you're not going to GopherCon? Oh my god.
Jonathan Hall:Stick around next week. We're hoping to get some of the organizers on the show to talk about everything we missed and what might be happening next year, which leads to what we're talking about actually right now, which is on the GopherCon Slack channel on the Gopher Slack. They're doing a poll for which city or what actually, not even which city exactly the next GopherCon should be in. The three leading options are Canada, probably either Montreal or Toronto, Mexico City or San Francisco. If you like the idea of doing Go For Con in Mexico, you should go vote.
Jonathan Hall:If you like the other options, please don't go vote.
Shay Nehmad:Wait. Wait. Wait. Wait. No.
Shay Nehmad:I don't this is not the official position. I mean, I voted for San Francisco, though. I don't know if I'll be in San Francisco next year thinking about it. But it is it is cool that, like, it could be in Canada or Mexico. Like but do you think it's like this is what, will determine it?
Shay Nehmad:Like, right now, Canada is 96, and the the follow next following is San Francisco at 44, but this is like Slack emojis.
Jonathan Hall:Yeah. I'm sure this won't be the the full deciding factor, but I imagine it will heavily weigh into their decision. One thing I really I pulled out of this thread here is though somebody asked, will the will it no longer be called GopherCon US? And the answer is it never has been called GopherCon US. It's just GopherCon.
Jonathan Hall:The US was sort of unofficially added when other GopherCon started popping up with their own suffixes, which of course led me to the question, what if we wanna have GopherCon on the moon? Can we just call that GopherCon or do we
Shay Nehmad:have to have GopherCon Luna TBD? I mean, watching watching the streaming from the moon is gonna be kind of annoying. Like, it's gonna
Jonathan Hall:be even slower. It it just you just set it up at a sound stage so you can fake it all. That's how that works.
Shay Nehmad:Oh. Okay. Again, not the official position of the Cup and Go show. Anyway. I don't know, but there are there aren't there, like, considerations?
Shay Nehmad:Well, actually, no. Like, can everybody go to Canada or Mexico from The United States?
Jonathan Hall:Yeah. American citizens certainly can. You don't need a visa if
Shay Nehmad:you go to the place. For the rest of the people, it's it's sort of the same.
Jonathan Hall:You're here on a green card, then it would depend on on your passport, what where you
Shay Nehmad:can go. I actually think that, maybe I'm just, like, Bay Area pilled, but I think almost everybody is, like, on a visa or on a green card or is, the the number of capital a Americans I'm talking to on a daily basis is not that high.
Jonathan Hall:I I do I do think as a general rule, there might be exceptions, but I think as a general rule, you can enter Canada if you're allowed to enter The US And Mexico Unless
Shay Nehmad:you hate unless you hate ice hockey. Perhaps.
Jonathan Hall:And Mexico lets just about anybody in except people from Central And South America. It's kind of what I understood from when I lived there.
Shay Nehmad:I do think it's a consideration, though. Like, they're probably not taking into consideration. I would, like, I would definitely love to go to any of these places, including the current GopherCon. I just wasn't able to.
Jonathan Hall:I I I've already told my wife I'm gonna try to go to more conferences next year, and she said, okay. This one's on my list. Whichever city it ends up in, I I intend to go, if possible. But I still hope it's in Mexico just because the food there is amazing. It's so much cheaper there.
Jonathan Hall:And I want an excuse to go back to Mexico, but whatevs. Let's move on.
Shay Nehmad:India. There's another conference.
Jonathan Hall:Yeah. I don't speak any Hindi, so I'm not even gonna try this one. Or or many the other
Shay Nehmad:languages speak the Hindi because Yeah.
Jonathan Hall:They speak a lot of languages and and dialects in India. But Gurukan India is coming up September. It'll be on my birthday. Yay. Oh.
Jonathan Hall:In Jaipur. So I think we talked about this on the show a few weeks ago, but it's a good reminder. It's coming up in less than a month. So if you're in that area of the
Shay Nehmad:world Speaker lineup is up now as well. Yeah. With all the talks, they look great, man. The talks look really good. There are a few very concrete ones, like, crafting a custom Kubernetes ingress controller for intelligent traffic control from, Rajani Ekunde.
Shay Nehmad:She's a senior SRE at Okta. Literally, you take the person working on the thing at the most relevant company and come tell us how they how you do it. That sounds like pretty good.
Jonathan Hall:Yeah. Should be a good one. Maybe I'll do Gopher Hunt India next year also. I'm not doing this one. Oh, interesting.
Jonathan Hall:We'll see. You've been to India before?
Shay Nehmad:I have not. A lot of Israelis, tend to do that, like, after the army, they'll do like a
Jonathan Hall:Oh, yeah.
Shay Nehmad:Hiking, trip, you know, backpacking through India sort of thing. But I just, like, immediately went for the finishing my degree and getting the apartment. This is actually my big trip being in The US. Yeah.
Jonathan Hall:Right. Right. Right. I had the pleasure of spending a week in Delhi back in 02/2008, but it'd be interesting to go back again.
Shay Nehmad:I don't know if the show can comp you, but as you said, the the the show is supported by you. So if we get thousands of Patreons, maybe we'll be able to support the the flight thing.
Jonathan Hall:Fly me to India, please. Send me $3 a month.
Shay Nehmad:For just $3 a month. Yeah. Okay. I have a news that they aren't actually newsy. It's more of a discussion.
Shay Nehmad:Okay. So I've done some Go work this week. I've tried to extract text from PDFs.
Jonathan Hall:Okay.
Shay Nehmad:And I started doing it with Go, search for like all the Go PDF libraries and the Go OCR libraries because sometimes PDFs, you know, the text is not copyable, you have to do OCR. Yep. And I didn't have a lot of time to work on it. It's not like a side project, it's like a business thing that I had to get done pretty quickly. Mhmm.
Jonathan Hall:So I
Shay Nehmad:was like, I really hope I could do it with Go because my current setup is in Go. I couldn't I wasn't able to. I didn't find good enough libraries. And the libraries that I did find required, like, a ton of installations other than the things I needed, specifically for OCR. So I unfortunately reverted to Python.
Shay Nehmad:I had to do it in Python. I was like, man, is Python really the thing for, doing data science related tasks like data extraction and cleanup? My first question to you, am I missing something? Is there like an incredible Go data science community that I should have gone to? Am I wrong?
Shay Nehmad:Like, are you hearing the story and saying like, oh, Shai's wrong. He should have been able to solve this in Go.
Jonathan Hall:I mean, Go's too incomplete, so you can do anything in Go, right? I love that argument when discussing the merits of various languages and someone brings that up like, Yeah, that's completely missing the point. No, I don't think there's a big data science community in Go. Mean, we've had some people on the show doing various data science y things. Matt Topol with Apache Arrow.
Jonathan Hall:We also had Ricardo Pinoccio on to talk talking about interfacing Go with Hugging Face.
Shay Nehmad:Yeah. Episode 65.
Jonathan Hall:I feel like these are all sort of, like, bleeding edge. Like, they're just like, Go is still trying to to get its foothold in that community. I don't think you you've missed the train. I don't think it's there yet. I think it's still just trying I think it's still pretty pretty new.
Shay Nehmad:And you know what happened at the end? I reverted back to Go because Python wasn't good enough as well. And apparently, LLMs are the solutions to everything because extracting text for PDFs and the PDFs I'm working with are, like, slideshows, like slide So decks sort of they look nice and when you look at them, you can understand them visually. But when you just copy the text, if they use like, you know, some sort of diagram where the text isn't read top, like left to right, top to bottom, it just doesn't make any sense. Like right?
Shay Nehmad:It's super garbled. But apparently, you can send the file to, GPT five now and just tell it, hey. Read it and summarize every single page correctly. And it just like worked. I mean, it does have limitations on the page or whatever and I'm working through those right now, but I'm back to go because it's just API calls, downloading files, handling errors, perfect.
Shay Nehmad:There's this blog post we mentioned on the show, how to use Go for AI, which is, hey, just call the API, it can probably do it better than you. I had to go through an entire cycle of trying to solve it myself in Go, being disillusioned, solving it myself in Python and then being like, AI overloads, you win. And I just use an LM for it now. So now it's back to go. I just thought it was a funny tangent, but I did go back to go to implementing it, and there, you know, it's just standard libraries, HTTP stuff.
Shay Nehmad:But I was disappointed that I was looking it feels like a very basic capability, like extract text and do some OCR. It's like the first thing you do in a data pipeline, it can find a good solution. I'm sort of putting my opinion here on the Internet, hoping people will come into the Slack channel, which is also on the go for Slack, hashtag cupago, and, like, correct me. Yeah. And they'll discover how to do it.
Jonathan Hall:Just post the wrong answer on Reddit, and you'll be sure to get the answer you're looking for.
Shay Nehmad:I could do a complaining post on Reddit. We just, moved one of those out of our backlog. It's bit behind the scenes. Why is Rust better for desktop applications? If I'll post like, why is Python better than Go for data science?
Shay Nehmad:And some people tell me, oh, it's Turing complete and I like the type safety. It's not what I asked. Talking about the Go blog, we mentioned the AI thing. You have one thing about testing time.
Jonathan Hall:Yes. Yes. I have a half written script about this topic, for a video I started on over a year ago before
Shay Nehmad:I moved. Need to finish that up. And we wanna keep that one for next week.
Jonathan Hall:Right? We're gonna keep it for next week. Yeah. Yeah. I'm gonna try to flush out my understanding of this topic, which is spoiler alert, test, the new feature that was added in Go one twenty four and made generally available in 01/25.
Jonathan Hall:I'm gonna try to spend some time on this, hopefully, this next week if I can to discuss it more intelligently.
Shay Nehmad:So we're putting it in the future, but if you're listening to this episode in the future, we may have already talked about it. Confusing. Right? That's exactly the problem this package is trying to solve. You're, like, trying to test stuff, but we'll talk about it more in-depth next week.
Shay Nehmad:This week, we wanna talk about one of the blog posts they put out, again, for one of the 1.25, one and a quarter features, Go one and a quarter features that they put out, Containerware Go Max Proc. So we discussed this at length in the past. The go the blog post really breaks it down super well. So I'm just gonna summarize it and I'll I'll do it in a in a in a format I think will will help you understand it. So Jonathan, do you like doing work fast, like getting things done and feeling productive?
Jonathan Hall:It depends on whether I'm being paid by the hour.
Shay Nehmad:Okay. Okay. I know. I know. I know.
Shay Nehmad:But can you, like,
Jonathan Hall:say yes? I'll say yes. I yes. I'd like
Shay Nehmad:to get
Jonathan Hall:you so fast.
Shay Nehmad:Man, I can think this fast to, like, lawyer my way out of all these edge cases. Someone's like, hey. Do you wanna do a Go For Con in Mexico? And you're like, actually, Go for Con doesn't have a country on it, so can we do that on the moon? Anyway, so do you like doing work fast?
Shay Nehmad:Yeah.
Jonathan Hall:Well, I I will say yes.
Shay Nehmad:So if you had multiple CPUs at your behest, you would want to, like, all of them to work on things. Right?
Jonathan Hall:Yeah. I'd love to share my work across all of them so they can all be working simultaneously and make things done faster.
Shay Nehmad:That is awesome. Go has, of course, strong parallelism, with green threads, so it's not the operating system threads, and it can schedule, your work across, as many, Go routines as you want. How many do you want?
Jonathan Hall:A a million.
Shay Nehmad:Alright. A million is gonna be a problem. Right? If you can run a million goroutines, should you schedule them to, a million different real threads? Honestly, you that budget that much scheduling.
Shay Nehmad:That much context switching, you're gonna have a lot of overhead. Right? So there's a a thing called GoMexprox. It's been, I think, forever. I don't know since when it's been there, but it's definitely been there since I've used the language.
Jonathan Hall:Yeah. Me too.
Shay Nehmad:Which is like a flag you put in the, like an environment variable and you say like eight, and then it's like, okay, maximum processes you can have running at the same time is eight. And that's like a crude, but super, workable tool to do that. If you have Go max procs at eight and a million runnable, goroutines, Go will use eight threads to run eight goroutines at a time. Will not run, more. Right.
Shay Nehmad:The reason that's so much sense is because goroutines often run for a short while and then block. Right? They read IO from the disk or wait for the network or go to sleep or whatever, and then you could switch to another thread. Very cool. If you've ever used Go on Kubernetes, which makes sense, you would want the same behavior, right?
Shay Nehmad:You will want the program to use some number of processes. And if you don't put eight or whatever number, how how many should it take? The reasonable answer is how many CPUs I have. Right? On my machine, I have seven CPUs.
Shay Nehmad:You should run seven GoMex Pro. This is, super obvious, but this was I think this was done before Kubernetes and whatever. And then Kubernetes came along, and you're running, like, containers.
Jonathan Hall:Would make sense considering that Kubernetes was written in Go. Oh, you
Shay Nehmad:know what? I actually don't know. So Kubernetes is I don't know how long it's been. The GoMex Proxing is there from from Go 1.5. Really?
Shay Nehmad:I thought it was earlier than that,
Jonathan Hall:but okay.
Shay Nehmad:At Go one point five? That's basically Go one point one. That's, like, super early. No? Well, we're we're figuring it out.
Shay Nehmad:It doesn't matter, but yeah. The important thing is Kubernetes clusters tend to run on, like, huge ass servers and then, you know, have smaller containers running on them. The default for GOMX Prox was logical, CPUs. So, like, the physical CPUs with hyper threading means which is basically what you have on every normal cloud machine that runs Kubernetes workloads, counts the number of cores the machine has. And in Kubernetes situation, you have a a server with, like, 128 available cores because it's a really strong server, but you're running on it containers where the pods themselves, Kubernetes pods, mean to be like small, right?
Shay Nehmad:A small server. Yeah. Then you run them, you run into a problem where you're you're spawning way too many threads than what you expect. This is something I've faced, like, five times. I don't how many times has this happened to you?
Jonathan Hall:I haven't noticed it before. So I've definitely run Go and Kubernetes before, but I so I probably run into this, but it hasn't been an issue that we've noticed.
Shay Nehmad:So for for me, both in Reco, where we had Go on Kubernetes, and in Orca, where I, like, spearheaded, let's move to Go on Kubernetes, I ran into this issue twice, and I forgot about it twice, and we had a production bug twice because of this default. And I didn't even, like, contribute to the issues or anything. I was just, like, bitten by it, and now they fixed it for me, which is, I think you can expect when working with Go, the new default takes into consideration the container environment by default. So if you're running inside a container that has a CPU limit, like a pod with a CPU limit, GoMaxRox will default to that. And then as an extra added bonus, because you're running on Kubernetes, a lot of systems do like, a, increase my CPU on the fly.
Shay Nehmad:Right? It's not actually moving to a new server. You're just increasing the pod limits on that server. Or more I guess more normally what happens is you you you schedule a pod with a lot of resources and then, like, cloud cost systems try to bring it down. You know what I mean?
Shay Nehmad:You asked for two CPUs, but you're actually using only one 0.1 v CPUs because your server isn't doing anything because you don't have any users. So, or for other reasons, maybe your code is very efficient. So not not only it takes the the container environment max prox value, it periodically checks and updates that as well. So if you started with two CPUs and then Kubernetes decided to auto scale you to eight, your Go program will like on the fly adjust to that, which is like a huge feature to implement. If you actually had to implement something like this yourself, it could take you like a year.
Shay Nehmad:Mhmm. Right? It's so complicated. Yeah. And these are the defaults of Go now, which I'm super excited about.
Shay Nehmad:So a brief point
Jonathan Hall:of clarity for the the history buffs among us. Go max prox did exist before 01/2005, but it had a default of one. 1.5 is when it switched the default to the number of single CPU cores in your system.
Shay Nehmad:Nice. When was 1.5?
Jonathan Hall:I don't know. About a thousand years ago.
Shay Nehmad:A million, goroutines, a thousand years. You're like,
Jonathan Hall:2015. It's been a while.
Shay Nehmad:You know? I don't know if it's before or after Kubernetes. Oh, Kubernetes was announced by Google 2014. Well, around the same time. We should have, Joe Beta and Brendan Burns and Craig McLookie in like, on the show.
Shay Nehmad:Let's do If you're listening to the show, we would love to have you on the show, inventors of Kubernetes. Or if you know them, like hook them up with us. Anyway, GoMac Prox. It's a if you are running Go on Kubernetes, you should read this blog post. But funnily enough, the only thing you actually need to do is upgrade and everything will work out just fine.
Shay Nehmad:And if you were using, the Uber thing, so I the way to solve this in the past has been to use auto mexprox from Uber, which was like a package that solves this for you. You just import it and it does the behavior that's now the default. You don't need this package anymore, which I is wonder if they're gonna like, you know what I mean? They're gonna put a notice on their, read me that like it's not required anymore. I'll actually I'll open that issue right now.
Shay Nehmad:But, cool stuff. I I super love this feature. Honestly, it's like these sort of things that make Go when people say Go is like production or system language, this is one of these things. Right? Yeah.
Shay Nehmad:Like, it just makes you so much more focused on the things you actually have to solve because you don't mess around with these settings. Absolutely. That every human would know what they want the default to be.
Jonathan Hall:Cool. I think we have a short lighting around, but first let's talk about that Spanish language stuff I talked about. Not really Spanish language stuff, but the stuff I talked about in Spanish.
Shay Nehmad:Yes. Da. No. How do you say oui. No.
Shay Nehmad:Oui is French.
Jonathan Hall:Si.
Shay Nehmad:Si.
Jonathan Hall:Alright. AdBreak time.
Shay Nehmad:As Jonathan mentioned at the top of the show, this show is supported by you. The easiest way to support us is to well, not the easiest way. The most direct way to support us is to join us on Patreon. We have a Patreon to support the show. It's a hobby.
Shay Nehmad:We do it for fun, but it's expensive, mostly for editing and hosting fees. So if you wanna support us, you can. We really appreciate our audience for staying and joining. This week, we have a new, joiner. We may have mentioned you last week.
Shay Nehmad:I don't remember, Charles Crouch. Thank you for joining. And all the recent, joiners. I feel I feel like people enjoy the new Cup of Gopher mini subscription layer. I do wanna remind you if you have subscribed to the show and you're doing it using Apple, like your Apple device, don't.
Shay Nehmad:Please do it through the web because they're just taking a cut and it makes makes it more expensive for you for no reason. Just go into your web browser and do it from there.
Jonathan Hall:Tim Cook needs a new yacht though. Come on.
Shay Nehmad:I don't know. I live next to all these people now, you know? I mean, like, Zuckerberg and and Tim Cook and all these people, like, my neighbors here in in the Bay Area. So I don't I don't wanna badmouth them. Alright.
Jonathan Hall:Well, we'll say hi next time you see Tim.
Shay Nehmad:If you wanna reach this Patreon link or our Slack channel or all the past episodes or all of the our swag store with, hoodies and cups and whatever. You can go to cupogo.dev, that is cupogo.dev to find all the things. And finally, you can, email us @newsatcupogo.dev. Awesome. One other way to support the show is to leave a review or mention us on, like, lists and whatever on Spotify, Apple Podcasts, wherever you listen to your podcasts.
Shay Nehmad:We got mentioned on some list of, like, top 60 things.
Jonathan Hall:Beadspot? Beadspot, I think?
Shay Nehmad:Yeah. I don't think they actually listen to the show. Think it's some sort of an aggregator, automatic aggregator, but still nice of them to mention us. Thank you. And if you're, like, an avid listener and I just, like, misread it, then sorry.
Shay Nehmad:Let me know. You are looking for clients.
Jonathan Hall:Yeah. You can also sponsor me directly and maybe more directly help me fly to India for GopherCon next year. I'm looking for new clients. My contract that I'm on right now is ending at the end of the month, September. So if you could use some fractional architectural work on your Go project, hit me up.
Shay Nehmad:Where can, we find these, beautiful services? Yeah. Boldlygo.
Jonathan Hall:Tech is the best place to find me.
Shay Nehmad:Boldlygo. Tech? That is boldlygo. Tech. And, you know, there's a lot of great content here.
Shay Nehmad:Funnily enough, Cup of Go is not mentioned even once, like, on the on your page.
Jonathan Hall:Maybe I should do a better job of
Shay Nehmad:No. Supporting the don't know. But the the there is a Boldly You can do, like, a dev subscription, world class Go development for a fixed monthly fee. And with a bold claim, talking about boldly Go, you're already running my code in production. Care to explain?
Jonathan Hall:Well, yeah. I have contributed a large number of open source projects written in Go, including Go itself, Echo, Framework, the Sentry SDK, Logris, if you're still using Logris instead of SLOG, TORP, several and many that aren't listed there, packages you probably use that don't have big brands behind them.
Shay Nehmad:You could join, companies like Unity, Canonical, Deliveroo, booking.com, and Teamwork to run a Jonathan's cloud in the back end, including some customer testimonials here that say that there are unexpected outcomes. They should have specified a positive.
Jonathan Hall:Yeah. The
Shay Nehmad:mentorship, that Jonathan provided to engineers that were newer to go, or they improved testability, productivity, and maintainability, of the of the code base vastly improved.
Jonathan Hall:Other unexpected outcomes might include snarky comments in Slack and and bad jokes.
Shay Nehmad:Yeah. So go do that. Link in the show notes. If your company could use that, that makes a lot of sense. Let's go to the lightning round.
Shay Nehmad:Let's do it. Lightning round. First of all, Dreams of Code, who was on the show?
Elliot:My name is Elliot. I run the Dreams of Code YouTube channel on YouTube, which creates video contents about software development. I actually run two channels. I also run another one, which is a little bit more focused on Linux, self hosting, and open source, but Dreams of Code
Shay Nehmad:is my biggest one. Has the command line applications in Go course on his course platform, which if you've been following his YouTube channel, he's like been building everything end to end, like in Go and I think HTMX or whatever, including the like, he did the whole thing. So, you know, it's like a a real labor of love from a a proper engineer working on it. And there's an early bird offer for the full course, $200. $1.99.
Shay Nehmad:$1.99. Yes.
Jonathan Hall:Not sponsored, by the way. We're not getting any
Shay Nehmad:kicks Yeah. Back on not sponsored. I just I looked at, like, the lessons and how they're structured, and I think they are, probably really good. Like, it starts with, basic introductions and using Go, and the only place where you introduce, like, the cool packages on how to build like fancy stuff is one lesson before the end, SQC and Bubble Tea and whatever, which is exactly the way to do it, right? Learn the fundamentals and then add the fancy stuff on on top.
Shay Nehmad:Awesome. And I just, think it's it's probably really, really good. So it's it's currently, off. Actually, the early bird ends August 2025. So you have the moment you're listening to the show basically to buy it.
Jonathan Hall:Go
Shay Nehmad:now. Seventeen hours of content with 120 lessons. So I don't know. I I think it's probably pretty good.
Jonathan Hall:Sweet. You know what else is pretty good? I can't remember what this is about. Sequel Light. We we talked about this show.
Jonathan Hall:Think was it a year ago? We had a series of of episodes where we talked about Sequel Light because there were new drivers coming out, and I think we had the author of one of them on the show. But it's a good time to bring up again the GoSQLite benchmark repository, which benchmarks a whole bunch of different SQLite libraries in Go. Some are written in CGO, some are written in pure Go, some use the database SQL library abstraction, some don't. So there's a library there for you no matter what your specific SQLite needs are.
Jonathan Hall:Go check it out. Link in the show notes.
Shay Nehmad:Yeah. And the the benchmark does state that there's a a clear winner. SQN, I don't know how they're maybe SQN, is, like, definitely the the fastest, which is, interesting. It it uses, like, just STDIN directly into SQLite.
Jonathan Hall:That's really a curiosity to me. So it's talking to the SQLite binary just compiled in C over standard input and output.
Shay Nehmad:And somehow it's the fastest, which is not what you'd expect. So it's a benchmark, which is fastest? What's the best one?
Jonathan Hall:I would expect the fastest one to be the one written in Sigo.
Shay Nehmad:So the actual answer here is, this benchmark is is smart. It takes a lot of cases into consideration, but it has a simple case and a real case. The real case is like insert a 100 users and then 20 articles per user, then 20 comments per article, and then a separate transaction, blah blah blah. And there's no real clear winner. It depends on the use case.
Shay Nehmad:It does seem like a SQN or SQN is pretty fast, and it's interesting as well because it uses, only STDN. But this is lightning round. We're not gonna go into details. If you need to benchmark your SQLite, you can read this, you can take a look
Jonathan Hall:at this benchmark. Lightning fast discussion about lightning fast benchmarks.
Shay Nehmad:Yes. And that does it for our show for today. Thanks for listening. Program exited. Program
Jonathan Hall:exited.
Creators and Guests

