
Engineer at @Mapbox, creator of @LeafletJS, open source enthusiast, algorithms geek, speaker, musician @obiymydoschu, baker, father of twin girls, Ukrainian
Kyiv, Ukraine
Joined January 2007
- Tweets9.2K
- Following1.2K
- Followers15.5K
- Likes19.1K
Pinned Tweet
🎵 2 weeks ago, me and my band @obiymydoschu have released “Vidrada”, our new album, passionately crafted in Kyiv for 7 years. I've never been more invested in a project, and will be proud of it for the rest of my life. All my love, dreams, hopes and worries in one record. ⬇️
Volodymyr Agafonkin 🇺🇦 retweeted
The default Leaflet marker icon might get an overhaul for 2.0! Which style do you prefer — the current one on the left or the new one on the right?
Replying to @elonmusk
@elonmusk Elon, I want to tell you something as a Ukrainian.
For years, many people in Ukraine admired and respected you. I was one of them. I personally saw you as a technological genius, a visionary, someone who was building the future while others were still living in the past.
And that is exactly why your growing hostility toward Ukraine is so difficult for me to understand.
Ukraine is not a perfect country. We have corruption, political failures, and many problems. Nobody denies that. But tell me, which country is perfect?
Ukraine is also a country of incredibly talented engineers, scientists, entrepreneurs, developers, artists, and ordinary hardworking people. We build world-class technology, innovate under impossible conditions, value education, and have repeatedly shown the world what courage, resilience, and human dignity look like.
We are a country that voluntarily gave up the world's third-largest nuclear arsenal in exchange for security assurances.
We are a nation that stood up in 2014, during the Revolution of Dignity, because we refused to live under authoritarianism and Russian domination. We wanted freedom, democracy, and the right to choose our own future.
And today, we are fighting for that same freedom.
Every day, Ukrainian civilians are killed by Russian missiles, drones, and bombs. Children lose their parents. Parents bury their children. Entire cities are destroyed. Millions of lives have been shattered.
These people are not dying because of Zelenskyy. They are not dying because of Ukrainian corruption. They are dying because Putin chose to invade another sovereign nation and continues to wage a war against its people, cities, culture, and identity.
Yes, corruption must be fought. Yes, every dollar of international aid must be accounted for. Ukrainians themselves deserve transparency and justice more than anyone.
But corruption does not justify invasion. Political failures do not justify bombing children. And no amount of criticism of Ukraine changes who crossed the border with an invading army.
You seem to believe that giving up Donbas and Luhansk could bring peace. But why should we believe Putin would stop there?
He already violated Ukraine's sovereignty after promising to respect it. He took Crimea in 2014. He fueled war in Donbas. And in 2022, he launched a full-scale invasion.
What makes you think another territorial concession would finally satisfy him?
History has shown us what happens when democracies believe they can secure lasting peace by rewarding an aggressor with someone else's land.
We have seen this before, in Europe, in the years leading up to World War II.
Peace built on surrender to a dictator is not necessarily peace. Sometimes it is simply an invitation to the next war.
Elon, you are a man who talks about the future of humanity, about making civilization better, about taking humanity to Mars.
But what kind of future are we building if we accept that powerful dictators can erase smaller nations simply because they have more weapons?
Ukraine is not asking the world to pretend we are perfect.
We are asking the world to recognize that we have the same right to exist, to be free, and to determine our future as Americans do.
And one more thing: Ukrainians have never been your enemies. Many of us admired you, believed in your vision, and appreciated what Starlink made possible during the darkest days of this war.
That is why your words hurt more than you might realize.
You have enormous influence. Your voice can shape how millions of people understand this war.
I still want to believe that the man who dreams of advancing humanity can recognize the humanity of people fighting simply to survive.
It is not too late to stand on the right side of history.
Not on Zelenskyy's side. Not on any politician's side.
On the side of freedom. On the side of human life. On the side of a nation's right to exist.
That is all we are asking for.
🇺🇦
Volodymyr Agafonkin 🇺🇦 retweeted
It's been a while, but it's happening. ❤️ github.com/Leaflet/Leaflet/i…
Volodymyr Agafonkin 🇺🇦 retweeted
Trump: "I will end the war in Ukraine on day one"
631 days later Trump: "I now side with Vladimir Putin"
I know it's easy to miss this as some generic company announcement, but under the hood it's a culmination of years of hard work by hundreds of people and some amazing engineering. Pretty proud to see it all pay off, resulting in Mapbox tech now powering next-gen BMW cars.
Never miss a turn.
Today, we are excited to announce that Mapbox 3D Live Navigation now powers BMW Maps with driver assistance in next-generation vehicles from @BMWGroup
Your lane. Your route. The cars around you and the road ahead. All together in one live 3D view. Mapbox Magic Carpet shows the lane-level path to make your merge or exit so you’ll never miss a turn.
For the first time, lane-level navigation and ADAS detections from a vehicle’s driver-assistance systems come together directly in the map. The result is navigation that doesn’t just tell you what’s next. It helps you see it.
This is Mapbox 3D Live Navigation. See it in action:
mapbox.com/press-releases/ma…
#BuiltWithMapbox
Pixelmatch, my image comparison library for visual regression testing, got a major overhaul: a new color difference metric (OKLab + HyAB) that's much closer to how we see color, a windowSize option to fight scattered noise, and more — while staying fast github.com/mapbox/pixelmatch…
Pixelmatch powers an extensive suite of 3000+ tests shared between @Mapbox GL JS and native SDKs to help us track regressions and iterate fearlessly, and it's also used as a dependency in popular testing projects like Playwright, WebdriverIO, jest-image-snapshot and others.
I'd love to pick 50 but let it be these 9. 🎵
I love games, and I love music just as much.
Some albums shaped who I am, so I made my9albums.
Pick the 9 albums that made you, turn them into a poster, and share it.
my9albums.com
Volodymyr Agafonkin 🇺🇦 retweeted
The improved GeoJSON memory footprint in @Mapbox GL JS is incredible.
Stress-testing with every well and dry hole in the Texas RRC shapefiles - over 1.7 million points, 235MB of inline GeoJSON.
Mapbox GL JS (upcoming v3.31 release candidate) can load and display all of them at all zooms, no pre-processing required.
Do I recommend this for production? No, you should use freestiler with dot-dropping, clustering, hex binning, etc. But it's pretty cool to see what's now possible.
Volodymyr Agafonkin 🇺🇦 retweeted
Testing out @Mapbox's new-and-improved GeoJSON memory footprint in R's mapgl.
Shown here: 240,000 US block groups rendered with a tolerance of 0, so you can see everything when zoomed out.
This crashes Chrome in older versions - but it now is doable with no extra preprocessing!
geojson-vt, which is responsible for GeoJSON processing in @Mapbox GL JS, just got a major overhaul — v5 now uses up to 4x less memory, so you can now visualize a lot more data without crashing the browser. Had a blast optimizing the hell out of it 🔥 github.com/mapbox/geojson-vt…
And in related news, Supercluster, which is designed to cluster huge amounts of points for interactive visualizations, got a similar overhaul in v9 — now using 3x less memory, more precise and also faster github.com/mapbox/superclust…
Volodymyr Agafonkin 🇺🇦 retweeted
🎉Wasm3 v0.9.0 is out!🎉
It is the first major update in FIVE years.
That sounds like a software story. It isn't.
Four years ago, I wrote that my house had been destroyed by russians, and that I had to put #Wasm3 into minimal maintenance.
The war never went away.
1/4
Volodymyr Agafonkin 🇺🇦 retweeted
Russia has tried to take Ukraine's independence away by force for years.
It has failed.
Ukraine is still here. Still free. Still fighting.
Volodymyr Agafonkin 🇺🇦 retweeted
Mind boggling to me that I can make a thing faster and there's always people that ask "but why?" What kind of mentality is that? The pursuit of excellence does not need justification. Also, I find in so many cases, we can't know the impact of an improvement until we do it.
For example, one I've talked about before: Ghostty's high IO throughput has enabled terminal program (emulator and TUI) fuzzing at a speed thats incomparably fast to prior solutions. This has resulted in upstream patches to resolve issues in popular projects like btop, tmux, and more.
Speed enabled that anecdotally example that lifted the tides of adjacent communities that don't rely on Ghostty technology at all. I didn't predict this.
Make things better because they can be better and let the results naturally play out.
What a time to be a software engineer if you know what you're doing. Prompt methodically, scope the context narrowly, match effort to task uncertainty, compact early, really think things through, and you can do amazing work full time non-stop with frontier models on a $20 plan
Initially a TypeScript skeptic, I’ve been increasingly impressed by the project’s progress and strong direction in the last few years, and this is one more big leap forward. Big props to the team, this is truly awesome
📣 The moment is here. 📣
TypeScript 7 is officially released! 7️⃣
devblogs.microsoft.com/types…




















