www

My personal website(s)
Log | Files | Refs

go.html (38866B)


      1 <!DOCTYPE html>
      2 <html lang="en">
      3 <head>
      4 <!-- Sep 03, 2024 -->
      5 <meta charset="utf-8" />
      6 <meta name="viewport" content="width=device-width, initial-scale=1" />
      7 <title>Golang</title>
      8 <meta name="author" content="Vincent Demeester" />
      9 <meta name="keywords" content="post" />
     10 <meta name="generator" content="Org Mode" />
     11 <link rel="stylesheet" type="text/css" href="./css/2022.css" />
     12 <link rel="stylesheet" type="text/css" href="./css/syntax.css" />
     13 <link rel='icon' type='image/x-icon' href='./images/favicon.ico'/>
     14 <meta name='viewport' content='width=device-width, initial-scale=1'>
     15 </head>
     16 <body>
     17 <main id="content" class="content">
     18 <header>
     19 <h1 class="title">Golang</h1>
     20 <p class="subtitle" role="doc-subtitle">Resources, thoughts and tips around the Go language</p>
     21 </header><p>
     22 Go is <i>an open source programming language that makes it easy to build simple, reliable,
     23 and efficient software.</i>
     24 </p>
     25 
     26 <p>
     27 I am an heavy user of the Go language and thus I <b>may</b> have some thoughts, resources and
     28 tips to share about it.
     29 </p>
     30 <section id="outline-container-Design%20docs" class="outline-2">
     31 <h2 id="Design%20docs">Design docs</h2>
     32 <div class="outline-text-2" id="text-Design%20docs">
     33 <p>
     34 Here is a list of interesting design docs around Go.
     35 </p>
     36 </div>
     37 <div id="outline-container-Generics" class="outline-3">
     38 <h3 id="Generics">Generics</h3>
     39 <div class="outline-text-3" id="text-Generics">
     40 <ul class="org-ul">
     41 <li><a href="generics_aren_t_ready_for_go_drew_devault_s_blog.html">Generics aren’t ready for Go | Drew DeVault’s Blog</a></li>
     42 <li><a href="https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md">Type Parameters - Draft Design</a>
     43 <ul class="org-ul">
     44 <li><a href="https://rakyll.org/generics-proposal/">Few things on generics</a> Rakyll&rsquo;s take on the design</li>
     45 </ul></li>
     46 </ul>
     47 </div>
     48 </div>
     49 </section>
     50 <section id="outline-container-Links" class="outline-2">
     51 <h2 id="Links">Links</h2>
     52 <div class="outline-text-2" id="text-Links">
     53 </div>
     54 <div id="outline-container-%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Flies-we-tell-ourselves-to-keep-using-golang%5D%5BLies%20we%20tell%20ourselves%20to%20keep%20using%20Golang%5D%5D" class="outline-3">
     55 <h3 id="%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Flies-we-tell-ourselves-to-keep-using-golang%5D%5BLies%20we%20tell%20ourselves%20to%20keep%20using%20Golang%5D%5D"><a href="https://fasterthanli.me/articles/lies-we-tell-ourselves-to-keep-using-golang">Lies we tell ourselves to keep using Golang</a></h3>
     56 </div>
     57 
     58 <div id="outline-container-%5B%5Bhttps%3A%2F%2Frakyll.org%2Finlined-defers%2F%5D%5BInlined%20defers%20in%20Go%20%C2%B7%20Go%2C%20the%20unwritten%20parts%5D%5D" class="outline-3">
     59 <h3 id="%5B%5Bhttps%3A%2F%2Frakyll.org%2Finlined-defers%2F%5D%5BInlined%20defers%20in%20Go%20%C2%B7%20Go%2C%20the%20unwritten%20parts%5D%5D"><a href="https://rakyll.org/inlined-defers/">Inlined defers in Go · Go, the unwritten parts</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span></span></h3>
     60 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Frakyll.org%2Finlined-defers%2F%5D%5BInlined%20defers%20in%20Go%20%C2%B7%20Go%2C%20the%20unwritten%20parts%5D%5D">
     61 <p>
     62 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-08 Mon 10:43]</span></span>
     63 </p>
     64 </div>
     65 </div>
     66 <div id="outline-container-%5B%5Bhttps%3A%2F%2F0x46.net%2Fthoughts%2F2018%2F12%2F29%2Fgo-libraries%2F%5D%5BStop%20writing%20broken%20Go%20libraries%5D%5D" class="outline-3">
     67 <h3 id="%5B%5Bhttps%3A%2F%2F0x46.net%2Fthoughts%2F2018%2F12%2F29%2Fgo-libraries%2F%5D%5BStop%20writing%20broken%20Go%20libraries%5D%5D"><a href="https://0x46.net/thoughts/2018/12/29/go-libraries/">Stop writing broken Go libraries</a></h3>
     68 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2F0x46.net%2Fthoughts%2F2018%2F12%2F29%2Fgo-libraries%2F%5D%5BStop%20writing%20broken%20Go%20libraries%5D%5D">
     69 <p>
     70 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-04 Mon 20:33]</span></span>
     71 </p>
     72 </div>
     73 </div>
     74 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fgo-last-resort.html%5D%5BGo%E2%80%99s%20features%20of%20last%20resort%5D%5D" class="outline-3">
     75 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fgo-last-resort.html%5D%5BGo%E2%80%99s%20features%20of%20last%20resort%5D%5D"><a href="https://www.arp242.net/go-last-resort.html">Go’s features of last resort</a></h3>
     76 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fgo-last-resort.html%5D%5BGo%E2%80%99s%20features%20of%20last%20resort%5D%5D">
     77 <p>
     78 <span class="timestamp-wrapper"><span class="timestamp">[2019-11-27 Wed 14:54]</span></span>
     79 </p>
     80 </div>
     81 </div>
     82 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.bartfokker.nl%2Fposts%2Fdecorators%2F%5D%5BClean%20code%20using%20decorators%20%3A%3A%20Programming%20blog%20%E2%80%94%20Programming%20blog%5D%5D" class="outline-3">
     83 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.bartfokker.nl%2Fposts%2Fdecorators%2F%5D%5BClean%20code%20using%20decorators%20%3A%3A%20Programming%20blog%20%E2%80%94%20Programming%20blog%5D%5D"><a href="https://www.bartfokker.nl/posts/decorators/">Clean code using decorators :: Programming blog — Programming blog</a></h3>
     84 </div>
     85 
     86 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fdave.cheney.net%2Fpractical-go%2Fpresentations%2Fqcon-china.html%5D%5BPractical%20Go%3A%20Real%20world%20advice%20for%20writing%20maintainable%20Go%20programs%5D%5D" class="outline-3">
     87 <h3 id="%5B%5Bhttps%3A%2F%2Fdave.cheney.net%2Fpractical-go%2Fpresentations%2Fqcon-china.html%5D%5BPractical%20Go%3A%20Real%20world%20advice%20for%20writing%20maintainable%20Go%20programs%5D%5D"><a href="https://dave.cheney.net/practical-go/presentations/qcon-china.html">Practical Go: Real world advice for writing maintainable Go programs</a></h3>
     88 </div>
     89 
     90 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fundefinedlabs%2Fgo-integration%2Fblob%2Fmaster%2Fexample%2Fexample_test.go%5D%5Bgo-integration%2Fexample_test.go%20at%20master%20%C2%B7%20undefinedlabs%2Fgo-integration%5D%5D" class="outline-3">
     91 <h3 id="%5B%5Bhttps%3A%2F%2Fgithub.com%2Fundefinedlabs%2Fgo-integration%2Fblob%2Fmaster%2Fexample%2Fexample_test.go%5D%5Bgo-integration%2Fexample_test.go%20at%20master%20%C2%B7%20undefinedlabs%2Fgo-integration%5D%5D"><a href="https://github.com/undefinedlabs/go-integration/blob/master/example/example_test.go">go-integration/example<sub>test.go</sub> at master · undefinedlabs/go-integration</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="test">test</span></span></h3>
     92 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fundefinedlabs%2Fgo-integration%2Fblob%2Fmaster%2Fexample%2Fexample_test.go%5D%5Bgo-integration%2Fexample_test.go%20at%20master%20%C2%B7%20undefinedlabs%2Fgo-integration%5D%5D">
     93 <p>
     94 <span class="timestamp-wrapper"><span class="timestamp">[2019-11-27 Wed 15:56]</span></span>
     95 </p>
     96 
     97 <p>
     98 An example of transparent integration with containers on tests.
     99 </p>
    100 </div>
    101 </div>
    102 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.manifold.co%2Fblog%2Fhow-go-interfaces-can-facilitate-switching-external-services-619cc478e20a%5D%5BHow%20Go%20interfaces%20can%20facilitate%20switching%20external%20services%20-%20Manifold%5D%5D" class="outline-3">
    103 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.manifold.co%2Fblog%2Fhow-go-interfaces-can-facilitate-switching-external-services-619cc478e20a%5D%5BHow%20Go%20interfaces%20can%20facilitate%20switching%20external%20services%20-%20Manifold%5D%5D"><a href="https://www.manifold.co/blog/how-go-interfaces-can-facilitate-switching-external-services-619cc478e20a">How Go interfaces can facilitate switching external services - Manifold</a></h3>
    104 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.manifold.co%2Fblog%2Fhow-go-interfaces-can-facilitate-switching-external-services-619cc478e20a%5D%5BHow%20Go%20interfaces%20can%20facilitate%20switching%20external%20services%20-%20Manifold%5D%5D">
    105 <p>
    106 <span class="timestamp-wrapper"><span class="timestamp">[2019-03-27 Wed 18:18]</span></span>
    107 </p>
    108 </div>
    109 </div>
    110 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.alexedwards.net%2Fblog%2Fan-overview-of-go-tooling%5D%5BAn%20Overview%20of%20Go%27s%20Tooling%20-%20Alex%20Edwards%5D%5D" class="outline-3">
    111 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.alexedwards.net%2Fblog%2Fan-overview-of-go-tooling%5D%5BAn%20Overview%20of%20Go%27s%20Tooling%20-%20Alex%20Edwards%5D%5D"><a href="https://www.alexedwards.net/blog/an-overview-of-go-tooling">An Overview of Go&rsquo;s Tooling - Alex Edwards</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="tools">tools</span></span></h3>
    112 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.alexedwards.net%2Fblog%2Fan-overview-of-go-tooling%5D%5BAn%20Overview%20of%20Go%27s%20Tooling%20-%20Alex%20Edwards%5D%5D">
    113 <p>
    114 <span class="timestamp-wrapper"><span class="timestamp">[2019-04-17 Wed 14:17]</span></span>
    115 </p>
    116 </div>
    117 </div>
    118 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fpeter.bourgon.org%2Fblog%2F2019%2F04%2F24%2Fgo-naming-tips.html%5D%5BPeter%20Bourgon%20%C2%B7%20Go%20naming%20tips%5D%5D" class="outline-3">
    119 <h3 id="%5B%5Bhttps%3A%2F%2Fpeter.bourgon.org%2Fblog%2F2019%2F04%2F24%2Fgo-naming-tips.html%5D%5BPeter%20Bourgon%20%C2%B7%20Go%20naming%20tips%5D%5D"><a href="https://peter.bourgon.org/blog/2019/04/24/go-naming-tips.html">Peter Bourgon · Go naming tips</a></h3>
    120 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fpeter.bourgon.org%2Fblog%2F2019%2F04%2F24%2Fgo-naming-tips.html%5D%5BPeter%20Bourgon%20%C2%B7%20Go%20naming%20tips%5D%5D">
    121 <p>
    122 <span class="timestamp-wrapper"><span class="timestamp">[2019-04-24 Wed 16:17]</span></span>
    123 </p>
    124 </div>
    125 </div>
    126 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fnpf.io%2F2019%2F06%2Fdo-or-do-not%2F%5D%5BDo%20or%20Do%20Not%20%C2%B7%20npf.io%5D%5D" class="outline-3">
    127 <h3 id="%5B%5Bhttps%3A%2F%2Fnpf.io%2F2019%2F06%2Fdo-or-do-not%2F%5D%5BDo%20or%20Do%20Not%20%C2%B7%20npf.io%5D%5D"><a href="https://npf.io/2019/06/do-or-do-not/">Do or Do Not · npf.io</a></h3>
    128 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fnpf.io%2F2019%2F06%2Fdo-or-do-not%2F%5D%5BDo%20or%20Do%20Not%20%C2%B7%20npf.io%5D%5D">
    129 <p>
    130 <span class="timestamp-wrapper"><span class="timestamp">[2019-06-21 Fri 18:16]</span></span>
    131 </p>
    132 </div>
    133 </div>
    134 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fkristoff.it%2Fblog%2Fwhy-go-and-not-rust%2F%5D%5BWhy%20Go%20and%20not%20Rust%3F%20%7C%20Loris%20Cro%27s%20Personal%20Blog%5D%5D" class="outline-3">
    135 <h3 id="%5B%5Bhttps%3A%2F%2Fkristoff.it%2Fblog%2Fwhy-go-and-not-rust%2F%5D%5BWhy%20Go%20and%20not%20Rust%3F%20%7C%20Loris%20Cro%27s%20Personal%20Blog%5D%5D"><a href="https://kristoff.it/blog/why-go-and-not-rust/">Why Go and not Rust? | Loris Cro&rsquo;s Personal Blog</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="rust">rust</span></span></h3>
    136 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fkristoff.it%2Fblog%2Fwhy-go-and-not-rust%2F%5D%5BWhy%20Go%20and%20not%20Rust%3F%20%7C%20Loris%20Cro%27s%20Personal%20Blog%5D%5D">
    137 <p>
    138 <span class="timestamp-wrapper"><span class="timestamp">[2019-09-17 Tue 11:38]</span></span>
    139 </p>
    140 </div>
    141 </div>
    142 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fphilpearl.github.io%2Fpost%2Fbad_go_slice_of_pointers%2F%3Futm_campaign%3DThe%252520Go%252520Gazette%26utm_medium%3Demail%26utm_source%3DRevue%252520newsletter%5D%5BBad%20Go%3A%20slices%20of%20pointers%20%C2%B7%20Phil%20Pearl%27s%20Blog%5D%5D" class="outline-3">
    143 <h3 id="%5B%5Bhttps%3A%2F%2Fphilpearl.github.io%2Fpost%2Fbad_go_slice_of_pointers%2F%3Futm_campaign%3DThe%252520Go%252520Gazette%26utm_medium%3Demail%26utm_source%3DRevue%252520newsletter%5D%5BBad%20Go%3A%20slices%20of%20pointers%20%C2%B7%20Phil%20Pearl%27s%20Blog%5D%5D"><a href="https://philpearl.github.io/post/bad_go_slice_of_pointers/?utm_campaign=The%2520Go%2520Gazette&amp;utm_medium=email&amp;utm_source=Revue%2520newsletter">Bad Go: slices of pointers · Phil Pearl&rsquo;s Blog</a></h3>
    144 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fphilpearl.github.io%2Fpost%2Fbad_go_slice_of_pointers%2F%3Futm_campaign%3DThe%252520Go%252520Gazette%26utm_medium%3Demail%26utm_source%3DRevue%252520newsletter%5D%5BBad%20Go%3A%20slices%20of%20pointers%20%C2%B7%20Phil%20Pearl%27s%20Blog%5D%5D">
    145 <p>
    146 <span class="timestamp-wrapper"><span class="timestamp">[2019-09-17 Tue 10:40]</span></span>
    147 </p>
    148 </div>
    149 </div>
    150 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fdivan.dev%2Fposts%2Fgopath%2F%5D%5BI%20still%20%E2%9D%A4%EF%B8%8F%20you%2C%20GOPATH%20%C2%B7%20divan%27s%20blog%5D%5D" class="outline-3">
    151 <h3 id="%5B%5Bhttps%3A%2F%2Fdivan.dev%2Fposts%2Fgopath%2F%5D%5BI%20still%20%E2%9D%A4%EF%B8%8F%20you%2C%20GOPATH%20%C2%B7%20divan%27s%20blog%5D%5D"><a href="https://divan.dev/posts/gopath/">I still ❤️ you, GOPATH · divan&rsquo;s blog</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span></span></h3>
    152 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fdivan.dev%2Fposts%2Fgopath%2F%5D%5BI%20still%20%E2%9D%A4%EF%B8%8F%20you%2C%20GOPATH%20%C2%B7%20divan%27s%20blog%5D%5D">
    153 <p>
    154 <span class="timestamp-wrapper"><span class="timestamp">[2019-10-01 Tue 17:55]</span></span>
    155 </p>
    156 </div>
    157 </div>
    158 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fblog.golang.org%2Fpublishing-go-modules%5D%5BPublishing%20Go%20Modules%20-%20The%20Go%20Blog%5D%5D" class="outline-3">
    159 <h3 id="%5B%5Bhttps%3A%2F%2Fblog.golang.org%2Fpublishing-go-modules%5D%5BPublishing%20Go%20Modules%20-%20The%20Go%20Blog%5D%5D"><a href="https://blog.golang.org/publishing-go-modules">Publishing Go Modules - The Go Blog</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="modules">modules</span></span></h3>
    160 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fblog.golang.org%2Fpublishing-go-modules%5D%5BPublishing%20Go%20Modules%20-%20The%20Go%20Blog%5D%5D">
    161 <p>
    162 <span class="timestamp-wrapper"><span class="timestamp">[2019-11-05 Tue 15:02]</span></span>
    163 </p>
    164 </div>
    165 </div>
    166 <div id="outline-container-%5B%5Bhttps%3A%2F%2Frakhim.org%2F2019%2F12%2Fsummary-of-concurrency-is-not-parallellism-a-talk-by-rob-pike%2F%5D%5BSummary%20of%20Concurrency%20Is%20Not%20Parallellism%2C%20a%20talk%20by%20Rob%20Pike%20-%20Rakhim.org%5D%5D" class="outline-3">
    167 <h3 id="%5B%5Bhttps%3A%2F%2Frakhim.org%2F2019%2F12%2Fsummary-of-concurrency-is-not-parallellism-a-talk-by-rob-pike%2F%5D%5BSummary%20of%20Concurrency%20Is%20Not%20Parallellism%2C%20a%20talk%20by%20Rob%20Pike%20-%20Rakhim.org%5D%5D"><a href="https://rakhim.org/2019/12/summary-of-concurrency-is-not-parallellism-a-talk-by-rob-pike/">Summary of Concurrency Is Not Parallellism, a talk by Rob Pike - Rakhim.org</a></h3>
    168 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Frakhim.org%2F2019%2F12%2Fsummary-of-concurrency-is-not-parallellism-a-talk-by-rob-pike%2F%5D%5BSummary%20of%20Concurrency%20Is%20Not%20Parallellism%2C%20a%20talk%20by%20Rob%20Pike%20-%20Rakhim.org%5D%5D">
    169 <p>
    170 <span class="timestamp-wrapper"><span class="timestamp">[2019-12-23 Mon 17:21]</span></span>
    171 </p>
    172 </div>
    173 </div>
    174 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F13%2Fbatching-operations-in-go-by-mat-ryer%5D%5BBatching%20operations%20in%20Go%20by%20Mat%20Ryer%20-%20PACE.%5D%5D" class="outline-3">
    175 <h3 id="%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F13%2Fbatching-operations-in-go-by-mat-ryer%5D%5BBatching%20operations%20in%20Go%20by%20Mat%20Ryer%20-%20PACE.%5D%5D"><a href="https://pace.dev/blog/2020/02/13/batching-operations-in-go-by-mat-ryer">Batching operations in Go by Mat Ryer - PACE.</a></h3>
    176 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F13%2Fbatching-operations-in-go-by-mat-ryer%5D%5BBatching%20operations%20in%20Go%20by%20Mat%20Ryer%20-%20PACE.%5D%5D">
    177 <p>
    178 <span class="timestamp-wrapper"><span class="timestamp">[2020-03-19 Thu 21:05]</span></span>
    179 </p>
    180 </div>
    181 </div>
    182 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F12%2Fwhy-you-shouldnt-use-func-main-in-golang-by-mat-ryer%5D%5BWhy%20you%20shouldn%27t%20use%20func%20main%20in%20Go%20by%20Mat%20Ryer%20-%20PACE.%5D%5D" class="outline-3">
    183 <h3 id="%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F12%2Fwhy-you-shouldnt-use-func-main-in-golang-by-mat-ryer%5D%5BWhy%20you%20shouldn%27t%20use%20func%20main%20in%20Go%20by%20Mat%20Ryer%20-%20PACE.%5D%5D"><a href="https://pace.dev/blog/2020/02/12/why-you-shouldnt-use-func-main-in-golang-by-mat-ryer">Why you shouldn&rsquo;t use func main in Go by Mat Ryer - PACE.</a></h3>
    184 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F12%2Fwhy-you-shouldnt-use-func-main-in-golang-by-mat-ryer%5D%5BWhy%20you%20shouldn%27t%20use%20func%20main%20in%20Go%20by%20Mat%20Ryer%20-%20PACE.%5D%5D">
    185 <p>
    186 <span class="timestamp-wrapper"><span class="timestamp">[2020-03-19 Thu 21:05]</span></span>
    187 </p>
    188 </div>
    189 </div>
    190 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fstatic-go.html%5D%5BStatically%20compiling%20Go%20programs%5D%5D" class="outline-3">
    191 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fstatic-go.html%5D%5BStatically%20compiling%20Go%20programs%5D%5D"><a href="https://www.arp242.net/static-go.html">Statically compiling Go programs</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="compile">compile</span>&#xa0;<span class="go">go</span></span></h3>
    192 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fstatic-go.html%5D%5BStatically%20compiling%20Go%20programs%5D%5D">
    193 <p>
    194 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-14 Tue 15:13]</span></span>
    195 </p>
    196 </div>
    197 </div>
    198 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F03%2Fcontext-aware-ioreader-for-golang-by-mat-ryer.html%5D%5BContext-aware%20io.Reader%20for%20Go%20by%20Mat%20Ryer%20%2B%20David%20Hernandez%20-%20PACE.%5D%5D" class="outline-3">
    199 <h3 id="%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F03%2Fcontext-aware-ioreader-for-golang-by-mat-ryer.html%5D%5BContext-aware%20io.Reader%20for%20Go%20by%20Mat%20Ryer%20%2B%20David%20Hernandez%20-%20PACE.%5D%5D"><a href="https://pace.dev/blog/2020/02/03/context-aware-ioreader-for-golang-by-mat-ryer.html">Context-aware io.Reader for Go by Mat Ryer + David Hernandez - PACE.</a></h3>
    200 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fpace.dev%2Fblog%2F2020%2F02%2F03%2Fcontext-aware-ioreader-for-golang-by-mat-ryer.html%5D%5BContext-aware%20io.Reader%20for%20Go%20by%20Mat%20Ryer%20%2B%20David%20Hernandez%20-%20PACE.%5D%5D">
    201 <p>
    202 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-01 Wed 17:28]</span></span>
    203 </p>
    204 </div>
    205 </div>
    206 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fblog.sbstp.ca%2Fgo-quirks%2F%5D%5Bsbstp%27s%20blog%20%E2%80%94%20go%20quirks%5D%5D" class="outline-3">
    207 <h3 id="%5B%5Bhttps%3A%2F%2Fblog.sbstp.ca%2Fgo-quirks%2F%5D%5Bsbstp%27s%20blog%20%E2%80%94%20go%20quirks%5D%5D"><a href="https://blog.sbstp.ca/go-quirks/">sbstp&rsquo;s blog — go quirks</a></h3>
    208 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fblog.sbstp.ca%2Fgo-quirks%2F%5D%5Bsbstp%27s%20blog%20%E2%80%94%20go%20quirks%5D%5D">
    209 <p>
    210 <span class="timestamp-wrapper"><span class="timestamp">[2020-03-29 Sun 11:48]</span></span>
    211 </p>
    212 </div>
    213 </div>
    214 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fstretchr%2Ftestify%2Fpull%2F933%2Ffiles%5D%5BAvoid%20calling%20Helper%28%29%20on%20the%20happy%20path%20by%20bboreham%20%C2%B7%20Pull%20Request%20%23933%20%C2%B7%20stretchr%2Ftestify%5D%5D" class="outline-3">
    215 <h3 id="%5B%5Bhttps%3A%2F%2Fgithub.com%2Fstretchr%2Ftestify%2Fpull%2F933%2Ffiles%5D%5BAvoid%20calling%20Helper%28%29%20on%20the%20happy%20path%20by%20bboreham%20%C2%B7%20Pull%20Request%20%23933%20%C2%B7%20stretchr%2Ftestify%5D%5D"><a href="https://github.com/stretchr/testify/pull/933/files">Avoid calling Helper() on the happy path by bboreham · Pull Request #933 · stretchr/testify</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span></span></h3>
    216 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fstretchr%2Ftestify%2Fpull%2F933%2Ffiles%5D%5BAvoid%20calling%20Helper%28%29%20on%20the%20happy%20path%20by%20bboreham%20%C2%B7%20Pull%20Request%20%23933%20%C2%B7%20stretchr%2Ftestify%5D%5D">
    217 <p>
    218 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-27 Mon 15:23]</span></span>
    219 </p>
    220 
    221 <p>
    222 We should do the same for gotestyourself
    223 </p>
    224 </div>
    225 </div>
    226 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fgo-noisegate%2Fnoisegate%5D%5Bgo-noisegate%2Fnoisegate%3A%20Noise%20Gate%3A%20Golang%20test%20runner%20to%20get%20faster%20test%20results%5D%5D" class="outline-3">
    227 <h3 id="%5B%5Bhttps%3A%2F%2Fgithub.com%2Fgo-noisegate%2Fnoisegate%5D%5Bgo-noisegate%2Fnoisegate%3A%20Noise%20Gate%3A%20Golang%20test%20runner%20to%20get%20faster%20test%20results%5D%5D"><a href="https://github.com/go-noisegate/noisegate">go-noisegate/noisegate: Noise Gate: Golang test runner to get faster test results</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span></span></h3>
    228 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fgo-noisegate%2Fnoisegate%5D%5Bgo-noisegate%2Fnoisegate%3A%20Noise%20Gate%3A%20Golang%20test%20runner%20to%20get%20faster%20test%20results%5D%5D">
    229 <p>
    230 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-05 Tue 10:57]</span></span>
    231 </p>
    232 </div>
    233 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fgo-noisegate%2Fgo-noisegate.el%5D%5Bgo-noisegate%2Fgo-noisegate.el%3A%20Emacs%20plugin%20for%20Noise%20Gate%5D%5D" class="outline-4">
    234 <h4 id="%5B%5Bhttps%3A%2F%2Fgithub.com%2Fgo-noisegate%2Fgo-noisegate.el%5D%5Bgo-noisegate%2Fgo-noisegate.el%3A%20Emacs%20plugin%20for%20Noise%20Gate%5D%5D"><a href="https://github.com/go-noisegate/go-noisegate.el">go-noisegate/go-noisegate.el: Emacs plugin for Noise Gate</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="emacs">emacs</span></span></h4>
    235 <div class="outline-text-4" id="text-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fgo-noisegate%2Fgo-noisegate.el%5D%5Bgo-noisegate%2Fgo-noisegate.el%3A%20Emacs%20plugin%20for%20Noise%20Gate%5D%5D">
    236 <p>
    237 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-05 Tue 10:57]</span></span>
    238 </p>
    239 </div>
    240 </div>
    241 </div>
    242 <div id="outline-container-%5B%5Bhttps%3A%2F%2Forndorffgrant.com%2Fframework-agnostic-go-handlers%2F%5D%5BFramework%20Agnostic%20HTTP%20Endpoint%20Go%20Handlers%5D%5D" class="outline-3">
    243 <h3 id="%5B%5Bhttps%3A%2F%2Forndorffgrant.com%2Fframework-agnostic-go-handlers%2F%5D%5BFramework%20Agnostic%20HTTP%20Endpoint%20Go%20Handlers%5D%5D"><a href="https://orndorffgrant.com/framework-agnostic-go-handlers/">Framework Agnostic HTTP Endpoint Go Handlers</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span></span></h3>
    244 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Forndorffgrant.com%2Fframework-agnostic-go-handlers%2F%5D%5BFramework%20Agnostic%20HTTP%20Endpoint%20Go%20Handlers%5D%5D">
    245 <p>
    246 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-25 Mon 11:07]</span></span>
    247 </p>
    248 </div>
    249 </div>
    250 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgo.googlesource.com%2Fproposal%2F%2B%2Frefs%2Fheads%2Fmaster%2Fdesign%2Fgo2draft-type-parameters.md%5D%5BType%20Parameters%20-%20Draft%20Design%5D%5D" class="outline-3">
    251 <h3 id="%5B%5Bhttps%3A%2F%2Fgo.googlesource.com%2Fproposal%2F%2B%2Frefs%2Fheads%2Fmaster%2Fdesign%2Fgo2draft-type-parameters.md%5D%5BType%20Parameters%20-%20Draft%20Design%5D%5D"><a href="https://go.googlesource.com/proposal/+/refs/heads/master/design/go2draft-type-parameters.md">Type Parameters - Draft Design</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span>&#xa0;<span class="_read">#read</span></span></h3>
    252 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgo.googlesource.com%2Fproposal%2F%2B%2Frefs%2Fheads%2Fmaster%2Fdesign%2Fgo2draft-type-parameters.md%5D%5BType%20Parameters%20-%20Draft%20Design%5D%5D">
    253 <p>
    254 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-17 Wed 16:47]</span></span>
    255 </p>
    256 </div>
    257 </div>
    258 <div id="outline-container-%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2020%2F07%2F06%2Fwhy-go-error-handling-is-awesome.html%5D%5BWhy%20Go%E2%80%99s%20Error%20Handling%20is%20Awesome%20%7C%20rauljordan%5D%5D" class="outline-3">
    259 <h3 id="%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2020%2F07%2F06%2Fwhy-go-error-handling-is-awesome.html%5D%5BWhy%20Go%E2%80%99s%20Error%20Handling%20is%20Awesome%20%7C%20rauljordan%5D%5D"><a href="https://rauljordan.com/2020/07/06/why-go-error-handling-is-awesome.html">Why Go’s Error Handling is Awesome | rauljordan</a></h3>
    260 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2020%2F07%2F06%2Fwhy-go-error-handling-is-awesome.html%5D%5BWhy%20Go%E2%80%99s%20Error%20Handling%20is%20Awesome%20%7C%20rauljordan%5D%5D">
    261 <p>
    262 <span class="timestamp-wrapper"><span class="timestamp">[2020-07-09 Thu 18:37]</span></span>
    263 </p>
    264 </div>
    265 </div>
    266 <div id="outline-container-%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2020%2F05%2F25%2Fimmutability-patterns-in-go.html%5D%5BImmutability%20Patterns%20in%20Go%20%7C%20rauljordan%5D%5D" class="outline-3">
    267 <h3 id="%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2020%2F05%2F25%2Fimmutability-patterns-in-go.html%5D%5BImmutability%20Patterns%20in%20Go%20%7C%20rauljordan%5D%5D"><a href="https://rauljordan.com/2020/05/25/immutability-patterns-in-go.html">Immutability Patterns in Go | rauljordan</a></h3>
    268 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2020%2F05%2F25%2Fimmutability-patterns-in-go.html%5D%5BImmutability%20Patterns%20in%20Go%20%7C%20rauljordan%5D%5D">
    269 <p>
    270 <span class="timestamp-wrapper"><span class="timestamp">[2020-07-09 Thu 18:37]</span></span>
    271 </p>
    272 </div>
    273 </div>
    274 <div id="outline-container-%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2019%2F09%2F23%2Fhow-to-write-an-event-feed-library.html%5D%5BWriting%20an%20One-to-Many%20Event%20Feed%20Library%20in%20Go%20%7C%20rauljordan%5D%5D" class="outline-3">
    275 <h3 id="%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2019%2F09%2F23%2Fhow-to-write-an-event-feed-library.html%5D%5BWriting%20an%20One-to-Many%20Event%20Feed%20Library%20in%20Go%20%7C%20rauljordan%5D%5D"><a href="https://rauljordan.com/2019/09/23/how-to-write-an-event-feed-library.html">Writing an One-to-Many Event Feed Library in Go | rauljordan</a></h3>
    276 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Frauljordan.com%2F2019%2F09%2F23%2Fhow-to-write-an-event-feed-library.html%5D%5BWriting%20an%20One-to-Many%20Event%20Feed%20Library%20in%20Go%20%7C%20rauljordan%5D%5D">
    277 <p>
    278 <span class="timestamp-wrapper"><span class="timestamp">[2020-07-09 Thu 18:37]</span></span>
    279 </p>
    280 </div>
    281 </div>
    282 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fbencane.com%2Fstories%2F2020%2F07%2F06%2Fhow-i-structure-go-packages%2F%23%2Feof-bio%5D%5BHow%20I%20Structure%20Go%20Packages%5D%5D" class="outline-3">
    283 <h3 id="%5B%5Bhttps%3A%2F%2Fbencane.com%2Fstories%2F2020%2F07%2F06%2Fhow-i-structure-go-packages%2F%23%2Feof-bio%5D%5BHow%20I%20Structure%20Go%20Packages%5D%5D"><a href="https://bencane.com/stories/2020/07/06/how-i-structure-go-packages/#/eof-bio">How I Structure Go Packages</a></h3>
    284 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fbencane.com%2Fstories%2F2020%2F07%2F06%2Fhow-i-structure-go-packages%2F%23%2Feof-bio%5D%5BHow%20I%20Structure%20Go%20Packages%5D%5D">
    285 <p>
    286 <span class="timestamp-wrapper"><span class="timestamp">[2020-07-17 Fri 07:23]</span></span>
    287 </p>
    288 </div>
    289 </div>
    290 <div id="outline-container-%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Fi-want-off-mr-golangs-wild-ride%5D%5BI%20want%20off%20Mr.%20Golang%27s%20Wild%20Ride%20-%20fasterthanli.me%5D%5D" class="outline-3">
    291 <h3 id="%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Fi-want-off-mr-golangs-wild-ride%5D%5BI%20want%20off%20Mr.%20Golang%27s%20Wild%20Ride%20-%20fasterthanli.me%5D%5D"><a href="https://fasterthanli.me/articles/i-want-off-mr-golangs-wild-ride">I want off Mr. Golang&rsquo;s Wild Ride - fasterthanli.me</a></h3>
    292 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Fi-want-off-mr-golangs-wild-ride%5D%5BI%20want%20off%20Mr.%20Golang%27s%20Wild%20Ride%20-%20fasterthanli.me%5D%5D">
    293 <p>
    294 <span class="timestamp-wrapper"><span class="timestamp">[2020-07-01 Wed 19:08]</span></span>
    295 </p>
    296 </div>
    297 </div>
    298 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fchristine.website%2Fblog%2Fwithin-go-repo-layout-2020-09-07%5D%5BThe%20Within%20Go%20Repo%20Layout%20-%20Christine%20Dodrill%5D%5D" class="outline-3">
    299 <h3 id="%5B%5Bhttps%3A%2F%2Fchristine.website%2Fblog%2Fwithin-go-repo-layout-2020-09-07%5D%5BThe%20Within%20Go%20Repo%20Layout%20-%20Christine%20Dodrill%5D%5D"><a href="https://christine.website/blog/within-go-repo-layout-2020-09-07">The Within Go Repo Layout - Christine Dodrill</a></h3>
    300 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fchristine.website%2Fblog%2Fwithin-go-repo-layout-2020-09-07%5D%5BThe%20Within%20Go%20Repo%20Layout%20-%20Christine%20Dodrill%5D%5D">
    301 <p>
    302 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-08 Tue 07:24]</span></span>
    303 </p>
    304 
    305 <p>
    306 Go repository layout is a very different thing compared to other languages. There&rsquo;s a lot of conflicting opinions and little firm guidance to help steer people along a path to more maintainable code. This is a collection of guidelines that help to facilitate understandable and idiomatic Go.
    307 </p>
    308 </div>
    309 </div>
    310 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fjohnsogg.github.io%2Femacs-golang%5D%5BSet%20up%20Emacs%20for%20Golang%20from%20scratch%20-%20December%202016%20%C2%B7%20jnl%5D%5D" class="outline-3">
    311 <h3 id="%5B%5Bhttps%3A%2F%2Fjohnsogg.github.io%2Femacs-golang%5D%5BSet%20up%20Emacs%20for%20Golang%20from%20scratch%20-%20December%202016%20%C2%B7%20jnl%5D%5D"><a href="https://johnsogg.github.io/emacs-golang">Set up Emacs for Golang from scratch - December 2016 · jnl</a>&#xa0;&#xa0;&#xa0;<span class="tag"><span class="go">go</span></span></h3>
    312 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fjohnsogg.github.io%2Femacs-golang%5D%5BSet%20up%20Emacs%20for%20Golang%20from%20scratch%20-%20December%202016%20%C2%B7%20jnl%5D%5D">
    313 <p>
    314 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-09 Thu 17:44]</span></span>
    315 </p>
    316 
    317 <p>
    318 Do the same in 2020 (with go modules), without lsp for now
    319 Add this to notes (go language)
    320 </p>
    321 </div>
    322 </div>
    323 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fquii%2Flearn-go-with-tests%5D%5Bquii%2Flearn-go-with-tests%3A%20Learn%20Go%20with%20test-driven%20development%5D%5D" class="outline-3">
    324 <h3 id="%5B%5Bhttps%3A%2F%2Fgithub.com%2Fquii%2Flearn-go-with-tests%5D%5Bquii%2Flearn-go-with-tests%3A%20Learn%20Go%20with%20test-driven%20development%5D%5D"><a href="https://github.com/quii/learn-go-with-tests">quii/learn-go-with-tests: Learn Go with test-driven development</a></h3>
    325 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgithub.com%2Fquii%2Flearn-go-with-tests%5D%5Bquii%2Flearn-go-with-tests%3A%20Learn%20Go%20with%20test-driven%20development%5D%5D">
    326 <p>
    327 <span class="timestamp-wrapper"><span class="timestamp">[2020-11-16 Mon 09:46]</span></span>
    328 </p>
    329 </div>
    330 </div>
    331 <div id="outline-container-%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Fabstracting-away-correctness%5D%5BAbstracting%20away%20correctness%20-%20fasterthanli.me%5D%5D" class="outline-3">
    332 <h3 id="%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Fabstracting-away-correctness%5D%5BAbstracting%20away%20correctness%20-%20fasterthanli.me%5D%5D"><a href="https://fasterthanli.me/articles/abstracting-away-correctness">Abstracting away correctness - fasterthanli.me</a></h3>
    333 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Ffasterthanli.me%2Farticles%2Fabstracting-away-correctness%5D%5BAbstracting%20away%20correctness%20-%20fasterthanli.me%5D%5D">
    334 <p>
    335 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-30 Tue 19:50]</span></span>
    336 </p>
    337 </div>
    338 </div>
    339 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fblog.questionable.services%2Farticle%2Fguide-logging-middleware-go%2F%5D%5BA%20Guide%20To%20Writing%20Logging%20Middleware%20in%20Go%20%C2%B7%20questionable%20services%5D%5D" class="outline-3">
    340 <h3 id="%5B%5Bhttps%3A%2F%2Fblog.questionable.services%2Farticle%2Fguide-logging-middleware-go%2F%5D%5BA%20Guide%20To%20Writing%20Logging%20Middleware%20in%20Go%20%C2%B7%20questionable%20services%5D%5D"><a href="https://blog.questionable.services/article/guide-logging-middleware-go/">A Guide To Writing Logging Middleware in Go · questionable services</a></h3>
    341 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fblog.questionable.services%2Farticle%2Fguide-logging-middleware-go%2F%5D%5BA%20Guide%20To%20Writing%20Logging%20Middleware%20in%20Go%20%C2%B7%20questionable%20services%5D%5D">
    342 <p>
    343 <span class="timestamp-wrapper"><span class="timestamp">[2020-10-06 Tue 17:18]</span></span>
    344 </p>
    345 </div>
    346 </div>
    347 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fread-stdin.html%5D%5BBetter%20UX%20when%20reading%20from%20stdin%5D%5D" class="outline-3">
    348 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fread-stdin.html%5D%5BBetter%20UX%20when%20reading%20from%20stdin%5D%5D"><a href="https://www.arp242.net/read-stdin.html">Better UX when reading from stdin</a></h3>
    349 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fread-stdin.html%5D%5BBetter%20UX%20when%20reading%20from%20stdin%5D%5D">
    350 <p>
    351 <span class="timestamp-wrapper"><span class="timestamp">[2019-12-12 Thu 18:03]</span></span>
    352 </p>
    353 </div>
    354 </div>
    355 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.alexedwards.net%2Fblog%2Fwhich-go-router-should-i-use%5D%5BWhich%20Go%20router%20should%20I%20use%3F%20%28with%20flowchart%29%20%E2%80%93%20Alex%20Edwards%5D%5D" class="outline-3">
    356 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.alexedwards.net%2Fblog%2Fwhich-go-router-should-i-use%5D%5BWhich%20Go%20router%20should%20I%20use%3F%20%28with%20flowchart%29%20%E2%80%93%20Alex%20Edwards%5D%5D"><a href="https://www.alexedwards.net/blog/which-go-router-should-i-use">Which Go router should I use? (with flowchart) – Alex Edwards</a></h3>
    357 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.alexedwards.net%2Fblog%2Fwhich-go-router-should-i-use%5D%5BWhich%20Go%20router%20should%20I%20use%3F%20%28with%20flowchart%29%20%E2%80%93%20Alex%20Edwards%5D%5D">
    358 <div class='drawer properties'>
    359 <h6>Properties</h6>
    360 <p>
    361 :CREATED:<span class="timestamp-wrapper"><span class="timestamp">[2021-10-05 Tue 16:01]</span></span>
    362 </p>
    363 </div>
    364 </div>
    365 </div>
    366 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fcommaok.xyz%2Fpost%2Ftstruct%2F%5D%5BNicer%20struct%20literals%20in%20Go%20templates%20%C2%B7%20Don%27t%20Panic%5D%5D" class="outline-3">
    367 <h3 id="%5B%5Bhttps%3A%2F%2Fcommaok.xyz%2Fpost%2Ftstruct%2F%5D%5BNicer%20struct%20literals%20in%20Go%20templates%20%C2%B7%20Don%27t%20Panic%5D%5D"><a href="https://commaok.xyz/post/tstruct/">Nicer struct literals in Go templates · Don&rsquo;t Panic</a></h3>
    368 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fcommaok.xyz%2Fpost%2Ftstruct%2F%5D%5BNicer%20struct%20literals%20in%20Go%20templates%20%C2%B7%20Don%27t%20Panic%5D%5D">
    369 <p>
    370 <span class="timestamp-wrapper"><span class="timestamp">[2022-07-04 Mon 15:35]</span></span>
    371 </p>
    372 </div>
    373 </div>
    374 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fchristine.website%2Fblog%2Fgonads-2022-04-24%5D%5BCrimes%20with%20Go%20Generics%20-%20Xe%5D%5D" class="outline-3">
    375 <h3 id="%5B%5Bhttps%3A%2F%2Fchristine.website%2Fblog%2Fgonads-2022-04-24%5D%5BCrimes%20with%20Go%20Generics%20-%20Xe%5D%5D"><a href="https://christine.website/blog/gonads-2022-04-24">Crimes with Go Generics - Xe</a></h3>
    376 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fchristine.website%2Fblog%2Fgonads-2022-04-24%5D%5BCrimes%20with%20Go%20Generics%20-%20Xe%5D%5D">
    377 <p>
    378 <span class="timestamp-wrapper"><span class="timestamp">[2022-05-05 Thu 22:05]</span></span>
    379 </p>
    380 </div>
    381 </div>
    382 <div id="outline-container-Misc" class="outline-3">
    383 <h3 id="Misc">Misc</h3>
    384 <div class="outline-text-3" id="text-Misc">
    385 <ul class="org-ul">
    386 <li><a href="https://peter.bourgon.org/go-for-industrial-programming/#testing">https://peter.bourgon.org/go-for-industrial-programming/#testing</a></li>
    387 <li><a href="https://www.bartfokker.nl/posts/decorators/">https://www.bartfokker.nl/posts/decorators/</a></li>
    388 <li><a href="http://technosophos.com/2018/07/04/be-nice-and-write-stable-code.html">http://technosophos.com/2018/07/04/be-nice-and-write-stable-code.html</a></li>
    389 </ul>
    390 </div>
    391 </div>
    392 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.jtolio.com%2F2016%2F03%2Fgo-channels-are-bad-and-you-should-feel-bad%2F%5D%5BGo%20channels%20are%20bad%20and%20you%20should%20feel%20bad%20%7C%20jtolio.com%5D%5D" class="outline-3">
    393 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.jtolio.com%2F2016%2F03%2Fgo-channels-are-bad-and-you-should-feel-bad%2F%5D%5BGo%20channels%20are%20bad%20and%20you%20should%20feel%20bad%20%7C%20jtolio.com%5D%5D"><a href="https://www.jtolio.com/2016/03/go-channels-are-bad-and-you-should-feel-bad/">Go channels are bad and you should feel bad | jtolio.com</a></h3>
    394 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.jtolio.com%2F2016%2F03%2Fgo-channels-are-bad-and-you-should-feel-bad%2F%5D%5BGo%20channels%20are%20bad%20and%20you%20should%20feel%20bad%20%7C%20jtolio.com%5D%5D">
    395 <p>
    396 <span class="timestamp-wrapper"><span class="timestamp">[2022-09-19 Mon 18:02]</span></span>
    397 </p>
    398 </div>
    399 </div>
    400 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fencore.dev%2Fblog%2Ftestscript-hidden-testing-gem%5D%5BEncore%20Blog%20%E2%80%94%20testscript%2C%20a%20hidden%20gem%20the%20Go%20team%20kept%20locked%20away%20%E2%80%94%20go%20get%20it%20%23002%5D%5D" class="outline-3">
    401 <h3 id="%5B%5Bhttps%3A%2F%2Fencore.dev%2Fblog%2Ftestscript-hidden-testing-gem%5D%5BEncore%20Blog%20%E2%80%94%20testscript%2C%20a%20hidden%20gem%20the%20Go%20team%20kept%20locked%20away%20%E2%80%94%20go%20get%20it%20%23002%5D%5D"><a href="https://encore.dev/blog/testscript-hidden-testing-gem">Encore Blog — testscript, a hidden gem the Go team kept locked away — go get it #002</a></h3>
    402 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fencore.dev%2Fblog%2Ftestscript-hidden-testing-gem%5D%5BEncore%20Blog%20%E2%80%94%20testscript%2C%20a%20hidden%20gem%20the%20Go%20team%20kept%20locked%20away%20%E2%80%94%20go%20get%20it%20%23002%5D%5D">
    403 <p>
    404 <span class="timestamp-wrapper"><span class="timestamp">[2022-09-19 Mon 18:14]</span></span>
    405 </p>
    406 </div>
    407 </div>
    408 </section>
    409 </main>
    410 <footer id="postamble" class="status">
    411 <footer>
    412      <small><a href="/" rel="history">Index</a> • <a href="/sitemap.html">Sitemap</a> • <a href="https://dl.sbr.pm/">Files</a></small><br/>
    413      <small class='questions'>Questions, comments ? Please use my <a href="https://lists.sr.ht/~vdemeester/public-inbox">public inbox</a> by sending a plain-text email to <a href="mailto:~vdemeester/public-inbox@lists.sr.ht">~vdemeester/public-inbox@lists.sr.ht</a>.</small><br/>
    414      <small class='copyright'>
    415       Content and design by Vincent Demeester
    416       (<a rel='licence' href='http://creativecommons.org/licenses/by-nc-sa/3.0/'>Some rights reserved</a>)
    417     </small><br />
    418 </footer>
    419 </footer>
    420 </body>
    421 </html>