Gnarly Learnings from November 2023

  • December 5, 2023
  • Royce Threadgill
  • 4 min read

At The Gnar, we’re always reading, watching, and listening in order to keep our skills sharp and our perspectives fresh. Every month, we round up our learnings and publish them in a Gnarly Learnings blog post.

In November 2023, we learned about AI applications in medical writing, weather predictions, and marketing. We also added to our knowledge of design systems, discovered some interesting trends in Flutter development, and created an executive summary explaining the wonderful world of programming languages.

Business Applications of AI

In a recent Stack Overflow podcast, CEO Dipanwita Das and CTO Hellmut Adolphs of Sorcero discussed how they’re using generative AI to create better plain language summaries (PLSs), enabling medical affairs departments to provide more readable drug descriptions to doctors and patients.

[7:40] There are only less than 0.2% of the global population that can actually read a medical document…there's so many indices to measure readability. And this is a great, very, very appropriate space to apply generative AI…we've [created] a PLS generation workbench that supports the medical writer in writing PLSs that are faster and we can generate one in minutes. It's vastly cheaper and it's much higher quality. So we're finding that the PLSs that we're generating are 700% more readable than what's in the market.

The GraphCast AI model can outperform traditional meteorological predictions using a fraction of the computing power, as reported in the journal Science and summarized by the Financial Times.

GraphCast significantly outperforms the most accurate operational deterministic systems on 90% of 1380 verification targets, and its forecasts support better severe event prediction, including tropical cyclones tracking, atmospheric rivers, and extreme temperatures.

John Adams, co-founder and Chief Innovation Officer at Alembic, discussed in a recent episode of the Software Engineering Daily podcast how his company uses AI to tie together data from multiple marketing channels, provide better attribution, and improve individual user privacy.

Ecommerce Web Design

The blog for Shopify’s Hydrogen framework recently published a post focused on designing performant sites through caching and deferred data loading.

A separate post by Shopify Engineering discussed Remix and Admin apps, as well as a new template for building Shopify apps with Remix.

If you’re interested in building admin applications, don’t forget to check out Shopify’s Polaris design system.


This month, we came across two sites – eventbeds and HappyOps – that beautifully incorporated their loading screens into their overall design.

eventbeds loading screen design
HappyOps loading screen design

Well-known design systems consultant Brad Frost guest starred in a recent episode of the Syntax podcast. He discussed the three parts of a design system (a design library, a code library, and the documentation that glues everything together) and why Web Components have become an integral part of his work over the last few years.

Mobile App Development

GitHub’s 2023 Octoverse report demonstrated that Flutter, the mobile app development framework from Google, was one of the largest open-source projects on their platform, as measured by its total number of contributors.

In the same report, Dart (the language used for building Flutter apps) also ranked just below the mobile app development language Kotlin in terms of usage across GitHub repositories.

Tech Insights

What’s a programming language anyway? Check out our programming languages executive summary to learn how we at The Gnar think about current and future languages.


Gnarly Bytes

const inventory = [
  { name: "asparagus", type: "vegetables", quantity: 5 },
  { name: "bananas", type: "fruit", quantity: 0 },
  { name: "goat", type: "meat", quantity: 23 },
  { name: "cherries", type: "fruit", quantity: 5 },
  { name: "fish", type: "meat", quantity: 22 },

const result = Object.groupBy(inventory, ({ type }) => type);

/* Result is:
  vegetables: [
    { name: 'asparagus', type: 'vegetables', quantity: 5 },
  fruit: [
    { name: "bananas", type: "fruit", quantity: 0 },
    { name: "cherries", type: "fruit", quantity: 5 }
  meat: [
    { name: "goat", type: "meat", quantity: 23 },
    { name: "fish", type: "meat", quantity: 22 }

Interested in building with us?