I built SWALPA (https://swalpa.org) because learning spoken Kannada is a New Year's resolution for me and I realized most language apps teach you formal grammar, but not how to negotiate with an auto-rickshaw driver or handle the "daily chaos" of the city.
THE AGENTIC STACK (BUILT WITH ANTIGRAVITY)
I wanted to see how far I could push a "Human-in-the-loop" AI workflow to create high-quality content in a low-resource language.
* The Coder: Antigravity (an agentic coding AI) handled the heavy lifting—writing the JS game engines and drafting the core lessons based on a custom "grammar spec."
* The Knowledge Base: I used Gemini Deep Research to build a high-fidelity reference of Kannada linguistics. This acted as the "Source of Truth" to prevent AI hallucinations.
* The Content Engine: I fed my core curated lessons into NotebookLM to generate supplemental podcasts, slides, and flashcards to boost recall.
* Architecture: Simple and Boring—Static site (MkDocs Material) + Vanilla JS + Firebase.
THE EXPERIENCE
Instead of "The cat is on the table," SWALPA uses interactive games to simulate real-world Bangalore scenarios:
* The Auto-Rickshaw Negotiator: Use the right phrases under timer pressure to get the driver to use the meter ("Meter Haaki!").
* Rapid Translation: A high-pressure mode where you hear a Kannada phrase and must pick the correct translation from four options under a timer.
* Agglutination Mastery: Interactive drills for Kannada's unique word-stacking grammar.
The platform includes 10 core text lessons and Duolingo-style gamification—including badges, streaks, and an activity heatmap.
I am a Software Engineer at Google, but this is a personal passion project. I would love to hear your thoughts on the AI workflow or the "street-smart" approach to language learning!
This section dives into the "Survival Kannada" philosophy. It explains why we prioritize high-frequency scenarios like negotiating auto fares or understanding local etymology (e.g., why tech hubs like Marathahalli still carry the "-halli" village suffix) over standard textbook grammar.
This page breaks down the "Local-First" stack and the agentic loop:
* The Staging "Brain": I maintain a private repository where I use Gemini Deep Research to crunch raw linguistic data. This verified "Spec" is what I then feed to Antigravity (the coding agent) to build out the game engines and lessons.
* Portability: The framework is designed to be "forkable." A sister project for Tamil (konjam.org) is already being built using these same architectural principles.
I am happy to dive into the weeds on the prompt engineering, the TTS pipeline, or the Bangalore-specific nuances if anyone is interested!
Yeah, as a neutral observer, I feel conflicted. What the CCP is doing feels wrong.
But on the other hand, China was forced to agree to the HK situation particularly since they were at a disadvantage militarily and economically to the British empire.
China (CCP) would understandably not be in a mood to comply with agreements they felt coerced into.
I genuinely don't understand the full situation, and I'm not trying to imply that the CCP is in the right.
I'm just trying to understand if the whole "bullied into a disadvantaged agreement" is a valid world view to take.
If this is true, I'm just going to delete Triplebyte and all things associated with it. If the practice becomes, "wait until theyve forgotten about it then try again." I dont trust them, and wont again.
The TLDR here is that one of last year's dark patterns was that you could only hide your profile for up to a year. We changed that immediately after last year's thread, and you can now hide it indefinitely, but we didn't retroactively apply that fix (which we'll do now). See top-level comment for more details.
The linked news site changed the title. You can still see the original in the linked URL: chinese-technology-company-huawei-eavesdropped-dutch-mobile-network-kpn
I wonder if a part of that longevity is the org/incentives structure.
And (cynically) maybe just that regulation entrenches existing finance players and there isn't anywhere near as much anti-trust conversation over there.
I wonder if over time, Golang will pick up more type features like Java and other languages have.
The general consensus seems to be that powerful type systems are very effective.
Personally, the low footprint runtime and concurrency primitives are enough for me and I wouldn't mind the language becoming "less simple" if it helps the ecosystem.
Once generics are implemented, I can imagine people requesting for the next "missing" thing.
> I wonder if over time, Golang will pick up more type features like Java and other languages have.
I hope it doesn't pick them up like Java did.
When Java was considering generics, there were two major proposals out there. Sun decided on easily the worst one: type erasure. Now we're stuck with it.
When Java was considering closures, there were two major proposals out there that I recall [one being to get rid of Java's broken local variable closure semantics]. Sun (Oracle? forget) again picked the worst of the two proposals. Now we're stuck with a real monstrosity.
Java has an amazing history of picking the wrong way to do things and permanently saddling developers with it.
Type erasure was the best of these options, and it's one of the main reasons why Java became even more successful than it already was, and also the main reason why there are so many languages created on top of the JVM (as opposed to .net, which supports reified generics, which complicates enormously writing languages on it, especially for interop reasons).
Since type erasure was mentioned, it's worth noting that Philip Wadler (of Haskell fame) was involved both in the design of Java generics [0] and of Go generics [1].
(Perhaps I should clarify that I don't have a strong opinion on type erasure.)
> When Java was considering generics, there were two major proposals out there. Sun decided on easily the worst one: type erasure. Now we're stuck with it.
Though using type erasure may have made the JVM a better target for other languages.
The developers behind Go have a really strong culture of taking a ton of time to implement any major language changes; very reminiscent of Java and C++. Talk around Generics began, well, when the language was first created, but even more seriously like five years ago, and it'll probably be another year before it hits production.
I love this. Language changes need to be thought through considerably, with all angles considered, and by going slow it gives major developers time to give feedback, prepare, and most critically not always feel like the code they write will go out of date in three months. By comparison, writing anything in, say, Rust (and JavaScript ~four years ago, its better nowadays) feels exhausting, because its a constant battle with changing culture and evolving best practices.
My favorite feature of Go is its characteristic of not carbon-dating codebases. Go written a decade ago looks almost the same as Go written today; Contexts would be the single major pseudo-language-level feature added in that interim which may give away newer code. Adding new features is still important, balance in all things etc, and code written after generics will give another epoch of carbon dating. Go strikes this balance in a way that should be a model for every other language.
> Once generics are implemented, I can imagine people requesting for the next "missing" thing.
Perhaps. But there is (currently) no other feature that people have been whining about nearly as much as they have been whining about generics. So I think it's going to be a while before another need is felt to the same degree.
Golang is google's backup to java if oracle didn't let them have java anymore, with some additional design goals for large companies like fast build times, better memory usage and something jr engineers can pickup without much trouble.
They both have garbage collection, they both perform about 3x slower than static C and they're both mostly used for network services, which is the same as Java at google.
Go is AOT compiled, thus many many optimizations are not possible there.
Also, 3x slower than C is a baseless claim for both; at least for Java, for comparable, big code sizes, Java will easily win, because mallocs are expensive, and arenas, pools whatevers are poor man’s GCs, with worse performance, and JIT compilation can do some really aggressive optimizations, as well as heap compression, etc.
I built SWALPA (https://swalpa.org) because learning spoken Kannada is a New Year's resolution for me and I realized most language apps teach you formal grammar, but not how to negotiate with an auto-rickshaw driver or handle the "daily chaos" of the city.
THE AGENTIC STACK (BUILT WITH ANTIGRAVITY)
I wanted to see how far I could push a "Human-in-the-loop" AI workflow to create high-quality content in a low-resource language.
* The Coder: Antigravity (an agentic coding AI) handled the heavy lifting—writing the JS game engines and drafting the core lessons based on a custom "grammar spec."
* The Knowledge Base: I used Gemini Deep Research to build a high-fidelity reference of Kannada linguistics. This acted as the "Source of Truth" to prevent AI hallucinations.
* The Content Engine: I fed my core curated lessons into NotebookLM to generate supplemental podcasts, slides, and flashcards to boost recall.
* Architecture: Simple and Boring—Static site (MkDocs Material) + Vanilla JS + Firebase.
THE EXPERIENCE
Instead of "The cat is on the table," SWALPA uses interactive games to simulate real-world Bangalore scenarios:
* The Auto-Rickshaw Negotiator: Use the right phrases under timer pressure to get the driver to use the meter ("Meter Haaki!").
* Rapid Translation: A high-pressure mode where you hear a Kannada phrase and must pick the correct translation from four options under a timer.
* Agglutination Mastery: Interactive drills for Kannada's unique word-stacking grammar.
The platform includes 10 core text lessons and Duolingo-style gamification—including badges, streaks, and an activity heatmap.
Games Link: https://swalpa.org/games
Source: https://github.com/saurabh-net/swalpa
I am a Software Engineer at Google, but this is a personal passion project. I would love to hear your thoughts on the AI workflow or the "street-smart" approach to language learning!