NTBBloodbath

@amartin.beer

Venezuelan. Sysadmin & Full-stack web developer, also known as NTBBloodbath. Elixir Adept. Find my open-source projects and blog here: - https://codeberg.org/amartin - https://amartin.beer

My company will unfortunately cease operations next week. If anyone knows of any remote opportunities, I'd be grateful; bonus points if it's something with Elixir :)

I like having this space for my projects and sharing things I consider interesting, however it's impossible not to make at least one rant post about my illegitimate government. It's astonishing how they've done nothing at any point other than create obstacles and try to politicize the tragedy.

There's still a long way to go, but thanks to #elixir and #rust, it's becoming possible to make a WYSIWYG editor for #norg using TipTap. All conversions and serializations happen in Elixir using the rust-norg parser via NIFs, TipTap only receives the data!

Bild

After a lot of development over the last 4 days, Norgolith's next update will be huge: insane performance improvements, tons of bug fixes, and a few new features. And yes, those 70ms can be even less thanks to the implementation of incremental rebuilds! :)

Norgolith benchmarks result

My courier will send me my router with OpenWrt this Friday; it'll be a long 8-day wait, but I'm sure it'll be worth it! I've figured out I can pay my ISP a little extra to get rid of cgNAT as well, so... Time to get more powerful at home, yay! Any ideas on what to do with my old router? :)

It's been a long time since I've done a blog post, any ideas what my comeback should be about? I have several ideas in mind. My life has changed a lot for the better lately too, it would be interesting to be able to recount that :) And yes, I have a huge rant about markdown in a draft blog post too

Stop using nil to signal failure. Elixir uses tagged tuples to turn success and failure into explicit data. When the shape of your data is the contract, you spend less time checking for special cases and more time writing clear logic. grox.io/blog/20-when... #ElixirLang

When the Shape Is the Contract: Tuples, Tagged Tuples, and Keywords | Groxio Blog

Learn when to use tuples, tagged tuples, and keyword lists in Elixir, and why designing return values as contracts leads to clearer, more maintainable code.

grox.io

I must admit that the only downside to using Elixir and Phoenix with tailwind is that any other stack feels awful to work with afterward. It's a shame that getting an Elixir job is almost impossible, like finding a needle in a haystack, hah. I'm out of ideas for projects, I'm open to suggestions :)

Should culture fit be a factor in hiring, or is tech skill sufficient? To me, software development is first and foremost a social activity performed by humans, with all the baggage that comes with being human. Technical competence is nice, but it is not the core of who we are. 1/10

I don't usually talk about politics, but I can't help but rant—it's unbelievable how many people are complaining about what happened in my country last night and telling Venezuelans that we are wrong about our own situation. Heck I've lived under socialism my whole life and I'm kinda happy now sybau

I might be cooking something for #norg yet again because why not? It's also my perfect excuse to give the Elixir-Rust interoperability with the rustler library a try. Development can be slow until I'm on vacation, but I'm overall happy with the current progress (just the front page for now lmao)

Bild

Small update: Luanox v0.2 has been released (2 weeks ago). Since we didn't announce it anywhere, I think it's still worth it mentioning. This release contains lots of bug fixes, a few features to improve the overall UI/UX and a small security patch. There's more to come! github.com/lumen-oss/lu...

Release v0.2.0 · lumen-oss/luanox

0.2.0 (2025-12-01) Features add LiveView pages transition (77a526b) improve mobile navbar UI/UX (84f99dd) navbar: add source button (#81) (4c203d8) navbar: backdrop overlay, close on outside click...

github.com

I think it's about time I posted something again. In October I got a permanent job again; the process was very quick and straightforward. Life has been rather busy since then, but things are going well and I'm slowly getting back to my open-source projects so expect a few updates this month! (1/3)