با برنامه Player FM !
پادکست هایی که ارزش شنیدن دارند
حمایت شده


context.Context
Manage episode 326454880 series 3341962
Francesc Campoy and Isobel Redelmeier joins the panel to discuss Go’s context package including real-world insights into its use and misuse.
Changelog++ members save 3 minutes on this episode because they made the ads disappear. Join today!
Sponsors:
- Linode – Our cloud of choice and the home of Changelog.com. Deploy a fast, efficient, native SSD cloud server for only $5/month. Get 4 months free using the code
changelog2019
ORchangelog2020
. To learn more and get started head to linode.com/changelog. - Pixie – Pixie gives you a magical API to get instant debug data. The best part is this doesn’t involve changing code, there are no manual UIs, and this all lives inside Kubernetes. Pixie lives inside of your platform, harvests all the data that you need, and exposes a bunch of interfaces that you can ping to get the data you need. It’s a programmable edge intelligence platform which captures metrics, traces, logs and events, without any code changes.
- Datadog – Do you have an app in production that is slower than you like? Of course you do…is the performance all over the place…sometimes fast, sometimes slow? Do you know why? Well, with Datadog you will. Troubleshoot your app’s performance with end-to-end tracing and in one click correlate those Go traces with related logs and metrics. Use detailed flame graphs to identify bottlenecks and latency in your apps. Start your free trial, install the agent, create a dashboard, and get a free t-shirt! Head to datadog.com/gotime to get started.
- Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com.
Featuring:
- Francesc Campoy – Website, GitHub, X
- Isobel Redelmeier – X
- Mat Ryer – Website, GitHub, LinkedIn, X
- Jaana Dogan – Website, GitHub, X
Show Notes:
- Just For Func: #9 - The Context Package - Francesc’s YouTube channel & his episode on the context package
- context.WithValue example of avoiding key collision
- Context Keys in Go - Mat Ryer’s article expanding on this
- Context is for Cancelation - Dave Cheney’s argument that context is for cancellation
- Context isn’t for Cancelation - Dave Cheney’s argument that context isn’t for cancellation
- Make Ctrl+C cancel the context.Context - Mat Ryer’s technique for triggering a graceful cascade of shutdown across your program
- Join Changelog++ — directly support us, make the ads disappear, and get closer to the metal
Something missing or broken? PRs welcome!
347 قسمت
Manage episode 326454880 series 3341962
Francesc Campoy and Isobel Redelmeier joins the panel to discuss Go’s context package including real-world insights into its use and misuse.
Changelog++ members save 3 minutes on this episode because they made the ads disappear. Join today!
Sponsors:
- Linode – Our cloud of choice and the home of Changelog.com. Deploy a fast, efficient, native SSD cloud server for only $5/month. Get 4 months free using the code
changelog2019
ORchangelog2020
. To learn more and get started head to linode.com/changelog. - Pixie – Pixie gives you a magical API to get instant debug data. The best part is this doesn’t involve changing code, there are no manual UIs, and this all lives inside Kubernetes. Pixie lives inside of your platform, harvests all the data that you need, and exposes a bunch of interfaces that you can ping to get the data you need. It’s a programmable edge intelligence platform which captures metrics, traces, logs and events, without any code changes.
- Datadog – Do you have an app in production that is slower than you like? Of course you do…is the performance all over the place…sometimes fast, sometimes slow? Do you know why? Well, with Datadog you will. Troubleshoot your app’s performance with end-to-end tracing and in one click correlate those Go traces with related logs and metrics. Use detailed flame graphs to identify bottlenecks and latency in your apps. Start your free trial, install the agent, create a dashboard, and get a free t-shirt! Head to datadog.com/gotime to get started.
- Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform. Learn more at fastly.com.
Featuring:
- Francesc Campoy – Website, GitHub, X
- Isobel Redelmeier – X
- Mat Ryer – Website, GitHub, LinkedIn, X
- Jaana Dogan – Website, GitHub, X
Show Notes:
- Just For Func: #9 - The Context Package - Francesc’s YouTube channel & his episode on the context package
- context.WithValue example of avoiding key collision
- Context Keys in Go - Mat Ryer’s article expanding on this
- Context is for Cancelation - Dave Cheney’s argument that context is for cancellation
- Context isn’t for Cancelation - Dave Cheney’s argument that context isn’t for cancellation
- Make Ctrl+C cancel the context.Context - Mat Ryer’s technique for triggering a graceful cascade of shutdown across your program
- Join Changelog++ — directly support us, make the ads disappear, and get closer to the metal
Something missing or broken? PRs welcome!
347 قسمت
همه قسمت ها
×
1 Writing a shell in Go 1:05:22

1 AI for Observability 1:09:22

1 Russ Cox on passing the torch 1:09:27

1 How I lost my (old) job to AI 1:18:24

1 The community of gophers 1:09:39

1 ⚡ Lightning Talk life ⚡ 1:12:23

