frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Python 3.15’s interpreter for Windows x86-64 should hopefully be 15% faster

https://fidget-spinner.github.io/posts/no-longer-sorry.html
11•lumpa•1h ago•1 comments

Phoenix: A modern X server written from scratch in Zig

https://git.dec05eba.com/phoenix/about/
510•snvzz•15h ago•265 comments

We invited a man into our home at Christmas and he stayed with us for 45 years

https://www.bbc.co.uk/news/articles/cdxwllqz1l0o
323•rajeshrajappan•3h ago•52 comments

Mattermost restricted access to old messages after 10000 limit is reached

https://github.com/mattermost/mattermost/issues/34271
158•xvilka•3h ago•82 comments

Tell HN: Merry Christmas

1450•basilikum•15h ago•335 comments

The First Photographs of Snowflakes Discover the Groundbreaking Microphotography

https://www.openculture.com/2017/12/the-first-photographs-of-snowflakes.html
36•_____k•6d ago•0 comments

The Fisher-Yates shuffle is backward

https://possiblywrong.wordpress.com/2020/12/10/the-fisher-yates-shuffle-is-backward/
27•possiblywrong•4d ago•8 comments

Self-referencing Page Tables for the x86-Architecture

https://0l.de/blog/2015/01/bachelor-thesis-abstract/
34•stv0g•5h ago•6 comments

Quantum Error Correction Goes FOOM

https://algassert.com/post/2503
27•EvgeniyZh•4h ago•5 comments

Who Watches the Waymos? I do [video]

https://www.youtube.com/watch?v=oYU2hAbx_Fc
198•notgloating•13h ago•56 comments

Ask HN: How do I bridge the gap between PhD and SWE experiences?

11•ecophyseis•6d ago•7 comments

Ruby 4.0.0

https://www.ruby-lang.org/en/news/2025/12/25/ruby-4-0-0-released/
421•FBISurveillance•9h ago•77 comments

Fabrice Bellard: Biography (2009) [pdf]

https://www.ipaidia.gr/wp-content/uploads/2020/12/117-2020-fabrice-bellard.pdf
300•lioeters•19h ago•89 comments

Show HN: Minimalist editor that lives in browser, stores everything in the URL

https://github.com/antonmedv/textarea
369•medv•18h ago•124 comments

Handheld PC Community Forums

https://www.hpcfactor.com/forums/category-view.asp
34•walterbell•3d ago•8 comments

Asterisk AI Voice Agent

https://github.com/hkjarral/Asterisk-AI-Voice-Agent
138•akrulino•14h ago•58 comments

CSRF protection without tokens or hidden form fields

https://blog.miguelgrinberg.com/post/csrf-protection-without-tokens-or-hidden-form-fields
232•adevilinyc•3d ago•87 comments

Fabrice Bellard Releases MicroQuickJS

https://github.com/bellard/mquickjs/blob/main/README.md
1401•Aissen•1d ago•529 comments

Show HN: Vibium – Browser automation for AI and humans, by Selenium's creator

https://github.com/VibiumDev/vibium
345•hugs•20h ago•102 comments

Show HN: Exploring Mathematics with Python

https://coe.psu.ac.th/ad/explore/
160•Andrew2565•5d ago•15 comments

Research team digitizes more than 100 years of Canadian infectious disease data

https://news.mcmaster.ca/mcmaster-research-team-digitizes-more-than-100-years-of-canadian-infecti...
127•XzetaU8•6d ago•6 comments

JEDEC developing reduced pin count HBM4 standard to enable higher capacity

https://blocksandfiles.com/2025/12/17/jedec-sphbm4/
47•rbanffy•6d ago•5 comments

Using Vectorize to build an unreasonably good search engine in 160 lines of code

https://blog.partykit.io/posts/using-vectorize-to-build-search/
90•ColinWright•3d ago•28 comments

Comptime – C# meta-programming with compile-time code generation and evaluation

