Elektrine
EN
Log in Register
Paige Chat Timeline Communities Gallery Videos Email DNS VPN Uptime Kairo
Back to Timeline
Remote

Johan Halse

@hejsna@ruby.social
  • Open on ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

0 Followers
0 Following
43 Posts
Joined November 29, 2022
Homepage:
https://johan.hal.se
GitHub:
https://github.com/johanhalse

Posts

Open post
hejsna
Johan Halse @hejsna@ruby.social · Jul 19, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @hejsna@ruby.social
Trying to predict the future is very hard given the general madness of the 2020s but right now the thing where AI is going to take all white collar jobs seems unlikely. ”Programming” is definitely toast, though! I feel like I imagine shipyard workers under Thatcher must’ve felt about their career. Not a great vibe.
1
0
1
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Jul 19, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
This was a lot better than his last anti-AI screed https://ludic.mataroa.blog/blog/ai-mania-is-eviscerating-global-decision-making/
2
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Jul 16, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @Jontofski@mastodon.art
@Jontofski@mastodon.art lovely use of negative space
0
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Jun 22, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
PDF generation in Ruby is complicated. There are three realistic choices, really: Prawn (low level, move-here-then-draw-this type operations), wkhtmltopdf (pull in AN ENTIRE BROWSER and render to PDF) and HexaPDF which seems cool but has kind of a weird license? But I had a brain moment last week and spent some time making this: https://github.com/johanhalse/bandoola
8
0
5
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Jun 08, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @mala@fosstodon.org
@mala@fosstodon.org haha, it’s a lot bleepy-bloopier than I remember it but there it is 😃
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Jun 08, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @mala@fosstodon.org
@mala@fosstodon.org link’s inaccessible because Gandalf(?) won’t let me in but is it Rick Dangerous? Because that’s where I heard it first
0
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Jun 07, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @cinders@social.blanc-on.top
@cinders@social.blanc-on.top better than anything I’ve ever rendered in Blender
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 25, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

About to climb aboard a long metal tube filled with explosive dinosaur juice, this is of course not absurd at all

2
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 24, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

I always confuse Don DeLillo and Dom DeLuise. Somebody should do a mashup

0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 23, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

One of the perks of not eating meat is being able to reuse the knife and cutting board for everything without having to worry about like E. coli or botulism or whatever

1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 22, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

Vad fan, 27 lax för ingenjörer och sysadmins? Äger Peje Emilsson en IT-konsultlåda också eller vem är Kristerssons vän den här gången? https://omni.se/uppgifter-regeringen-slopar-lonekrav-for-vardbitraden-och-underskoterskor/a/V649gJ

0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 09, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @hejsna@ruby.social
This toot brought to you by having to wait several seconds after clicking a link, and then getting booted to another page once I’d had enough and pressed reload. Fuck React
5
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 09, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

React apps are, overwhelmingly, just straight-up worse than plain old server-rendered markup. I don’t understand why everyone keeps building with it. The DX isn’t even that good.

37
5
13
2
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 08, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @stevendotjs@hachyderm.io
@stevendotjs@hachyderm.io that was an excellent read! Add your Mastodon metadata thing to the blog. You deserve more followers
2
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 08, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @drenmi@ruby.social
@drenmi@ruby.social @soulcutter@ruby.social that stood out for me as well! We’re serving a couple thousand users every day, a busy admin section, and a bunch of scheduled stuff firing all the time… and I think I have, like, twelve worker threads?
0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 07, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @soulcutter@ruby.social
@soulcutter@ruby.social there have been a handful of times (2? 3?) where one of our admin users messed something up and I had to spin up a new point-in-time db instance to get it back. Over four years of operation! Soft delete is one of those insidious ”what if” taxes that drag a codebase down. Hard to argue against because you come off as the reckless cowboy in the discussion.
0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 05, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @gabrielesvelto@mas.to
@gabrielesvelto THE GAYLBREAK
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 26, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @vga256@mastodon.tomodori.net
@vga256@mastodon.tomodori.net loved Director, my first tech job was as a game developer writing Lingo for a living! I’m still salty about how things went down with Flash. A slower, inferior vector-based platform won out because people made memes in it, while we had accelerated 3d graphics and physics engines…
0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 22, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @soulcutter@ruby.social
@soulcutter is… is the butthole syntax a common term, like the bacon cannon or the Elvis operator? Or did you just invent it? Because I am 100% here for that
0
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 22, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @soulcutter@ruby.social
@soulcutter I remember him being ”Seth Able Robinson” or sethable! There was a nice little telnet->web version with online signup that I used to play in the early 2000s called Nuklear Lord. Wonder if that’s still around?
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 21, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

