For me, attending GopherCon 2019 recently in San Diego was tremendous fun 
(The Gopher community is so amazing!) 

This is what I saw, the following being *the coordinates* to my (incredibly 
unofficial) writeup: 

*What I Saw at GopherCon 2019* 
<https://programming-digressions.com/2019/08/what-i-saw-at-gophercon-2019.html>


You'll be able to tell—a whole minute and a half into the writeup 
above—that I’m taking inspiration from the inimitable Irish playwright and 
polemicist George Bernard Shaw when he spilled his beans and said that, *My 
method is to take the utmost trouble to find the right thing to say, and 
then to say it with the utmost levity* 👻

Oh, and the following—it happens to be *Section 4*—will probably qualify as 
the single most serious section in this GopherCon 2019 roundup:

4. Woohoo, Speaker Highlights [image: 📣]


In full candor, I was oh-so pleased by the high quality of the talks. I 
sure learned a ton of Go programming tactics, techniques, and strategies to 
bring back and apply to my own work <https://github.com/akramtexas>. For 
the past one year—and this is to establish some context so we’re on the 
same page—yours truly, an industry veteran in the area of architecting and 
implementing distributed computing software systems, and used to 
extensively wielding tools from the Java 
<https://programming-digressions.com/2017/08/when-object-orientation-met-functional-programming.html>
 and Scala 
<https://programming-digressions.com/2015/07/best-scala-books.html> ecosystems, 
has been swimming full-time in the ocean that has arisen from the amazing 
language that is Go.


Relax, I’m not about to go meta; to drive the marine metaphors home, 
though, let’s just say that the beaches of San Diego were an especially 
appropriate venue for hosting the conference.


