The Stack Overflow Podcast - A murder mystery: who killed our user experience?

The infrastructure that networked applications lives on is getting more and more complicated. There was a time when you could serve an application from a single machine on premises. But now, with cloud computing offering painless scaling to meet your demand, your infrastructure becomes abstracted and not really something you have contact with directly. Compound that problem with with architecture spread across dozens, even hundreds of microservices, replicated across multiple data centers in an ever changing cloud, and tracking down the source of system failures becomes something like a murder mystery. Who shot our uptime in the foot? 

A good observability system helps with that. On this sponsored episode of the Stack Overflow Podcast, we talk with Greg Leffler of Splunk about the keys to instrumenting an observable system and how the OpenTelemetry standard makes observability easier, even if you aren’t using Splunk’s product. 

Observability is really an outgrowth of traditional monitoring. You expect that some service or system could break, so you keep an eye on it. But observability applies that monitoring to an entire system and gives you the ability to answer the unexpected questions that come up. It uses three principal ways of viewing system data: logs, traces, and metrics.

Metrics are a number and a timestamp that tell you particular details. Traces follow a request through a system. And logs are the causes and effects recorded from a system in motion. Splunk wants to add a fourth one—events—that would track specific user events and browser failures. 

Observing all that data first means you have to be able to track and extract that data by instrumenting your system to produce it. Greg and his colleagues at Splunk are huge fans of OpenTelemetry. It’s an open standard that can extract data for any observability platform. You instrument your application once and never have to worry about it again, even if you need to change your observability platform. 

Why use an approach that makes it easy for a client to switch vendors? Leffler and Splunk argue that it’s not only better for customers, but for Splunk and the observability industry as a whole. If you’ve instrumented your system with a vendor locked solution, then you may not switch, you may just let your observability program fall by the wayside. That helps exactly no one. 

As we’ve seen, people are moving to the cloud at an ever faster pace. That’s no surprise; it offers automatic scaling for arbitrary traffic volumes, high availability, and worry-free infrastructure failure recovery. But moving to the cloud can be expensive, and you have to do some work with your application to be able to see everything that’s going on inside it. Plenty of people just throw everything into the cloud and let the provider handle it, which is fine until they see the bill.

Observability based on an open standard makes it easier for everyone to build a more efficient and robust service in the cloud. Give the episode a listen and let us know what you think in the comments.

The Stack Overflow Podcast - The first ten years of our programming lives

This episode was inspired by Joma Tech's review of his first ten years in coding. 

Ben Popper shared  a fair amount of his coding journey through the series Ben Popper is the Worst Coder in the World

Should you actually write out code on paper as some of us had to do? Maybe.

Modding games gets people into programming. For Ryan, Freedom Force got him into Python. Today, it's Minecraft and Roblox

Want to jump start your career? Find a community on Discord or Twitter and make some contacts. The software industry is made of people. 

Hackathons helped Cassidy find a deeper love for coding, oh and her husband too.

The Stack Overflow Podcast - Quality code is the easiest to delete

Isaac's piece, Code quality: a concern for businesses, bottom lines, and empathetic programmers, ran recently on the Stack Overflow blog. 

A simple metric for code quality code be how easy is it to delete any given piece of code. 

There's no algorithmic way to judge quality code, but experienced engineers know it when they see it. 

Jeff Atwood's Performance is a Feature blog post gets a lot of mileage with our writers. But code quality isn't on the same axis; it's not a feature you can prioritize. It's part of the development process. 

The Stack Overflow Podcast - Getting your first job off the CSS mailing list

At LinkedIn scale, it pays to save your developers a few minutes or even seconds on repeat tasks. Sara walks us through her experience managing senior engineers, and trying to improve developer experience and tooling, on a massive, global platform with over a billion user interactions a month.

Paul  shares some of his firm's latest work, helping to visualize the impact of climate change at Probable Futures. Interested in doing work in software focused on climate change? Paul recommends you learn a bit about NetCDF files.

Follow Sara on Twitter here.

Follow Paul on Twitter here.

Enjoy our brain teaser of the week: a new way to cut pizza.

The Stack Overflow Podcast - Can AI solve car accidents and find you a parking space?

Graybeard conference alert! Eran and Ryan both started their technology journeys on the venerable Commodore 64

During his academic days, Eran helped to map all the BGP (background gateway protocol) gateways in the world. This got a fair bit of press recently during the six hour Facebook outage.

Nexar provides smart dashcams and an app that help cars understand the roads around them. 

While networked cameras on every car could be a privacy nightmare, Nexar says that they have privacy as a foundational part of the SDLC.

The Stack Overflow Podcast - A database built for a firehose

HarperDB is a startup that focuses on highly scalable databases that handle real-time data. 

Harper is built on Node.js and Express with a little help from Fastify

They know where they excel and where they don't. High data throughput like  gaming and vision, great! High data resolution and transactional software like financial applications, not so great. It's speed over accuracy. 

Instead of a Lifeboat badge today, we shared a relevant question: Q: How to create HarperDB table with lambda.

The Stack Overflow Podcast - Wait, we’re all content moderators now?

Read more about the climate debate surrounding NFTs here.

We really enjoyed this piece: You either die an MVP, or live long enough to build content moderation.

You can find Ben on Twitter here.

You can send ideas for blog posts to Ryan Donovan at our pitch box.

You can find Cassidy on Twitter here and read the newsletter she helps us curate here.

You can find Ceora on Twitter here and check out more about Apollo GraphQL here.

The Stack Overflow Podcast - Automate away your boring standup meetings

Right now, most development teams provide visibility into their overall process and lifecycle through standup meetings and spreadsheets. It can be a painfully manual process that uses up valuable engineering time. 

Value stream management aims to solve that by mapping out the entire software development life cycle and providing visibility into areas where things are breaking down or getting stuck. It borrows ideas from Agile and the automate-all-the-things attitude from DevOps to ensure engineering teams are moving fast with direction, avoiding bottlenecks, and reaching the the key objectives management planned weeks ago.

In this episode, we chat with Nick Mathison and Sylvan Carbonell from HCL Software DevOps about value stream management and how their product, HCL Accelerate, brings visibility into the entire gamut of the SDLC, from the request coming in from a customer to deploying code to the production servers. 

At the foundation of this process is a good map of the company’s value stream. Think of it as bringing all your teams together to map out the entire workflow of your development cycle on a whiteboard, from receiving feature requests and bug reports, assigning out tickets, merging code, requesting code reviews, passing build tests, QA processes, and finally deploying to production. 

The value stream map brings that whiteboard to life. Once the process is mapped out and the data flows revealed, it is very easy to track where the work is at any given time and how fast it is flowing through the value stream. Every company has little idiosyncrasies that make their process unique: their specific slowdowns, time sinks, and manual approvals that grind development to a halt. Value stream management spots those and helps you eliminate them. 

In a value stream, you’re no longer watching individual devs; your best metrics cover the “two-pizza team,” a team small enough to be fed by two pizzas. This team’s interactions—working through epic tickets, code reviews, internal support, etc.—provides the best metrics to identify ways to increase the value that a team provides. 

With many technology companies working fully remotely during the pandemic, understanding each team’s process is critical. HCL offers a way to accomplish this without bringing lengthy standups back in the picture.

Start benefiting from value stream management today with the forever-free Community Edition of HCL Accelerate. Try HCL Accelerate now.