<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: m8s</title><link>https://news.ycombinator.com/user?id=m8s</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 20 Jul 2026 09:48:59 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=m8s" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by m8s in "Gleam Is Now on Tangled"]]></title><description><![CDATA[
<p>There is no source because it's not true</p>
]]></description><pubDate>Sun, 19 Jul 2026 01:00:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=48964024</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=48964024</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48964024</guid></item><item><title><![CDATA[New comment by m8s in "Gleam v1.17.0"]]></title><description><![CDATA[
<p>Hmm they all seem to be working for me</p>
]]></description><pubDate>Wed, 03 Jun 2026 02:45:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=48379306</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=48379306</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48379306</guid></item><item><title><![CDATA[New comment by m8s in "Google Workspace CLI"]]></title><description><![CDATA[
<p>I’ve been really unhappy with pretty much every Google product I’ve used except their consumer productivity tools — Gmail, Calendar, and Meet. Diving into Google Cloud has been extremely unsatisfactory</p>
]]></description><pubDate>Thu, 05 Mar 2026 03:50:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=47257310</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=47257310</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47257310</guid></item><item><title><![CDATA[New comment by m8s in "Parrot – type-safe SQL in Gleam, supports SQlite, PostgreSQL and MySQL"]]></title><description><![CDATA[
<p>The two feel very different. Elixir is introducing gradual set-theoretic typing (<a href="https://hexdocs.pm/elixir/1.18.4/gradual-set-theoretic-types.html" rel="nofollow">https://hexdocs.pm/elixir/1.18.4/gradual-set-theoretic-types...</a>) while Gleam has a static Hindley-Milner style type system.<p>To me, Gleam feels like if Elm’s type system met Rust’s syntax. I really like it. But I also really liked Elixir too, I just can’t live without Gleam’s type system anymore.</p>
]]></description><pubDate>Sun, 05 Oct 2025 07:08:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=45479487</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=45479487</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45479487</guid></item><item><title><![CDATA[New comment by m8s in "I spent five years building a webapp and got my first $1 (2022)"]]></title><description><![CDATA[
<p>It’s a good lesson. We found PMF with a shared google sheet and a bit of data processing behind the scenes. The level of polish I’d come to expect as an engineer at an enterprise company was astronomically higher than what was actually needed for our customers to give us their dollars.</p>
]]></description><pubDate>Wed, 05 Feb 2025 08:39:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=42945728</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=42945728</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42945728</guid></item><item><title><![CDATA[New comment by m8s in "Governor Newsom signs landmark bill to protect kids from social media addiction"]]></title><description><![CDATA[
<p>This is a really gross comment and should be removed.</p>
]]></description><pubDate>Sat, 21 Sep 2024 16:31:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=41610974</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=41610974</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41610974</guid></item><item><title><![CDATA[New comment by m8s in ""Frost crack" sounds may come from sky, not trees"]]></title><description><![CDATA[
<p>That reminds me, there’s a really great survival game called The Long Dark in which you survive a plane crash in something like the arctic circle and must survive. If anyone is into survival games, definitely check this one out!</p>
]]></description><pubDate>Sat, 17 Aug 2024 06:22:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=41272428</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=41272428</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41272428</guid></item><item><title><![CDATA[New comment by m8s in "Enhancing Your Elixir Codebase with Gleam"]]></title><description><![CDATA[
<p>Two quite different things!<p>Elixir’s use: <a href="https://hexdocs.pm/elixir/main/alias-require-and-import.html#use" rel="nofollow">https://hexdocs.pm/elixir/main/alias-require-and-import.html...</a><p>Gleam’s use: <a href="https://tour.gleam.run/advanced-features/use/" rel="nofollow">https://tour.gleam.run/advanced-features/use/</a></p>
]]></description><pubDate>Sun, 28 Jul 2024 02:28:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=41090831</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=41090831</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41090831</guid></item><item><title><![CDATA[New comment by m8s in "Enhancing Your Elixir Codebase with Gleam"]]></title><description><![CDATA[
<p>Erika wrote “Using use in Gleam” in part because I didn’t understand how to use `use`, so I feel at least a little bit qualified to answer this.<p>I find that `use` is quite effective when needed. This is the part referenced in her article where I find `use` particularly helpful. Something like:<p><pre><code>    fn outer() -> Result(success, failure) {
      result.map(parse_id(), fn(id) {
        ... // More code that uses the id
      })
    }
</code></pre>
Becomes:<p><pre><code>    fn outer() -> Result(success, failure) {
      use id <- result.map(parse_id())
      ... // More code that uses the id
    }
</code></pre>
In more concrete terms, I’m building an application with Gleam and Wisp that uses Wisp’s `require_form`. The type signature for `require_form` is:<p><pre><code>    pub fn require_form(
      request: Request(Connection),
      next: fn(FormData) -> Response(Body),
    ) -> Response(Body)
</code></pre>
But I get to use it like this:<p><pre><code>    use form <- wisp.require_form(req)
</code></pre>
I’m not sure if I have the appropriate nomenclature here, and I consider myself a beginner of writing strongly typed functional languages, but when I use `use`, I get to invoke the callback with the value on the left side of the arrow.<p>As Erika so thoughtfully put it:<p>> The key is to use `use` when it allows you to highlight the happy path of your code … A use expression is syntax sugar, and it’s always possible to write Gleam code without it, though maybe not as clearly.<p>You can see more here [1] if you want, but note that there are a lot of structural changes in this codebase while I learn and figure out how to best use Gleam and Wisp :)<p>1. <a href="https://github.com/usepriceflow/app/blob/main/src/app/web/admin/organizations.gleam#L60-L61">https://github.com/usepriceflow/app/blob/main/src/app/web/ad...</a></p>
]]></description><pubDate>Sat, 27 Jul 2024 21:30:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=41089466</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=41089466</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41089466</guid></item><item><title><![CDATA[New comment by m8s in "The Guide to Gleam Concurrency [video]"]]></title><description><![CDATA[
<p>Awesome video, and definitely captures some of the super powers of targeting the BEAM! Thanks for sharing</p>
]]></description><pubDate>Sun, 26 May 2024 15:25:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=40482867</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=40482867</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40482867</guid></item><item><title><![CDATA[New comment by m8s in "Gleam v1.0.0 Released"]]></title><description><![CDATA[
<p>Congrats to the community, Gleam is a really awesome language! This is such exciting news!</p>
]]></description><pubDate>Mon, 04 Mar 2024 15:36:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=39591662</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=39591662</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39591662</guid></item><item><title><![CDATA[New comment by m8s in "Building ColdFusion for the Web"]]></title><description><![CDATA[
<p>Hands up if you’ve still got ColdFusion powering critical apps in production to this day</p>
]]></description><pubDate>Sun, 31 Dec 2023 15:41:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=38824772</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=38824772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38824772</guid></item><item><title><![CDATA[New comment by m8s in "Ask HN: Is React Native still popular?"]]></title><description><![CDATA[
<p>It doesn’t really matter what can be done natively versus in a browser. For many folks, apps are the internet. This take is very developer-centric but it doesn’t account for the real world. Many people prefer using apps, especially middle-age to older demographics. That’s what our analytics say at least.</p>
]]></description><pubDate>Sat, 02 Dec 2023 18:07:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=38500532</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=38500532</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38500532</guid></item><item><title><![CDATA[New comment by m8s in "My Favorite Gleam Feature"]]></title><description><![CDATA[
<p>I think one of the most important "features" of Gleam is that it intentionally has a small footprint. I agree with your main point here: that Gleam is highly discoverable. You arrive at this conclusion via "reading someone else's code", which I agree with, but I think there's a second important piece regarding discoverability as well: you can read the standard library and be fairly confident that there aren't hidden "better ways" of doing things. I really like Elixir's standard library documentation too, there are numerous examples of how to actually use each function, which is really helpful for beginners.<p>As an aside, I really love the citations in the third column of your website. Super cool!</p>
]]></description><pubDate>Tue, 14 Nov 2023 18:03:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=38266992</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=38266992</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38266992</guid></item><item><title><![CDATA[New comment by m8s in "Gleam: a type safe language on the Erlang VM"]]></title><description><![CDATA[
<p>For what purpose? Is Gleam today unable to do things you’d like to be able to do?</p>
]]></description><pubDate>Wed, 08 Nov 2023 00:43:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=38185285</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=38185285</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38185285</guid></item><item><title><![CDATA[New comment by m8s in "Gleam: a type safe language on the Erlang VM"]]></title><description><![CDATA[
<p>It really is. A typed BEAM language (that also compiles to Javascript), a fantastic community, and a growing ecosystem. I’m really excited for the future of Gleam!</p>
]]></description><pubDate>Wed, 08 Nov 2023 00:05:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=38184966</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=38184966</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38184966</guid></item><item><title><![CDATA[New comment by m8s in "Gleam: a type safe language on the Erlang VM"]]></title><description><![CDATA[
<p>Feel free to ignore it then?</p>
]]></description><pubDate>Wed, 08 Nov 2023 00:03:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=38184944</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=38184944</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=38184944</guid></item><item><title><![CDATA[New comment by m8s in "JDK 21 Release Notes"]]></title><description><![CDATA[
<p>Are there modern learning resources available for Java?</p>
]]></description><pubDate>Tue, 19 Sep 2023 14:46:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=37570699</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=37570699</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37570699</guid></item><item><title><![CDATA[New comment by m8s in "Ask HN: What topics are good for a UI/UX Primer?"]]></title><description><![CDATA[
<p><a href="https://www.refactoringui.com/" rel="nofollow noreferrer">https://www.refactoringui.com/</a> is a great resource for practical UI design concepts.</p>
]]></description><pubDate>Sun, 25 Jun 2023 15:29:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=36469243</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=36469243</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36469243</guid></item><item><title><![CDATA[New comment by m8s in "Svelte 4"]]></title><description><![CDATA[
<p>> Svelte 4 reduces the Svelte package size by nearly 75% (10.6 MB down to 2.8 MB), which means less waiting on npm install. This improvement will be especially noticeable for users who are loading our interactive learning experience on learn.svelte.dev for the first time, users of the Svelte REPL, and users with limited connectivity. The majority of the remaining package size is eslint support, which necessitates distributing a CJS build, and once the eslint rewrite is completed the Svelte package size can drop by over another 50%.<p>Wow, that’s a pretty big reduction.</p>
]]></description><pubDate>Thu, 22 Jun 2023 14:58:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=36433145</link><dc:creator>m8s</dc:creator><comments>https://news.ycombinator.com/item?id=36433145</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36433145</guid></item></channel></rss>