Back to the GopherCon 2019 talks now. These are the ones that stand out, 
and here I present merely a snapshot impression each. So in no particular 
order, other than this being the order in which I recall them, they were by 
the following speakers:


   - *Elena Morozova:* I appreciated a lot how Elena’s talk (*How Uber 
      “Go”es <https://www.gophercon.com/agenda/speakers/442432>*) was 
      delightfully replete with helpful, thoughtful, and often times humorous 
      illustrations which shone a new light on an indispensable subject: How 
does 
      one go about maintaining a large codebase for maximum readability and 
      minimal overhead? In addition to being really well done, the talk was 
      candid. Elena shared the challenges Uber faced in that process—including 
      places where they ran into the occasional failure or two—yet emerged with 
      successful solutions. Referring back to my notes, I remember now that 
Elena 
      had also talked about actually introducing a software tool to actually 
      *enforce* consistent code structure (“Glue” was that project name, 
      and I’ll definitely be visiting that soon). All in all, excellent talk. 
      Neat stuff.
      - *Marwan Sulaiman:* The terrific thing about Marwan’s talk (*Handling 
      Go Errors <https://www.gophercon.com/agenda/speakers/435201>*) was 
      the incredibly deftness with which he walked us through an actual use 
case 
      of going about solving a complex problem by *thinking* in the unique 
      paradigms of Go (Anyone remember the excellent *Thinking in Java* book 
      from way back when? Hint: I want its counterpart for Go!) Anyhow, I can 
      attest to the wisdom of resisting the urge to go your own way; instead, 
the 
      way to go is to lean on the philosophy with which Go has been designed to 
      solve programming problems. And hey, even if error-handling is not your 
      heartthrob topic—I honestly can’t claim it has ever been mine—the way 
      Marwan brought programmable errors to life (in how you can design your 
own 
      architecture in this area, enabling you to get a solid grip on system 
      failures) was cool. I was wowed. Frankly, an outstanding talk.
      - *Mat Ryer:* If I were asked to point to (only) one talk which did 
      an outstanding job of stripping away all *accidental* complexity, 
      leading me and others in the audience to keep a laser sharp focus instead 
      on the *essential* complexity of problem-solving in the domain at 
      hand—adhering to the elegance of the Go way of doing things—it would be 
      Mat’s talk (*How I Write HTTP Web Services After Eight Years 
      <https://www.gophercon.com/agenda/speakers/441795>*). So I’ve done 
      this sort of thing at least 17 different ways in the past—using assorted 
      tools from  libraries that have evolved around more mature languages such 
      as Java and Scala—Mat demonstrated just how elegantly (and simply!) it 
all 
      can be done with Go. A talk (whose recording now) is not to be missed.
      - *Katie Hockman:* What made Katie’s talk (*Go Module Proxy: Life of 
      a Query* <https://www.gophercon.com/agenda/speakers/438767>) so 
      compelling was the command with which she had masterfully assembled a 
whole 
      boatload of hardcore tech subtopics into a unified whole and the 
conviction 
      with which she presented her stuff. Trust me, delving into the 
intricacies 
      of how her team built a module mirror and checksum database is not for 
the 
      faint of heart. But Katie somehow managed to pull it off, never for a 
      moment shying from the guts of what makes authenticated module proxies 
tick 
      (Merkle Trees and all!) The delightfully humorous (running) backdrop of 
      “the dog people” versus “the cat people” was well done and genuinely 
      engaging. And hey, from now on I will remember her advice to “Trust on 
      *your* first use”! (At least that’s what my scribbled notes say; more 
      on that later.)
      - *Russ Cox:* I was expecting nothing less than exceptional quality 
      from the talk (*On the Road to Go 2* 
      <https://www.gophercon.com/agenda/speakers/441803>) by Russ and came 
      away really pleased. Let me remind you that this list of speakers that 
I’ve 
      assembled here is in no particular order, other than this being the order 
      in which I recall some of the stellar talks. For those not familiar with 
      his name—is there anyone, really?—Russ leads the development of the Go 
      programming language. His talk was methodical, precise, and enlightening. 
I 
      got a really good feel for how the Go language (itself) is being 
shepherded 
      and evolved (Simplify by reshaping, by redefining, etc. Abandoning failed 
      experiments, growing stronger from the learnings. Etc.). Given that we’re 
      on the road to Go 2, the talk answered the questions of (1) Where exactly 
      are we? and (2) Where are we headed? I sure am glad I came to the 
fantastic 
      talk by Russ to get the answers to exactly those burning questions.
      - *Ian Lance Taylor:* The subject of Ian’s talk (*Generics in Go* 
      <https://www.gophercon.com/agenda/speakers/441804>) is incredibly 
      dear to me, making it virtually a guaranteed success even before I heard 
a 
      word of his splendid talk. I was pleased. Very pleased. Coming from a 
heavy 
      background in Java and Scala—where generics rule the day—I’ve been 
      hankering for generics since the day I immersed myself in Go programming 
      over a year ago. Fast-forward one year to today, and Ian’s team continues 
      to work hard to make genetics a reality for us gophers. He rightly 
pointed 
      out that when it happens (i.e. when generics become a part of Go), 
      programming should feel no different—become no more esoteric—than when 
      working with the usual constructs: Yep, while there are clear advantages 
to 
      introducing generics into Go, there also happen to be associated a bunch 
of 
      requirements. Keep up the good work, Ian and team.
   
Oh, and FWIW, I took copious notes. I felt *compelled* to; yes, to be sure, 
the awesome conference organizers do make the slide decks available, yet 
this inveterate note-taking engineer continues to find that the best way to 
internalize complex subject matter is by way of pen and paper. (Physical) 
action does shape thought 
<https://www.amazon.com/Mind-Motion-Action-Shapes-Thought/dp/046509306X>, 
methinks. (Hey, if it isn’t you again, in your naysayer splendor, kind of! 
Looks like you want to see for yourself my *Good Housekeeping *seal-of-approval 
of sorts… Let me tell you, I’ll prove myself trustworthy. Should you *still* 
need 
to see my seal-of-approval, I’ve got that, too. You stay tuned.)


Speaking of the sections such as the above (to be found in the writeup), 
they are:

   - 0. Welcome to the Show, Gophers! 🐭
   - 1. First Impressions 🍎
   - 2. So Is This Where Lemmings Jump Off? 🐹
   - 3. Thou Shalt Register 📒
   - 4. Woohoo, Speaker Highlights 📣
   - 5. There Is No Middleware 📬
   - 6. Gophers, Too, Get Hungry 🍩
   - 7. We Do ML & AI With Go! 📺
   - 8. Inside The Wizards’ Room 🚧
   - 9. Go Code Even Powers Bike Logistics 🚴
   - 10. I Took Notes (Lots Of Them!) 📕
   - 11. When Nighttime Falls 🌒
   - 12. Breakfast Is Served ☕
   - 13. Your Lips Move, But… 👏
   - 14. I Inventoried (The Cover Of) My Mac’s Lid… 📈
   - 15. The GopherCon Floor 🏄
   - 16. We Dive Right Back Into More Awesomeness 🏊
   - 17. How Does One Stop A Rhino From Charging? 💳
   - 18. Your Blogger Comes To His Senses 😴
   - 19. Gulp. The Swallows, Akram, The Swallows 🐝
   - 20. Afterword 🎬

Did I say that you all—aka the Gopher community—are amazing?

My Best Wishes,
Akram <https://programming-digressions.com/>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/4072c911-616a-47f4-8af6-a609433a65e8%40googlegroups.com.

Reply via email to