frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Cloudflare Global Network experiencing issues

https://www.cloudflarestatus.com/?t=1
1730•imdsm•3h ago•1197 comments

Nearly all UK drivers say headlights are too bright

https://www.bbc.com/news/articles/c1j8ewy1p86o
183•YeGoblynQueenne•1h ago•171 comments

Do Not Put Your Site Behind Cloudflare If You Don't Need To

https://huijzer.xyz/posts/123/do-not-put-your-site-behind-cloudflare-if-you-dont
150•huijzer•2h ago•99 comments

How Quake.exe got its TCP/IP stack

https://fabiensanglard.net/quake_chunnel/index.html
292•billiob•7h ago•42 comments

Experiment: Making TypeScript Immutable-by-Default

https://evanhahn.com/typescript-immutability-experiment/
27•ingve•1h ago•6 comments

Short Little Difficult Books

https://countercraft.substack.com/p/short-little-difficult-books
25•crescit_eundo•56m ago•2 comments

The Miracle of Wörgl

https://scf.green/story-of-worgl-and-others/
73•simonebrunozzi•4h ago•40 comments

Ruby 4.0.0 Preview2 Released

https://www.ruby-lang.org/en/news/2025/11/17/ruby-4-0-0-preview2-released/
95•pansa2•1h ago•28 comments

GoSign Desktop RCE flaws affecting users in Italy

https://www.ush.it/2025/11/14/multiple-vulnerabilities-gosign-desktop-remote-code-execution/
35•ascii•2h ago•16 comments

Gemini 3 Pro Preview Live in AI Studio

https://aistudio.google.com/prompts/new_chat?model=gemini-3-pro-preview
6•preek•9m ago•1 comments

Gemini 3 Pro Model Card

https://pixeldrain.com/u/hwgaNKeH
303•Topfi•3h ago•205 comments

Mathematics and Computation (2019) [pdf]

https://www.math.ias.edu/files/Book-online-Aug0619.pdf
17•nill0•2h ago•1 comments

The Uselessness of "Fast" and "Slow" in Programming

https://jerf.org/iri/post/2025/the_uselessness_of_fast/
75•zdw•6d ago•38 comments

How many video games include a marriage proposal? At least one

https://32bits.substack.com/p/under-the-microscope-ncaa-basketball
285•bbayles•4d ago•70 comments

Multiple Digital Ocean services down

https://status.digitalocean.com/incidents/lgt5xs2843rx
79•inanothertime•2h ago•27 comments

Show HN: I built a synth for my daughter

https://bitsnpieces.dev/posts/a-synth-for-my-daughter/
1213•random_moonwalk•6d ago•204 comments

Ruby Symbols

https://tech.stonecharioteer.com/posts/2025/ruby-symbols/
52•stonecharioteer•6d ago•32 comments

Ditch your (mut)ex, you deserve better

https://chrispenner.ca/posts/mutexes
102•commandersaki•6d ago•120 comments

Azure hit by 15 Tbps DDoS attack using 500k IP addresses

https://www.bleepingcomputer.com/news/microsoft/microsoft-aisuru-botnet-used-500-000-ips-in-15-tb...
423•speckx•21h ago•272 comments

The surprising benefits of giving up

https://nautil.us/the-surprising-benefits-of-giving-up-1248362/
140•jnord•10h ago•117 comments

Langfuse (YC W23) Hiring OSS Support Engineers in Berlin and SF

https://jobs.ashbyhq.com/langfuse/5ff18d4d-9066-4c67-8ecc-ffc0e295fee6
1•clemo_ra•8h ago

Roma Lister, Aradia, and the Speculative Origins of a Witchcraft Revival

https://publicdomainreview.org/essay/roma-lister-aradia/
7•Vigier•5d ago•0 comments

When Reverse Proxies Surprise You: Hard Lessons from Operating at Scale

https://www.infoq.com/articles/scaling-reverse-proxies/
77•miggy•5d ago•7 comments

I've Wanted to Play That 'Killer Shark' Arcade Game Briefly Seen in 'Jaws'