https://github.com/sebastienros/comptime
107•bj-rn•4d ago•35 comments

Nvidia to buy assets from Groq for $20B cash

https://www.cnbc.com/2025/12/24/nvidia-buying-ai-chip-startup-groq-for-about-20-billion-biggest-d...
587•nickrubin•17h ago•333 comments

The next-gen mainboard designed with amigaos4 and morphos in mind

https://mirari.vitasys.nl/our-story/
53•todsacerdoti•13h ago•11 comments

The port I couldn't ship

https://ammil.industries/the-port-i-couldnt-ship/
124•cjlm•6d ago•80 comments

Prototaxites

https://astrobiology.com/2025/03/ancient-prototaxites-dont-belong-to-any-living-lineage-possibly-...
52•andsoitis•5d ago•6 comments

I'm returning my Framework 16

https://yorickpeterse.com/articles/im-returning-my-framework-16/
258•YorickPeterse•1d ago•433 comments

Jingle Bells (Batman Smells): An incomplete festive folk-rhyme taxonomy

https://loreandordure.com/2025/12/16/jingle-bells/
108•helsinkiandrew•4d ago•48 comments
Open in hackernews

Mattermost restricted access to old messages after 10000 limit is reached

https://github.com/mattermost/mattermost/issues/34271
154•xvilka•3h ago

Comments

bramhaag•2h ago
Mattermost is MIT licensed. What is stopping anyone from removing this restriction?
jstummbillig•1h ago
I don't know, but that seems somewhat beside the point. The restriction obviously was not added to test peoples ability to remove it.
Y_Y•1h ago
https://github.com/mattermost/mattermost/issues/34271#issuec...

Wanting to use Mattermost's binaries rather than building from source?

Re licensing see: https://isitreallyfoss.com/projects/mattermost/

LudwigNagasena•1h ago
It’s not open source, it’s “open core” SaaS.
bfkwlfkjf•1h ago
The time and energy that it takes to do it and build it, and then make it easy for current users to move their automatic updates to the fork, then maintaining it etc.
J-Kuhn•1h ago
The compiled binary is.

The source code is... AGPL licensed? But not the admin tools. They seem to be licensed under the Apache License 2.0.

--------

Yeah, good luck. Contact your lawyer.

bfkwlfkjf•1h ago
Explain please. This interests me and I'm extremely curious about what you mean.
true_religion•1h ago
AGPL and Apache are both open source licenses. So I’m not getting what the confusion would be as an end user, who won’t be modifying the software or packaging it for sale.
ekjhgkejhgk•59m ago
They're both FREE software licenses, which is more.

https://www.gnu.org/licenses/license-list.html

csomar•1h ago
Nothing. Open Source is dying. The model to finance open source work (well-off suburban american dads or as a portfolio show off) no longer apply. The old generation that believed in this model is retiring and for the new generation it pays better to "network", leet code, or spam your resume to thousands of employers.

Now couple that with the fact that supply-chain control is profitable (legally or illegally); I think the next 5-10 years will be interesting.

mort96•1h ago
Maintaining your own fork is a ton of work. Even if it's just routinely rebasing on upstream and maintaining your own upgrade infrastructure and doing releases, that's far from trivial.

The open source community really needs to stop with the "just fork it" mindset.

derefr•1h ago
I don't think the implication is that anyone as an individual would fork it.

I think the implication is that some other interested org could very easily step in and assume the role that the Mattermost org was in, and everyone would very eagerly switch and leave Mattermost itself speaking to an empty room.

whatevaa•55m ago
Still need someone to do unthankful work, in which many are not interested, naturally.
integralid•1h ago
>The open source community really needs to stop with the "just fork it" mindset.

The open source community really needs to stop with the "just do everything i want for free" mindset.

I mean, open source does not mean you're entitled to free support, and free in free software is not about money. I think people depend too much on those projects and then act entitled.