"Boomerslop" is such an amazing word.

2
0
1
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 18, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @anubiarts@app.wafrn.net
@anubiarts the punchy one, bottom left
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 07, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @voided@hachyderm.io
@voided@hachyderm.io @th@social.v.st you’re not alone, ”komkommer” is objectively hilarious and I’m sure it can be proved on that Curta calculator
0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 04, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @sn@social.josko.org
@sn Germany committing energy suicide has been such a disaster for the continent 😢
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Mar 30, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @sn@social.josko.org
@sn when would you use ”Grandma’s shitting had ended?” 🤔
0
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Mar 21, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @runevision@mastodon.gamedev.place
@runevision@mastodon.gamedev.place Peter Molyneux built a whole-ass career on that!
0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Feb 26, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @rygorous@mastodon.gamedev.place
@rygorous Trunkless Legs Challenge - try not to despair (IMPOSSIBLE)
2
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Feb 16, 2026
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

AI boosters looking their firing squad squarely in the eyes, then breaking out in a heartfelt cheer for them before being gunned down https://johan.hal.se/wrote/2026/02/03/the-sideprocalypse/

The Sideprocalypse - Johan Halse
Johan Halse's blog

The Sideprocalypse - Johan Halse

You can't open a feed today without having AI boosters fling word salad like "agentic engineering" or "openclaw" into your beautiful but disapproving face. I'm terrible at predicting the future—you sh

11
2
4
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 29, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @wwahammy@social.treehouse.systems
@wwahammy@social.treehouse.systems @pointlessone@status.pointless.one everyone has a different situation and breaking point. I looked over DHH's Twitter feed yesterday and immediately felt very, very tired. He's out there chewing on the "woke" chestnut all day every day now, and it makes me incredibly uncomfortable. But I don't know what to do about it: I'm going to be working with Rails and Tailwind for the foreseeable future, that's our stack—I can't just up and leave. So I'll settle for him shutting up, that would keep the peace.
0
2
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 27, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @wschenk@floss.social
@wschenk@floss.social because he’s the second most influential person in the Ruby ecosystem, and him showing his entire ass to the Internet is driving decent people like me away? It’s not like there’s a shortage of web frameworks out there and most developers would prefer to work with one that DOESN’T have a mad frothing emperor running it. Same problem as with WordPress. I want him to shut up because I care about Ruby and he’s hurting it.
0
2
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 26, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @pointlessone@status.pointless.one
@pointlessone@status.pointless.one @Schneems@ruby.social we unfortunately know how he views the world, and that toothpaste can’t go back in the tube. But as long as he doesn’t act on it in ways that hurt others, he can keep his opinions and I can think they suck, and that can go both ways if that makes sense
3
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 26, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @pointlessone@status.pointless.one
@pointlessone@status.pointless.one you’re absolutely right, but it’s still a workable solution, one that obviously worked for many years. He was always an ass, but as long as he wasn’t out there actively rubbing people’s faces in it, chafing under his rule wasn’t nearly as much of an issue. I bet there are lots of open source leaders with equally slimy opinions, we just don’t hear about them and then it’s usually fine. Judge someone by their actions, not their thoughts.
2
7
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 26, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social