https://www.remindmagazine.com/article/15694/jaws-arcade-video-game-killer-shark-atari-sega-elect...
4•speckx•3d ago•1 comments

A/B Tests over Evals

https://www.raindrop.ai/blog/thoughts-on-evals/
10•Nischalj10•4d ago•4 comments

Unofficial "Tier 4" Rust Target for older Windows versions

https://github.com/rust9x/rust
114•kristianp•12h ago•68 comments

My stages of learning to be a socially normal person

https://sashachapin.substack.com/p/my-six-stages-of-learning-to-be-a
547•eatitraw•3d ago•374 comments

Rebecca Heineman has died

https://www.pcgamer.com/gaming-industry/legendary-game-designer-programmer-space-invaders-champio...
730•shdon•13h ago•129 comments

Compiling Ruby to machine language

https://patshaughnessy.net/2025/11/17/compiling-ruby-to-machine-language
270•todsacerdoti•19h ago•49 comments

'Fear really drives him': is Alex Karp of Palantir the world's scariest CEO?

https://www.theguardian.com/technology/2025/nov/18/fear-really-drives-him-is-alex-karp-of-palanti...
27•mellosouls•1h ago•24 comments
Open in hackernews

Ruby 4.0.0 Preview2 Released

https://www.ruby-lang.org/en/news/2025/11/17/ruby-4-0-0-preview2-released/
95•pansa2•1h ago

Comments

lloydatkinson•1h ago
I didn't know Ruby has three different JITs
hartator•1h ago
Yes, specially ZJIT is news to me.
shevy-java•1h ago
Mostly the newer ones try to improve the older ones.

I guess at some later point one will dominate and the others will go sleep mode. Just like in the movie Highlander - there can only be one. (I couldn't name offhand which JIT is the main one right now ... I always think it is from Takashi Kokubun but that may now be outdated. MJIT YJIT ZJIT HUJIT WAJIT WTFJIT GRANDMAJIT - too many JITs.)

Lio•44m ago
I was actually hoping it would be four JITs and we'd get Tenderlove's tiny FFI JIT too.

https://railsatscale.com/2025-02-12-tiny-jits-for-a-faster-f...

pjmlp•12m ago
It actually has several more, if you take into account JRuby + all JVM implementations (OpenJDK based distros, OpenJ9, Azul, PTC,...), ART even if not JVM proper with Ruboto, and TruffleRuby on GraalVM.
falcor84•1h ago
Any particular changes of interest?
dudeinjapan•1h ago
ZJIT is supposed to be an improvement on YJIT. I'm happy to get any free performance improvements!

The Ruby Ractor (Actor) interface is now completely changed to use a Ractor::Port class, mirroring IPC (inter-process communication) semantics. Ractors were added in 3.0 as a way to get around the GVL/GIL, but having N number of Ruby interpreters running in a Ruby process which would enable executing on N cores at once. For me, hot take but Ractors don't seem to offer major advantages over plain-ol' copy-on-write (COW) forking.

The one "big" feature was supposed to be namespaces, which apparently have now been renamed to Ruby::Box (https://docs.ruby-lang.org/en/master/box_md.html). From what I can glean from the Ruby issue tracker, it appears this feature has been radically descoped, primarily because it had performance impacts, but also, I think probably there are realistic concerns about fit with the existing ecosystem. Unlike Javascript/Python, Ruby has never used "modules" for code isolation--everything is loaded into the global namespace (the "global dumping ground" as I call it.) Now the Box feature is only enabled with an environment variable RUBY_BOX=1

https://bugs.ruby-lang.org/issues/21311

shevy-java•1h ago
I don't think it has really descoped. They just want the transition to be smooth. So they start slowly. The lead japanese dev will most likely in 2026 go for more extension, and I also think this kind of has to be synced a bit with ractor (I think?).

Ractor is also strange. Do many people use ractors? I rarely see them used in actual ruby code out there. Right now it seems to me as if ractors are used by only ... say ... 1% or fewer of the ruby developers out there. A bit more than refinement users ... :P

dudeinjapan•57m ago
Ractors have promise but the implementations up till now haven't had strong concurrency safety. It seems in the latest release some of the heavy-hitter contributors like Jean Boussier (byroot) have taken a detailed look at Ractors and started to clean things up.

https://byroot.github.io/ruby/performance/2025/05/24/unlocki...

frou_dh•1h ago
I'm happy if that feature has been descoped because when I last read up on it, it seemed like it was being ramrodded in by an inner circle who were hardly interested in constructive criticism even from other Ruby core maintainers.
dudeinjapan•55m ago
I had a talk with Matz 1-on-1 about 6 months back and expressed my doubts about namespaces :) He's a nice guy, he just smiled.
sdwolfz•1h ago
The NEWS link details a bit more:

https://github.com/ruby/ruby/blob/v4_0_0_preview2/NEWS.md

What is interesting to me is the `Ractor.shareable_proc` changes that solved a bug for a use case I was having. And in general fixes for Ractors make them more appealing to use right now, even though they have not removed the `Experimental` flag from them. They are still missing a built-in concurrency primitive like channels or a lock free queue; I'm curious what they will settle on, Ractor::Port is nice but not enough.

shevy-java•1h ago
It is 4.0.0 largely because matz created ruby 30 years ago.

matz is no longer the youngest - although he does look young, he is already 60 years old. He also said he has a retirement plan, e. g. avoiding a situation such as when Guido quit (or semi-quit) from Python (due to fatigue/frustration; Guido is not 100% retired but he is also not necessarily the solo-design-dev either, so it is a bit of a semi-retirement). So we won't know how long matz will be the lead designer of ruby - and who will succeed. Which may be reason to worry depending on who it would be. Imagine DHH takes over - man, there would be an insta-exodus of people ...

So while this release does not have a lot of content as such, one thing that is quite big, even though right now it is not, is Ruby::Box. There are many who don't understand it. The thing is ... I understand the use cases for it. I was not involved in any way with regards to its design, mind you - that was mostly a japanese-group in design. But there are objective use cases for it.

Many years ago I recall on IRC (we oldschool people used IRC back in the pre-discord stone age) some C# hacker said he won't use ruby because there are no strong namespaces, that is, someone else can just overwrite things and then nothing works. Although I think he was a drama guy, and any "danger" to be minimal, objectively he has had a point, simply because ruby had no strong concept of isolation here. Lateron there came refinements. Now refinements are strange, because while I think the use case makes sense, the syntax is strange. Syntax is one huge reason why I do not use refinements; but also because I try to avoid putting my own modifications all over the place, largely because I'd have to distribute that too, and also because modifying core classes, while that has a use, should not be done excessively, IMO.

Ruby::Box kind of builds on that and makes the refinement use case more generic (eventually; I am aware that right now this is not the case but you need a transition stage. Syntax-wise Ruby::Box is also weird, so hopefully the syntax gets easier too, but I instantly understood the use cases. Many people don't, in particular about 95% who demanded a name change away from Namespace to something else, really don't understand the underlying use case.)

Now - making isolated per-project changes is not the only use case. For instance, ractors could be simplified if you know that there are separate ruby processes; ruby threads probably too. These I consider secondary benefits though (and yes, that may be far in the future, who knows; when python removed its GIL though, it put ruby under pressure, aka shape-up-or-go-extinct mode).

One thing I would complain a lot is that on rubygems.org, before RubyCentral went shopify-controlled-only, that people would occupy namespaces. Such as Configuration. I wanted to have a project called Configuration so I can do Configuration.new or Configuration.parse_this_file(). This is possible of course, but when it comes to distributing code, who owns that toplevel namespace? Normally the one who occupied the name first on rubygems.org, sort of. Via Ruby::Box, it should be possible to have ownerships. This could be strong or weak; weak as a hint, aka "psych is owned by ruby core ownershiper but it can be modified", or strong aka making it immutable. Both have use cases. Could also be both. Having this more organized would be really convenient for developers. I would not have to worry whether anyone else uses that "namespace". And of course we need a way to query this state from within ruby code too aka, say immutable:

"If psych is owned by ruby-core, continue to use it."

psych (for yaml) is not a good example here but you can think of any other namespace where you may only want to consider some gems/projects but not others. (Again, the use case may differ between strong and weak ownership, but the thing is that this is an improvement over the prior status quo.)

There are several additional use cases to be had but I'll stop here. What I find strange is that many people who complain, don't refer to the old issues and discussions. We had discussions before refinements were added. About 80% of the people involved, DON'T EVEN KNOW THESE OLD DISCUSSIONS. Either they have dementia, or these are young ruby users who never were active in the old days. It's very strange.

I am not saying all is perfect about Ruby::Box, in particular syntax-wise I'd like improvements, but many people don't seem to understand the use cases, and this is very very strange.

dudeinjapan•1h ago
Ruby::Box in its current form seems to radically miss the mark. Any namespace paradigm only has utility if it is widely adopted across the ecosystem. Javascript did this with ES modules 10 years ago--it IS possible--but it takes a ton of buy-in and effort from the community to achieve it.

I just don't think Ruby has this "burning need" to have namespaces/modules/erm... "boxes". So we're likely to end up with sporadic usage of Boxes leading to inconsistent behavior.

thebigkick•57m ago
Curious, why would DHH trigger a mass exodus?
flykespice•53m ago
Would you keep using a programming language leaded by a racist? I wouldn't
npteljes•50m ago
If programming is just my hobby, then maybe. But would you, for example, quit your current job and look for another, just to change the programming language? I know I'm not that sort of person.
chipotle_coyote•7m ago
I think it's not as much "if this guy becomes the lead I'm immediately quitting my Ruby job to return to PHP" as much as "if this guy becomes the lead I'm probably going to return to PHP for my next job."
dudeinjapan•45m ago
This is exactly why we shouldn't use KKScript either. Plus it has 1-based array indexes.
throwaway48921•42m ago
I'd much prefer Jeremy Evans[0] taking over rather than DHH. Jeremy is a Ruby core committer (and much more pleasant person), unlike DHH.

[0] - https://github.com/jeremyevans

brigandish•33m ago
Anyone who won't discriminate against others for their politics would be an improvement, because that's not what's been happening in many core projects.
throwaway48921•27m ago
I am not suggesting Jeremy Evans simply because of politics. I think he's very underrated in the community and the work he does is incredible. Having interacted with him a number of times, he's been really helpful and pleasant. I think those qualities make him a good candidate.

Fun fact: Jeremy won the Ruby Prize 2019: https://rubyprize.jp/19_iv-nominees01-2-en.html

brigandish•20m ago
I agree. He has scolded me before though, for submitting code he didn't like the look of. Felt a tad harsh at the time, that's the kind of thing that puts people off contributing. However, he's a better programmer than me so if he didn't like it he's probably right. Could improve his bedside manner a bit though. I'm sure others have said that about me too, perhaps I'm a hypocrite.

Regardless of that, anyone who doesn't discriminate against others for their politics would be an improvement.

Edit: a improvement on the other westerners in the core team who might be touted as the next benevolent dictator, as I doubt that benevolence would maintain.

brigandish•39m ago
The Ruby "community" has long been dogged by politics and culture war stuff. This comment[0] on a flagged submission has lots of links for getting up to speed.

Maybe they're right, there would be an exodus, I just wonder if other languages' communities will want the trouble. The Japanese Rubyists don't care for a second, a nice by-product of Japanese insularity. Ruby would continue in Japan just fine without westerners, don't worry.

[0] https://news.ycombinator.com/item?id=45379652

werdnapk•44m ago
Ruby dev since 2000 and looks like refinements have been available since 2.4. I just used them for the first time this year. Definitely not a go to feature for me, but it was nice the feature was available.
davidw•21m ago
As a practical matter, I don't think DHH is a Ruby internals geek, particularly, and seems to have other hobbies as well, so I don't think that's likely to even be a thing the community faces.
ksec•47m ago
Nothing about Fibres and Async from Samuel Williams ?