Hacker Newsnew | past | comments | ask | show | jobs | submit | more theanonymousone's commentslogin

> we’ve noticed a very long tail of websites that don’t require proxies

That tail seems to be getting harshly slaughtered by Cloudflare.


Good point – we’ve definitely noticed a lot more Cloudflare representation these days. That said, there seems to be tiers in terms of the protection they offer (and thus the protection used by the websites in this long-tail), where lower tiers (so far) haven’t required proxies.

Curious if you’ve noticed any particularly well defined, obscure websites? Would love to take a look if so.


Is there a explanation for why C is slower than C++?


The code looks 100% identical except for the namespace prefixes. Must be something particular about github setup, because on mine (gcc15.2.1/clang20.1.8/Ryzen5600X) the run time is indistinguishably close. Interestingly, with default flags but -O3 clang is 30% slower, with flags from the script (-s -static -flto $MARCH_FLAG -mtune=native -fomit-frame-pointer -fno-signed-zeros -fno-trapping-math -fassociative-math) clang is a bit faster.

A nitpick is that benchmarking C/C++ with $MARCH_FLAG -mtune=native and math magic is kinda unfair for Zig/Julia (Nim seem to support those) - unless you are running Gentoo it's unlikely to be used for real applications.


The actual assembly generated for the hot loop is identical in both C and C++ on Clang, as you'd expect. It's also identical at the IR level.


It's probably down to the measurement noise of benchmarking on GitHub actions.


I suspect this is it. Any benchmark that takes less than a second to run should have its iteration count increased such that it takes at least a second, and preferably 5+ seconds, to run. Otherwise CPU scheduling, network processing, etc. is perturbing everything.


What if instead we measured with …

BenchExec "uses the cgroups feature of the Linux kernel to correctly handle groups of processes and uses Linux user namespaces to create a container that restricts interference of [each program] with the benchmarking host."

https://github.com/sosy-lab/benchexec


Certainly better, but you’re always going to be better off maximizing the runtime to a level where it just swamps any of the other effects. Then do multiple runs and take an average.


Probably LLVM runs different sets of optimization passes for C and C++. Need to look at the IR, or assembly to know exactly what happens.


It doesn’t as far as I know.

(I have spent a good amount of time hacking the llvm pass pipeline for my personal project so if there was a significant difference I probably would have seen it by now)


You are correct, that was an uneducated guess on my part.

I just glanced at the IR which was different for some attributes (nounwind vs mustprogress norecurse), but the resulting assembly is 100% identical for every optimization level.


As a lay person, I still don't get what is AGPL missing that makes vendors "invent" so many new licenses and spawn so much debate? Why not just use AGPL, and if it's insufficient, invest in an AGPLv2 initiative?


See https://writing.kemitchell.com/2018/11/04/Copyleft-Bust-Up#b...

MongoDB invested sufficient resources in drafting an update to the AGPL. That license is called the Server Side Public License. Controversy ensued.


Iirc the issue with SSPL was that releasing the entire stack under SSPL would basically be impossible, since you wouldn't have the rights to release, for example, the Linux kernel, under it.


Yes. I also read it somewhere that, for example, if you hosted your service on Microsoft IIS, SSPL required you to publish IIS source, regardless of the fact that you don't have it.


But SSPL was not approved by OSI. BY "investing" I mean getting it to the same status as AGPL :)


If the intent is to stop it being used for a business, that's inherently at odds with part of the OSI's definition: "The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research".

Now technically maybe it could meet the OSD if it required a royalty for hosting the software as a SaaS product, instead of banning that - since it allows "free redistribution", and passes on the same right to anyone receiving it (it is defined in terms of prohibitions on what the licence can restrict, and there is no restriction on charging a set amount for use unless that requires executing a separate licence agreement).

Now arguably this is a deficiency in the OSD. But I imagine if you tried to exploit that, they might just update the definition and/or decline to list your licence.


Are you suggesting that they should've bribed OSI, or.. ?


/s would be nice. But just in case, I was suggesting to work closely with OSI and do enough back and forth until a license is agreed upon.


MinIO made their source AGPL, but then cloud providers hosted the service "as is" and make money off it, with MinIO team getting zip. That still complies with AGPL but is not monetarily beneficial to the MinIO team.

At least that's my understanding. They closed source completely, but a source-available license wouldn't have run into this issue.


It is not possible to create a license that would satisfy the Free Software Foundation's "four freedoms" while also solving the issues many of those vendors have with the AGPL. At the same time, the "source available" mindset doesn't have a steward organization like the FSF or OSI.


The major concern regarding the AGPL is that it only fosters code share when a code change is involved. The license has nothing to do with someone building a competitive service around your project.

If a Big Tech company happened to build a cloud service (SaaS) around your project without any code change, and that service is more competitive than the one you provide, there is not much you can do about it with the AGPL.

The AGPL is published by the FSF, with mainly community-led projects in mind. The profit and sustainability of a corporation is not their primary concern. (A minor correction: The most recent version is v3; any newer version would be v4, not v2.)


Source available isn't a license, it is the lack of a license. It's the legal default state for all art. It can include whatever made-up rules the author wants you to follow but your just as well off if you don't read them and just treat it as copyrighted.


Does it run docker?


With some modifications, yes. Boot2docker and boot2podman were based on tinycorelinux.


Both are deprecated though. And both say something unexpected on their repositories: one suggests you to use Docker Desktop (what?!), the other to try Fedora (what?!!). Am I taking crazy pills?


Just call it JS and make the trademark forgotten.


While we are at it, can we please not have a human "master" in every Scrum team?


Interestingly enough, the times when I've had scrum masters at work were coincidentally the times when I felt the most disrespected at work. Not from the scrum masters though, from the people who the scrum masters protected myself and my teammates from, the higher ups. The scrum masters were cool. Even on a personal level the higher ups were more or less cool. But damn, organizational and market pressures can really beat down on people.


Submarine articles for the win: https://paulgraham.com/submarine.html


Flat Earth News, by Nick Davies, covered this in a 2008 book. He called it Churnalism.

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


Isn't it more like the other way around, i.e. Office being an exception of a category where open source solutions lag far behind the proprietary ones?

Of course Blender is a marvelous piece of software, no doubt in that.


Recently I had two cases (Car map update, Phone software fix) that requires Windows and only Windows. Wine didn't work, possibly due to some USB port connectivity permissions lost.

God dammit!


In some countries there is.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: