Deeply Nested Code, Bugs and Distributed Systems

The New Stack · Intermediate ·🏗️ Systems Design & Architecture ·8y ago

Key Takeaways

The video discusses the challenges of debugging in deeply nested and distributed systems, highlighting the importance of specifications and standards, such as API specifications, and the role of tools like Kubernetes and Docker in building robust systems.

Full Transcript

[Music] hello welcome to the new stack makers a podcast where we talk about at scale application development deployment and management we'd like to thank code for sponsoring our live streams and podcasts from the software circus and Amsterdam code is a team of passionate open-source engineers and advocates building community through contribution and engagement in emerging technologies according to the code team calm it's not just a bunch of colors and stuff we say it's a core fundamental of what we believe open source provides that's what drives the co team to learn more about the code team again at the code team we didn't talk about you know as we kind of give to you your performances here at the surgeons and software circuses parties you know it is quite you know I was here last year as well this year they've gone off all I will the circus team there the first year they were like throwing around topic this year well I think we where when he was speaking or I was in the sort of boot just beaten over ceremony yeah yeah this quality certainly high-concept protect oh yeah there's like this there's like this yes there's like this knowledge isn't yep and well I think I think different tracks got different sort of lightly nearly saw a half project ask whatever group they're doing some of the talks to be presented along with a guitar which is a new one on me yeah no it's a focus on and you're talking about designate your software and okay what is that what does that mean well why you talking about that so I shot up on this is the story of a single bug in a single very small bit of software the reality is that steps from that small bit of software to an to another bit of software to another bit of somewhere to a actually the open API descriptions bark abilities into the open API expects version 1 version 2003 and actually then into a girl library and the solve them I'm increasingly with the software work building is so it's not all in one it's not the historical modeling whether it's microservice the way it's libraries whether it's using software elsewhere you'll rely on so much or the bits that when it comes stretch pining you and you end up looking off a lot of places and often when you're fixing bugs into the mid different places and sometimes that'll be the right place sometimes that'll be the fastest place sometimes there'll be more expensive places I always think that that's sort of interesting especially as we move increasingly towards like services those things to come about the service there's not just so you know nature like the applications using AP API calls exactly but even if you're you're building towards sort of Micra service ideal sort of pi racism i've taken for a service actually further user is doing may be buying something and then might give tens of services and you get into all of that essentially finally a problem in that but it could be anywhere it could be in the connections between limited services could be in a library supporting multiple service it gets quite interesting the complicated even though the little bit software are already small I think that's interesting yeah it's like you know it's like when you just any in everyday consumer like you know some way their goal is what just happen it could be anything right I'm well one of the things I'm sort of combative in the talk is around just the importance of like specifications and standards I think sometimes we especially lot of developers on the cutting edge and sometimes it cost them working with software that move so quickly and some of these presentations tend to be slowly they can tend to sort of touch those to the side but without those strong like specs and standards and and things like up an API things like Jo PC first of all buffers having these strong like bits in the middle that's high things together I think you can build very fragile systems so building fragile systems you know using approaches such as we're ggr PCs for example I you know what do you explain it I'm it so I have done quite a bit with probably a little bit more we'd open up the eye but also some bits more recently the G received four different types of application a depends on whether actually is useful the comments for you doing I think both have like that I listen to be the ones that are I having but both most users at the moment but also feel right for the domain Mary and they're both evolving as well is good and there's certainly some overlap between the certainly some of these where they're slight different not that certainly the give it a these concept context which I've been doing some of this work is and a lot of the kubernetes Eternals our seed I don't live guy is yeah and there's some gaps there around for example how they do type so I again even though up there we have these discreet specifications it would be nice if there was more into rock or mod and discussion at that Bank and so this thing around the designated software yeah it time I saw an explorer all Martin Michael we like the toy tale of wooden bug so a very simple bug in it to allow recalled at coop owl so especially a tool for validating qss companies so and you might get handwriting them llamo I was less people okay but you might be on my job but in all those cases you want to ask the question is this valid and often in cases is this valid against multiple versions of together so if I write it comes a fire and I print like demo or an example or it module or whatever I want to be able to say not is it not just it works for me on the version of in EQI happen to be running today but does it work on this book like these different versions on the air - if you look at the available evolution of kinetics have to make you look at them they have new confident happy then they have changes to existing and be able to say yes this conflict is valid for all these powerful um so we talk a lot to vowel and but that had a bug and it saw the story of one of these both actually and the actual program is a couple hundred lines of girl but the actual end Lindsey chain is much longer and the book ends up several steps beyond anyway sort of a neat interesting example of highlight if that's very interesting his betrayal you know but you know did we why even if us or small that's the thing about love the the software increasingly able to write powerful software and with very little code because of this one but like when you have open source libraries practice managers around there and increasing I like service functions or microsomes all of these things about being small but you're actually that the iceberg to what actually running that's a and so that holds up supply chain the holes on industry and the fact that bugs often sit in a combination of although it's the interaction between all those I could talk to you all day about this good but I want to just stop it here but before I do what are you doing it publicly is what's keeping you busy I'm looking out all sorts of bad different at the moment so I've spent no time saw folks they don't like it I guess pop it and talk containment space so we've done a lot of interesting integration with docker doctor-patient of our recently fab committees but I'm actually working across a number of he was the moment off and some of the something I guess either problem hook problem containing are some research bits oh yes variety different things yeah there's a lot I know so long going on with the pet around contain a story and but also that Isis operates hardware how to time the Duncan was second back today how do you take people from their existing the implement their existing software's that and without saying you have to rewrite everything I think that's one of the things where they sort of spans multiple generations people doing different things like that song good thanks so much for taking some time you know to talk and recording he will touch and enjoy they enjoy the circus yeah [Music] listen to more episodes of the new stack makers at the new stack io / podcast please rate and review us on iTunes like us on YouTube and follow us on soundcloud thanks for listening and see you next time [Music]

