Artwork

Content provided by Fallthrough Media. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Fallthrough Media or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ppacc.player.fm/legal.
Player FM - Podcast App
Go offline with the Player FM app!

The Gems & Warts of Go

1:57:15
 
Share
 

Manage episode 460900381 series 3620759
Content provided by Fallthrough Media. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Fallthrough Media or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ppacc.player.fm/legal.

Gems are the things we love, and warts are the things we don't. On today's episode, Kris is joined by the hosting panel of Ian, Matt, and Dylan and they are talking about the gems and warts of Go. From defer, to net/http, to vanity URLs, to modules, we cover around 30 topics! To prevent our listeners/viewers from returning an E_TOO_MANY_UNPOPS error, we didn't include the Unpopular Opinions segment (there are plenty throughout the episode). We hope you enjoy this tangent filled episode. Have a gem or wart you agree/disagree with or think we missed a few? Let us know on social media or in the comments!

Thank you so much for listening. Happy listening!

Notes & Links:

Chapters:

  • (00:00) - Intro
  • (00:31) - Introductions
  • (05:07) - Gem#1: net/http
  • (07:37) - Gem#2: defer (gem)
  • (09:36) - PEBKAC (tangent)
  • (11:36) - Gem#3: if err != nil (gem)
  • (16:09) - Gem#4: testing included (gem)
  • (19:13) - Gem#5: struct field tags (gem)
  • (21:57) - Gem#6: reflect & unsafe (gem)
  • (24:35) - Gem#7: sync/atomic (gem)
  • (24:54) - Gem#8: io as composeable interfaces (gem)
  • (25:32) - Gem#9: No inheritance (gem)
  • (31:20) - Gem#10: Vanity URLs (gem)
  • (34:33) - Gem#11: single for loop (gem)
  • (37:08) - Gem#12: pprof (gem)
  • (38:25) - Gem#13: security by default (gem)
  • (40:01) - Gem#14: fast compiler times (gem)
  • (41:16) - Gem#15: go/ast & go/* packages (gem)
  • (42:05) - Gem#16: implicit interfaces (gem)
  • (42:38) - Wart#1: implicit interfaces (wart)
  • (48:37) - Wart#2: slice tricks (wart)
  • (54:10) - Wart#3: lack of method overloads (wart)
  • (56:57) - Wart#4: covariance for array parameters (wart)
  • (59:38) - Wart#5: encoding/json marshalling unexported fields (wart)
  • (01:01:27) - Wart#6: encoding/json marshalling errors (wart)
  • (01:02:31) - Wart#7: single letter variable names (wart)
  • (01:08:45) - Wart#8: iota (wart)
  • (01:16:09) - Wart#9: map operations (wart)
  • (01:18:23) - Gem#17: structs as map keys (gem)
  • (01:20:04) - Wart#10: main function signature (wart)
  • (01:23:35) - Gem/Wart#1: channels (gem & wart)
  • (01:30:38) - Wart#11: range loop variables (wart)
  • (01:34:31) - Wart#12: no standard build system (wart)
  • (01:38:09) - Wart#13: modules (wart)
  • (01:53:18) - Outro

Hosts
Socials:
  continue reading

19 episodes

Artwork
iconShare
 
Manage episode 460900381 series 3620759
Content provided by Fallthrough Media. All podcast content including episodes, graphics, and podcast descriptions are uploaded and provided directly by Fallthrough Media or their podcast platform partner. If you believe someone is using your copyrighted work without your permission, you can follow the process outlined here https://ppacc.player.fm/legal.

Gems are the things we love, and warts are the things we don't. On today's episode, Kris is joined by the hosting panel of Ian, Matt, and Dylan and they are talking about the gems and warts of Go. From defer, to net/http, to vanity URLs, to modules, we cover around 30 topics! To prevent our listeners/viewers from returning an E_TOO_MANY_UNPOPS error, we didn't include the Unpopular Opinions segment (there are plenty throughout the episode). We hope you enjoy this tangent filled episode. Have a gem or wart you agree/disagree with or think we missed a few? Let us know on social media or in the comments!

Thank you so much for listening. Happy listening!

Notes & Links:

Chapters:

  • (00:00) - Intro
  • (00:31) - Introductions
  • (05:07) - Gem#1: net/http
  • (07:37) - Gem#2: defer (gem)
  • (09:36) - PEBKAC (tangent)
  • (11:36) - Gem#3: if err != nil (gem)
  • (16:09) - Gem#4: testing included (gem)
  • (19:13) - Gem#5: struct field tags (gem)
  • (21:57) - Gem#6: reflect & unsafe (gem)
  • (24:35) - Gem#7: sync/atomic (gem)
  • (24:54) - Gem#8: io as composeable interfaces (gem)
  • (25:32) - Gem#9: No inheritance (gem)
  • (31:20) - Gem#10: Vanity URLs (gem)
  • (34:33) - Gem#11: single for loop (gem)
  • (37:08) - Gem#12: pprof (gem)
  • (38:25) - Gem#13: security by default (gem)
  • (40:01) - Gem#14: fast compiler times (gem)
  • (41:16) - Gem#15: go/ast & go/* packages (gem)
  • (42:05) - Gem#16: implicit interfaces (gem)
  • (42:38) - Wart#1: implicit interfaces (wart)
  • (48:37) - Wart#2: slice tricks (wart)
  • (54:10) - Wart#3: lack of method overloads (wart)
  • (56:57) - Wart#4: covariance for array parameters (wart)
  • (59:38) - Wart#5: encoding/json marshalling unexported fields (wart)
  • (01:01:27) - Wart#6: encoding/json marshalling errors (wart)
  • (01:02:31) - Wart#7: single letter variable names (wart)
  • (01:08:45) - Wart#8: iota (wart)
  • (01:16:09) - Wart#9: map operations (wart)
  • (01:18:23) - Gem#17: structs as map keys (gem)
  • (01:20:04) - Wart#10: main function signature (wart)
  • (01:23:35) - Gem/Wart#1: channels (gem & wart)
  • (01:30:38) - Wart#11: range loop variables (wart)
  • (01:34:31) - Wart#12: no standard build system (wart)
  • (01:38:09) - Wart#13: modules (wart)
  • (01:53:18) - Outro

Hosts
Socials:
  continue reading

19 episodes

All episodes

×
 
Loading …

Welcome to Player FM!

Player FM is scanning the web for high-quality podcasts for you to enjoy right now. It's the best podcast app and works on Android, iPhone, and the web. Signup to sync subscriptions across devices.

 

Quick Reference Guide

Listen to this show while you explore
Play