Of course the open source bait and switch done by companies is a shitty behavior worth calling out, but the companies exist to earn money and at this point this can be expected.

mort96•46m ago
I don't think I've expressed a "just do everything I want for free" mindset. In fact, I'm pushing against the idea that someone should just fork Mattermost and maintain that fork for free.

I do think this development represents a bait and switch though.

fn-mote•14m ago
> Of course the open source bait and switch done by companies is a shitty behavior worth calling out,

Yes, that’s what we are doing here.

> but the companies exist to earn money and at this point this can be expected.

Expected != ethical. Also not a necessary, logical outcome.

What is legitimately expected is a pro version that has more corporate features. We’re not talking about $Xx/user/mo to enable SSO here, though.

yread•18m ago
I use MM for about a year. Forking it would be a major undertaking as the number of vulnerabilities for which you would need to backport is quite high like 5 a month?). Last time they removed features from free (group calls in v10) there was a lot of grumbling but thats it.
compsciphd•28m ago
glancing through the code, it doesn't seem like it be that hard to remove limitations such as this. PostHistoryLimit/postHistoryLimit interpreted from License Limits. a little poke here and there and I'd guess the limitations would disappear.
acheong08•2h ago
It's another level of insane to put hard limits for self hosted open source software. I'm surprised so few people in the thread have just changed the source code and build it themselves.
dotancohen•1h ago
They probably found performance problems at certain limits and "resolved" the problem with a hard coded limit.
danielheath•1h ago
... a hard coded limit... for self-hosted software... which is removed for paying users?
gmerc•1h ago
Did they take VC money?
shafyy•1h ago
Yes. They are a YC company, too: https://mattermost.com/blog/yc-leads-50m-series-b-in-matterm...
bfkwlfkjf•1h ago
I think that the photos they have on their front page should be enough to tell you who is their target market.

I've invented this heuristic: if the page that describes the project uses the word "solutions", then they'll attempt to use "open source" to obtain free labour, but will distribute the revenues only amongst those people who actually have control.

dotancohen•1h ago
Black businesswomen? Firefighters? White servicemen? White software developers?

I really don't get what you're implying. I don't see any problem with the photos on the mattermost front page.

https://mattermost.com/

bfkwlfkjf•1h ago
Everything you mentioned in that list in people who can pay. As opposed to people who code and they use what they code, and furthermore share it with other people who also code and use what they code.

It's "open source" so that they save on developer costs, not for ideological reasons, and you can tell from the photos on their front page - that's what I was implying.

xhkkffbf•1h ago
I think this is kind of cynical. I often adopt open source tools because I want to avoid vendor lockin. And so do many. It's not like I say, "Wow. Another code base to dive into and spend hours trying to understand." Nope. I just want the assurance that I can do it if I ever need to do so.
stavros•1h ago
I don't think the GP implied anything about race? The photos I see are war frigates, power plants, some sort of military operations center, and commercial airliners.

Think "enterprise", rather than "racism".

