The Changelog: Software Development, Open Source - Stack Overflow's architecture, Lobsters' killer libraries, Linux is ready for modern Macs, what to expect from your framework & GoatCounter web analytics (News)

Episode Date: February 27, 2023

Sahn Lam details Stack Overflow's monolith/on-prem architecture, Hillel Wayne asks the Lobsters community for killer libraries, Linux 6.2 is ready to run on M1 Macs thanks to Asahi Linux, Johan Halse ...writes up what to expect from your web framework & Eli Bendersky on using GoatCounter for blog analytics.

Transcript
Discussion (0)
Starting point is 00:00:00 What up nerds, I'm Jared and this is Changelog News for the week of Monday, February 27th, 2023. Let's do it. Some fascinating details about Stack Overflow's architecture were shared by San Lam on Twitter. He shares that it is a multi-tenant monolithic app serving 2 billion monthly page views across 200 sites. It's hosted on-premise with only 9 IIS web servers, each running highly optimized.NET code, handling 6,000 requests per second.
Starting point is 00:00:43 SQL Server has 1.5 terabytes of RAM with no caching layer. The entirety of the Q&A dataset is about 4.5 terabytes, so it can keep up to a third of it in RAM at any given time. No microservices, no cloud, and a single database instance? Quick, send them some high-priced consultants to re-architect from first principles before the site falls over. Do I detect a note of sarcasm? Are you kidding me? This baby is off the charts. Oh, a sarcasm detector. That's a really useful invention. Hillel Wayne started a killer lobsters thread the other day by asking, what are some killer libraries for your language of choice? Okay, it's $500, you have no choice of carrier, the battery can't hold a charge, and the reception isn't very...
Starting point is 00:01:30 Shut up and take my money! The two examples he gave in the setup were Ruby on Rails, which was so good for web dev at the time that it justified using Ruby, and Pandas, which is so good for data science it justifies using Python. 117 comments later, there's a lot of gems in this list. I read it, so you don't have to, but I'll highlight just a few of the most upvoted responses, so if you want more like this, follow the link in the show notes. GoTime regular guest Carl Johnson picked Go's standard library with some dissent in the replies. User Rcorder says Rust's Serday is a go-to for
Starting point is 00:02:08 them because it makes writing simple network services in Rust so nice. Yonkletron says one of the biggest reasons they gravitate toward Elixir is because of OTP, a set of tools and libraries that Elixir inherits from Erlang. And finally, user x64k says they kept slashing their list down until it was just Qt, claiming, quote, I know a lot of really good libraries for all languages, but realistically, there are probably good alternatives for all of them if you look outside their language's ecosystem. Qt is hands down the one killer library I know. End quote. The recently released Linux 6.2 is the first mainstream Linux kernel you can run on Apple's M1 powered machines. Alive. It's alive. It's alive!
Starting point is 00:03:06 Getting Linux ready for the M1 wasn't easy, writes ZDNet's Stephen Von Nichols. Fortunately, Asahi Linux's Alyssa Rosensweig was up to the challenge. Side note, are you Alyssa Rosensweig? Or, more likely, do you know Alyssa Rosensweig? And how do you say Rosensweig? Dr. Frankenstein. Frankenstein.
Starting point is 00:03:33 You're putting me on. No, it's pronounced Frankenstein. We would love to have her on the changelog to discuss Linux hacker tinkering with graphics drivers and Asahi Linux. Linux 6.2 with M1 support is out now and it's expected to become Ubuntu 23.04's default kernel and to be included in Fedora 38 before the late April release of Linux 6.3. After hearing Justin Searles on our Don't Sleep on Ruby on Rails episode and reading all of the recent hubbub around single-page app fatigue, including Zach Leatherman's history of React criticism, Alex Russell's The Market for Lemons, and Lori Voss's The Case for Frameworks,
Starting point is 00:04:14 Johan Hals decided it was time to weigh in. His post, titled What to Expect from Your Framework, starts by pointing out how React, Vue, Svelte, Solid, and Friends aren't actually frameworks. They are Vue layer libraries that don't make a full application. Enter Next, Nuxt, SvelteKit, Blitz, etc. But from where Johan sits, even these are barely frameworks. He says, quote, the front-end component ecosystem is a very bring-your-own-ideas, have-fun-re-implementing-CSRF kind of party. It's all so much work. And why are we doing this again? Optimistic commits?
Starting point is 00:04:51 Fewer redraws on state change? Avoiding jQuery soup? I mean, I agree that these are laudable goals. We probably don't want to devolve back to an imperative programming hairball, but man, I wish there was a better way. End quote. If you've been listening closely, you know what Johan is going to say next. It starts with an S. So swim, swammy, slippy, slappy, slimming, summon, simmon, swanson, swanson? Maybe it's on the briefcase. Look on the- Oh yeah, it's right here. Samsonite. I was way Did you guess Rails? Yeah, he says Rails. I'll leave it right there, but Johan has more to say. Worth a read, for sure.
Starting point is 00:05:34 Eli Banderski is now using GoatCounter for his blog analytics. GoatCounter is an open-source web analytics platform available as a free hosted service or self-hosted app. Here's four reasons why Eli picked it. One, very privacy-oriented, collecting so little data that a GDPR notice isn't even required. Two, lightweight.
Starting point is 00:06:02 The added JS file is only 8 kilobytes, and the server is fast. 99.9% of requests are answered within 2 milliseconds. Three, can be self-hosted, which both reduces the cost if I already run a server and reduces dependencies. Four, open source and written in Go. This is not just a stylistic preference, since Go builds static binaries, the Go counter tool is trivial to download and run, much easier deployment than, say, tools written in PHP. I love all those reasons, but I have to admit, the web UI leaves a lot to be desired. In all seriousness, it's not that bad, And it's a great opportunity for an open source designer's contribution. Hint, hint.
Starting point is 00:06:47 Nudge, nudge. That is the news for now. This week on The Change Log, we are joined by Bridget Murtaugh from the VS Code team to learn all about development containers, which let you use a container as a full-featured dev environment locally or remotely in a private or public cloud. Have a great week. Share this show with a friend if you dig it.
Starting point is 00:07:08 And we'll talk to you again real soon.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.