Original Description

The nature of software is by default deeply nested, making bug hunting always a work of forensics. In distributed systems, there may be only a few lines of code but there can be a long trail of dependencies that makes bugs also difficult to detect. It's a chain of dependencies with bugs that might be anywhere. It's a problem that is emerging as the container ecosystem and distributed systems get more sophisticated and applied on a larger scale. We discussed this often at Software Circus, thinking about priorities as enterprise customers consider how to use containers and orchestrators in production. To the surface comes a lot of issues not previously needed to address. It speaks to the need for specifications and standards so these loosely coupled systems can work together. "There may be tens of services involved -- the bug could be anywhere," said Gareth Rushgrove of Puppet who talked to us at Software Circus. Listen on SoundCloud: https://soundcloud.com/thenewstackmakers/deeply-nested-code-bugs-and-distributed-systems
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from The New Stack · The New Stack · 0 of 60

← Previous Next →
1 What's Next for the Cloud Foundry Foundation in 2017 with Executive Director Abby Kearns
What's Next for the Cloud Foundry Foundation in 2017 with Executive Director Abby Kearns
The New Stack
2 How Unikernels Can Better Defend against DDoS Attacks
How Unikernels Can Better Defend against DDoS Attacks
The New Stack
3 Weaveworks is Bringing Horizontal Scaling to Prometheus
Weaveworks is Bringing Horizontal Scaling to Prometheus
The New Stack
4 TNS Analysts Thanksgiving Special: The Evolution of Kubernetes and the Container Ecosystem
TNS Analysts Thanksgiving Special: The Evolution of Kubernetes and the Container Ecosystem
The New Stack
5 How Rancher Labs is Seeing Kubernetes Put to Work in Production
How Rancher Labs is Seeing Kubernetes Put to Work in Production
The New Stack
6 SAP Tests Kubernetes for Cloud-Native Enterprise Software Deployments
SAP Tests Kubernetes for Cloud-Native Enterprise Software Deployments
The New Stack
7 Event Marketing for Today's Developer Evangelists and Community Managers
Event Marketing for Today's Developer Evangelists and Community Managers
The New Stack
8 NodeSource Introduces Certified Modules to Improve Node.js Security
NodeSource Introduces Certified Modules to Improve Node.js Security
The New Stack
9 How Lightstep is Illuminating the Case for Distributed Tracing
How Lightstep is Illuminating the Case for Distributed Tracing
The New Stack
10 How OpenStack Aims to be More Inclusive without being Exclusive
How OpenStack Aims to be More Inclusive without being Exclusive
The New Stack
11 How Shuttlecloud Saves Time and Money by Monitoring with Prometheus
How Shuttlecloud Saves Time and Money by Monitoring with Prometheus
The New Stack
12 Creating Analytics-Driven Solutions for Operational Visibility
Creating Analytics-Driven Solutions for Operational Visibility
The New Stack
13 Understanding the Application Pattern for Effective Monitoring
Understanding the Application Pattern for Effective Monitoring
The New Stack
14 Building On Docker's Native Monitoring Functionality
Building On Docker's Native Monitoring Functionality
The New Stack
15 The Importance of Having Visibility Into Containers
The Importance of Having Visibility Into Containers
The New Stack
16 How Getting Your Project in the CNCF Just Got Easier
How Getting Your Project in the CNCF Just Got Easier
The New Stack
17 Tectonic Summit Pancake Breakfast: How to Sell Kubernetes to the Hypervisor-Minded
Tectonic Summit Pancake Breakfast: How to Sell Kubernetes to the Hypervisor-Minded
The New Stack
18 The Buzz at Tectonic Summit 2016 in New York City
The Buzz at Tectonic Summit 2016 in New York City
The New Stack
19 Bringing Clarity to the Future of Node.js Modules
Bringing Clarity to the Future of Node.js Modules
The New Stack
20 How FluentD Can Help Monitor Microservice Architectures Through Unified Logging
How FluentD Can Help Monitor Microservice Architectures Through Unified Logging
The New Stack
21 Reshaping Front End Development with Warehouse.ai
Reshaping Front End Development with Warehouse.ai
The New Stack
22 2016 Year End Wrap-Up: Discussing Docker, OpenStack, and Open Source
2016 Year End Wrap-Up: Discussing Docker, OpenStack, and Open Source
The New Stack
23 Here's Why You Should Build a Robot Using Node.JS: Because You Can
Here's Why You Should Build a Robot Using Node.JS: Because You Can
The New Stack
24 How the Node.js Foundation is Utilizing Participatory Governance Models
How the Node.js Foundation is Utilizing Participatory Governance Models
The New Stack
25 Set Up an MongoDB Replica Set in Less Than an Hour Using Bitnami Packages
Set Up an MongoDB Replica Set in Less Than an Hour Using Bitnami Packages
The New Stack
26 Determining Who Bears the Burden of Ensuring NPM Module Security
Determining Who Bears the Burden of Ensuring NPM Module Security
The New Stack
27 How Intel Snap uses Telemetry and Kubernetes to Drive Enterprise Efficiency
How Intel Snap uses Telemetry and Kubernetes to Drive Enterprise Efficiency
The New Stack
28 How the NFL Scored a Touchdown with its Open Source React Framework Wildcat
How the NFL Scored a Touchdown with its Open Source React Framework Wildcat
The New Stack
29 Aporeto CEO Dimitri Stiliadis: When it Comes to Security, Context is King
Aporeto CEO Dimitri Stiliadis: When it Comes to Security, Context is King
The New Stack
30 The Buzz at Node.JS Interactive
The Buzz at Node.JS Interactive
The New Stack
31 Why Going Serverless Doesn't Mean 'No Ops'
Why Going Serverless Doesn't Mean 'No Ops'
The New Stack
32 How Node.js is Transforming Today's Enterprises
How Node.js is Transforming Today's Enterprises
The New Stack
33 JJ Asghar Interview
JJ Asghar Interview
The New Stack
34 How Capital One is Using APIs to Streamline Auto Financing
How Capital One is Using APIs to Streamline Auto Financing
The New Stack
35 SXSW 2017: How Machine Learning Differs From Regular Programming
SXSW 2017: How Machine Learning Differs From Regular Programming
The New Stack
36 SXSW 2017: Data-Driven Applications with Capital One DevExchange's Hydrograph
SXSW 2017: Data-Driven Applications with Capital One DevExchange's Hydrograph
The New Stack
37 SXSW 2017: How Good Engineers Make Bad Business Decisions
SXSW 2017: How Good Engineers Make Bad Business Decisions
The New Stack
38 CloudNativeCon & KubeCon EU Pancake Breakfast 2017: Kubernetes and the Multi-Cloud
CloudNativeCon & KubeCon EU Pancake Breakfast 2017: Kubernetes and the Multi-Cloud
The New Stack
39 CNCF Executive Director Dan Kohn: What's Next for CNCF in 2017
CNCF Executive Director Dan Kohn: What's Next for CNCF in 2017
The New Stack
40 Exploring the Latest Container Runtime Projects in the CNCF
Exploring the Latest Container Runtime Projects in the CNCF
The New Stack
41 Exploring the Future of the Kubernetes Ecosystem
Exploring the Future of the Kubernetes Ecosystem
The New Stack
42 Kubernetes and Continuous Deployment
Kubernetes and Continuous Deployment
The New Stack
43 Kris Nova of Deis at CouldNativecon/Kubecon in Berlin
Kris Nova of Deis at CouldNativecon/Kubecon in Berlin
The New Stack
44 Docker's Quest for Simplicity with the Evolution of Containerd
Docker's Quest for Simplicity with the Evolution of Containerd
The New Stack
45 Developers First: The Cloud Foundry Service Broker API and Kubernetes
Developers First: The Cloud Foundry Service Broker API and Kubernetes
The New Stack
46 Mapping the Future of CoreOS's rkt in the CNCF
Mapping the Future of CoreOS's rkt in the CNCF
The New Stack
47 Red Hat and Dell EMC: Two Perspectives from DockerCon
Red Hat and Dell EMC: Two Perspectives from DockerCon
The New Stack
48 Capital One Opened its APIs to Third-Party Developers — Here’s What They Learned
Capital One Opened its APIs to Third-Party Developers — Here’s What They Learned
The New Stack
49 SUSE Joins the CNCF, Brings Kubernetes to OpenStack Cloud 7
SUSE Joins the CNCF, Brings Kubernetes to OpenStack Cloud 7
The New Stack
50 How Capital One Brings Open Source To The  Banking Industry
How Capital One Brings Open Source To The Banking Industry
The New Stack
51 OSCON Is Coming Back To Portland, A Show Wrapup With Co-Chair Kelsey Hightower
OSCON Is Coming Back To Portland, A Show Wrapup With Co-Chair Kelsey Hightower
The New Stack
52 Dev Or Ops Doesn’t Matter, You Need Observability
Dev Or Ops Doesn’t Matter, You Need Observability
The New Stack
53 Taking The Next Steps In Developing An Open Source Culture
Taking The Next Steps In Developing An Open Source Culture
The New Stack
54 SXSW 2017: How Capital One Became Technology-First With Open Source
SXSW 2017: How Capital One Became Technology-First With Open Source
The New Stack
55 Apcera   Old Apps Spanning New Clouds
Apcera Old Apps Spanning New Clouds
The New Stack
56 Provenance: The Peace of Mind Chef Habitat Seeks to Deliver
Provenance: The Peace of Mind Chef Habitat Seeks to Deliver
The New Stack
57 InSpec: Human Readable, Automated Compliance
InSpec: Human Readable, Automated Compliance
The New Stack
58 The Evolution of SAP HANA Express
The Evolution of SAP HANA Express
The New Stack
59 Women Engineers Who Inspire And Never Give Up
Women Engineers Who Inspire And Never Give Up
The New Stack
60 Three Perspectives on the Evolution of Container Security
Three Perspectives on the Evolution of Container Security
The New Stack

