programming.html (46403B)
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>Programming</title> 8 <meta name="author" content="Vincent Demeester" /> 9 <meta name="keywords" content="article" /> 10 <meta name="generator" content="Org Mode" /> 11 <link rel='icon' type='image/x-icon' href='/images/favicon.ico'/> 12 <meta name='viewport' content='width=device-width, initial-scale=1'> 13 <link rel='stylesheet' href='/css/new.css' type='text/css'/> 14 <link rel='stylesheet' href='/css/syntax.css' type='text/css'/> 15 <link href='/index.xml' rel='alternate' type='application/rss+xml' title='Vincent Demeester' /> 16 </head> 17 <body> 18 <main id="content" class="content"> 19 <header> 20 <h1 class="title">Programming</h1> 21 </header><section id="outline-container-Languages" class="outline-2"> 22 <h2 id="Languages">Languages</h2> 23 <div class="outline-text-2" id="text-Languages"> 24 <ul class="org-ul"> 25 <li><a href="go.html">Go</a></li> 26 <li><a href="python.html">Python</a></li> 27 <li><a href="lisp.html">Lisp</a> 28 <ul class="org-ul"> 29 <li><a href="clojure.html">Clojure</a></li> 30 <li><a href="emacs_lisp.html">Emacs Lisp</a></li> 31 </ul></li> 32 <li><a href="rust.html">Rust</a></li> 33 </ul> 34 </div> 35 </section> 36 <section id="outline-container-Four%20principles%20of%20software%20engineering" class="outline-2"> 37 <h2 id="Four%20principles%20of%20software%20engineering">Four principles of software engineering</h2> 38 <div class="outline-text-2" id="text-Four%20principles%20of%20software%20engineering"> 39 <blockquote> 40 <p> 41 Software should be robust. It should be designed to accommodate all 42 known edge cases. In practice, this means predicting and handling all 43 known error cases, enumerating and addressing all classes of user 44 inputs, reasoning about and planning for the performance 45 characteristics of your program, and so on. 46 </p> 47 48 <p> 49 Software should be reliable. It should be expected to work for an 50 extended length of time under design conditions without failures. 51 Ideally, it should work outside of design conditions up to some 52 threshold. 53 </p> 54 55 <p> 56 Software should also be stable. It should not change in incompatible 57 or unexpected ways; if it works today it should also work tomorrow. If 58 it has to change, a plan shall be written. Stakeholders (including 59 users!) should be given advance notice and should be involved in the 60 planning stage. 61 </p> 62 63 <p> 64 Finally, software should be simple. Only as many moving parts should 65 be included as necessary to meet the other three goals. All software 66 has bugs, but complicated software (1) has more bugs and (2) is more 67 difficult to diagnose and fix. Note that designing a simple solution 68 is usually more difficult than designing a complex solution. 69 </p> 70 71 <p> 72 This (short) article is based on a Mastodon post I wrote a few weeks 73 ago. 74 </p> 75 76 <p> 77 From: <a href="https://drewdevault.com/2020/10/09/Four-principles-of-software-engineering.html">Four principles of software engineering</a> 78 </p> 79 </blockquote> 80 </div> 81 </section> 82 <section id="outline-container-Programming%20is%20terrible" class="outline-2"> 83 <h2 id="Programming%20is%20terrible">Programming is terrible</h2> 84 <div class="outline-text-2" id="text-Programming%20is%20terrible"> 85 <p> 86 <a href="https://programmingisterrible.com/">programming is terrible</a> — lessons learned from a life wasted — is a very interesting 87 website. I’ve tried to extract a few links from it with my comments in here. 88 </p> 89 90 <ul class="org-ul"> 91 <li><a href="https://programmingisterrible.com/post/110922879293/stop-blowhard-syndrome">Stop Blowhard Syndrome — programming is terrible</a> 92 Yes, Yes, Yes !</li> 93 <li><p> 94 <a href="https://programmingisterrible.com/post/102153932958/how-i-write-software">How I write software — programming is terrible</a> 95 Write boring code ! 96 </p> 97 98 <blockquote> 99 <p> 100 My favourite property of good code is boredom. Dull statements one after another, no 101 surprises, no tricks, no special cases, and absolutely no meta-programming. Boring code is 102 the easiest to debug, to verify, and to explain. 103 </p> 104 105 <p> 106 Boring code usually doesn’t use global state, has very precise effects, and isn’t strongly 107 tied to the project it lives in. Boring features like single assignment, where each 108 variable only holds one object, and not relying on changing the world around it. Boring 109 code will only do what its asked of it and does not rely on implicit behaviours. 110 </p> 111 </blockquote></li> 112 113 <li><a href="https://programmingisterrible.com/post/116698171738/nothing-is-more-indicative-of-a-bullshit-job-than">Nothing is more indicative of a bullshit job than… — programming is terrible</a></li> 114 <li><a href="https://programmingisterrible.com/post/39420736223/bisecting-programmers">What makes good and what makes bad programmers? — programming is terrible</a> 115 Some thoughs about good/bad programmers — and really, is there good/bad ?</li> 116 <li><a href="https://programmingisterrible.com/post/173883533613/code-to-debug">Write code that’s easy to delete, and easy to… — programming is terrible</a></li> 117 <li><a href="https://programmingisterrible.com/post/139222674273/write-code-that-is-easy-to-delete-not-easy-to">Write code that is easy to delete, not easy to… — programming is terrible</a></li> 118 <li><a href="https://programmingisterrible.com/post/173883533613/code-to-debug">Write code that’s easy to delete, and easy to… — programming is terrible</a></li> 119 <li><a href="https://programmingisterrible.com/post/110292532528/modules-network-microservices">modules + network = microservices — programming is terrible</a></li> 120 <li><a href="https://programmingisterrible.com/post/162346490883/how-do-you-cut-a-monolith-in-half">How do you cut a monolith in half? — programming is terrible</a> 121 Some thoughts one cutting monolith in several pieces</li> 122 <li><a href="https://programmingisterrible.com/post/188942142748/scaling-in-the-presence-of-errorsdont-ignore">Scaling in the presence of errors—don’t ignore… — programming is terrible</a></li> 123 </ul> 124 </div> 125 </section> 126 <section id="outline-container-Code%20reviews" class="outline-2"> 127 <h2 id="Code%20reviews">Code reviews</h2> 128 <div class="outline-text-2" id="text-Code%20reviews"> 129 <p> 130 Code review is one extremely powerful tool in a software developer team’s arsenal, yet 131 it’s often neglected or used in a way that leads to toxic behavior, causing more harm than 132 good. 133 </p> 134 135 <p> 136 The primary purpose of code review is to make sure that the overall code health of your 137 project code base is improving over time. All of the tools and processes of code review 138 are designed to this end. 139 </p> 140 141 <p> 142 An list of code-review article and tools aronud code revîew : <a href="https://github.com/joho/awesome-code-review">awesome-code-review</a>. 143 </p> 144 </div> 145 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fdev.to%2Frfornal%2Fbetter-code-review-practices-15nb%5D%5BBetter%20Code%20Review%20Practices%20-%20DEV%20Community%20%F0%9F%91%A9%E2%80%8D%F0%9F%92%BB%F0%9F%91%A8%E2%80%8D%F0%9F%92%BB%5D%5D" class="outline-3"> 146 <h3 id="%5B%5Bhttps%3A%2F%2Fdev.to%2Frfornal%2Fbetter-code-review-practices-15nb%5D%5BBetter%20Code%20Review%20Practices%20-%20DEV%20Community%20%F0%9F%91%A9%E2%80%8D%F0%9F%92%BB%F0%9F%91%A8%E2%80%8D%F0%9F%92%BB%5D%5D"><span class="todo TODO">TODO</span> <a href="https://dev.to/rfornal/better-code-review-practices-15nb">Better Code Review Practices - DEV Community 👩💻👨💻</a></h3> 147 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fdev.to%2Frfornal%2Fbetter-code-review-practices-15nb%5D%5BBetter%20Code%20Review%20Practices%20-%20DEV%20Community%20%F0%9F%91%A9%E2%80%8D%F0%9F%92%BB%F0%9F%91%A8%E2%80%8D%F0%9F%92%BB%5D%5D"> 148 <p> 149 <span class="timestamp-wrapper"><span class="timestamp">[2020-01-28 Tue 18:58]</span></span> 150 </p> 151 </div> 152 </div> 153 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fmedium.com%2Fpalantir%2Fcode-review-best-practices-19e02780015f%5D%5BCode%20Review%20Best%20Practices%20-%20Palantir%20Blog%20-%20Medium%5D%5D" class="outline-3"> 154 <h3 id="%5B%5Bhttps%3A%2F%2Fmedium.com%2Fpalantir%2Fcode-review-best-practices-19e02780015f%5D%5BCode%20Review%20Best%20Practices%20-%20Palantir%20Blog%20-%20Medium%5D%5D"><span class="todo TODO">TODO</span> <a href="https://medium.com/palantir/code-review-best-practices-19e02780015f">Code Review Best Practices - Palantir Blog - Medium</a></h3> 155 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fmedium.com%2Fpalantir%2Fcode-review-best-practices-19e02780015f%5D%5BCode%20Review%20Best%20Practices%20-%20Palantir%20Blog%20-%20Medium%5D%5D"> 156 <p> 157 <span class="timestamp-wrapper"><span class="timestamp">[2020-01-28 Tue 18:58]</span></span> 158 </p> 159 </div> 160 </div> 161 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fcodingsans.com%2Fblog%2Fcode-review%5D%5BCode%20Review%3A%20Create%20The%20Culture%2C%20Learn%20The%20Best%20Practices%20%7C%20Coding%20Sans%5D%5D" class="outline-3"> 162 <h3 id="%5B%5Bhttps%3A%2F%2Fcodingsans.com%2Fblog%2Fcode-review%5D%5BCode%20Review%3A%20Create%20The%20Culture%2C%20Learn%20The%20Best%20Practices%20%7C%20Coding%20Sans%5D%5D"><span class="todo TODO">TODO</span> <a href="https://codingsans.com/blog/code-review">Code Review: Create The Culture, Learn The Best Practices | Coding Sans</a></h3> 163 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fcodingsans.com%2Fblog%2Fcode-review%5D%5BCode%20Review%3A%20Create%20The%20Culture%2C%20Learn%20The%20Best%20Practices%20%7C%20Coding%20Sans%5D%5D"> 164 <p> 165 <span class="timestamp-wrapper"><span class="timestamp">[2020-01-28 Tue 18:58]</span></span> 166 </p> 167 </div> 168 </div> 169 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgoogle.github.io%2Feng-practices%2Freview%2Fdeveloper%2F%5D%5BThe%20CL%20author%E2%80%99s%20guide%20to%20getting%20through%20code%20review%20%7C%20eng-practices%5D%5D" class="outline-3"> 170 <h3 id="%5B%5Bhttps%3A%2F%2Fgoogle.github.io%2Feng-practices%2Freview%2Fdeveloper%2F%5D%5BThe%20CL%20author%E2%80%99s%20guide%20to%20getting%20through%20code%20review%20%7C%20eng-practices%5D%5D"><span class="todo TODO">TODO</span> <a href="https://google.github.io/eng-practices/review/developer/">The CL author’s guide to getting through code review | eng-practices</a></h3> 171 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgoogle.github.io%2Feng-practices%2Freview%2Fdeveloper%2F%5D%5BThe%20CL%20author%E2%80%99s%20guide%20to%20getting%20through%20code%20review%20%7C%20eng-practices%5D%5D"> 172 <p> 173 <span class="timestamp-wrapper"><span class="timestamp">[2019-10-07 Mon 10:43]</span></span> 174 </p> 175 </div> 176 </div> 177 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgoogle.github.io%2Feng-practices%2Freview%2Freviewer%2F%5D%5BHow%20to%20do%20a%20code%20review%20%7C%20eng-practices%5D%5D" class="outline-3"> 178 <h3 id="%5B%5Bhttps%3A%2F%2Fgoogle.github.io%2Feng-practices%2Freview%2Freviewer%2F%5D%5BHow%20to%20do%20a%20code%20review%20%7C%20eng-practices%5D%5D"><span class="todo TODO">TODO</span> <a href="https://google.github.io/eng-practices/review/reviewer/">How to do a code review | eng-practices</a></h3> 179 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgoogle.github.io%2Feng-practices%2Freview%2Freviewer%2F%5D%5BHow%20to%20do%20a%20code%20review%20%7C%20eng-practices%5D%5D"> 180 <p> 181 <span class="timestamp-wrapper"><span class="timestamp">[2019-10-07 Mon 10:44]</span></span> 182 </p> 183 </div> 184 </div> 185 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fblog.jez.io%2Fcli-code-review%2F%5D%5BCode%20Review%20from%20the%20Command%20Line%20-%20Bits%2C%20Bytes%2C%20and%20Words%5D%5D" class="outline-3"> 186 <h3 id="%5B%5Bhttps%3A%2F%2Fblog.jez.io%2Fcli-code-review%2F%5D%5BCode%20Review%20from%20the%20Command%20Line%20-%20Bits%2C%20Bytes%2C%20and%20Words%5D%5D"><span class="todo TODO">TODO</span> <a href="https://blog.jez.io/cli-code-review/">Code Review from the Command Line - Bits, Bytes, and Words</a></h3> 187 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fblog.jez.io%2Fcli-code-review%2F%5D%5BCode%20Review%20from%20the%20Command%20Line%20-%20Bits%2C%20Bytes%2C%20and%20Words%5D%5D"> 188 <p> 189 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-23 Wed 13:02]</span></span> 190 </p> 191 </div> 192 </div> 193 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fbenjamincongdon.me%2Fblog%2F2021%2F10%2F17%2FFeatures-of-Excellent-Code-Review-Tools%2F%5D%5BFeatures%20of%20Excellent%20Code%20Review%20Tools%20%7C%20Ben%20Congdon%5D%5D" class="outline-3"> 194 <h3 id="%5B%5Bhttps%3A%2F%2Fbenjamincongdon.me%2Fblog%2F2021%2F10%2F17%2FFeatures-of-Excellent-Code-Review-Tools%2F%5D%5BFeatures%20of%20Excellent%20Code%20Review%20Tools%20%7C%20Ben%20Congdon%5D%5D"><span class="todo TODO">TODO</span> <a href="https://benjamincongdon.me/blog/2021/10/17/Features-of-Excellent-Code-Review-Tools/">Features of Excellent Code Review Tools | Ben Congdon</a></h3> 195 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fbenjamincongdon.me%2Fblog%2F2021%2F10%2F17%2FFeatures-of-Excellent-Code-Review-Tools%2F%5D%5BFeatures%20of%20Excellent%20Code%20Review%20Tools%20%7C%20Ben%20Congdon%5D%5D"> 196 <p> 197 <span class="timestamp-wrapper"><span class="timestamp">[2021-10-29 Fri 18:03]</span></span> 198 </p> 199 </div> 200 </div> 201 </section> 202 <section id="outline-container-Pair%20programming" class="outline-2"> 203 <h2 id="Pair%20programming">Pair programming   <span class="tag"><span class="pair">pair</span></span></h2> 204 <div class="outline-text-2" id="text-Pair%20programming"> 205 </div> 206 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fmartinfowler.com%2Farticles%2Fon-pair-programming.html%5D%5BOn%20Pair%20Programming%5D%5D" class="outline-3"> 207 <h3 id="%5B%5Bhttps%3A%2F%2Fmartinfowler.com%2Farticles%2Fon-pair-programming.html%5D%5BOn%20Pair%20Programming%5D%5D"><span class="todo TODO">TODO</span> <a href="https://martinfowler.com/articles/on-pair-programming.html">On Pair Programming</a></h3> 208 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fmartinfowler.com%2Farticles%2Fon-pair-programming.html%5D%5BOn%20Pair%20Programming%5D%5D"> 209 <p> 210 <span class="timestamp-wrapper"><span class="timestamp">[2020-02-12 Wed 09:21]</span></span> 211 </p> 212 </div> 213 </div> 214 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F01%2Fadvanced-pair-programming-pairing-remotely%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Pairing%20Remotely%20%E2%80%93%20Chelsea%20Troy%5D%5D" class="outline-3"> 215 <h3 id="%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F01%2Fadvanced-pair-programming-pairing-remotely%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Pairing%20Remotely%20%E2%80%93%20Chelsea%20Troy%5D%5D"><span class="todo TODO">TODO</span> <a href="https://chelseatroy.com/2017/04/01/advanced-pair-programming-pairing-remotely/">Advanced Pair Programming: Pairing Remotely – Chelsea Troy</a></h3> 216 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F01%2Fadvanced-pair-programming-pairing-remotely%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Pairing%20Remotely%20%E2%80%93%20Chelsea%20Troy%5D%5D"> 217 <p> 218 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-21 Tue 18:26]</span></span> 219 </p> 220 </div> 221 </div> 222 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F04%2Fadvanced-pair-programming-enabling-your-pair%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Enabling%20Your%20Pair%20%E2%80%93%20Chelsea%20Troy%5D%5D" class="outline-3"> 223 <h3 id="%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F04%2Fadvanced-pair-programming-enabling-your-pair%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Enabling%20Your%20Pair%20%E2%80%93%20Chelsea%20Troy%5D%5D"><span class="todo TODO">TODO</span> <a href="https://chelseatroy.com/2017/04/04/advanced-pair-programming-enabling-your-pair/">Advanced Pair Programming: Enabling Your Pair – Chelsea Troy</a></h3> 224 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F04%2Fadvanced-pair-programming-enabling-your-pair%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Enabling%20Your%20Pair%20%E2%80%93%20Chelsea%20Troy%5D%5D"> 225 <p> 226 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-21 Tue 18:26]</span></span> 227 </p> 228 </div> 229 </div> 230 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F06%2Fadvanced-pair-programming-learning-from-your-pair%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Learning%20From%20Your%20Pair%20%E2%80%93%20Chelsea%20Troy%5D%5D" class="outline-3"> 231 <h3 id="%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F06%2Fadvanced-pair-programming-learning-from-your-pair%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Learning%20From%20Your%20Pair%20%E2%80%93%20Chelsea%20Troy%5D%5D"><span class="todo TODO">TODO</span> <a href="https://chelseatroy.com/2017/04/06/advanced-pair-programming-learning-from-your-pair/">Advanced Pair Programming: Learning From Your Pair – Chelsea Troy</a></h3> 232 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2017%2F04%2F06%2Fadvanced-pair-programming-learning-from-your-pair%2F%5D%5BAdvanced%20Pair%20Programming%3A%20Learning%20From%20Your%20Pair%20%E2%80%93%20Chelsea%20Troy%5D%5D"> 233 <p> 234 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-21 Tue 18:26]</span></span> 235 </p> 236 </div> 237 </div> 238 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2016%2F01%2F30%2Fremote-pair-programming-best-practices%2F%5D%5BRemote%20Pair%20Programming%3A%20Best%20Practices%20%E2%80%93%20Chelsea%20Troy%5D%5D" class="outline-3"> 239 <h3 id="%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2016%2F01%2F30%2Fremote-pair-programming-best-practices%2F%5D%5BRemote%20Pair%20Programming%3A%20Best%20Practices%20%E2%80%93%20Chelsea%20Troy%5D%5D"><span class="todo TODO">TODO</span> <a href="https://chelseatroy.com/2016/01/30/remote-pair-programming-best-practices/">Remote Pair Programming: Best Practices – Chelsea Troy</a></h3> 240 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fchelseatroy.com%2F2016%2F01%2F30%2Fremote-pair-programming-best-practices%2F%5D%5BRemote%20Pair%20Programming%3A%20Best%20Practices%20%E2%80%93%20Chelsea%20Troy%5D%5D"> 241 <p> 242 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-21 Tue 18:27]</span></span> 243 </p> 244 </div> 245 </div> 246 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fgeshan.com.np%2Fblog%2F2020%2F06%2Fpair-programming-benefits-for-your-team%2F%5D%5B5%20pair%20programming%20benefits%20you%20should%20know%20about%5D%5D" class="outline-3"> 247 <h3 id="%5B%5Bhttps%3A%2F%2Fgeshan.com.np%2Fblog%2F2020%2F06%2Fpair-programming-benefits-for-your-team%2F%5D%5B5%20pair%20programming%20benefits%20you%20should%20know%20about%5D%5D"><span class="todo TODO">TODO</span> <a href="https://geshan.com.np/blog/2020/06/pair-programming-benefits-for-your-team/">5 pair programming benefits you should know about</a></h3> 248 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fgeshan.com.np%2Fblog%2F2020%2F06%2Fpair-programming-benefits-for-your-team%2F%5D%5B5%20pair%20programming%20benefits%20you%20should%20know%20about%5D%5D"> 249 <p> 250 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-23 Tue 17:49]</span></span> 251 </p> 252 </div> 253 </div> 254 </section> 255 <section id="outline-container-Misc." class="outline-2"> 256 <h2 id="Misc.">Misc.</h2> 257 <div class="outline-text-2" id="text-Misc."> 258 </div> 259 <div id="outline-container-%5B%5Bhttp%3A%2F%2Fkarolis.koncevicius.lt%2Fposts%2Fporn_zen_and_vimrc%2F%5D%5BPorn%2C%20Zen%2C%20and%20.vimrc%5D%5D" class="outline-3"> 260 <h3 id="%5B%5Bhttp%3A%2F%2Fkarolis.koncevicius.lt%2Fposts%2Fporn_zen_and_vimrc%2F%5D%5BPorn%2C%20Zen%2C%20and%20.vimrc%5D%5D"><span class="todo TODO">TODO</span> <a href="http://karolis.koncevicius.lt/posts/porn_zen_and_vimrc/">Porn, Zen, and .vimrc</a></h3> 261 <div class="outline-text-3" id="text-%5B%5Bhttp%3A%2F%2Fkarolis.koncevicius.lt%2Fposts%2Fporn_zen_and_vimrc%2F%5D%5BPorn%2C%20Zen%2C%20and%20.vimrc%5D%5D"> 262 <p> 263 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-17 Thu 08:36]</span></span> 264 </p> 265 266 <p> 267 Could be on it’s own entry on editors 268 </p> 269 </div> 270 </div> 271 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fsolovyov.net%2Fblog%2F2020%2Fhigher-order-functions%2F%5D%5BHigher-order%20functions%20are%20like%20inheritance%5D%5D" class="outline-3"> 272 <h3 id="%5B%5Bhttps%3A%2F%2Fsolovyov.net%2Fblog%2F2020%2Fhigher-order-functions%2F%5D%5BHigher-order%20functions%20are%20like%20inheritance%5D%5D"><span class="todo TODO">TODO</span> <a href="https://solovyov.net/blog/2020/higher-order-functions/">Higher-order functions are like inheritance</a></h3> 273 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fsolovyov.net%2Fblog%2F2020%2Fhigher-order-functions%2F%5D%5BHigher-order%20functions%20are%20like%20inheritance%5D%5D"> 274 <p> 275 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-18 Fri 11:29]</span></span> 276 </p> 277 </div> 278 </div> 279 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fcomments.html%5D%5BGood%20comments%20are%20to%20the%20point%20and%20flow%20well%5D%5D" class="outline-3"> 280 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fcomments.html%5D%5BGood%20comments%20are%20to%20the%20point%20and%20flow%20well%5D%5D"><span class="todo TODO">TODO</span> <a href="https://www.arp242.net/comments.html">Good comments are to the point and flow well</a></h3> 281 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.arp242.net%2Fcomments.html%5D%5BGood%20comments%20are%20to%20the%20point%20and%20flow%20well%5D%5D"> 282 <p> 283 <span class="timestamp-wrapper"><span class="timestamp">[2019-12-12 Thu 18:03]</span></span> 284 </p> 285 </div> 286 </div> 287 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.sandimetz.com%2Fblog%2F2016%2F1%2F20%2Fthe-wrong-abstraction%5D%5BThe%20Wrong%20Abstraction%20%E2%80%94%20Sandi%20Metz%5D%5D" class="outline-3"> 288 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.sandimetz.com%2Fblog%2F2016%2F1%2F20%2Fthe-wrong-abstraction%5D%5BThe%20Wrong%20Abstraction%20%E2%80%94%20Sandi%20Metz%5D%5D"><a href="https://www.sandimetz.com/blog/2016/1/20/the-wrong-abstraction">The Wrong Abstraction — Sandi Metz</a></h3> 289 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.sandimetz.com%2Fblog%2F2016%2F1%2F20%2Fthe-wrong-abstraction%5D%5BThe%20Wrong%20Abstraction%20%E2%80%94%20Sandi%20Metz%5D%5D"> 290 <p> 291 A really interesting article about a really good point : sometimes duplication is better 292 than the wrong abstraction ! 293 </p> 294 </div> 295 </div> 296 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fblog.nelhage.com%2Fpost%2Freflections-on-performance%2F%5D%5BReflections%20on%20software%20performance%20-%20Made%20of%20Bugs%5D%5D" class="outline-3"> 297 <h3 id="%5B%5Bhttps%3A%2F%2Fblog.nelhage.com%2Fpost%2Freflections-on-performance%2F%5D%5BReflections%20on%20software%20performance%20-%20Made%20of%20Bugs%5D%5D"><a href="https://blog.nelhage.com/post/reflections-on-performance/">Reflections on software performance - Made of Bugs</a></h3> 298 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fblog.nelhage.com%2Fpost%2Freflections-on-performance%2F%5D%5BReflections%20on%20software%20performance%20-%20Made%20of%20Bugs%5D%5D"> 299 <p> 300 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-06 Sat 12:36]</span></span> 301 </p> 302 </div> 303 </div> 304 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fmedium.com%2F%40johnclarke_82232%2Fmono-or-multi-repo-6c3674142dfc%5D%5BMono-%20or%20Multi-repo%3F.%20One%20big%20repo%2C%20or%20lots%20of%20smaller%20repos%E2%80%A6%20%7C%20by%20John%20Clarke%20%7C%20Medium%5D%5D" class="outline-3"> 305 <h3 id="%5B%5Bhttps%3A%2F%2Fmedium.com%2F%40johnclarke_82232%2Fmono-or-multi-repo-6c3674142dfc%5D%5BMono-%20or%20Multi-repo%3F.%20One%20big%20repo%2C%20or%20lots%20of%20smaller%20repos%E2%80%A6%20%7C%20by%20John%20Clarke%20%7C%20Medium%5D%5D"><span class="todo TODO">TODO</span> <a href="https://medium.com/@johnclarke_82232/mono-or-multi-repo-6c3674142dfc">Mono- or Multi-repo?. One big repo, or lots of smaller repos… | by John Clarke | Medium</a></h3> 306 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fmedium.com%2F%40johnclarke_82232%2Fmono-or-multi-repo-6c3674142dfc%5D%5BMono-%20or%20Multi-repo%3F.%20One%20big%20repo%2C%20or%20lots%20of%20smaller%20repos%E2%80%A6%20%7C%20by%20John%20Clarke%20%7C%20Medium%5D%5D"> 307 <p> 308 <span class="timestamp-wrapper"><span class="timestamp">[2020-08-17 Mon 16:33]</span></span> 309 </p> 310 </div> 311 </div> 312 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fmedium.com%2F%40mattklein123%2Fmonorepos-please-dont-e9a279be011b%5D%5BMonorepos%3A%20Please%20don%E2%80%99t%21.%20Here%20we%20are%20at%20the%20beginning%20of%202019%E2%80%A6%20%7C%20by%20Matt%20Klein%20%7C%20Medium%5D%5D" class="outline-3"> 313 <h3 id="%5B%5Bhttps%3A%2F%2Fmedium.com%2F%40mattklein123%2Fmonorepos-please-dont-e9a279be011b%5D%5BMonorepos%3A%20Please%20don%E2%80%99t%21.%20Here%20we%20are%20at%20the%20beginning%20of%202019%E2%80%A6%20%7C%20by%20Matt%20Klein%20%7C%20Medium%5D%5D"><span class="todo TODO">TODO</span> <a href="https://medium.com/@mattklein123/monorepos-please-dont-e9a279be011b">Monorepos: Please don’t!. Here we are at the beginning of 2019… | by Matt Klein | Medium</a></h3> 314 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fmedium.com%2F%40mattklein123%2Fmonorepos-please-dont-e9a279be011b%5D%5BMonorepos%3A%20Please%20don%E2%80%99t%21.%20Here%20we%20are%20at%20the%20beginning%20of%202019%E2%80%A6%20%7C%20by%20Matt%20Klein%20%7C%20Medium%5D%5D"> 315 <p> 316 <span class="timestamp-wrapper"><span class="timestamp">[2020-08-17 Mon 16:33]</span></span> 317 </p> 318 </div> 319 </div> 320 <div id="outline-container-%5B%5Bhttps%3A%2F%2Funderstandlegacycode.com%2Fblog%2Fkey-points-of-working-effectively-with-legacy-code%2F%5D%5BThe%20key%20points%20of%20Working%20Effectively%20with%20Legacy%20Code%20%E2%80%94%20Understand%20Legacy%20Code%5D%5D" class="outline-3"> 321 <h3 id="%5B%5Bhttps%3A%2F%2Funderstandlegacycode.com%2Fblog%2Fkey-points-of-working-effectively-with-legacy-code%2F%5D%5BThe%20key%20points%20of%20Working%20Effectively%20with%20Legacy%20Code%20%E2%80%94%20Understand%20Legacy%20Code%5D%5D"><span class="todo TODO">TODO</span> <a href="https://understandlegacycode.com/blog/key-points-of-working-effectively-with-legacy-code/">The key points of Working Effectively with Legacy Code — Understand Legacy Code</a></h3> 322 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Funderstandlegacycode.com%2Fblog%2Fkey-points-of-working-effectively-with-legacy-code%2F%5D%5BThe%20key%20points%20of%20Working%20Effectively%20with%20Legacy%20Code%20%E2%80%94%20Understand%20Legacy%20Code%5D%5D"> 323 <p> 324 <span class="timestamp-wrapper"><span class="timestamp">[2020-02-26 Wed 12:20]</span></span> 325 </p> 326 </div> 327 </div> 328 <div id="outline-container-%5B%5Bhttps%3A%2F%2Ftrineo.com%2Fblog%2F2020%2F01%2Fconstraint-driven-development%5D%5BConstraint%20Driven%20Development%20%7C%20Trineo%5D%5D" class="outline-3"> 329 <h3 id="%5B%5Bhttps%3A%2F%2Ftrineo.com%2Fblog%2F2020%2F01%2Fconstraint-driven-development%5D%5BConstraint%20Driven%20Development%20%7C%20Trineo%5D%5D"><span class="todo TODO">TODO</span> <a href="https://trineo.com/blog/2020/01/constraint-driven-development">Constraint Driven Development | Trineo</a></h3> 330 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Ftrineo.com%2Fblog%2F2020%2F01%2Fconstraint-driven-development%5D%5BConstraint%20Driven%20Development%20%7C%20Trineo%5D%5D"> 331 <p> 332 <span class="timestamp-wrapper"><span class="timestamp">[2020-03-29 Sun 06:15]</span></span> 333 </p> 334 </div> 335 </div> 336 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fjameshfisher.com%2F2014%2F05%2F11%2Fyour-syntax-highlighter-is-wrong%2F%5D%5BYour%20syntax%20highlighter%20is%20wrong%5D%5D" class="outline-3"> 337 <h3 id="%5B%5Bhttps%3A%2F%2Fjameshfisher.com%2F2014%2F05%2F11%2Fyour-syntax-highlighter-is-wrong%2F%5D%5BYour%20syntax%20highlighter%20is%20wrong%5D%5D"><span class="todo TODO">TODO</span> <a href="https://jameshfisher.com/2014/05/11/your-syntax-highlighter-is-wrong/">Your syntax highlighter is wrong</a></h3> 338 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fjameshfisher.com%2F2014%2F05%2F11%2Fyour-syntax-highlighter-is-wrong%2F%5D%5BYour%20syntax%20highlighter%20is%20wrong%5D%5D"> 339 <p> 340 <span class="timestamp-wrapper"><span class="timestamp">[2019-12-12 Thu 13:35]</span></span> 341 </p> 342 </div> 343 </div> 344 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.benkuhn.net%2Fsyntax%5D%5BSyntax%20highlighting%20is%20backwards%20%7C%20benkuhn.net%5D%5D" class="outline-3"> 345 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.benkuhn.net%2Fsyntax%5D%5BSyntax%20highlighting%20is%20backwards%20%7C%20benkuhn.net%5D%5D"><span class="todo TODO">TODO</span> <a href="https://www.benkuhn.net/syntax">Syntax highlighting is backwards | benkuhn.net</a></h3> 346 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.benkuhn.net%2Fsyntax%5D%5BSyntax%20highlighting%20is%20backwards%20%7C%20benkuhn.net%5D%5D"> 347 <p> 348 <span class="timestamp-wrapper"><span class="timestamp">[2020-03-02 Mon 17:02]</span></span> 349 </p> 350 </div> 351 </div> 352 <div id="outline-container-%5B%5Bhttps%3A%2F%2Flukeplant.me.uk%2Fblog%2Fposts%2Fwhy-im-leaving-elm%2F%5D%5BWhy%20I%E2%80%99m%20leaving%C2%A0Elm%20-%20lukeplant.me.uk%5D%5D" class="outline-3"> 353 <h3 id="%5B%5Bhttps%3A%2F%2Flukeplant.me.uk%2Fblog%2Fposts%2Fwhy-im-leaving-elm%2F%5D%5BWhy%20I%E2%80%99m%20leaving%C2%A0Elm%20-%20lukeplant.me.uk%5D%5D"><span class="todo TODO">TODO</span> <a href="https://lukeplant.me.uk/blog/posts/why-im-leaving-elm/">Why I’m leaving Elm - lukeplant.me.uk</a></h3> 354 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Flukeplant.me.uk%2Fblog%2Fposts%2Fwhy-im-leaving-elm%2F%5D%5BWhy%20I%E2%80%99m%20leaving%C2%A0Elm%20-%20lukeplant.me.uk%5D%5D"> 355 <p> 356 <span class="timestamp-wrapper"><span class="timestamp">[2020-04-09 Thu 19:48]</span></span> 357 </p> 358 </div> 359 </div> 360 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fandreyorst.gitlab.io%2Fposts%2F2020-04-29-text-editors%2F%5D%5BText%20Editors%20%E2%80%93%20Andrey%C2%A0Orst%5D%5D" class="outline-3"> 361 <h3 id="%5B%5Bhttps%3A%2F%2Fandreyorst.gitlab.io%2Fposts%2F2020-04-29-text-editors%2F%5D%5BText%20Editors%20%E2%80%93%20Andrey%C2%A0Orst%5D%5D"><span class="todo TODO">TODO</span> <a href="https://andreyorst.gitlab.io/posts/2020-04-29-text-editors/">Text Editors – Andrey Orst</a></h3> 362 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fandreyorst.gitlab.io%2Fposts%2F2020-04-29-text-editors%2F%5D%5BText%20Editors%20%E2%80%93%20Andrey%C2%A0Orst%5D%5D"> 363 <p> 364 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-14 Thu 12:31]</span></span> 365 </p> 366 </div> 367 </div> 368 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fcodewithoutrules.com%2F2020%2F04%2F20%2Fproductivity-skills%2F%5D%5BThe%20secret%20skills%20of%20productive%20programmers%5D%5D" class="outline-3"> 369 <h3 id="%5B%5Bhttps%3A%2F%2Fcodewithoutrules.com%2F2020%2F04%2F20%2Fproductivity-skills%2F%5D%5BThe%20secret%20skills%20of%20productive%20programmers%5D%5D"><span class="todo TODO">TODO</span> <a href="https://codewithoutrules.com/2020/04/20/productivity-skills/">The secret skills of productive programmers</a></h3> 370 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fcodewithoutrules.com%2F2020%2F04%2F20%2Fproductivity-skills%2F%5D%5BThe%20secret%20skills%20of%20productive%20programmers%5D%5D"> 371 <p> 372 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-15 Fri 14:33]</span></span> 373 </p> 374 </div> 375 </div> 376 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fcodewithoutrules.com%2F2020%2F05%2F14%2Fprepare-losing-job%2F%5D%5BHow%20to%20prepare%20for%20losing%20your%20programming%20job%5D%5D" class="outline-3"> 377 <h3 id="%5B%5Bhttps%3A%2F%2Fcodewithoutrules.com%2F2020%2F05%2F14%2Fprepare-losing-job%2F%5D%5BHow%20to%20prepare%20for%20losing%20your%20programming%20job%5D%5D"><span class="todo TODO">TODO</span> <a href="https://codewithoutrules.com/2020/05/14/prepare-losing-job/">How to prepare for losing your programming job</a></h3> 378 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fcodewithoutrules.com%2F2020%2F05%2F14%2Fprepare-losing-job%2F%5D%5BHow%20to%20prepare%20for%20losing%20your%20programming%20job%5D%5D"> 379 <p> 380 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-15 Fri 14:33]</span></span> 381 </p> 382 </div> 383 </div> 384 <div id="outline-container-%5B%5Bhttps%3A%2F%2Ficyphox.sh%2Fblog%2Fsimplicity-security%2F%5D%5BSimplicity%20%28mostly%29%20guarantees%20security%5D%5D" class="outline-3"> 385 <h3 id="%5B%5Bhttps%3A%2F%2Ficyphox.sh%2Fblog%2Fsimplicity-security%2F%5D%5BSimplicity%20%28mostly%29%20guarantees%20security%5D%5D"><span class="todo TODO">TODO</span> <a href="https://icyphox.sh/blog/simplicity-security/">Simplicity (mostly) guarantees security</a></h3> 386 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Ficyphox.sh%2Fblog%2Fsimplicity-security%2F%5D%5BSimplicity%20%28mostly%29%20guarantees%20security%5D%5D"> 387 <p> 388 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-16 Sat 15:17]</span></span> 389 </p> 390 </div> 391 </div> 392 <div id="outline-container-%5B%5Bhttp%3A%2F%2Fthemediocreprogrammer.com%2Fbuild%2Fhtml%2Fthe_mediocre_programmer.html%5D%5BThe%20Mediocre%20Programmer%5D%5D" class="outline-3"> 393 <h3 id="%5B%5Bhttp%3A%2F%2Fthemediocreprogrammer.com%2Fbuild%2Fhtml%2Fthe_mediocre_programmer.html%5D%5BThe%20Mediocre%20Programmer%5D%5D"><span class="todo TODO">TODO</span> <a href="http://themediocreprogrammer.com/build/html/the_mediocre_programmer.html">The Mediocre Programmer</a>   <span class="tag"><span class="_read">#read</span></span></h3> 394 <div class="outline-text-3" id="text-%5B%5Bhttp%3A%2F%2Fthemediocreprogrammer.com%2Fbuild%2Fhtml%2Fthe_mediocre_programmer.html%5D%5BThe%20Mediocre%20Programmer%5D%5D"> 395 <p> 396 <span class="timestamp-wrapper"><span class="timestamp">[2020-05-25 Mon 11:10]</span></span> 397 </p> 398 </div> 399 </div> 400 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fmichaelfeathers.silvrback.com%2Ffunctional-code-is-honest-code%5D%5BMichael%20Feathers%20-%20Functional%20Code%20is%20Honest%20Code%5D%5D" class="outline-3"> 401 <h3 id="%5B%5Bhttps%3A%2F%2Fmichaelfeathers.silvrback.com%2Ffunctional-code-is-honest-code%5D%5BMichael%20Feathers%20-%20Functional%20Code%20is%20Honest%20Code%5D%5D"><span class="todo TODO">TODO</span> <a href="https://michaelfeathers.silvrback.com/functional-code-is-honest-code">Michael Feathers - Functional Code is Honest Code</a></h3> 402 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fmichaelfeathers.silvrback.com%2Ffunctional-code-is-honest-code%5D%5BMichael%20Feathers%20-%20Functional%20Code%20is%20Honest%20Code%5D%5D"> 403 <p> 404 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-23 Tue 17:39]</span></span> 405 </p> 406 </div> 407 </div> 408 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fmichaelfeathers.silvrback.com%2Ftesting-warranties%5D%5BMichael%20Feathers%20-%20Testing%20Warranties%5D%5D" class="outline-3"> 409 <h3 id="%5B%5Bhttps%3A%2F%2Fmichaelfeathers.silvrback.com%2Ftesting-warranties%5D%5BMichael%20Feathers%20-%20Testing%20Warranties%5D%5D"><span class="todo TODO">TODO</span> <a href="https://michaelfeathers.silvrback.com/testing-warranties">Michael Feathers - Testing Warranties</a></h3> 410 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fmichaelfeathers.silvrback.com%2Ftesting-warranties%5D%5BMichael%20Feathers%20-%20Testing%20Warranties%5D%5D"> 411 <p> 412 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-23 Tue 17:39]</span></span> 413 </p> 414 </div> 415 </div> 416 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fqntm.org%2Fclean%5D%5BIt%27s%20probably%20time%20to%20stop%20recommending%20Clean%20Code%20%40%20Things%20Of%20Interest%5D%5D" class="outline-3"> 417 <h3 id="%5B%5Bhttps%3A%2F%2Fqntm.org%2Fclean%5D%5BIt%27s%20probably%20time%20to%20stop%20recommending%20Clean%20Code%20%40%20Things%20Of%20Interest%5D%5D"><span class="todo TODO">TODO</span> <a href="https://qntm.org/clean">It’s probably time to stop recommending Clean Code @ Things Of Interest</a></h3> 418 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fqntm.org%2Fclean%5D%5BIt%27s%20probably%20time%20to%20stop%20recommending%20Clean%20Code%20%40%20Things%20Of%20Interest%5D%5D"> 419 <p> 420 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-29 Mon 17:01]</span></span> 421 </p> 422 </div> 423 </div> 424 <div id="outline-container-%5B%5Bhttps%3A%2F%2Ftomgamon.com%2Fposts%2F2020-08-25-dont-marry-your-design%2F%5D%5BDon%27t%20marry%20your%20design%20after%20the%20first%20date%20-%20Tom%20Gamon%5D%5D" class="outline-3"> 425 <h3 id="%5B%5Bhttps%3A%2F%2Ftomgamon.com%2Fposts%2F2020-08-25-dont-marry-your-design%2F%5D%5BDon%27t%20marry%20your%20design%20after%20the%20first%20date%20-%20Tom%20Gamon%5D%5D"><span class="todo TODO">TODO</span> <a href="https://tomgamon.com/posts/2020-08-25-dont-marry-your-design/">Don’t marry your design after the first date - Tom Gamon</a></h3> 426 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Ftomgamon.com%2Fposts%2F2020-08-25-dont-marry-your-design%2F%5D%5BDon%27t%20marry%20your%20design%20after%20the%20first%20date%20-%20Tom%20Gamon%5D%5D"> 427 <p> 428 <span class="timestamp-wrapper"><span class="timestamp">[2020-08-26 Wed 16:14]</span></span> 429 </p> 430 </div> 431 </div> 432 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fphaazon.net%2Fblog%2Feditors-in-2020%5D%5BMy%20thoughts%20about%20editors%20in%202020%20%E2%80%93%20phaazon.net%5D%5D" class="outline-3"> 433 <h3 id="%5B%5Bhttps%3A%2F%2Fphaazon.net%2Fblog%2Feditors-in-2020%5D%5BMy%20thoughts%20about%20editors%20in%202020%20%E2%80%93%20phaazon.net%5D%5D"><span class="todo TODO">TODO</span> <a href="https://phaazon.net/blog/editors-in-2020">My thoughts about editors in 2020 – phaazon.net</a></h3> 434 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fphaazon.net%2Fblog%2Feditors-in-2020%5D%5BMy%20thoughts%20about%20editors%20in%202020%20%E2%80%93%20phaazon.net%5D%5D"> 435 <p> 436 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-07 Mon 10:28]</span></span> 437 </p> 438 439 <p> 440 Because I think the speed doesn’t matter when programming, I think the most important part to remember here is the comfort: the wrists don’t move and my fingers fly around the keyboard, whatever the speed. 441 </p> 442 </div> 443 </div> 444 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fnoelwelsh.com%2Fposts%2F2020-07-05-what-and-why-fp.html%5D%5BNoel%20Welsh%3A%20What%20Functional%20Programming%20Is%2C%20What%20it%20Isn%27t%2C%20and%20Why%20it%20Matters%5D%5D" class="outline-3"> 445 <h3 id="%5B%5Bhttps%3A%2F%2Fnoelwelsh.com%2Fposts%2F2020-07-05-what-and-why-fp.html%5D%5BNoel%20Welsh%3A%20What%20Functional%20Programming%20Is%2C%20What%20it%20Isn%27t%2C%20and%20Why%20it%20Matters%5D%5D"><span class="todo TODO">TODO</span> <a href="https://noelwelsh.com/posts/2020-07-05-what-and-why-fp.html">Noel Welsh: What Functional Programming Is, What it Isn’t, and Why it Matters</a></h3> 446 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fnoelwelsh.com%2Fposts%2F2020-07-05-what-and-why-fp.html%5D%5BNoel%20Welsh%3A%20What%20Functional%20Programming%20Is%2C%20What%20it%20Isn%27t%2C%20and%20Why%20it%20Matters%5D%5D"> 447 <p> 448 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-07 Mon 16:07]</span></span> 449 </p> 450 </div> 451 </div> 452 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fjosephg.com%2Fblog%2F3-tribes%2F%5D%5B3%20tribes%20of%20programming%5D%5D" class="outline-3"> 453 <h3 id="%5B%5Bhttps%3A%2F%2Fjosephg.com%2Fblog%2F3-tribes%2F%5D%5B3%20tribes%20of%20programming%5D%5D"><span class="todo TODO">TODO</span> <a href="https://josephg.com/blog/3-tribes/">3 tribes of programming</a></h3> 454 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fjosephg.com%2Fblog%2F3-tribes%2F%5D%5B3%20tribes%20of%20programming%5D%5D"> 455 <p> 456 <span class="timestamp-wrapper"><span class="timestamp">[2020-09-23 Wed 12:12]</span></span> 457 </p> 458 </div> 459 </div> 460 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fjfmengels.net%2Fsafe-dead-code-removal%2F%3Flobsters%5D%5BSafe%20dead%20code%20removal%20in%20a%20pure%20functional%20language%20%7C%20jfmengels%27%20blog%5D%5D" class="outline-3"> 461 <h3 id="%5B%5Bhttps%3A%2F%2Fjfmengels.net%2Fsafe-dead-code-removal%2F%3Flobsters%5D%5BSafe%20dead%20code%20removal%20in%20a%20pure%20functional%20language%20%7C%20jfmengels%27%20blog%5D%5D"><span class="todo TODO">TODO</span> <a href="https://jfmengels.net/safe-dead-code-removal/?lobsters">Safe dead code removal in a pure functional language | jfmengels’ blog</a></h3> 462 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fjfmengels.net%2Fsafe-dead-code-removal%2F%3Flobsters%5D%5BSafe%20dead%20code%20removal%20in%20a%20pure%20functional%20language%20%7C%20jfmengels%27%20blog%5D%5D"> 463 <p> 464 <span class="timestamp-wrapper"><span class="timestamp">[2021-01-29 Fri 10:28]</span></span> 465 </p> 466 </div> 467 </div> 468 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.unixsheikh.com%2Farticles%2Fcode-navigation-design-patterns-and-too-many-functions.html%5D%5BCode%20Navigation%2C%20Design%20Patterns%2C%20and%20Too%20Many%20Functions%5D%5D" class="outline-3"> 469 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.unixsheikh.com%2Farticles%2Fcode-navigation-design-patterns-and-too-many-functions.html%5D%5BCode%20Navigation%2C%20Design%20Patterns%2C%20and%20Too%20Many%20Functions%5D%5D"><span class="todo TODO">TODO</span> <a href="https://www.unixsheikh.com/articles/code-navigation-design-patterns-and-too-many-functions.html">Code Navigation, Design Patterns, and Too Many Functions</a></h3> 470 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.unixsheikh.com%2Farticles%2Fcode-navigation-design-patterns-and-too-many-functions.html%5D%5BCode%20Navigation%2C%20Design%20Patterns%2C%20and%20Too%20Many%20Functions%5D%5D"> 471 <p> 472 <span class="timestamp-wrapper"><span class="timestamp">[2020-10-27 Tue 16:21]</span></span> 473 </p> 474 </div> 475 </div> 476 <div id="outline-container-%5B%5Bhttp%3A%2F%2Fbrooker.co.za%2Fblog%2F2020%2F06%2F23%2Fcode.html%5D%5BCode%20Only%20Says%20What%20it%20Does%20-%20Marc%27s%20Blog%5D%5D" class="outline-3"> 477 <h3 id="%5B%5Bhttp%3A%2F%2Fbrooker.co.za%2Fblog%2F2020%2F06%2F23%2Fcode.html%5D%5BCode%20Only%20Says%20What%20it%20Does%20-%20Marc%27s%20Blog%5D%5D"><span class="todo TODO">TODO</span> <a href="http://brooker.co.za/blog/2020/06/23/code.html">Code Only Says What it Does - Marc’s Blog</a></h3> 478 <div class="outline-text-3" id="text-%5B%5Bhttp%3A%2F%2Fbrooker.co.za%2Fblog%2F2020%2F06%2F23%2Fcode.html%5D%5BCode%20Only%20Says%20What%20it%20Does%20-%20Marc%27s%20Blog%5D%5D"> 479 <p> 480 <span class="timestamp-wrapper"><span class="timestamp">[2020-10-27 Tue 16:22]</span></span> 481 </p> 482 </div> 483 </div> 484 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fjoshwcomeau.com%2Faccessibility%2Fhands-free-coding%2F%5D%5BCoding%20with%20voice%20dictation%20using%20Talon%20Voice%20%C2%B7%20Josh%20W%20Comeau%5D%5D" class="outline-3"> 485 <h3 id="%5B%5Bhttps%3A%2F%2Fjoshwcomeau.com%2Faccessibility%2Fhands-free-coding%2F%5D%5BCoding%20with%20voice%20dictation%20using%20Talon%20Voice%20%C2%B7%20Josh%20W%20Comeau%5D%5D"><span class="todo TODO">TODO</span> <a href="https://joshwcomeau.com/accessibility/hands-free-coding/">Coding with voice dictation using Talon Voice · Josh W Comeau</a></h3> 486 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fjoshwcomeau.com%2Faccessibility%2Fhands-free-coding%2F%5D%5BCoding%20with%20voice%20dictation%20using%20Talon%20Voice%20%C2%B7%20Josh%20W%20Comeau%5D%5D"> 487 <p> 488 <span class="timestamp-wrapper"><span class="timestamp">[2020-10-22 Thu 10:50]</span></span> 489 </p> 490 </div> 491 </div> 492 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fthereader.mitpress.mit.edu%2Fhabits-of-expert-software-designers%2F%5D%5BEight%20Habits%20of%20Expert%20Software%20Designers%3A%20An%20Illustrated%20Guide%20%7C%20The%20MIT%20Press%20Reader%5D%5D" class="outline-3"> 493 <h3 id="%5B%5Bhttps%3A%2F%2Fthereader.mitpress.mit.edu%2Fhabits-of-expert-software-designers%2F%5D%5BEight%20Habits%20of%20Expert%20Software%20Designers%3A%20An%20Illustrated%20Guide%20%7C%20The%20MIT%20Press%20Reader%5D%5D"><span class="todo TODO">TODO</span> <a href="https://thereader.mitpress.mit.edu/habits-of-expert-software-designers/">Eight Habits of Expert Software Designers: An Illustrated Guide | The MIT Press Reader</a></h3> 494 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fthereader.mitpress.mit.edu%2Fhabits-of-expert-software-designers%2F%5D%5BEight%20Habits%20of%20Expert%20Software%20Designers%3A%20An%20Illustrated%20Guide%20%7C%20The%20MIT%20Press%20Reader%5D%5D"> 495 <p> 496 <span class="timestamp-wrapper"><span class="timestamp">[2019-10-10 Thu 14:38]</span></span> 497 </p> 498 </div> 499 </div> 500 <div id="outline-container-%5B%5Bhttps%3A%2F%2Fwww.inkandswitch.com%2Fend-user-programming.html%5D%5BEnd-user%20programming%5D%5D" class="outline-3"> 501 <h3 id="%5B%5Bhttps%3A%2F%2Fwww.inkandswitch.com%2Fend-user-programming.html%5D%5BEnd-user%20programming%5D%5D"><span class="todo TODO">TODO</span> <a href="https://www.inkandswitch.com/end-user-programming.html">End-user programming</a>   <span class="tag"><span class="inkandswitch">inkandswitch</span></span></h3> 502 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2Fwww.inkandswitch.com%2Fend-user-programming.html%5D%5BEnd-user%20programming%5D%5D"> 503 <p> 504 <span class="timestamp-wrapper"><span class="timestamp">[2020-02-08 Sat 18:02]</span></span> 505 </p> 506 </div> 507 </div> 508 <div id="outline-container-%5B%5Bhttps%3A%2F%2F8thlight.com%2Fblog%2Fjavier-garc%2525C3%2525ADa%2F2019%2F10%2F29%2Ffunctional-lessons.html%5D%5BFunctional%20lessons%20learnt%20%7C%208th%20Light%5D%5D" class="outline-3"> 509 <h3 id="%5B%5Bhttps%3A%2F%2F8thlight.com%2Fblog%2Fjavier-garc%2525C3%2525ADa%2F2019%2F10%2F29%2Ffunctional-lessons.html%5D%5BFunctional%20lessons%20learnt%20%7C%208th%20Light%5D%5D"><span class="todo TODO">TODO</span> <a href="https://8thlight.com/blog/javier-garc%25C3%25ADa/2019/10/29/functional-lessons.html">Functional lessons learnt | 8th Light</a></h3> 510 <div class="outline-text-3" id="text-%5B%5Bhttps%3A%2F%2F8thlight.com%2Fblog%2Fjavier-garc%2525C3%2525ADa%2F2019%2F10%2F29%2Ffunctional-lessons.html%5D%5BFunctional%20lessons%20learnt%20%7C%208th%20Light%5D%5D"> 511 <p> 512 <span class="timestamp-wrapper"><span class="timestamp">[2019-11-06 Wed 09:29]</span></span> 513 </p> 514 </div> 515 </div> 516 </section> 517 </main> 518 <footer id="postamble" class="status"> 519 <footer> 520 <small><a href="/" rel="history">Index</a> • <a href="/sitemap.html">Sitemap</a> • <a href="https://dl.sbr.pm/">Files</a></small><br/> 521 <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/> 522 <small class='copyright'> 523 Content and design by Vincent Demeester 524 (<a rel='licence' href='http://creativecommons.org/licenses/by-nc-sa/3.0/'>Some rights reserved</a>) 525 </small><br /> 526 </footer> 527 </footer> 528 </body> 529 </html>