For everyone wondering who may have been unaware. It is 100% remote, so you can just show up. :)
> NimConf 2026 is an online conference and it will take place on June 20th. It will be streamed for free and it doesn’t require any traveling - you will be able to participate from your home, without any travel and accommodation expenses.
I should give a talk. About what however? I’ve been happy with my progress on FigDraw (1), a 2D UI scene renderer using SDFs. Even made my own neovim ui shell with it!
Really ? From what I see it survives OK but there is no real progression. I like what I saw of the language, and I'm regularly impressed by the productivity of the community relative to its size so I would like to see it more successful but I'm afraid it will not happen.
The creator has been consistently clear in his take on "Why Nim?" It's a general purpose systems programming language, favoring procedural style, that's superior (or aims to be) in a variety of ways compared to whatever else you've been using. Hubris? Maybe.
In practice, it's turned out to be an "expert's tool" that's more expressive-convenient than C/++ to do all manner of things in the realm of systems programming, from embedded to HPC. And it's got great C/++ interop, so you can continue to leverage those software ecosystems.
In that respect, I'd say the biggest boon, rather than a killer project, would be for a famous programmer or shop to publicly and loudly adopt it as their everyday language, shouting its name for several years and saying things like "Wish we had started using this years ago, would have been so much better, look at all of these great apps and libraries we've been able to create and maintain more easily than if we'd stuck with C/++/Go/Rust/Swift!"
Not sure. I think it has a problem many languages have - too small a community. There is a lot of fragmentation in the last some years, I am not sure why, not just about nim but just look at how ruby has been dropping like a hot potato in the last ~3 years or more. I am so out of the loop that I could not even tell anyone what the young people are doing. Are there more who program than before? If so where do they go?
My students (18-21) are excited to learn Rust in my class I teach about programming languages. Younger students are learning Luau via Roblox -- spoke with a middle schooler on Sunday who was making games with his friends. They get introduced to Scratch in school and learn that until they move on to Java at middle and high school. I teach freshman Lua in their intro to engineering class, and they also go on to learn things like R, Matlab/Simulink, Python. Java, C, and C++ if they're a CS major.
Combine that most CS students learn many languages with LLMs and coding agents and the size of the ecosystem isn't quite as important as it used to be. New hires can be productive from day 1. Missing libraries are relatively easy to add. Moreover the language characteristics can be more useful than ever: fast running, fast compiling, typed, easy to read, etc.
Yeah I think LLMs really help with the chicken-egg situation in language adoption. Contrary to many opinions that predict programming homogenizing around the big 3 languages that exist today (because that's what the LLMs currently write) I think in the future more nice languages will gain adoption as they are written by LLMs, who as you note don't care about a lack of community surrounding those langs -- if they need a missing library the AI can just write it. Maybe they even add it to the language ecosystem for other AI or humans.
I think Python is actually kind of the worst language of the top langs to be the lingua franca of AI, where more niche statically typed languages like Nim are better suited.
As a Pythonista I tend to agree. I had high hopes for Mojo but it's taking its due time to become usable outside the narrow focus of GPU programming, whereas Nim fits multiple niches surprisingly well.
One of my concern is LLMs are going to generate a lot of low quality code for languages that do not have sufficient discussions on forums like Stackoverflow.
That's why these niche languages need state-of-the-art compilers that enforce invariants more strongly. This way, they can catch most of the subtle bugs the LLM produces, sort of like antibodies.
I like the nim language, but the lack of interfaces has been a bit of a turn-off for me.
Do nim programmers not see the need for abstracting out behavior in a manner that different implementations can be switched somewhere else, or is there different idiomatic way to handle this?
For everyone wondering who may have been unaware. It is 100% remote, so you can just show up. :)
> NimConf 2026 is an online conference and it will take place on June 20th. It will be streamed for free and it doesn’t require any traveling - you will be able to participate from your home, without any travel and accommodation expenses.
https://conf.nim-lang.org/
I should give a talk. About what however? I’ve been happy with my progress on FigDraw (1), a 2D UI scene renderer using SDFs. Even made my own neovim ui shell with it!
1: https://github.com/elcritch/figdraw
Please do share your progress with FigDraw. Interactive demoes always look great.
Oooo... That looks like it could make a great talk! Do you have examples of the neovim ui shell?
I plan to give a couple of talks this year.
Can't wait for NimConf, it is way overdue.
Nim seems to be picking up a lot lately.
It’s growing but not a lot, I have some data here: https://pierretempel.com/p/nim-usage-on-github
Most code I write is still Nim though.
Really ? From what I see it survives OK but there is no real progression. I like what I saw of the language, and I'm regularly impressed by the productivity of the community relative to its size so I would like to see it more successful but I'm afraid it will not happen.
It is another niche language looking for a project to kick off adoption.
The creator has been consistently clear in his take on "Why Nim?" It's a general purpose systems programming language, favoring procedural style, that's superior (or aims to be) in a variety of ways compared to whatever else you've been using. Hubris? Maybe.
In practice, it's turned out to be an "expert's tool" that's more expressive-convenient than C/++ to do all manner of things in the realm of systems programming, from embedded to HPC. And it's got great C/++ interop, so you can continue to leverage those software ecosystems.
In that respect, I'd say the biggest boon, rather than a killer project, would be for a famous programmer or shop to publicly and loudly adopt it as their everyday language, shouting its name for several years and saying things like "Wish we had started using this years ago, would have been so much better, look at all of these great apps and libraries we've been able to create and maintain more easily than if we'd stuck with C/++/Go/Rust/Swift!"
You could have written the same about D, Haxe, Roc, or any other language in this space.
Every year millions of university students design new languages across the globe on their compiler classes.
To productise any of them, there is a whole ecosystem that needs to be added on top, editors, graphical debugging, packages, AI tooling....
Not sure. I think it has a problem many languages have - too small a community. There is a lot of fragmentation in the last some years, I am not sure why, not just about nim but just look at how ruby has been dropping like a hot potato in the last ~3 years or more. I am so out of the loop that I could not even tell anyone what the young people are doing. Are there more who program than before? If so where do they go?
My students (18-21) are excited to learn Rust in my class I teach about programming languages. Younger students are learning Luau via Roblox -- spoke with a middle schooler on Sunday who was making games with his friends. They get introduced to Scratch in school and learn that until they move on to Java at middle and high school. I teach freshman Lua in their intro to engineering class, and they also go on to learn things like R, Matlab/Simulink, Python. Java, C, and C++ if they're a CS major.
Combine that most CS students learn many languages with LLMs and coding agents and the size of the ecosystem isn't quite as important as it used to be. New hires can be productive from day 1. Missing libraries are relatively easy to add. Moreover the language characteristics can be more useful than ever: fast running, fast compiling, typed, easy to read, etc.
Coding agents strengthen the value of low code platforms, and reduce even further the role of specific programming languages.
Examples, workato, boomi, opal,....
Many automations that used to be written in programming languages, deployed via serverless or containers, are now agents driven by prompts.
Yeah I think LLMs really help with the chicken-egg situation in language adoption. Contrary to many opinions that predict programming homogenizing around the big 3 languages that exist today (because that's what the LLMs currently write) I think in the future more nice languages will gain adoption as they are written by LLMs, who as you note don't care about a lack of community surrounding those langs -- if they need a missing library the AI can just write it. Maybe they even add it to the language ecosystem for other AI or humans.
I think Python is actually kind of the worst language of the top langs to be the lingua franca of AI, where more niche statically typed languages like Nim are better suited.
As a Pythonista I tend to agree. I had high hopes for Mojo but it's taking its due time to become usable outside the narrow focus of GPU programming, whereas Nim fits multiple niches surprisingly well.
Python at least has type annotations these days, even if they aren't enforced.
One of my concern is LLMs are going to generate a lot of low quality code for languages that do not have sufficient discussions on forums like Stackoverflow.
That's why these niche languages need state-of-the-art compilers that enforce invariants more strongly. This way, they can catch most of the subtle bugs the LLM produces, sort of like antibodies.
> New hires can be productive from day 1.
...or counterproductive, lmao
I like the nim language, but the lack of interfaces has been a bit of a turn-off for me.
Do nim programmers not see the need for abstracting out behavior in a manner that different implementations can be switched somewhere else, or is there different idiomatic way to handle this?
We use custom types for that usually, optionally with parametric polymorphism.
But as others said already, Nimony (codename for the next Nim iteration) introduces revamped concepts which should be even more convenient.
The concepts feature of Nim really looks like what your looking for https://nim-lang.org/docs/manual.html#concepts
Nim doesn't have interfaces, but concepts + parametric polymorphism gets you a long way - https://jasonbeetham.ca/writeups/codereuse.html
Such a pity that this is an online-only conference.
Does anyone know of an IRL conference or meetup on Nim, preferably in EU?
On the other hand, this format allows people from all around the world to participate.
There are ocasionally Nim talks at FOSDEM.