DHH has gone off the rails https://johan.hal.se/wrote/2025/09/26/david-please-stop-posting/

David, please stop posting - Johan Halse
Johan Halse's blog

David, please stop posting - Johan Halse

Let's be realistic: DHH isn't going anywhere. He owns the trademarks, he controls the Rails Foundation, he sits on the board of Shopify, and he doesn't give a shit about you. In fact, he seems positiv

46
23
27
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 22, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @hejsna@ruby.social
@morebento@aus.social @tekin@ruby.social I think it’s doubly sad because there’s a lot of good being done with Ruby, not least Mastodon - an incredibly successful Rails project that he just has never even mentioned, it’s dead to him because of his ideological blinders. He took so much psychic damage from that walkout and he’s never going to recover.
3
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Sep 22, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @morebento@aus.social
@morebento@aus.social @tekin@ruby.social not just because of DHH himself I think. I suspect he picked Hyprland as his compositor for a reason. They’re known for being a pretty bad bunch https://drewdevault.com/2023/09/17/Hyprland-toxicity.html
6
2
1
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Feb 04, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @aspensmonster@tenforward.social
@aspensmonster yeah they do save phone numbers but *not* who’s talking to who. No contact lists, no messages, no metadata about them. Literally just phone number plus two dates. I think that’s just about as good as it gets. I suppose an imagined future service can do better but it would be incredibly hard to reach Signal’s scale - which is a prerequisite for privacy. If you and four other geeks use a service, that says something about you. If you’re using signal, then so what? So’s everyone else
0
1
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Feb 04, 2025
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @aspensmonster@tenforward.social
@aspensmonster no, the only data they have is literally if your phone number has used the service, the date you signed up, and the most recent time you connected. No giant pile. The more people have connected and used the service, the less those fairly insignificant pieces of data are worth. So it seems counterproductive to FUD Signal in favor of some imagined perfect service.
0
6
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Nov 20, 2024
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @6VCR@mastodon.art
@6VCR@mastodon.art flippin 'eck 😮
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Oct 15, 2024
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @jonasdowney@mastodon.social
@jonasdowney@mastodon.social did you manage to catch photomatt’s blog post before it went down? Massive midlife crisis
0
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Apr 12, 2024
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @brucelawson@social.vivaldi.net
@brucelawson@social.vivaldi.net Bruce what do I do if I don’t enjoy the circles, they’re distressing me
17
2
2
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Mar 10, 2024
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @chetfaliszek@mastodon.online
@chetfaliszek@mastodon.online the backlog ever grows
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · May 30, 2023
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @brettezeleliquide@h4.io
@brettezeleliquide definite shades of Sin City
1
0
0
0
Open post
hejsna
Johan Halse @hejsna@ruby.social · Mar 20, 2023
Johan Halse
@hejsna@ruby.social

Reformed frontend developer, writing Ruby for a living. Last full night of sleep was in 2016

ruby.social
Replying to @kdaigle@hachyderm.io
@kdaigle@hachyderm.io you meant @bagder@mastodon.social !
1
1
0
0

Remote instance

ruby.social
Open on original server
313k7r1n3
Elektrine

Tor hidden service

elekhj7afj4qnrr4yd3bkzslsyo5jgfxw3orgjkhlcxifueodybyiiad.onion

Platform

  • Email
  • Chat
  • Timeline
  • Communities
  • VPN
  • DNS

Company

  • About
  • Contact
  • FAQ

Legal

  • Terms of Service
  • Privacy Policy
  • Warrant Canary
  • Lite (no JS)
  • VPN Policy
  • Source code

Support

  • support@elektrine.com
  • Report Security Issue
Mail client setup IMAP mail.elektrine.com:993 POP3 mail.elektrine.com:995 SMTP mail.elektrine.com:465
© 2026 Elektrine. All rights reserved. Server: 05:36:37 UTC