quilombodigital

Joined 9 years ago

Karma
145
Submissions
58
Member since
Oct 14
View on Hacker News

Recent submissions

Comment · 8 hours ago
Am I missing something?

I couldn't find any parallel constructs in the language. So, as I understand it, it's a regular language that gets compiled into a graph, and the runtime parallelizes the execution of that graph.

This factorial won't run any faster with more cores, since each step depends on the previous one:

  fn fat(n: N64) -> N64 {
    if n <= 1 {
      1
    } else {
      n * fat(n - 1)
    }
  }
This other version can run in parallel, but only because the algorithm was deliberately written that way:

  fn fat(n: N32) -> Nat {
    if n == 0 { 1 as Nat } else { prod(1, n) }
  }

  fn prod(lo: N32, hi: N32) -> Nat {
    if lo == hi {
      lo as Nat
    } else {
      let m = (lo + hi) / 2;
      let left = prod(lo, m);
      let right = prod(m + 1, hi);
      left * right
    }
  }
So the programmer still has to think about parallelism; the language just removes the need for threads and locks.

Also, as the graph grows, sequential dependencies still limit the speedup, and more cores means more data moving between them. How does the hardware deal with that?

Comment · 8 months ago
I was trying to roast this guy because I figured a burn-in test should accomplish the same thing he’s doing. But no... I had to ask the great oracle, GPT (General Purpose Truth), and it told me the guy is actually doing something worthwhile. How are trolls supposed to survive in this inhospitable era?

Apparently, multi-year storage tests are still valuable for validating whether those estimates match reality. Who knew...

Comment · 9 months ago
thats why I said I only miss the option to verify my vote history. I dont need to know how my vote got there, I just need to verify it at the place that sums all votes.
Comment · 9 months ago
yes, I dont see why it should not be open sourced publicly. maybe send someone with an eidetic memory to audit it. :)
Comment · 9 months ago
Comment · 9 months ago
In Brazil we have been using electronic voting for decades.

See, here we always had issues with corruption, and thats why we had to implement it.

The thing is that we always had major issues at the city level elections, because many small groups dominate different regions, and they just controlled the election officials, influenced voters, disappeared with ballot bags, and did all types of crazy stuff. It was pretty common at the eighties exchange votes for gas, dentures or even tubal ligation.

For all this reasons, a specific voting registry was created in 1985, and an electronic voting machine was used for the first time in municipal elections in 1995. This solved most issues, and elections started to be a lot easier, there was A LOT of confusion in the past. After it was available in all cities in the country, they started to do national elections.

The main idea here is that this is a government endeavour, not a private company. There are so many security layers that I think that only another external government actor would have resources to attack it.

These machines have special hardware, the encryption keys are loaded at the election day by the government, the machines are there only for the 8 hours of voting, then came back to a government deposit, they account for every machine, they are audited before and after, they randomly choose the election officials, the machine prints a receipt for the voter and the stats of votes of that machine. Each person has an election location and room/machine, so schools are used. If a machine has problems, they have to on the fly generate new keys for a substitution. In 2024 they used 570.000 machines at the election.

When the election day finishes, they place at the door of the room the machine receipts, so any ONG or international organization can verify. After it they take the machine to a central place where they connect to them and trasmit the data, and in one hour we know the president. During these decades we had presidents from the right and from the left, and all cities and states, so you can say it works just by seeing all this power cycling all the time.

I agree with the article in the sense that we need paper confirmation, and that we cannot trust the voter machine, but I think Brazil solved this by making sure to control the machine, and printing receipts and making then available to any public organization.

I particularly think that only one thing is missing in this technology, technically speaking, I would like to have a personal key with an ecc key created by me, that would allow me to insert this card when voting, so it would encrypt my vote, store and send to the server, so I could, using my card (even online) check for my voting history, connecting all the endpoints. It is still anonymous, but verifiable by me.

More information here: https://international.tse.jus.br/en/electronic-ballot-box/pr...

Comment · 10 months ago
Comment · 1 year ago
Yes, you would eventually be capable of sharing GPU power, devices, audio, anything. Imagine all your machine´s idle power available to others. Right now your GPU is barely being used.
Comment · 1 year ago
Comment · 1 year ago
Maybe now you should try to do an app to forget files. Mindfileness.
Comment · 2 years ago
Its early to make assumptions, but the weather report confirms the theory, and at the plane previous flight, from the inverse route, a passenger filmed ice at the wings.
Comment · 2 years ago
For this specific scenario, a simple custom format, one line per config, properties separated by commas and key from value by equals. In C# you can populate a dictionary with readallines/linq in one line of code. Need hierarchy/tree, use dots at the property name. Kiss
Comment · 2 years ago
To me, the biggest indicator that all the links being posted here about Git submodule systems come from people who don't know what they're doing is the fact that all of them (vdm, pasta, peru, git-aggregator, etc.) are using YAML as a config. Anyone who has worked at least a few years with Git and YAML knows that this type of file is not Git/diff friendly. I've seen too many disastrous merges, and the developers in the company have to keep using unityyamlmerge to resolve a foolish decision by Unity. Moreover, if anyone here has tried to parse YAML, they understand how unnecessary it is to use this format 99% of the time. In your case, the only advice I can give is to use a complete repo config per line, so it doesn't spread across different lines. This ensures the atomicity and integrity of your information.
Comment · 2 years ago
Yep. Good old days… I also had a bbs with a friend in Brazil, we would make very expensive international calls twice a month to other bbs to download the news. Ah… and of course there was a group called applemaniacos that would send apple II disks every month by mail, with a very funny zine.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton