A place to cache linked articles (think custom and personal wayback machine)
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

1年前
1年前
1年前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. <!doctype html><!-- This is a valid HTML5 document. -->
  2. <!-- Screen readers, SEO, extensions and so on. -->
  3. <html lang="fr">
  4. <!-- Has to be within the first 1024 bytes, hence before the `title` element
  5. See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
  6. <meta charset="utf-8">
  7. <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
  8. <!-- The viewport meta is quite crowded and we are responsible for that.
  9. See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
  10. <meta name="viewport" content="width=device-width,initial-scale=1">
  11. <!-- Required to make a valid HTML5 document. -->
  12. <title>The one about AI (archive) — David Larlet</title>
  13. <meta name="description" content="Publication mise en cache pour en conserver une trace.">
  14. <!-- That good ol' feed, subscribe :). -->
  15. <link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/">
  16. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  17. <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png">
  18. <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png">
  19. <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png">
  20. <link rel="manifest" href="/static/david/icons2/site.webmanifest">
  21. <link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c">
  22. <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
  23. <meta name="msapplication-TileColor" content="#f7f7f7">
  24. <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
  25. <meta name="theme-color" content="#f7f7f7" media="(prefers-color-scheme: light)">
  26. <meta name="theme-color" content="#272727" media="(prefers-color-scheme: dark)">
  27. <!-- Is that even respected? Retrospectively? What a shAItshow…
  28. https://neil-clarke.com/block-the-bots-that-feed-ai-models-by-scraping-your-website/ -->
  29. <meta name="robots" content="noai, noimageai">
  30. <!-- Documented, feel free to shoot an email. -->
  31. <link rel="stylesheet" href="/static/david/css/style_2021-01-20.css">
  32. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  33. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  34. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  35. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  36. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  37. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  38. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  39. <script>
  40. function toggleTheme(themeName) {
  41. document.documentElement.classList.toggle(
  42. 'forced-dark',
  43. themeName === 'dark'
  44. )
  45. document.documentElement.classList.toggle(
  46. 'forced-light',
  47. themeName === 'light'
  48. )
  49. }
  50. const selectedTheme = localStorage.getItem('theme')
  51. if (selectedTheme !== 'undefined') {
  52. toggleTheme(selectedTheme)
  53. }
  54. </script>
  55. <meta name="robots" content="noindex, nofollow">
  56. <meta content="origin-when-cross-origin" name="referrer">
  57. <!-- Canonical URL for SEO purposes -->
  58. <link rel="canonical" href="https://macwright.com/2023/04/15/ai.html">
  59. <body class="remarkdown h1-underline h2-underline h3-underline em-underscore hr-center ul-star pre-tick" data-instant-intensity="viewport-all">
  60. <article>
  61. <header>
  62. <h1>The one about AI</h1>
  63. </header>
  64. <nav>
  65. <p class="center">
  66. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  67. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
  68. </svg> Accueil</a> •
  69. <a href="https://macwright.com/2023/04/15/ai.html" title="Lien vers le contenu original">Source originale</a>
  70. </p>
  71. </nav>
  72. <hr>
  73. <p>Like everyone, I’ve been thinking about AI. It’s already useful, in a way that the previous big thing, crypto, wasn’t. I don’t think it’ll become generalized AI - I think the <a href="https://en.wikipedia.org/wiki/AI_winter">AI winter cycle</a> is the base case and human-like intelligence is qualitatively different than LLM, no matter how many terabytes of training data you throw at them. But that isn’t what this article is about.</p>
  74. <p>No, it’s about other stuff, particularly technological change, happiness, and craft.</p>
  75. <p>Optimists and pessimists agree that AI will change the world.</p>
  76. <p>If it goes wrong, AI will continue to do a <a href="https://www.technologyreview.com/2019/01/21/137783/algorithms-criminal-justice-ai/">bad job suggesting sentences for criminals</a> and <a href="https://www.statnews.com/2017/09/05/watson-ibm-cancer/">promise, but fail, to diagnose cancer</a>, and find its way into a lot of other jobs that it’s not qualified for – much like an overconfident young man, which is also its preferred writing style. Maybe it’ll gain sentience and destroy us all.</p>
  77. <p>Or it goes well, and it gives us superpowers: it’s <a href="https://every.to/chain-of-thought/the-end-of-organizing">the future of notetaking</a>, <a href="https://every.to/chain-of-thought/gpt-3-is-the-best-journal-you-ve-ever-used">a better journal</a>, it helps us <a href="https://every.to/chain-of-thought/linus-lee-is-living-with-ai">think better and get more done</a>. Maybe it’ll gain sentience and be our best friend.</p>
  78. <p>But there’ll be winners and losers – everyone agrees. If it’s good, then the productivity gains will be unevenly distributed and those with only basic abilities - in programming, writing, music - will be replaced by the machines, or by someone using a machine to produce a lot more of the product. If it’s bad, the people using the AI will benefit but those at the other end of the algorithm, those subjected to AI-powered policing, healthcare, or hiring are subject to the inaccuracy, bias, or malice built into the system.</p>
  79. <p>I suspect we’ll get part of both futures. AI will be integrated into a lot of things and become like the <a href="https://en.wikipedia.org/wiki/History_of_statistics#Bayesian_statistics">bayesian spam filters</a> that now seem obvious and simple. It’ll be implemented in places it doesn’t belong, and cause havoc. Jobs will shift, some becoming more in demand and others less.</p>
  80. <p>Enough context, let’s talk about history and vibes and happiness.</p>
  81. <p>AI feels like a reshuffling.</p>
  82. <p><picture><source srcset="/images/2023-04-15-ai-execution-in-the-french-revolution.webp" type="image/webp"><img alt="Execution in the French Revolution" src="/images/2023-04-15-ai-execution-in-the-french-revolution.jpg"></source></picture></p>
  83. <figcaption><a href="https://en.wikipedia.org/wiki/French_Revolution#/media/File:Execution_of_Louis_XVI.jpg">Execution of Louis XVI in the Place de la Concorde, facing the empty pedestal where the statue of his grandfather, Louis XV previously stood</a></figcaption>
  84. <p>Consider the French Revolution, which the history books say benefited the third estate, roughly the working class, and demoted the first and second, the priests and nobility, sometimes, ahem, dramatically so. Or the <a href="https://en.wikipedia.org/wiki/Eastern_Bloc">evolution of the Eastern Bloc</a>, when socialist and communist countries <a href="https://www.csmonitor.com/1983/0324/032433.html">introduced elements of capitalism</a>, creating new winners &amp; losers from those who were in the right place &amp; time.</p>
  85. <p>Fortunes are made and lost in a reshuffling, for those situated in the right place, class, and job – or those who rush to realign themselves with the new wave. We saw a brash, stupid version of this ideology with crypto’s motto, <a href="https://www.coindesk.com/markets/2021/03/03/the-decoder-have-fun-staying-poor/">Have Fun Staying Poor</a> - that everyone who didn’t own Bitcoin would be left behind in the new economy. But I see a variation of it every day from people writing about AI. AI is going to change everything: <em>here’s how to adapt</em>, <em>here’s who will win out</em>, writes lots of people on LinkedIn and Twitter.</p>
  86. <p>We in the tech industry are used to the ground shifting under our feet: when there’s some paradigm that lets us think less or do more, most of us jump to it. We might choose parts of the industry based on our tolerance for change – embedded programming in 2023 is much more similar to embedded programming in 2000 than web programming is to the same. But every part of the industry has churn.</p>
  87. <p>AI feels different though, in both the micro and macro.</p>
  88. <p>In the micro sense, more than anything that came before it, AI is a black box. It’s not even like a C++ compiler or React.js’s internals, something that’s complex and huge, but ultimately understandable. AI is not understood deeply by its creators. Fine tuning it is more an art than a science. Bugs are not fixed directly, but indirectly, by adding more to the input, or cleaning up the inputs. And the AI models come to us from familiar deities - Microsoft, Google, Facebook. The costs right now are so enormous, like <a href="https://www.semafor.com/article/04/07/2023/stability-ai-is-on-shaky-ground-as-it-burns-through-cash">Stability AI’s 75 million dollar server bill</a>, that no small startup is going to compete on the same ground. So the vast majority of “AI startups” are building on someone else’s model, and tinkering with LLMs for fun means using an existing model, probably the one written by Facebook or Microsoft-funded researchers.</p>
  89. <p>But in the macro sense, it’s also different: I keep hearing, and thinking, that it’s going to replace all the junior developers. It’s going to empower the seniors, their managers, the idea people, the CEOs - there’ll be fewer salaries to pay, and the least skilled are the ones to be eliminated. This, you hear from venture capitalists, CEOs, and senior developers: they might be right, but they also need to be right. Basically, just cranking out code won’t matter as much - CoPilot can do that. No longer will people write shortform content for travel blogs and paid promotion columns - ChatGPT will write it.</p>
  90. <p>I have a few thoughts about this.</p>
  91. <p><picture><source srcset="/images/2023-04-15-ai-new-jersey-gas-station.webp" type="image/webp"><img alt="New Jersey Gas Station" src="/images/2023-04-15-ai-new-jersey-gas-station.jpg"></source></picture></p>
  92. <figcaption><a href="https://www.flickr.com/photos/dacosta1/32279343448/">New Jersey Gas Station (cc) Victor Reynolds Flickr</a></figcaption>
  93. <p>I grew up in New Jersey. It’s one of the two states where you can’t pump your own gas. I first had to fill up a car with gas midway through college, and needed a friend to teach me how. Despite it being obviously possible to pump one’s own gas, New Jersey will probably <a href="https://www.cnn.com/2022/06/18/energy/new-jersey-oregon-pump-your-own-gas/index.html">keep that policy</a>.<sup id="fnref:1" role="doc-noteref"></sup></p>
  94. <p>The point is, those jobs were created because of a bizarre law, and they could be lost by removing that law. And all jobs are on that scale: they’re all kind of made-up. You can take an industry and increase salaries by unionizing or restricting the labor supply by requiring more qualifications, or you can decrease salaries by dismantling workers’ rights. You can create a job out of thin air, like a gas station pump attendant or a marijuana dispensary salesman, or remove a class of jobs, like elephant hunting or TV repair.</p>
  95. <p>To a large extent, we get the labor market we aim for with policy, and there is no natural state to it: there are entire categories of jobs that could have been automated away a decade ago but won’t be. Employment and compensation are the output of a lot of different factors: <a href="https://macwright.com/2022/07/28/youre-paid-what-youre-worth.html">You’re Paid What You’re Worth</a> is a great guide to those.</p>
  96. <p>So I’m not necessarily excited for entry-level jobs to become automated away. I’m not convinced that they <em>have to</em> be automated away. Treating automation as a technological eventuality feels hollow: we don’t have automated kiosks at McDonalds because they were just invented, we have them because it helps the company’s margins. If McDonalds wanted a better customer experience, it could do the opposite. And then if activist investors get angry, it’ll go back to the touchpads again. And until we have UBI, which might happen never, it seems much better for there to be a variety of jobs for a variety of people than to make the job market even more selective. Average people need jobs, to live.</p>
  97. <p>I also just don’t especially want to stop thinking about code. I don’t want to stop writing sentences in my own voice. I get a lot of joy from craft. It’s not a universal attitude toward work, but I’ve always been thankful that programming is a <em>craft</em> that pays a good living wage. I’d be a luthier, photographer, or, who knows, if those jobs were as viable and available. But programming lets you write and think all day, and reliably pay my rent. Writing, both code and prose, for me, is both an end product and an end in itself. I don’t want to automate away the things that give me joy.</p>
  98. <p>And that is something that I’m more and more aware of as I get older – sources of joy. It’s good to diversify them, to keep track of them, because it’s way too easy to run out. Or to end up with just one, and then lose it.</p>
  99. <p>The thing about luddites is that they make good punchlines, but they were all people.</p>
  100. <p><picture><source srcset="/images/2023-04-15-ai-manuscript-with-illumination.webp" type="image/webp"><img alt="Manuscript with illumination" src="/images/2023-04-15-ai-manuscript-with-illumination.jpg"></source></picture></p>
  101. <figcaption><a href="https://en.wikipedia.org/wiki/Illuminated_manuscript#/media/File:Old_Armenian_Manuscript.jpg">Definitions of Philosophy of David the Invincible; 1280; vellum; Matenadaran (Yerevan, Armenia)</a></figcaption>
  102. <p>Someone was there making <a href="https://en.wikipedia.org/wiki/Illuminated_manuscript">illuminated manuscripts</a> when movable type was invented, and they said - correctly - that it sucks and is much less fun. Of course movable type and the printing press would win out and those laborers were the last of their kind, but if we hopped into a time machine and watched them work, would we make fun of them for not getting with the times? Doesn’t that kind of seem wrong? They weren’t wrong to enjoy their craft and mourn its loss.</p>
  103. <p>And this is not to say that work is free of tedium. To some extent, we all benefit from spellcheck and pre-mixed paints and code completion and all kinds of assistance. And the new writer putting out five stories a day as she tries to earn the right to write front-page headlines probably isn’t savoring every trend piece about bottled water or ashwagandha. But a newspaper with <em>only</em> headline writers, only abstract thinkers at the top of their game commanding ChatGPT to write the unimportant stuff - is that a future that we want, for anyone? How does one learn to write, learn what’s good or bad, learn how to have a journalistic voice? And what about the people who have the writing skills to reliably write a story a day but don’t aspire to or don’t have the ability to be a star – are they cut out of the industry entirely?</p>
  104. <p>Universal Basic Income, maybe. Appealing across the political spectrum, for troubling reasons.<sup id="fnref:2" role="doc-noteref"></sup> Sam Altman, the OpenAI one, <a href="https://futurism.com/the-byte/basic-income-y-combinator">tried</a> and <a href="https://www.wired.com/story/y-combinator-learns-basic-income-is-not-so-basic-after-all/">delayed</a> and never re-started a plan to research UBI. I don’t know. To me, it feels like a talking point unless someone has a real plan to actually do it, to get the private money, or government policy in place, now and before it’s too late. Tech has been terrific at stalling legislation but unsuccessful in creating it: the most likely outcome seems like we put forth the idea of UBI to blame the government for not doing it.</p>
  105. <p>So, it’s all about adapting, or in another word, opportunism. You go where the future is and stay open minded about what that is. Even if it’s a bubble, I think that Matt Levine’s words are gospel:</p>
  106. <blockquote><p>My basic view of bubbles is that if you can identify a bubble, and you have some free time, the right move is to sell into the bubble. Not sell short, mind you, which is risky; you don’t know when the bubble will pop. Sell long. Get into the business that is bubbly, because that’s where the money is. There is demand; become the supply. -<a href="https://www.bloomberg.com/opinion/articles/2022-10-11/anti-esg-can-be-good-business">Anti-ESG Can Be Good Business</a></p></blockquote>
  107. <p>Where does this all land? I’m moderately optimistic about AI.</p>
  108. <p>But I think the thing that excites a lot of people about it is the reorganization, the shift, the reward for opportunism. Navigating that change in market opportunity and being <em>there</em> is its own reward to a lot of people. And it should be: this is the essence of progress in an industrialized society. The relationships, the strategy, matters much more to many people than craft or art: what goes into the production of a thing is just a variable to be minimized.</p>
  109. <p>How people feel about AI has a lot to do with how they think society should be structured, what makes work valuable, and what they truly enjoy doing.</p>
  110. <p>I feel in the middle, as someone who writes prose and code on a regular basis but also helps guide companies, people, and do other sorts of <em>founder</em> stuff. All I’m saying is, whichever way it turns out, spare me in the revolution.</p>
  111. </article>
  112. <hr>
  113. <footer>
  114. <p>
  115. <a href="/david/" title="Aller à l’accueil"><svg class="icon icon-home">
  116. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-home"></use>
  117. </svg> Accueil</a> •
  118. <a href="/david/log/" title="Accès au flux RSS"><svg class="icon icon-rss2">
  119. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-rss2"></use>
  120. </svg> Suivre</a> •
  121. <a href="http://larlet.com" title="Go to my English profile" data-instant><svg class="icon icon-user-tie">
  122. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-user-tie"></use>
  123. </svg> Pro</a> •
  124. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel"><svg class="icon icon-mail">
  125. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-mail"></use>
  126. </svg> Email</a> •
  127. <abbr class="nowrap" title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340"><svg class="icon icon-hammer2">
  128. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-hammer2"></use>
  129. </svg> Légal</abbr>
  130. </p>
  131. <template id="theme-selector">
  132. <form>
  133. <fieldset>
  134. <legend><svg class="icon icon-brightness-contrast">
  135. <use xlink:href="/static/david/icons2/symbol-defs-2021-12.svg#icon-brightness-contrast"></use>
  136. </svg> Thème</legend>
  137. <label>
  138. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  139. </label>
  140. <label>
  141. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  142. </label>
  143. <label>
  144. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  145. </label>
  146. </fieldset>
  147. </form>
  148. </template>
  149. </footer>
  150. <script src="/static/david/js/instantpage-5.1.0.min.js" type="module"></script>
  151. <script>
  152. function loadThemeForm(templateName) {
  153. const themeSelectorTemplate = document.querySelector(templateName)
  154. const form = themeSelectorTemplate.content.firstElementChild
  155. themeSelectorTemplate.replaceWith(form)
  156. form.addEventListener('change', (e) => {
  157. const chosenColorScheme = e.target.value
  158. localStorage.setItem('theme', chosenColorScheme)
  159. toggleTheme(chosenColorScheme)
  160. })
  161. const selectedTheme = localStorage.getItem('theme')
  162. if (selectedTheme && selectedTheme !== 'undefined') {
  163. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  164. }
  165. }
  166. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  167. window.addEventListener('load', () => {
  168. let hasDarkRules = false
  169. for (const styleSheet of Array.from(document.styleSheets)) {
  170. let mediaRules = []
  171. for (const cssRule of styleSheet.cssRules) {
  172. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  173. continue
  174. }
  175. // WARNING: Safari does not have/supports `conditionText`.
  176. if (cssRule.conditionText) {
  177. if (cssRule.conditionText !== prefersColorSchemeDark) {
  178. continue
  179. }
  180. } else {
  181. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  182. continue
  183. }
  184. }
  185. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  186. }
  187. // WARNING: do not try to insert a Rule to a styleSheet you are
  188. // currently iterating on, otherwise the browser will be stuck
  189. // in a infinite loop…
  190. for (const mediaRule of mediaRules) {
  191. styleSheet.insertRule(mediaRule.cssText)
  192. hasDarkRules = true
  193. }
  194. }
  195. if (hasDarkRules) {
  196. loadThemeForm('#theme-selector')
  197. }
  198. })
  199. </script>
  200. </body>
  201. </html>