The video teaches the importance of understanding the complexities of distributed systems and the challenges of debugging in such systems. It highlights the need for specifications and standards, such as API specifications, and the role of tools like Kubernetes and Docker in building robust systems. By watching this video, viewers can gain insights into designing and debugging distributed systems.

Key Takeaways
  1. Understand the complexities of distributed systems
  2. Identify the challenges of debugging in distributed systems
  3. Implement specifications and standards, such as API specifications
  4. Use tools like Kubernetes and Docker to build robust systems
  5. Design and debug distributed systems
  6. Integrate AI with distributed systems
  7. Secure AI systems and protect against AI-powered attacks
💡 The complexity of distributed systems and the need for specifications and standards, such as API specifications, are crucial for building robust and reliable systems.

Related Reads

📰
Graphify Setup in 20 Minutes: What Works, What Breaks, What’s Not Free
Learn to set up Graphify in 20 minutes and understand its limitations and costs
Medium · Programming
📰
What if your software could explain its own outages?
Learn how the Cognitive Autonomic Framework (CAF) enables self-healing distributed systems to explain their own outages
Medium · Python
📰
What if your software could explain its own outages?
Learn about the Cognitive Autonomic Framework (CAF) for building self-healing distributed systems that can explain their own outages
Medium · LLM
📰
I Thought I Wanted System-Wide Vim. I Actually Wanted Arrow Keys on the Home Row
Discover how using arrow keys on the home row can improve typing efficiency and why system-wide Vim might not be the ultimate solution
Dev.to · Naveen
Up next
Implement Microsoft Entra ID Auth with Delegated Graph API Calls in ASP.NET Core Web App Razor Pages
Dewiride Technologies
Watch →