1 OpenAPI & API design 1:14:12

1 What's new in Go 1.23 1:06:55

1 How Mat writes HTTP services in Go 1:11:07

1 Dependencies are dangerous 1:03:37

1 Is Go evolving in the wrong direction? 1:13:49

1 How things get done on the Go Team 1:03:12

1 Your ultimate guide to mastering Go 1:02:53


1 What if Google lays off the Go team? 1:12:46

1 Go workshops that work 1:26:26

1 What's new in Go's cryptography libraries: Part 3 1:07:59




1 Questions from a new Go developer 1:09:45

1 Jumping into an existing codebase 1:27:19

1 How long until I lose my job to AI? 1:16:18

1 Foundations of Go performance 1:00:06

1 What's new in Go 1.22 1:03:56


1 300 multiple choices 1:51:19


1 What's new in Go's cryptography libraries: Part 2 1:11:38

1 Event-driven systems & architecture 1:05:24

1 Principles of simplicity 1:27:44

1 The se7en deadly sins of Go 1:15:20

1 Experiences from GopherCon 2023 1:16:34


1 Go templating using Templ 1:05:37


1 What's new in Go 1.21 1:04:54

1 A deep dive into Go's stack 1:12:51

1 Building world-class developer experiences 1:20:20

1 So do we like Generics or not? 1:28:21



1 Neurodiverse gophers 1:13:53


1 Of prompts and engineers 1:08:12

1 The files & folders of Go projects 1:04:17

1 How to ace that talk 1:16:55

1 HallwayConf! A new style of conference 1:15:21


1 Diversity at conferences 1:18:49

1 Domain-driven design with Go 1:11:54

1 The biggest job interview of GPT-4's life 1:07:15

1 Cross-platform graphical user interfaces 1:08:39

1 Hacking with Go: Part 4 1:01:28

1 The bits of Go we avoid (and why) 1:00:24

1 This will blow your docs off 1:14:59

1 What's new in Go 1.20 1:12:28

1 Is htmx the way to Go? 1:16:19


1 Who owns our code? Part 2 1:05:35

1 Making Go more efficient 1:02:02


1 To TDD or not to TDD 1:12:39

1 gRPC & protocol buffers 1:15:14


1 Go in medicine & biology 1:07:04

1 Spooky stories to scare devs 👻 1:00:03


1 Hacking with Go: Part 2 1:05:13

1 Mat's GopherCon EU diary 1:05:35

1 Engineering interview tips & tricks 1:01:27

1 Stay agile out there 1:01:52




1 The art of the PR: Part 1 1:02:04

1 What's new in Go 1.19 1:13:14




1 Thoughts on velocity 1:14:42


1 Going through the news 1:00:32

1 The myth of incremental progress 1:12:13

1 Berlin's transition to Go 1:01:18


1 What to do when projects get big and messy 1:05:39


1 Go code organization best practices 1:00:46

1 Answering questions for the Go-curious 1:01:15

1 How can we prevent legacy from creeping in? 1:17:18

1 Making the command line glamorous 1:30:04


1 Bob Logblaw Log Blog 1:08:39








1 Maintenance in the open 1:08:22

1 Eventually consistent (managing data at scale) 1:06:41

1 Hacking with Go: Part 1 1:13:36

1 Discussing Go's annual developer survey 1:13:12


1 Maintaining ourselves 1:01:50



1 Go on hardware: TinyGo in the wild 1:09:31

1 The little known team that keeps Go going 1:05:44


1 Building actually maintainable software 1:11:53

1 To build, or to buy, that is the question 1:08:49


1 Data streaming and Benthos 1:04:10

1 How to make mistakes in Go 1:03:01

1 Do devs need a product manager? 1:11:43

1 SIV and the V2+ issue 1:20:12

1 Fuzzing in the standard library 1:01:01






1 Building for Ethereum in Go 1:03:36

1 Are frameworks getting an Encore? 1:06:15

1 Event-driven systems 1:11:04

1 What makes wonderful workshops? 1:07:16

1 Building startups with Go 1:10:30


1 The ultimate guide to crafting your GopherCon proposal 1:24:10

1 Trials and tribulations of testing in Go 1:12:41

1 Releasing with (and without) GoReleaser 1:04:15



1 Talkin' 'bout code generation 1:30:58


1 Indecent (language) Proposals: Part 2 1:14:28

1 The art of reading the docs 1:15:50

1 Indecent (language) Proposals: Part 1 1:03:20


1 Why writing is important 1:25:40

1 CUE: Configuration superpowers for everyone 1:00:16

به Player FM خوش آمدید!
Player FM در سراسر وب را برای یافتن پادکست های با کیفیت اسکن می کند تا همین الان لذت ببرید. این بهترین برنامه ی پادکست است که در اندروید، آیفون و وب کار می کند. ثبت نام کنید تا اشتراک های شما در بین دستگاه های مختلف همگام سازی شود.