<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog" -->

---
title: The AI problem nobody is talking about | daily.dev
description: A YouTube creator argues that LLM-based code generation gives an outsized advantage to established, high-training-data languages (like Java 8-era code) while...
canonical: https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: The AI problem nobody is talking about | daily.dev
og:description: A YouTube creator argues that LLM-based code generation gives an outsized advantage to established, high-training-data languages (like Java 8-era code) while...
og:url: https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog
og:image: https://api.daily.dev/og/posts/MK5GrJcoG.png
og:image:alt: The AI problem nobody is talking about
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# The AI problem nobody is talking about

**[Awesome](https://daily.dev/sources/awesome-coding)** · 9 min read · 93 upvotes · 8 comments

## Summary

A YouTube creator argues that LLM-based code generation gives an outsized advantage to established, high-training-data languages (like Java 8-era code) while starving newer languages (Rust, Odin, modern Java features) of the code volume needed to train models well. As a case study, the video covers Scarf, a company whose backend has run on Haskell for 7 years, now gradually migrating new backend development to Python. Scarf's founder, a longtime Haskell user, cites Haskell's slow compile times and heavy toolchain maintenance as bottlenecks that make it a poor fit for the LLM-agent era, where AI can generate features in minutes but still has to wait on lengthy Haskell builds. Scarf is running Python and Haskell services side by side, routing new endpoints to Python while legacy Haskell functionality remains, relying on expanded AI-generated test coverage to offset the loss of Haskell's compile-time guarantees. The video also includes a sponsored segment for CodeRabbit, an AI code review tool.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.youtube.com/watch?v=SK-F6x5sBG0>

## Questions this post answers

### Why is Scarf migrating its backend from Haskell to Python?

Scarf is moving new backend development from Haskell to Python because LLM-generated code makes Haskell's slow compilation and heavy toolchain maintenance a bottleneck rather than a worthwhile tradeoff. Haskell's compile times, even cached, could take around 20 seconds for small changes and much longer for deeper dependency changes, which became unacceptable once LLM agents could generate the same feature in minutes. New endpoints are now written in Python while existing Haskell services keep running.

_Weigh language tradeoffs like this Haskell-to-Python shift by tracking real migration stories on daily.dev._

### How long has Scarf used Haskell in production before switching to Python?

Scarf has run its backend almost entirely in Haskell for roughly seven years, with its main API built on servant and beam with Postgres, and its gateway built directly on WAI (Web Application Interface). The gateway handles a large volume of open-source package download traffic, meaning these were production systems with real uptime requirements and contractual SLAs, not experimental or resume-driven language choices.

_Follow production case studies like Scarf's Haskell system on daily.dev before betting infrastructure on a language._

### Does AI-generated code make Haskell's strong type system less necessary for catching bugs?

According to Scarf's experience, LLMs introduce a third error-catching opportunity before the compiler or runtime even runs, and when combined with broader, cheaply-generated test coverage, this let the team rebuild parts of its product in Python without a noticeable loss of reliability so far. This suggests some teams are trading compile-time guarantees for faster development loops rather than relying on strict type systems.

_Track how teams rethink type safety versus AI-generated tests on daily.dev when picking a stack._

## Community discussion

Top comments from developers on daily.dev.

**@gaburayondev** · 2 upvotes

> The training-data-volume argument is real, but Scarf's own reasoning is actually different — it's not that LLMs write bad Haskell, it's that Haskell's compile times don't fit an agent loop that wants to iterate every few minutes. That's a workflow-speed problem, not a code-quality problem, and it's worth separating the two because they call for different fixes. The counterargument going around — that strong type systems are an AI's best friend because they catch a model's mistakes at compile time — is the more interesting tension here: Scarf is trading that safety net for speed and leaning on...

**@patrickwanko** · 2 upvotes

> This says a lot on the quality of the systems running all this LLM models, since most of the companies behind keep bragging about their systems be smart enough to keep improving by writing some of its infra code. Oh well, that's going to open more opportunities to those folks that are still holding foot on the art of coding.

**@agustinbarrientos** · 0 upvotes

> I wouldn't treat more AI-generated tests as a substitute for Haskell's compile-time guarantees. During the dual-stack period, I'd list the failures the Haskell compiler used to reject. Which ones can the Python suite catch before staging?

**@paoloap** · 0 upvotes

> github's training set contains java 8 code from a decade of production history. haskell has seven years. java won, by volume.

---

Tags: [#python](https://daily.dev/tags/python), [#java](https://daily.dev/tags/java), [#haskell](https://daily.dev/tags/haskell)

[View this post on daily.dev](https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"The AI problem nobody is talking about","url":"https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog"},"datePublished":"2026-08-31T10:05:23.725Z","dateModified":"2026-09-14T09:22:55.497Z","description":"A YouTube creator argues that LLM-based code generation gives an outsized advantage to established, high-training-data languages (like Java 8-era code) while...","image":"https://i.ytimg.com/vi/SK-F6x5sBG0/sddefault.jpg","thumbnailUrl":"https://i.ytimg.com/vi/SK-F6x5sBG0/sddefault.jpg","isAccessibleForFree":true,"articleSection":"Awesome","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Awesome","logo":"https://media.daily.dev/image/upload/s--mj_0cdD8--/f_auto/v1710506099/logos/awesome-coding","url":"https://daily.dev/sources/awesome-coding"},"commentCount":8,"discussionUrl":"https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":93},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":8}],"keywords":"python,java,haskell","timeRequired":"PT9M","video":{"@type":"VideoObject","name":"The AI problem nobody is talking about","description":"A YouTube creator argues that LLM-based code generation gives an outsized advantage to established, high-training-data languages (like Java 8-era code) while...","thumbnailUrl":"https://i.ytimg.com/vi/SK-F6x5sBG0/sddefault.jpg","uploadDate":"2026-08-31T10:05:23.725Z","duration":"PT9M","url":"https://api.daily.dev/r/MK5GrJcoG","embedUrl":"https://www.youtube.com/embed/SK-F6x5sBG0"}}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Awesome","item":"https://daily.dev/sources/awesome-coding"},{"@type":"ListItem","position":3,"name":"The AI problem nobody is talking about"}]}
{"@context":"https://schema.org","@type":"WebPage","@id":"https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog","comment":[{"@type":"Comment","text":"The training-data-volume argument is real, but Scarf’s own reasoning is actually different — it’s not that LLMs write bad Haskell, it’s that Haskell’s compile times don’t fit an agent loop that wants to iterate every few minutes. That’s a workflow-speed problem, not a code-quality problem, and it’s worth separating the two because they call for different fixes. The counterargument going around — that strong type systems are an AI’s best friend because they catch a model’s mistakes at compile time — is the more interesting tension here: Scarf is trading that safety net for speed and leaning on AI-generated test coverage instead, which is a real bet, not an obviously correct one.","datePublished":"2026-09-07T09:02:40.368Z","url":"https://daily.dev/posts/MK5GrJcoG#c-HRbDmJnOy","author":{"@type":"Person","name":"Gabu Rayon Dev","url":"https://daily.dev/gaburayondev","image":"https://media.daily.dev/image/upload/s--5hPC52y_--/f_auto/v1773412842/avatars/avatar_8fkdziGASnSSBES6c4Ml9?_a=BAMAMiiu0"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}},{"@type":"Comment","text":"This says a lot on the quality of the systems running all this LLM models, since most of the companies behind keep bragging about their systems be smart enough to keep improving by writing some of its infra code. Oh well, that’s going to open more opportunities to those folks that are still holding foot on the art of coding.","datePublished":"2026-09-02T11:36:13.161Z","url":"https://daily.dev/posts/MK5GrJcoG#c-vv8ovfQXV","author":{"@type":"Person","name":"patrick wanko","url":"https://daily.dev/patrickwanko","image":"https://lh3.googleusercontent.com/a/ACg8ocKOLaJr1bMKFppvcJqoU100C11K_fvNeq2VkdHEkwT8L4U30qA=s96-c"},"interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2}},{"@type":"Comment","text":"I wouldn’t treat more AI-generated tests as a substitute for Haskell’s compile-time guarantees. During the dual-stack period, I’d list the failures the Haskell compiler used to reject. Which ones can the Python suite catch before staging?","datePublished":"2026-09-05T21:16:04.004Z","url":"https://daily.dev/posts/MK5GrJcoG#c-oLAuiXeMk","author":{"@type":"Person","name":"Agustin Barrientos","url":"https://daily.dev/agustinbarrientos","image":"https://media.daily.dev/image/upload/s--5ayxQnqn--/f_auto/v1788281802/avatars/avatar_wQYYVe5Tbj0NJ7C7qPoa8?_a=BAMAMicg0"}},{"@type":"Comment","text":"github’s training set contains java 8 code from a decade of production history. haskell has seven years. java won, by volume.","datePublished":"2026-09-07T22:15:26.410Z","url":"https://daily.dev/posts/MK5GrJcoG#c-L15cHI6KK","author":{"@type":"Person","name":"Paolo Perrone","url":"https://daily.dev/paoloap","image":"https://lh3.googleusercontent.com/a/AGNmyxaOowFqs19Msmo4AtbOanvSwkOb705dhJ-u3fFQ0Nw=s96-c"}}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/the-ai-problem-nobody-is-talking-about-mk5grjcog#faq","mainEntity":[{"@type":"Question","name":"Why is Scarf migrating its backend from Haskell to Python?","acceptedAnswer":{"@type":"Answer","text":"Scarf is moving new backend development from Haskell to Python because LLM-generated code makes Haskell's slow compilation and heavy toolchain maintenance a bottleneck rather than a worthwhile tradeoff. Haskell's compile times, even cached, could take around 20 seconds for small changes and much longer for deeper dependency changes, which became unacceptable once LLM agents could generate the same feature in minutes. New endpoints are now written in Python while existing Haskell services keep running. Weigh language tradeoffs like this Haskell-to-Python shift by tracking real migration stories on daily.dev."}},{"@type":"Question","name":"How long has Scarf used Haskell in production before switching to Python?","acceptedAnswer":{"@type":"Answer","text":"Scarf has run its backend almost entirely in Haskell for roughly seven years, with its main API built on servant and beam with Postgres, and its gateway built directly on WAI (Web Application Interface). The gateway handles a large volume of open-source package download traffic, meaning these were production systems with real uptime requirements and contractual SLAs, not experimental or resume-driven language choices. Follow production case studies like Scarf's Haskell system on daily.dev before betting infrastructure on a language."}},{"@type":"Question","name":"Does AI-generated code make Haskell's strong type system less necessary for catching bugs?","acceptedAnswer":{"@type":"Answer","text":"According to Scarf's experience, LLMs introduce a third error-catching opportunity before the compiler or runtime even runs, and when combined with broader, cheaply-generated test coverage, this let the team rebuild parts of its product in Python without a noticeable loss of reliability so far. This suggests some teams are trading compile-time guarantees for faster development loops rather than relying on strict type systems. Track how teams rethink type safety versus AI-generated tests on daily.dev when picking a stack."}}]}
```

