Hacker News new | past | comments | ask | show | jobs | submit login
AP reports US election results via Ethereum blockchain (ap.org)
107 points by auston on Nov 4, 2020 | hide | past | favorite | 24 comments



This API is confusing for multiple reasons.

The obvious question is why involve a blockchain at all. I don't think there is a coherent answer to that question.

The second is why are we asking people to poll for information instead of broadcasting it to them via something like webhooks? It's much easier to notify people of updates rather than have them constantly ask for updates.


This suddenly becomes less questionable after Trump wants to legally challenge the election. Blockchain is an immutable and public database, the popular blockhains have economic incentives to be kept alive/running for the operators and protects against censor, so its an obvious place to store public data that needs/should be audited.


...why?


Smart contracts have a major hurdle called the 'Oracle problem'. In summary, it is hard to get data from the real world into the blockchain. Even if you put it there, why should anyone trust you. A way around this is to get many credible parties to input the 'state' from their perspective and then blend the inputs. Once you have a data stream that you can trust (relatively) on the blockchain, you can make non-custodial trustless (or trust-minimized) smart contracts (bets, predictions, derivatives, etc.) based on the original variable in the real world.


> bets, predictions, derivatives, etc.

All things that work just fine without the blockchain.

Blockchains only solve one problem: when two or more parties don't trust each other, and do not have the protections of the legal system (trying to be anonymous or conducting illegal acts). They will forever remain a solution in search of a problem.


Smart contracts do solve one additional problem: for contracts where performance is measured on purely objective, measurable criteria, execution is swift - there is no scope of disputes hence legal costs are reduced. You also don't need a 3rd party to oversee the execution of contracts, reducing management/transaction costs.


where performance is objectively measurable on the blockchain, if it's in the real world, you introduce trust issues again. How could one trust the measurement was objective in the real world?


Yes, definitely in the current format, smart contracts don't obviate trust issues. It is proposed that a 3rd party oracle will be used to verify the criteria is met for execution. Oracles can be incentivized to build credibility.

For example, in the case of insurance contracts, the oracle can be sensors on the car which can make decisions about who's at-fault and accurately assess damage.


How do you trust the sensors are delivering good data to the oracle?


There are plenty of countries where protections of the legal system isn't guaranteed, even if you're not trying to be anonymous or conduct illegal acts.


Bloomberg made boatloads of money by being the go-to provider of financial data infrastructure. Blockchain is littered with startups making that bet, but now quite serious players are making that bet too.

Regardless how far up the hype curve you think blockchain is, it's interesting that AP is leveraging its reputation to commit to a project in this emerging tech.

Idea is that oracles are that bridge between the physical and the blockchain worlds, and it's these interfaces that are always the problem for the blockchain idealists. Playing that bridge role relies on being a trusted source so people believe you won't just run away with their funds... a startup doesn't start with the reputation needed to pull that off, but someone like AP does. So it's an interesting competitive advantage for someone like AP to do this.


Such data sources on blockchains are called “oracles” and used for many applications such as:

* prediction markets

* bettings

* games

* distributed autonomous organization (DAO) governance

* minting nun-fungible tokens such as commemorative coins

* anything else you could program


So we can create derivitives to gamble with, of course. Come on, it's not the 1990s anymore. Instead of betting your uncle $100 that Trump is going to win it's now possible to use synthetic dollars to earn arbitrage profit by rebalancing the automated market makers who are supplying liquidity to all of our uncles bets on who will become president.


To get on HN?


I'm sure the AP does fine without HN publicity.


Because people gamble on election outcomes using ethereum.


Here is a simple script to grab election results from AP via The Guardian. No API key required. No over-enegineered "ELEX" Python scripts. Just request the JSON and do whatever you want with the numbers.

Usage: 1.sh [2-letter state abbrev uppercase]

Example: 1.sh PA

   cat > 1.sh

   #!/bin/sh

   x=$(curl  https://interactive.guim.co.uk/2020/11/us-general-election-data/prod/last_updated.json|sed -n '/"time":/{s/{"time":"//;s/"}//;p;}')
   curl https://interactive.guim.co.uk/2020/11/us-general-election-data/prod/data-out/$x/president_details.json|sed 's/.*\"'"$1"'\"://;s/\"[A-Z][A-Z]\":.*//;s/,/\
   /g;s/"candidates":\[//;'
echo $x

   ^D


Shouldn't the election boards be reporting via Ethereum and not news orgs?


If you're solving for trust (the point of blockchains), that would mean you don't trust the AP (Associated Press). They're the gold standard for election reporting, and trusted, so no.

Ethereum is simply acting as a complicated API for AP election data in this use case.


Election boards' responsibility is to make sure the mechanisms of democracy function (the right electors get certified, that kind of thing). Helping people build smart-contracts seems somewhat out of scope.


Surprised they didn't use Chainlink. In fact, I can't even find any references to this "Everipedia OraQle". What is it?



Why? There's no need to use some game-theoretic machine for getting data when you can just get it direct from the source.


This implementations of blockchain are really interesting stuff for people that think blockchain is only for money related stuff.




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

Search: