News for hackers. Stuff that matters.

MadVikingGod

Re:Don't couple your Go code to GitHub on Sunday September 27, 2026 @07:50PM (#49871998)
Here's the primer for those who thing find a replace is the answer. Pretend you have a project with A 1.2.3 depends on B 2.4.6 which depends on C 0.1.1. If you are in github you get module github.com/example/A requires ( github.com/example/B 2.4.6 github.com/example/C 0.1.1 )

You now have many choices on how to proceed, but none of them will include A) being able to build old releases, or B) doing so without making changes to all dependencies.

One choice is go to the leaves, C in our example, and make a release on gitlab. Then go to B, and have B depend on the gitlab C. This is fine for rolling forward, but if you want to roll back you would have to rewrite all of C to use the gitlab url, and find all of the equivalent tags and repush all of them. Also tell your users that any binaries you've released now have new hashes. Then repeat this for every repo. It's not a small task.

I was wondering about how they came to the conclusion that they violated the copyright, so I went to check if they did the AGPL[1] with some extra clauses in it. Turns out they didn't, but they did change[2] it[3] in an interesting way: All the https urls in the GNU version are http urls.

[1]: https://www.gnu.org/licenses/agpl-3.0.txt

[2]: https://github.com/ONLYOFFICE/core/blob/master/LICENSE.txt

[3]: https://github.com/ONLYOFFICE/onlyoffice-nextcloud/blob/mast...

Re:I stopped using NixOS and went back to Arch Linux on Wednesday March 11, 2026 @06:34PM (#47343230)
While I too love the promise of Nix, I never was able to handle the configuration of nix. And at this point I've given up on it.

What I wonder is if there is a medium between Nix's build everything from the ground up, and the traditional get everything delivered. I've been excited about the Fedora Atomic collections, silverblue etc., as it gives me a lot of the roll back and isolation of nix with the workflow closer to a regular fedora or arch. I'm not saying that everything is roses, but I've been able to use it more than I ever got out of a nix.

Re:RFC 9849. TLS Encrypted Client Hello on Wednesday March 04, 2026 @10:47AM (#47249212)
I know this has nothing to do with the RFC, but I wonder what RFC 10000 will be. I'm just hoping for some sort of joke RFC like TCP over Avian Carriers or the Oops I'm A teapot.
Re:Ask HN: Why electronics are still so unrecyclable? on Wednesday February 11, 2026 @01:26PM (#46978747)
The ultimate reason is there isn't economic reason so. It cost's a lot to recycle anything, and most electronics would net you almost nothing valuable.

Let's look at an example. Let's say your phones main board, which will net a few hundred grams of raw materials. First thing by weight the actual board itself is probably the biggest, if you could perfectly decompose it to it's parts you would have some fiberglass, glue, a few grams of copper, and maybe a trace amount of gold. Next you would have the different components, mostly ICs but let's cover them next. These are mostly plastic with bits of copper, tin, and other more exotic metals. Most of these could be used again, if you can separate them and sort them. There would be a bunch of solder, which maybe could be reused, if you remix it with more flux. Finally, you'll have chips, these could be reused, but only as replacements for the same chip. Getting anything out of these would mostly be removing the bulk of the material which is silicon that's been contaminated with other elements to make the semiconductors. I don't think there is any process right now that could take doped Si and get you anything back. Besides the silicon you have micrograms of gold and other conductors.

Having put all that down, I think there could be an opportunity to take the bulk components off boards, test and sort them, and sell them in bulk.

Re:Redefining Go Functions on Tuesday February 10, 2026 @11:05AM (#46961741)
This is all possible and quite neat to dive into the specifics, but if you really want to be able swap a std lib call, just turn it into a variable and change it.

  // code.go
  var now = time.Now

  // code_test.go
  func TestCode(t *testing.T) {
      nowSwap := now
      t.Cleanup (func() {
          now = nowSwap
      }
      now = func() time.Time {
          return time.Date(...)
      }
  }

Examples Code: https://github.com/open-telemetry/opentelemetry-go/blob/main... Test: https://github.com/open-telemetry/opentelemetry-go/blob/490f...
Re:AI Slop is taking over Spotify on Monday October 20, 2025 @10:37PM (#45651853)
The AI songs do suck, but what's even worse is that I can't block artists on Spotify or YouTube. My only recourse was to down vote each song individually, which didn't prevent the songs from showing up, just "Showed my preference".

I don't know what service is safe, but it seems like the incentives for the companies is not to direct me to what I want, real people performing music.

Re:Write in C – Let it Be on Monday October 06, 2025 @05:29PM (#45496534)
Another one writes in Rust.
Re:Reports: EA set to be sold to private investors for up to $50B on Saturday September 27, 2025 @11:03PM (#45401428)
So will this make EA less evil or more? They have shepherded so many great IPs, but also have been on the forefront of sleaze practices. There has to be plenty of money just squeezing those IPs or using the talent in making new things, but I have the feeling that we are going to see more of the same thing with super micro transactions.
Re:Folks, we have the best π on Monday September 15, 2025 @09:55AM (#45249810)
Think of irrationality as a form of infinite precision, such that no matter how many numbers you write down it’s always an approximation because there is always a more precise form. Now think of the number of sides as increasing your precision. Meaning there is an n such that every approximation after will read 3.14… and another for 3.141….
Re:I Ditched Docker for Podman (and You Should Too) on Friday September 05, 2025 @01:54PM (#45141489)
I wish podman was more common in documentation. Want to use podman with your CI platform, it will probably work with socket compatibility but good luck finding instructions and anyone know if it’s tested. How about using some service with podman? Yeah the container is the same, but all the instructions or docker this or docker that, and god help you if you if they used networking or compose.

I prefer to use podman if it’s available on my system but it still hasn’t hit the critical mass needed for it to be targeted and that’s a shame.

Also is there something like a dockerfile for buildah? I’ve tried a few times to understand how to use buildah and just fall back on a dockerfile because I can’t seem to wrap my head around how to put it into something IAC like.

Re:Kagi Is Down on Thursday August 28, 2025 @11:35PM (#45059863)
I kept trying to search for is it down sites, and kept getting errors. I think that was a good indicator that my search engine is down.
Re:Copper is Faster than Fiber (2017) [pdf] on Thursday July 03, 2025 @05:39PM (#44459408)
It's true, but also if you go look at their product catalog you will see none of their direct attach cables are longer then 5m, and the high bandwidth ones are 2m. So, again, it's true, but also limiting in other ways.
Re:Copper is Faster than Fiber (2017) [pdf] on Thursday July 03, 2025 @12:07PM (#44456485)
So the findings here do make sense. For sub 5m cables directly connecting two machines is going to be faster then having some PHY in between that has to resignal. I'm surprised that fiber is only 0.4ns/m worse then their direct copper cables, that is pretty incredible.

What I would actually like to see is how this performs in a more real world situation. Like does this increase line error rates, causing the transport or application to have to resend at a higher rate, which would erase all savings by having lower latency. Also if they are really signaling these in the multi GHz are these passive cables acting like antenna, and having a cabinet full of them just killing itself on crosstalk?

Github: We are going to build a fence so someone can't throw a rock through your window. OP: Well if I'm inside my house and throw a rock the window still breaks.

At some point you have to take responsibility for the code in your repository. If this wasn't a Github Action, but just a shell script in your code that you ran, Github wouldn't have any blame for hosting the code you put there. Same thing here.

TLDR: If you upload an action to your repository Github will run it regardless of if you have "Don't Run Outside Actions" set or not. Mostly because it's an action in your repository.

Re:Can Open Source Projects Exit Foundations? on Thursday May 29, 2025 @09:15AM (#44125788)
Can a project exit cleanly, probably not.

What I'm really disappointed with the CNCF in particular was the lack of support I felt from them. I mean a trade organization is going to do trade organization things like Kubecon, but they could have spent just a fraction of their marking budget on things that directly support projects.

What I saw directly from them was the github org, the CLA bot, and a discount ticket to Kubecon. What would have been useful was things like: independent developer stipends, so everything isn't only backed by the large companies in the game; paying for technical writers; independent community managers; dispute arbitration; dedicated hardware for performance profiling; and I'm sure I could think of a few more.

While I don't think that anyone in the CNCF is doing the mad scientist laugh trying to make it harder for it's projects, I do think that working with them has change my image of them as a bastion of Open Source.

I appreciate that people have started to think about this already, but could I propose an alternative system. Borrowed from Warhammer 40k The Long Now was founded in 998.M1. It's a little jarring at first, but that would easily get us to the 999th Mellenium and wouldn't be too hard to reference BCE dates as 005.M-0
Re:Elliptical Python Programming on Thursday April 10, 2025 @12:14PM (#43645386)
This behavior can be replicated with any class that has two special methods: __neg__ that returns -1 and __sub__ that accepts ints and returns 1-other.

For example if you make this class:

  class _:
       def __neg__(self):
           return -1
       def __sub__(self, other):
           return 1-other
You get similar behavior:

  >>> --_()
  1
  >>> _()--_()
  2
Fun python for everyone.
Re:Wikipedia is struggling with voracious AI bot crawlers on Wednesday April 02, 2025 @09:40AM (#43556558)
I wonder if there is a WAF that has an exponential backoff and constant decay for delay. Something like start a 10us and decay 1us/s.
Re:The April Fools joke that might have got me fired on Tuesday April 01, 2025 @09:34AM (#43546625)
<The Central Intelligence Agency can neither confirm nor deny the presence of this post>
The early 90s. I remember a time when you got one address, and found out they could have multiple. It was like black magic.
I want to start off with that I do think the goal of this RFC is a laudable one, and anything that follows shouldn't be taken as a damnation of it. If you are on the fence if you should implement security.txt just do it.

This article is a large nothing burger. "I sampled 50 companies, most of which are on the internet because they have to be, and most didn't implement an IETF comment". If these were mostly tech focused companies, or heck security companies, sure it would make sense to shame them, but if there is a vulnerability in Ford's website I would bet the impact is quite low. Hell this is so poorly thought out I want to go try it on the top 100 websites by volume and maybe try and find a top 100 tech websites.

Re:3,200% CPU Utilization on Friday February 28, 2025 @04:02PM (#43210773)
I was excited to see that not only does this article cover other languages, but that this error happens in go. I was a bit surprised because map access is generally protected by a race detector, but the RedBlack tree used doesn't store anything in a map anywhere.

I wonder if the full race detector, go run -race, would catch it or not. I also want to explore if the RB tree used a slice instead of two different struct members if that would trigger the runtime race detector. So many things to try when I get back to a computer with go on it.

Re:Outlook classic dropped from Microsoft 365 on Thursday February 27, 2025 @07:59PM (#43200427)
I've used both outlooks, Gmail, and a few other clients, and I think the problem isn't that these are all bad but they are all trying to solve a bad problem. So there never will be a good solution just good enough for someone. There are lots of other problems where we blame the tools and never have a universally loved tool: task planning (Jira), and ERP (Oracle) are some examples.

What I would be happy with is if I could use markdown (sans html tags) everywhere. In my emails, in notes, hell I would love if I could use it in word.

It usually starts with blindly suggesting we should get on cloud. Usually with no other reason than "Everyone else is doing it". That usually ends with a large pile of cash burnt and maybe a thought piece or two about how cloud is bad and we should just go back to banging rocks.

The non-blind suggestion usually has reasons on why you want cloud services, why AWS is the right choice over many other suppliers of cloud, and some cost analysis of what it would cost vs doing nothing or why you can't do nothing.

Re:Why the CrowdStrike bug hit banks hard on Wednesday July 31, 2024 @12:56PM (#41120915)
While reading this I was struck with an interesting question: What risk does any particular software vendor pose to an industry at large?

For example (making up numbers here): if 75% of all airline computers have croudstrike falcon installed that seems like a very concentrated risk.

I actually wouldn't be surprised if we had this we would see really high concentrations of a small number of vendors in any industry.

Re:X has new rules that officially allow porn on Monday June 03, 2024 @02:00PM (#40565371)
Well, I expect that Twitter will now be banned by every corporate filter in existence.
Re:Passkeys: A Shattered Dream on Friday April 26, 2024 @10:01AM (#40169526)
I currently use the 1Password passkeys, and when they work, it's pretty good. I get all the fun of showing up on a website, and with three clicks, I'm in. But I've used them on just a few websites (email and GitHub), and they work correctly maybe 10% of the time.

First, I had to figure out how to get the website to request the passkey. Then I had to figure out that I didn't want to use the browser's passkey but 1Password's, which is different on different browsers and platforms. And good luck if I'm on mobile, I don't think it's ever worked.

At this point I'm taking a break from signing up new passkeys. I'll stick to UN+PW+(TOTP|Yubikeys).

PS: Why is it that no financial institution lets you use anything more than a SMS U2F?

Re:OpenAI – Application for US trademark "GPT" has failed on Thursday February 15, 2024 @10:06AM (#39383508)
Thanks to jameshart's list, and the search you provided I found:

- Windows: No Microsoft needed https://tsdr.uspto.gov/#caseNumber=74090419&caseSearchType=U... - Microsoft Teams: Needs Microsoft https://tsdr.uspto.gov/#caseNumber=87687687&caseSearchType=U... - Nothing for Word - Microsoft 365: https://tsdr.uspto.gov/#caseNumber=87640393&caseSearchType=U... - No Microsoft Office, but Office 365: https://tsdr.uspto.gov/#caseNumber=85387679&caseSearchType=U...

No. No more than anyone made Motorolla over-engineer the first cellphone. We have been over-engineering long before the cloud and will continue long after.

Did it make it easy to over-engineer? Yes.

Is it more common for things to be over-engineered? Probably.

Does this question gloss over the actual cost of getting something running that is useable by more than a handful of people? Yes.

Would I ever want to go back and write code like we did 20+ years ago? Nope.

Older »