bfkwlfkjf•1h ago
Exactly. But some people think everyone else is racist. Those people's skin colour didn't even register.
dotancohen•1h ago
I left every option open for OP to explain. I personally couldn't care less what skin colour are in any of the photos. Not a single one of them match my own.
notarobot123•1h ago
Governmental organizations and corporate firms is the vibe (or maybe that was obvious and you're just trolling).

I think the point was that open source hasn't often been supported by companies serving these kinds of markets and the interests of the broader community are often sidelined.

bfkwlfkjf•1h ago
What's mattermost? People in the GitHub comments say "I just need messages" but there's lots of self hosted messaging apps/servers, no? XMPP comes to mind immediately.
figmert•1h ago
It's an open source alternative to Slack
firesteelrain•1h ago
It’s an IRC-like, group chat for Corporate that works in airgap. When HipChat was obsoleted, then Mattermost took over.
gus_massa•1h ago
From the readme.md

> A new compiled version is released under an MIT license every month on the 16th.

What does than even mean? Is it equivalent to what we use to call "freeware". Is it legal to modify the binaries?

dotancohen•1h ago
I'm not sure about MIT, but the GNU license specifically requires the application licensed to be available in source code (human readable and editable form or similar verbiage).
tom_•1h ago
The MIT licence does not require this.
ekjhgkejhgk•54m ago
I'm not an expert, but I very much doubt this.

The FSF calls it a "free license" [1] and I don't think they would if they didn't make the source code available.

Source code available is necessary but not sufficient for Free software, see [2]

> Freedoms 1 and 3 require source code to be available because studying and modifying software without its source code can range from highly impractical to nearly impossible.

[1] https://www.gnu.org/licenses/license-list.en.html#Expat

[2] https://en.wikipedia.org/wiki/Free_software

EDIT Oh sorry, you mean for the LICENSE to be available. Never mind then.

adastra22•36m ago
You can compile MIT software and distribute the binary while saying “fuck you” to anyone who asks for the source.

You are thinking of copyleft (e.g. GPL)

ekjhgkejhgk•33m ago
If that were true, the FSF wouldn't call it a free license.
fn-mote•10m ago
You should have linked the MIT License on Wikipedia (or anywhere else) instead of Free Software.

The license is only three paragraphs long. You can see it does not contain text supporting your claim.

https://en.wikipedia.org/wiki/MIT_License

ekjhgkejhgk•3m ago
Well, I'm confused.
gjsman-1000•1h ago
> “Mattermost only got where it is today because of the open-source community.”

Not really? FOSS communities overestimate their importance on a daily basis.

Case in point: Linux. 90%+ of commits were corporate sponsored… in 2004. The pure community member does almost nothing of importance for Linux anymore; or any of these projects.

cantalopes•1h ago
Thank god i didn't convince my team to selfhost mattermost instead of using slack
adastra22•38m ago
… slack is exactly the same, except without even the ability to self-host?
jamescontrol•1h ago
I looked at it for company chat and data, but those weird limits in functionality making in unusable was just too much, so them doing this too is not really surprising. Are they low on money?
shaky-carrousel•1h ago
You can switch to https://framagit.org/framasoft/framateam/mostlymatter which doesn't have the user limit crap.
carolosf•1h ago
I used to use Mattermost. Highly recommend looking at Zulip as an alternative. (It’s my favourite slack alternative and even better than Slack because it’s the best at managing distractions IMO. It also has an interesting history was acquired by Dropbox and then back from Dropbox I believe)
paper2d•3m ago
Zulip too has similar restrictions even on their self hosted plans. SAML/LDAP is behind paywall too.
constantius•1h ago
They're now a defense contractor, the copy on their website sounds like military cosplaying.... Probably chasing the stupid profits of Anduril and Palantir, and doing the old open source rugpull in the process.

Zulip (for Slack) and Wekan (for Trello) are good replacements, save yourself the ethical and technical worries.

https://zulip.com/

https://wekan.github.io/

firesteelrain•1h ago
mIRC was used during GWOT for military. They just didn’t openly advertise it.

https://news.ycombinator.com/item?id=5147321

huhtenberg•1h ago
What's GWOT?
firesteelrain•1h ago
Global War on Terror
OutOfHere•1h ago
Global War on Tankers
constantius•1h ago
Knives were too, and yet I'm not calling people to use forks instead. There is a difference between military contractors and generic tools.

Edit: sorry, hotheaded reply. I assume you mean that the creator of mIRC was encouraging it (though it's not mentioned anywhere). I still.stand by my analogy, but I see your point given your assumption.

firesteelrain•1h ago
> I assume you mean that the creator of mIRC was aware of it and encouraging it.

Like most licensed software, it was likely licensed by “US Government” or “Department of Defense”. Plus, it was openly written about back in the day. It was well known. No clauses in their licensing to prevent its use for those purposes.

Comparing to Mattermost and amplifying the original comment, Mattermost website is openly associating with PlatformOne.

constantius•1h ago
Thanks. For context, this is what you're referring to (many entities with that name):

https://p1.dso.mil/

firesteelrain•57m ago
Yes, exactly.
ekjhgkejhgk•1h ago
On Kanban, I would instead suggest cryptpad.fr.

Crucially, it's end to end encrypted.

You can self-host it, or pay for having it hosted (or use the hosted free tier).

Has other things in addition to kanban.

I got a 1 yr account.

https://cryptpad.fr/

sallveburrpi•31m ago
So so weird that we live in a timeline where Anduril and Palantir are military contractors of the US and other governments.

I know it’s somewhat of a tired observation by now but I still wonder every time how badly you have to misread LOTR to name your company after the witch kings cursed surveillance artefacts.

I wonder when the first weapons manufacturing company calls themselves Angmar or Uruk-hai.

The names are really dope though I have to give them that…

swiftcoder•16m ago
> I wonder when the first weapons manufacturing company calls themselves Angmar or Uruk-hai.

Luckily/unluckily, AngMar is one of those shady medical subcontracting firms instead...

mystraline•10m ago
Unsurprising, given that the CEO of Element/Matrix is also selling and creating primarily to that end as well.

https://news.ycombinator.com/item?id=46379589

Zephilinox•1h ago
so not only did they enforce a ridiculously small message limit, they also did it for the self-hosted version, and they did it without announcing it AND without a suitable migration path

and still no one from that company has admitted to it being a mistake?

very nice

protimewaster•1h ago
In defense of them not admitting any kind of mistake, maybe it's not actually a mistake but instead a really well thought out, yet incredibly stupid, plan.
creshal•1h ago
That'd be even more reason for them to have a solid PR plan prepared, to grind down opposition and gaslight everyone into giving up. Leaving all messaging about the issue to upset users is the worst way to handle it. Even just closing the issue would've been less damaging at this point.
cwmoore•56m ago
The distinction isn’t non-discriminating, but if it is then, what it is, I believe.
g947o•38m ago
aka "it's a good idea to turn our productivity software into ransomware" plan
Vespasian•1h ago
Yeah I'm mostly confused about their lack of communication.

If they want to do that then, as every corporate "open source", they are free to do so but why not communicate that at least in the release post?

Any potential free user who would consider going paid will now be starting off their relationship negatively.

Really weird strategy.

ekianjo•47m ago
what license do they use? If a true FOSS license it's time to fork...
RobotToaster•16m ago
Appears to be "open core" agpl https://github.com/mattermost/mattermost?tab=readme-ov-file

Not sure what isn't included in the core though.

q3k•1h ago

    diff --git a/server/channels/app/limits.go b/server/channels/app/limits.go
    index b13103898a..a8be8dd908 100644
    --- a/server/channels/app/limits.go
    +++ b/server/channels/app/limits.go
    @@ -36,17 +36,6 @@ func (a *App) GetServerLimits() (*model.ServerLimits, *model.AppError) {
                    limits.MaxUsersHardLimit = licenseUserLimit + int64(extraUsers)
            }
     
    -       // Check if license has post history limits and get the calculated timestamp
    -       if license != nil && license.Limits != nil && license.Limits.PostHistory > 0 {
    -               limits.PostHistoryLimit = license.Limits.PostHistory
    -               // Get the calculated timestamp of the last accessible post
    -               lastAccessibleTime, appErr := a.GetLastAccessiblePostTime()
    -               if appErr != nil {
    -                       return nil, appErr
    -               }
    -               limits.LastAccessiblePostTime = lastAccessibleTime
    -       }
    -
            activeUserCount, appErr := a.Srv().Store().User().Count(model.UserCountOptions{})
            if appErr != nil {
                    return nil, model.NewAppError("GetServerLimits", "app.limits.get_app_limits.user_count.store_error", nil, "", http.StatusInternalServerError).Wrap(appErr)
p2detar•1h ago
This seems to be only for the Enterprise edition. The "free" Team edition should not have this limit:

https://github.com/mattermost/mattermost/issues/34271#issuec...

Also one of the comments:

> Would be a shame if someone with too much time on their hands dug into the binary and added a few zeroes to the message limit

Can this be done via some binary-patch tool? Really curious. It would save recompile efforts.

edit: link

edit 2: I just realized, their Ubuntu repository only contains the Enterprise edition labeled "Free edition". This is really confusing. I does look like entishitification has started long ago: https://docs.mattermost.com/deployment-guide/server/deploy-l...

bmacho•19m ago
Is it legal to "patch" (remove a restriction) the binary?
petcat•1h ago
Am I understanding this right that the main complainant in that issue thread is an IT company that wants to resell the (free) version of Mattermost software and is now complaining that they have to pay?

At first they tried to say that "we're a school" and then when the MM rep said they have an Education license, they admitted that they are not actually a school, but rather a consulting company that is gouging schools by overcharging for open source software.

sergiotapia•50m ago
No, you are not understanding this right.

It's about rug pulling your users and cutting them off at the knees. I don't use mattermost but read the github thread in it's entirety.

toxik•16m ago
The good brand of open-source software is basically being abused to do basic rug pull schemes. Sad.
lexicality•18m ago
> an IT company that wants to resell the (free) version of Mattermost software and is now complaining that they have to pay?

A user that was following the letter of the license and has suddenly had their access to the software restricted without warning.

Open source software means people are entirely within their rights to sell it to others, perhaps creating value by providing the warranty that all licenses expressly disclaim.

yard2010•51m ago
So, they limit the access to data on self hosted instances after upgrade? Sounds like a ransomware with extra steps.

Enshitification ensues.

lousken•18m ago
For all the bad press element/matrix has been getting, I am happy that at least I don't have to deal with this as well.
garganzol•16m ago
Bait contributors by a FOSS-like model, then switch the mode to sell the results of their contributions without paying them back. What a classic.
cletus•12m ago
Story time. This has basically nothing to do with this post other than it involves a limit of 10,000 but hey, it's Christmas and I want to tell a story.

I used to work for Facebook and many years ago people noticed you couldn't block certain people but the one that was most public was Mark Zuckerberg. It would just say it failed or something like that. And people would assign malice or just intent to it. But the truth was much funnier.

Most data on Facebook is stored in a custom graph database that basically only has 2 tables that are sharded across thousands of MySQL instances but most almost always accessed via an in-memory write-through cache, also custom. It's not quite a cache because it has functionality built on top of the database that accessing directly wouldn't have.

So a person is an object and following them is an edge. Importantly, many such edges were one-way so it was easy to query if person A followed B but much more difficult to query all the followers of B. This was by design to avoid hot shards.

So I lied when I said there were 2 tables. There was a third that was an optimization that counted certain edges. So if you see "10.7M people follow X" or "136K people like this", it's reading a count, not doing a query.

Now there was another optimization here: only the last 10,000 of (object ID,edge type) were in memory. You generally wanted to avoid dealing with anything older than that because you'd start hitting the database and that was generally a huge problem on a large, live query or update. As an example, it was easy to query the last 10,000 people or pages you've followed.

You should be able to see where this is going. All that had happened was 10,000 people had blocked Mark Zuckerberg. Blocks were another kind of edge that was bidirectional (IIRC). The system just wasn't designed for a situation where more than 10,000 people wanted to block someone.

This got fixed many years ago because somebody came along and build a separate system to handle blocking that didn't have the 10,000 limit. I don't know the implementation details but I can guess. There was a separate piece of reverse-indexing infrastructure for doing queries on one-way edges. I suspect that was used.

Anyway, I love this story because it's funny how a series of technical decisions can lead to behavior and a perception nobody intended.