<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" encoding="UTF-8" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:atom="http://www.w3.org/2005/Atom/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:fireside="http://fireside.fm/modules/rss/fireside">
  <channel>
    <fireside:hostname>web01.fireside.fm</fireside:hostname>
    <fireside:genDate>Tue, 02 Jun 2026 20:12:13 -0500</fireside:genDate>
    <generator>Fireside (https://fireside.fm)</generator>
    <title>Thinking Elixir Podcast - Episodes Tagged with “Developer Tools”</title>
    <link>https://podcast.thinkingelixir.com/tags/developer%20tools</link>
    <pubDate>Tue, 30 May 2023 04:15:00 -0600</pubDate>
    <description>The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community. Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more. Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process. Subscribe to join us on this journey!</description>
    <language>en-us</language>
    <itunes:type>episodic</itunes:type>
    <itunes:subtitle>News and interviews for the Elixir community</itunes:subtitle>
    <itunes:author>ThinkingElixir.com</itunes:author>
    <itunes:summary>The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community. Whether you are already experienced with Elixir or just exploring the language, this show is created with you in mind. We discuss community news, Functional Programming, transitioning from OOP, coding conventions, and more. Guests visit the show to help challenge our assumptions, learn about new developments and grow in the process. Subscribe to join us on this journey!</itunes:summary>
    <itunes:image href="https://media24.fireside.fm/file/fireside-images-2024/podcasts/images/8/811c9756-babe-40ac-8c25-b3bb24e522e0/cover.jpg?v=2"/>
    <itunes:explicit>no</itunes:explicit>
    <itunes:keywords>elixir, programming, web, clustering, phoenix, liveview, news, developer</itunes:keywords>
    <itunes:owner>
      <itunes:name>ThinkingElixir.com</itunes:name>
      <itunes:email>podcast@thinkingelixir.com</itunes:email>
    </itunes:owner>
<itunes:category text="Education">
  <itunes:category text="How To"/>
</itunes:category>
<itunes:category text="News">
  <itunes:category text="Tech News"/>
</itunes:category>
<itunes:category text="Technology"/>
<item>
  <title>153: Elixir Tools and Language Servers</title>
  <link>https://podcast.thinkingelixir.com/153</link>
  <guid isPermaLink="false">33adbf43-2d23-4b29-9624-1f9cd9b2981e</guid>
  <pubDate>Tue, 30 May 2023 04:15:00 -0600</pubDate>
  <author>ThinkingElixir.com</author>
  <enclosure url="https://aphid.fireside.fm/d/1437767933/811c9756-babe-40ac-8c25-b3bb24e522e0/33adbf43-2d23-4b29-9624-1f9cd9b2981e.mp3" length="40769536" type="audio/mpeg"/>
  <itunes:episodeType>full</itunes:episodeType>
  <itunes:author>ThinkingElixir.com</itunes:author>
  <itunes:subtitle>Language servers are crucial for modern developers and Mitch Hanberg is blazing a new path with gen_lsp. Discover how he implemented a Credo LS and hear his vision for Elixir dev tools and his new elixir-tools Github org.</itunes:subtitle>
  <itunes:duration>56:11</itunes:duration>
  <itunes:explicit>no</itunes:explicit>
  <itunes:image href="https://media24.fireside.fm/file/fireside-images-2024/podcasts/images/8/811c9756-babe-40ac-8c25-b3bb24e522e0/cover.jpg?v=2"/>
  <description>&lt;p&gt;Language servers are an important part of modern developer tooling. Mitch Hanberg has made this his new focus with gen_lsp, a generic language server behaviour that he then implemented a Credo language server on top of. Yes, that's right, Credo! We learn what that means and what his new elixir-tools Github organization is intended to do. Listen to Mich share his vision for what Elixir dev tools could be like! We get an update on his Temple project, an alternative to Phoenix templates, we learn about an existing Elixir formatter plugin that may reformat code more to your liking and more!&lt;/p&gt;

&lt;p&gt;Show Notes online - &lt;a href="http://podcast.thinkingelixir.com/153" target="_blank" rel="nofollow noopener"&gt;http://podcast.thinkingelixir.com/153&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Elixir Community News&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0&lt;/a&gt; – Elixir 1.15-rc.0&lt;/li&gt;
&lt;li&gt;&lt;a href="https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80&lt;/a&gt; – Proposal for adding URI sigil&lt;/li&gt;
&lt;li&gt;&lt;a href="https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w&lt;/a&gt; – Proposal for adding UTC sigil&lt;/li&gt;
&lt;li&gt;&lt;a href="https://podcast.thinkingelixir.com/149?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://podcast.thinkingelixir.com/149&lt;/a&gt; – More on Logging from Łukasz Niemier&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/ac_alejos/status/1658943203364544512?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://twitter.com/ac_alejos/status/1658943203364544512&lt;/a&gt; – Exgboost library released&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd&lt;/a&gt; – Livebook example for Exgboost&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=cG8iwK_6KIg?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://www.youtube.com/watch?v=cG8iwK_6KIg&lt;/a&gt; – ElixirConf EU Lightning Talk that visualizes supervisor behaviors using the classic computer game Doom with monster spawning and killing.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/amalbuquerque/doom-supervisor?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/amalbuquerque/doom-supervisor&lt;/a&gt; – Github project for DoomSupervisor&lt;/li&gt;
&lt;li&gt;&lt;a href="http://twitch.com/josevalim?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;http://twitch.com/josevalim&lt;/a&gt; – José Valim has resumed some Live coding and chatting on Twitch.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/josevalim/status/1660300292619923457?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://twitter.com/josevalim/status/1660300292619923457&lt;/a&gt; – José sharing on Twitter that a Twitch Livestream will start&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Do you have some Elixir news to share? Tell us at &lt;a href="https://twitter.com/ThinkingElixir" target="_blank" rel="nofollow noopener"&gt;@ThinkingElixir&lt;/a&gt; or email at &lt;a href="mailto:show@thinkingelixir.com" target="_blank" rel="nofollow noopener"&gt;show@thinkingelixir.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discussion Resources&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://github.com/elixir-tools/credo-language-server?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/elixir-tools/credo-language-server&lt;/a&gt; – LSP implementation for Credo&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/elixir-tools/gen_lsp?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/elixir-tools/gen_lsp&lt;/a&gt; – A behavior for creating language servers&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/elixir-tools?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/elixir-tools&lt;/a&gt; – Githug organization&lt;/li&gt;
&lt;li&gt;&lt;a href="https://simplebet.io/index.html?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://simplebet.io/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/elixir-lsp/elixir-ls?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/elixir-lsp/elixir-ls&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/mitchhanberg/status/1648327430912843779?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://twitter.com/mitchhanberg/status/1648327430912843779&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/&lt;/a&gt; – Blog post about the Credo Language Server and Elixir Tools&lt;/li&gt;
&lt;li&gt;&lt;a href="https://podcast.thinkingelixir.com/92?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://podcast.thinkingelixir.com/92&lt;/a&gt; – Previous interview about Temple (March 29th, 2022)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/&lt;/a&gt; – Language Server spec from Microsoft&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=Ug-SEozyG1A?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://www.youtube.com/watch?v=Ug-SEozyG1A&lt;/a&gt; – Code BEAM talk - "OTP Process Abstractions with proc lib"&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/adobe/elixir-styler?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/adobe/elixir-styler&lt;/a&gt; – Formatter plugin from Adobe&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/tree-sitter/tree-sitter?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/tree-sitter/tree-sitter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/elixir-toniq/norm?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/elixir-toniq/norm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/mhanberg/temple?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/mhanberg/temple&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/petalframework/petal_components?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/petalframework/petal_components&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Guest Information&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/mitchhanberg?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://twitter.com/mitchhanberg&lt;/a&gt; – on Twitter&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/mhanberg/?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://github.com/mhanberg/&lt;/a&gt; – on Github&lt;/li&gt;
&lt;li&gt;&lt;a href="https://hachyderm.io/@mitchhanberg?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://hachyderm.io/@mitchhanberg&lt;/a&gt; – on Fediverse&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.mitchellhanberg.com/?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://www.mitchellhanberg.com/&lt;/a&gt; – Blog&lt;/li&gt;
&lt;li&gt;&lt;a href="https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg?utm_source=thinkingelixir&amp;amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener"&gt;https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg&lt;/a&gt; – Fund raising page for FightCRC&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Find us online&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Message the show - &lt;a href="https://twitter.com/ThinkingElixir" target="_blank" rel="nofollow noopener"&gt;@ThinkingElixir&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Message the show on Fediverse - &lt;a href="https://genserver.social/ThinkingElixir" target="_blank" rel="nofollow noopener"&gt;@ThinkingElixir@genserver.social&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Email the show - &lt;a href="mailto:show@thinkingelixir.com" target="_blank" rel="nofollow noopener"&gt;show@thinkingelixir.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Mark Ericksen - &lt;a href="https://twitter.com/brainlid" target="_blank" rel="nofollow noopener"&gt;@brainlid&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Mark Ericksen on Fediverse - &lt;a href="https://genserver.social/brainlid" target="_blank" rel="nofollow noopener"&gt;@brainlid@genserver.social&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;David Bernheisel - &lt;a href="https://twitter.com/bernheisel" target="_blank" rel="nofollow noopener"&gt;@bernheisel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;David Bernheisel on Fediverse - &lt;a href="https://genserver.social/dbern" target="_blank" rel="nofollow noopener"&gt;@dbern@genserver.social&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Cade Ward - &lt;a href="https://twitter.com/cadebward" target="_blank" rel="nofollow noopener"&gt;@cadebward&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Cade Ward on Fediverse - &lt;a href="https://genserver.social/cadebward" target="_blank" rel="nofollow noopener"&gt;@cadebward@genserver.social&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;
</description>
  <itunes:keywords>elixir, lsp, credo, visual studio code, developer tools</itunes:keywords>
  <content:encoded>
    <![CDATA[<p>Language servers are an important part of modern developer tooling. Mitch Hanberg has made this his new focus with gen_lsp, a generic language server behaviour that he then implemented a Credo language server on top of. Yes, that's right, Credo! We learn what that means and what his new elixir-tools Github organization is intended to do. Listen to Mich share his vision for what Elixir dev tools could be like! We get an update on his Temple project, an alternative to Phoenix templates, we learn about an existing Elixir formatter plugin that may reformat code more to your liking and more!</p>

<p>Show Notes online - <a href="http://podcast.thinkingelixir.com/153" target="_blank" rel="nofollow noopener">http://podcast.thinkingelixir.com/153</a></p>

<p><strong>Elixir Community News</strong></p>

<ul>
<li><a href="https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0</a> – Elixir 1.15-rc.0</li>
<li><a href="https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80</a> – Proposal for adding URI sigil</li>
<li><a href="https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w</a> – Proposal for adding UTC sigil</li>
<li><a href="https://podcast.thinkingelixir.com/149?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://podcast.thinkingelixir.com/149</a> – More on Logging from Łukasz Niemier</li>
<li><a href="https://twitter.com/ac_alejos/status/1658943203364544512?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/ac_alejos/status/1658943203364544512</a> – Exgboost library released</li>
<li><a href="https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd</a> – Livebook example for Exgboost</li>
<li><a href="https://www.youtube.com/watch?v=cG8iwK_6KIg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.youtube.com/watch?v=cG8iwK_6KIg</a> – ElixirConf EU Lightning Talk that visualizes supervisor behaviors using the classic computer game Doom with monster spawning and killing.</li>
<li><a href="https://github.com/amalbuquerque/doom-supervisor?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/amalbuquerque/doom-supervisor</a> – Github project for DoomSupervisor</li>
<li><a href="http://twitch.com/josevalim?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">http://twitch.com/josevalim</a> – José Valim has resumed some Live coding and chatting on Twitch.</li>
<li><a href="https://twitter.com/josevalim/status/1660300292619923457?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/josevalim/status/1660300292619923457</a> – José sharing on Twitter that a Twitch Livestream will start</li>
</ul>

<p>Do you have some Elixir news to share? Tell us at <a href="https://twitter.com/ThinkingElixir" target="_blank" rel="nofollow noopener">@ThinkingElixir</a> or email at <a href="mailto:show@thinkingelixir.com" target="_blank" rel="nofollow noopener">show@thinkingelixir.com</a></p>

<p><strong>Discussion Resources</strong></p>

<ul>
<li><a href="https://github.com/elixir-tools/credo-language-server?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-tools/credo-language-server</a> – LSP implementation for Credo</li>
<li><a href="https://github.com/elixir-tools/gen_lsp?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-tools/gen_lsp</a> – A behavior for creating language servers</li>
<li><a href="https://github.com/elixir-tools?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-tools</a> – Githug organization</li>
<li><a href="https://simplebet.io/index.html?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://simplebet.io/index.html</a></li>
<li><a href="https://github.com/elixir-lsp/elixir-ls?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-lsp/elixir-ls</a></li>
<li><a href="https://twitter.com/mitchhanberg/status/1648327430912843779?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/mitchhanberg/status/1648327430912843779</a></li>
<li><a href="https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/</a> – Blog post about the Credo Language Server and Elixir Tools</li>
<li><a href="https://podcast.thinkingelixir.com/92?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://podcast.thinkingelixir.com/92</a> – Previous interview about Temple (March 29th, 2022)</li>
<li><a href="https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/</a> – Language Server spec from Microsoft</li>
<li><a href="https://www.youtube.com/watch?v=Ug-SEozyG1A?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.youtube.com/watch?v=Ug-SEozyG1A</a> – Code BEAM talk - "OTP Process Abstractions with proc lib"</li>
<li><a href="https://github.com/adobe/elixir-styler?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/adobe/elixir-styler</a> – Formatter plugin from Adobe</li>
<li><a href="https://github.com/tree-sitter/tree-sitter?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/tree-sitter/tree-sitter</a></li>
<li><a href="https://github.com/elixir-toniq/norm?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-toniq/norm</a></li>
<li><a href="https://github.com/mhanberg/temple?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/mhanberg/temple</a></li>
<li><a href="https://github.com/petalframework/petal_components?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/petalframework/petal_components</a></li>
</ul>

<p><strong>Guest Information</strong></p>

<ul>
<li><a href="https://twitter.com/mitchhanberg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/mitchhanberg</a> – on Twitter</li>
<li><a href="https://github.com/mhanberg/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/mhanberg/</a> – on Github</li>
<li><a href="https://hachyderm.io/@mitchhanberg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://hachyderm.io/@mitchhanberg</a> – on Fediverse</li>
<li><a href="https://www.mitchellhanberg.com/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.mitchellhanberg.com/</a> – Blog</li>
<li><a href="https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg</a> – Fund raising page for FightCRC</li>
</ul>

<p><strong>Find us online</strong></p>

<ul>
<li>Message the show - <a href="https://twitter.com/ThinkingElixir" target="_blank" rel="nofollow noopener">@ThinkingElixir</a></li>
<li>Message the show on Fediverse - <a href="https://genserver.social/ThinkingElixir" target="_blank" rel="nofollow noopener">@ThinkingElixir@genserver.social</a></li>
<li>Email the show - <a href="mailto:show@thinkingelixir.com" target="_blank" rel="nofollow noopener">show@thinkingelixir.com</a></li>
<li>Mark Ericksen - <a href="https://twitter.com/brainlid" target="_blank" rel="nofollow noopener">@brainlid</a></li>
<li>Mark Ericksen on Fediverse - <a href="https://genserver.social/brainlid" target="_blank" rel="nofollow noopener">@brainlid@genserver.social</a></li>
<li>David Bernheisel - <a href="https://twitter.com/bernheisel" target="_blank" rel="nofollow noopener">@bernheisel</a></li>
<li>David Bernheisel on Fediverse - <a href="https://genserver.social/dbern" target="_blank" rel="nofollow noopener">@dbern@genserver.social</a></li>
<li>Cade Ward - <a href="https://twitter.com/cadebward" target="_blank" rel="nofollow noopener">@cadebward</a></li>
<li>Cade Ward on Fediverse - <a href="https://genserver.social/cadebward" target="_blank" rel="nofollow noopener">@cadebward@genserver.social</a></li>
</ul><p>Sponsored By:</p><ul><li><a rel="nofollow" href="https://fly.io">Fly.io</a>: <a rel="nofollow" href="https://fly.io">Fly.io is a great place to deploy your next Phoenix application! Check them out!
</a></li></ul>]]>
  </content:encoded>
  <itunes:summary>
    <![CDATA[<p>Language servers are an important part of modern developer tooling. Mitch Hanberg has made this his new focus with gen_lsp, a generic language server behaviour that he then implemented a Credo language server on top of. Yes, that's right, Credo! We learn what that means and what his new elixir-tools Github organization is intended to do. Listen to Mich share his vision for what Elixir dev tools could be like! We get an update on his Temple project, an alternative to Phoenix templates, we learn about an existing Elixir formatter plugin that may reformat code more to your liking and more!</p>

<p>Show Notes online - <a href="http://podcast.thinkingelixir.com/153" target="_blank" rel="nofollow noopener">http://podcast.thinkingelixir.com/153</a></p>

<p><strong>Elixir Community News</strong></p>

<ul>
<li><a href="https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-lang/elixir/releases/tag/v1.15.0-rc.0</a> – Elixir 1.15-rc.0</li>
<li><a href="https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://groups.google.com/g/elixir-lang-core/c/CjY7W9xvu80</a> – Proposal for adding URI sigil</li>
<li><a href="https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://groups.google.com/g/elixir-lang-core/c/MfB7GJSXV5w</a> – Proposal for adding UTC sigil</li>
<li><a href="https://podcast.thinkingelixir.com/149?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://podcast.thinkingelixir.com/149</a> – More on Logging from Łukasz Niemier</li>
<li><a href="https://twitter.com/ac_alejos/status/1658943203364544512?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/ac_alejos/status/1658943203364544512</a> – Exgboost library released</li>
<li><a href="https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/acalejos/exgboost/blob/main/notebooks/iris_classification.livemd</a> – Livebook example for Exgboost</li>
<li><a href="https://www.youtube.com/watch?v=cG8iwK_6KIg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.youtube.com/watch?v=cG8iwK_6KIg</a> – ElixirConf EU Lightning Talk that visualizes supervisor behaviors using the classic computer game Doom with monster spawning and killing.</li>
<li><a href="https://github.com/amalbuquerque/doom-supervisor?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/amalbuquerque/doom-supervisor</a> – Github project for DoomSupervisor</li>
<li><a href="http://twitch.com/josevalim?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">http://twitch.com/josevalim</a> – José Valim has resumed some Live coding and chatting on Twitch.</li>
<li><a href="https://twitter.com/josevalim/status/1660300292619923457?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/josevalim/status/1660300292619923457</a> – José sharing on Twitter that a Twitch Livestream will start</li>
</ul>

<p>Do you have some Elixir news to share? Tell us at <a href="https://twitter.com/ThinkingElixir" target="_blank" rel="nofollow noopener">@ThinkingElixir</a> or email at <a href="mailto:show@thinkingelixir.com" target="_blank" rel="nofollow noopener">show@thinkingelixir.com</a></p>

<p><strong>Discussion Resources</strong></p>

<ul>
<li><a href="https://github.com/elixir-tools/credo-language-server?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-tools/credo-language-server</a> – LSP implementation for Credo</li>
<li><a href="https://github.com/elixir-tools/gen_lsp?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-tools/gen_lsp</a> – A behavior for creating language servers</li>
<li><a href="https://github.com/elixir-tools?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-tools</a> – Githug organization</li>
<li><a href="https://simplebet.io/index.html?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://simplebet.io/index.html</a></li>
<li><a href="https://github.com/elixir-lsp/elixir-ls?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-lsp/elixir-ls</a></li>
<li><a href="https://twitter.com/mitchhanberg/status/1648327430912843779?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/mitchhanberg/status/1648327430912843779</a></li>
<li><a href="https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.mitchellhanberg.com/credo-language-server-and-the-birth-of-elixir-tools/</a> – Blog post about the Credo Language Server and Elixir Tools</li>
<li><a href="https://podcast.thinkingelixir.com/92?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://podcast.thinkingelixir.com/92</a> – Previous interview about Temple (March 29th, 2022)</li>
<li><a href="https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/</a> – Language Server spec from Microsoft</li>
<li><a href="https://www.youtube.com/watch?v=Ug-SEozyG1A?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.youtube.com/watch?v=Ug-SEozyG1A</a> – Code BEAM talk - "OTP Process Abstractions with proc lib"</li>
<li><a href="https://github.com/adobe/elixir-styler?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/adobe/elixir-styler</a> – Formatter plugin from Adobe</li>
<li><a href="https://github.com/tree-sitter/tree-sitter?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/tree-sitter/tree-sitter</a></li>
<li><a href="https://github.com/elixir-toniq/norm?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/elixir-toniq/norm</a></li>
<li><a href="https://github.com/mhanberg/temple?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/mhanberg/temple</a></li>
<li><a href="https://github.com/petalframework/petal_components?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/petalframework/petal_components</a></li>
</ul>

<p><strong>Guest Information</strong></p>

<ul>
<li><a href="https://twitter.com/mitchhanberg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://twitter.com/mitchhanberg</a> – on Twitter</li>
<li><a href="https://github.com/mhanberg/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://github.com/mhanberg/</a> – on Github</li>
<li><a href="https://hachyderm.io/@mitchhanberg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://hachyderm.io/@mitchhanberg</a> – on Fediverse</li>
<li><a href="https://www.mitchellhanberg.com/?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://www.mitchellhanberg.com/</a> – Blog</li>
<li><a href="https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg?utm_source=thinkingelixir&amp;utm_medium=shownotes" target="_blank" rel="nofollow noopener">https://champions-of-hope.funraise.org/fundraiser/mitchell-hanberg</a> – Fund raising page for FightCRC</li>
</ul>

<p><strong>Find us online</strong></p>

<ul>
<li>Message the show - <a href="https://twitter.com/ThinkingElixir" target="_blank" rel="nofollow noopener">@ThinkingElixir</a></li>
<li>Message the show on Fediverse - <a href="https://genserver.social/ThinkingElixir" target="_blank" rel="nofollow noopener">@ThinkingElixir@genserver.social</a></li>
<li>Email the show - <a href="mailto:show@thinkingelixir.com" target="_blank" rel="nofollow noopener">show@thinkingelixir.com</a></li>
<li>Mark Ericksen - <a href="https://twitter.com/brainlid" target="_blank" rel="nofollow noopener">@brainlid</a></li>
<li>Mark Ericksen on Fediverse - <a href="https://genserver.social/brainlid" target="_blank" rel="nofollow noopener">@brainlid@genserver.social</a></li>
<li>David Bernheisel - <a href="https://twitter.com/bernheisel" target="_blank" rel="nofollow noopener">@bernheisel</a></li>
<li>David Bernheisel on Fediverse - <a href="https://genserver.social/dbern" target="_blank" rel="nofollow noopener">@dbern@genserver.social</a></li>
<li>Cade Ward - <a href="https://twitter.com/cadebward" target="_blank" rel="nofollow noopener">@cadebward</a></li>
<li>Cade Ward on Fediverse - <a href="https://genserver.social/cadebward" target="_blank" rel="nofollow noopener">@cadebward@genserver.social</a></li>
</ul><p>Sponsored By:</p><ul><li><a rel="nofollow" href="https://fly.io">Fly.io</a>: <a rel="nofollow" href="https://fly.io">Fly.io is a great place to deploy your next Phoenix application! Check them out!
</a></li></ul>]]>
  </itunes:summary>
</item>
  </channel>
</rss>
