HNHacker News
TopNewBestAskShowJobs

evdubs

619 karma · joined August 10, 2017

submissionscomments
evdubs··on Ask HN: What are some of the best Reddit alternatives?
I feel that the whole P2P thing isn't necessary to explain just to get up and running with it, just that it's useful to know when you start digging in to figure out how things work.

> Tbh also not a fan of deleting content that’s more than 6 months old

Agreed. Aether's idea is that the community will hold on to material that is important, likely by reposting.

evdubs··on Ask HN: What are some of the best Reddit alternatives?
Maybe not the best, and certainly not as popular as some recommended federated services, but Aether (getaether.net) has been interesting to use.

It:

- is P2P. Everyone using the app sees the same network; no federation keeping communities separate. This also means that everyone receives information from the network, including posts, comments, and moderator actions. One feature here is that if a moderator is overbearing, you can ignore their actions.

- features mod elections so that the default list of moderators can be selected by the community; mod actions are auditable since they're sent to all peers so you can see what the mod has done.

- is text only by default. I think there's a feature to approve domains to have their content render in the app, but it is mostly a text based community

- doesn't keep the whole history of posts to the network. I think this is probably a development choice to make sure clients don't have to download terabytes of history just to view recent posts. It's marketed as being ephemeral and won't keep track of your brain fart posts made years ago.

- is mature. Posts on HN about Aether have been made as far back as 10 years ago.

- features proof of work spam prevention. Every action you make takes a little bit of computing power to prevent network spam.

evdubs··on Why Lisp Syntax Works
Ok, but Lisp doesn't force you to curate a library of words or require dealing with abstractions.

Maybe this example is relevant. Racket defines procedures `filter` and `map` for `list`. Also provided is `filter-map`, which I assume may satisfy your not-being-direct-expression concern about Lisp. But, `filter-map` exists for a particular reason:

> Like (map proc lst ...), except that, if proc returns #false, that element is omitted from the resulting list. In other words, filter-map is equivalent to (filter (lambda (x) x) (map proc lst ...)), but more efficient, because filter-map avoids building the intermediate list.

So it exists for performance concerns. It also exists in the "Additional List Functions and Synonyms" so it's not like it's being confused for a core, important function like `filter` or `map`. I still write Racket code where I just explicitly have something like:

    (~>
      (filter (lambda (x) (equal? 'some-value x)) some-list)
      (map (lambda (x) (symbol->string x)) _))
without always jumping for a more concise abstraction.

And, coming from other languages, DRY (don't repeat yourself) seems quite popular, so I am not sold on this being a Lisp-specific issue.

evdubs··on Why Lisp Syntax Works
Racket goes a step further from having types and gives you contracts. The whole language is defined by these contracts. For example,

    > (list 1 2 3 4)
is a way to create a list consisting of elements 1, 2, 3, and 4. This procedure is defined as returning a `list?` (a contract checking for a list) and the values provided are `any/c` (a contract representing any value). But many other languages can support something like that just fine. Where contracts further help are with composition and specifying allowable values or ranges of values. For example,

    > (round 2.4)
    2.0
as we expect. But looking at the definition of `round`, we see that `(round x)` accepts an `x` satisfying contract `real?` and returns `(or/c integer? +inf.0 -inf.0 +nan.0)`. If you try to `round` Infinity or NaN, you get what you "expect" and not some new value. If you try to `round` POSITIVE_INFINITY in Java, you'll get

    > Math.round(Double.POSITIVE_INFINITY)
    9223372036854775807
because, with types, Math.round() must return an int or a long.
evdubs··on What are the enduring innovations of Lisp? (2022)
A Lisp response to this might be: tables and trees are just special forms of lists.

You can work with tables, trees, maps, vectors, etc. and if they can support list operations (filter, map, reduce, first, last, etc.) then they can be treated like a list and you can do those operations. You can still build IDEs that will show you tables of variables at runtime and graphs of your tree structures.

evdubs··on Why Lisp Syntax Works
> Lisp programmers tend to think that every problem is best solved by layering abstractions.

Nah, when I write Lisp programs, I have more of an appreciation for appropriate abstractions, not needless abstractions.

> A elegant lisp expression is meaningless in isolation.

Elegance is usually in relation to something. For example,

    (list 1 2 3)
Is more elegant than

    var list = new LinkedList<Integer>();
    list.add(1);
    list.add(2);
    list.add(3);
> When reading lisp code, you must recursively find and remember the definitions for each token on the page before you can understand what it does.

You need to do this for any language. In Java and many other languages, having a "Go to definition" IDE function is very useful.

> Lisp programmers are blind to the power and clarity of thought that comes from direct expression - all definitions visible at once, with no indirection.

Not sure what this is referring to. Do you have an example?

> A lisp programmer might look down on a Java programmer's reliance on IDEs.

Plenty of Lisp programmers use Emacs, which has a great many tools to help developers including jumping to definitions, showing documentation, running and using a step debugger for code, etc. Not sure why Lisp programmers would look down on Java programmers because of an IDE.

> By crafting different bespoke DSLs for each new problem, lisp programmers lose the opportunity to hone one DSL to perfection.

This seems to be a Lisp meme. Just because Lisp can be used to make a DSL doesn't mean all Lisp programs are macro-implemented DSLs. There's plenty of Lisp code that looks just like Java code with function, struct, object definitions and calls, except it uses parens.

evdubs··on What are the enduring innovations of Lisp? (2022)
Embedded in this response is a consideration for how programming languages handle data. In Java, if you have a config file, does that file use Java syntax? No. What is that Java file written in? Likely XML. Can you write XML literals in Java? No. Wouldn't it be nice to:

    XMLElement el = <html><body>Hello World!</body></html>;
In JavaScript, we have probably the closest to Lisp in this regard with JSON. You can define JSON literals in your JavaScript code; config files like package.json are written using this object notation. If you want to work with, say XML, there are libraries to convert your XML to JSON and you can take it from there.

But, JSON is limited. How do you define dates for your datatypes? Probably use a string. In Lisp, you can use a string or have some (date year month day) form. How do you represent rational numbers? Maybe you'll risk using floating point or you'll just go with a string. Lisps have rationals built in or you could roll your own with (rational numerator denominator). So your JSON

    {
      'name': 'John Doe',
      'birth-date': '1970-01-01',
      'account-balance': '1000.01'
    }
can become

    (user #:name "John Doe" #:birth-date (date 1970 1 1) #:account-balance 100001/100)
When Lispers need to interact with JSON, they convert it to S-expressions. When Lispers need to interact with XML, they convert it to S-expressions. Wouldn't it be nice if the other languages had syntaxes that made you want to define data using that language's syntax and not JSON or XML?
evdubs··on What it feels like to work in AI right now
It works for me. Do you have an article or something discussing the Tesla limitations?
evdubs··on Binance sees $2B in outflows as troubles compound
The NYAG requires Tether to produce these reports. The NYAG would have already stepped in if these reports weren't to be believed.
evdubs··on Binance sees $2B in outflows as troubles compound
And? Having an income statement or a cash flow statement is not what Tether critics claim to want. The attestation report is basically a balance sheet for Tether showing their assets (cash, cash equivalents, etc.) and liabilities (outstanding USDt tokens). BDO Italia confirms Tether's assets by going directly to Tether's banking partners to get their info. The reports are point-in-time, but there have been several of them by now and each one has shown Tether to be backed.

Same for Paxos.

evdubs··on Binance sees $2B in outflows as troubles compound
Tether's attestation reports are a form of proof that show they indeed are 1-1 backed by the value of outstanding USDt tokens at par. [1]. Paxos publishes the same for BUSD on ETH. [2] Paxos has redeemed $10B of BUSD (> 50%) in an orderly fashion over the past couple months as they wind their product down.

[1] https://tether.to/en/transparency/#reports

[2] https://paxos.com/busd-transparency/

evdubs··on CFTC sues Binance and CEO Changpeng Zhao [pdf]
Yea. Tether should reach $80B in market cap sometime this week. Exciting!
evdubs··on CFTC sues Binance and CEO Changpeng Zhao [pdf]
They already went after iFinex. Tether and Bitfinex were fined by the CFTC in 2021 [1]. Bitfinex was also fined by the CFTC in 2016 and shortly after cut off US persons from the platform [2]. Don't you think they would have already caught "the gangsters" if regulators investigated and fined iFinex at least twice over a five year period?

> SBF/FTX was a fraud and was iFinex's biggest customer.

It's very likely that the FTX creditors will be very happy to receive their USDt that they held on FTX when they receive whatever amount of it from bankruptcy. They'll be able to redeem 1 USDt for $1 from Tether.

[1] https://www.cftc.gov/PressRoom/PressReleases/8450-21

[2] https://www.cftc.gov/sites/default/files/idc/groups/public/@...

evdubs··on We can't all use AI. Someone has to generate the training data
5% chance the copyright industry will sue AI companies for verbatim reproduction of copyrighted works.

0.1% chance the Feds get involved and sue AI companies for criminal copyright infringement.

evdubs··on We can't all use AI. Someone has to generate the training data
When you download a couple epubs from a torrent site, you're an evil pirate stealing books. When you're a FAANG-affiliated AI company and you download all the ebooks and charge for the derivative works your algorithm produces, you're a visionary changing the future.
evdubs··on $3.3B of the ~$40 billion of USDC reserves remain at SVB
This was a chance for you to play roulette as the house. Sucks to miss it.
evdubs··on $3.3B of the ~$40 billion of USDC reserves remain at SVB
So buy USDC (with an amount you're comfortable with losing) until the price is above $0.97 and then sell.
evdubs··on $3.3B of the ~$40 billion of USDC reserves remain at SVB
This is likely an overreaction to trade down 10%
evdubs··on $3.3B of the ~$40 billion of USDC reserves remain at SVB
2%
evdubs··on $3.3B of the ~$40 billion of USDC reserves remain at SVB
This is a USDC buying opportunity.
evdubs··on Tether ownership and company weaknesses revealed in documents
From https://www.forbes.com/sites/davidjeans/2023/02/10/tether-re...

> Billions Of Tether’s Reserves Were Stored At Cantor Fitzgerald, Capital Union And Ansbacher

So, the big player in the Treasury market, Cantor Fitzgerald, knows about Tether and their holdings.

evdubs··on “Open source” seeds loosen Big Ag’s grip on farmers
Even researchers at the Fed agree

> The case against patents can be summarized briefly: there is no empirical evidence that they serve to increase innovation and productivity. There is strong evidence, instead, that patents have many negative consequences.

https://research.stlouisfed.org/wp/more/2012-035/

evdubs··on Why does 0.1 and 0.2 = 0.30000000000000004?
It doesn't have to

    $ racket
    Welcome to Racket
    > (read-decimal-as-inexact #f)
    > (+ 0.1 0.2)
    3/10
Lovely.
evdubs··on Tether ownership and company weaknesses revealed in documents
> They almost certainly don’t own treasuries in any meaningful amount.

Attestation reports from BDO Italia state that they hold US Treasuries and that this makes up the core of their holdings.

https://tether.to/en/transparency/#reports

> While the treasury market is large the players are small and no one claims to work with tether.

Even firms like Cumberland who are known to participate in the Tether creation/redemption process do not talk about working with Tether

https://protos.com/tether-minted-usdt-stablecoin-crypto-two-...

For the US Treasury market, the players are not small. Maybe that was believable for the commercial paper dealings for Tether, but you can just directly buy from the US Treasury at auction, or go through a banking partner like Deltec Bank, and none of "the players" will know anything about you.

> You can’t roll billions in treasuries without all the major players knowing who you are.

Of course you can. Direct and indirect bidders for US Treasury bills are routinely in the dozens of billions. No need to go through a primary dealer.

> And if they did they would release their cusips and put this to bed as there is only downside for them by withholding the cusips

Would you honestly be convinced if their attestation reports included CUSIPs? Do you think that people would still clamor for an audit and just move the goalposts to "anyone can look up CUSIPs for US Treasuries. Why aren't the primary dealers confirming their purchases?"

evdubs··on Tether ownership and company weaknesses revealed in documents
You can withdraw your money from Bitfinex. Crypto, USD, whatever is shown in their fees section. https://www.bitfinex.com/fees/#withdrawal-table
evdubs··on Tether ownership and company weaknesses revealed in documents
That's not as concerning as a bank that lent money to FTX, though, right? If you take a loan from someone that goes bankrupt, you pay them back through whatever process is established by the bankruptcy court. If you loan money to someone that goes bankrupt, you're most likely sitting on a loss.

Deltec's response is that they're awaiting instructions on how to repay the loan:

https://www.deltecbank.com/2023/01/16/deltec-bank-trust-limi...

evdubs··on Tether ownership and company weaknesses revealed in documents
https://coinmarketcap.com/currencies/tether/ / Market Cap / 1Y

Shows a decline in market cap from $83B in May 2022 to $66B in July 2022. That represents $17B in redemptions over a few months. That represents Tether net paying USD to USDt holders.

evdubs··on Tether ownership and company weaknesses revealed in documents
Having Bitfinex convert it for you would mean that you deposit the USDt to Bitfinex and exchange it for 1 USD. Having Tether convert it for you would mean you have an account with Tether and redeem your USDt. Are you saying you can't redeem your 1 USDt for 1 USD because you don't meet the minimum $100,000 conversion?
evdubs··on Tether ownership and company weaknesses revealed in documents
They work with Deltec Bank.

https://tether.to/en/tether-banking-relationship-announced/

From https://www.deltecbank.com/2022/09/01/the-history-of-stablec...

> Tether

> Launched in 2014, Tether (USDT) came to extraordinary success with a current market capitalization exceeding 67 billion USD.

> This stablecoin fixes the issues inherent in the previous three. It relies not upon volatile reserves or the idea of persistent arbitrage trading, but on hard reserves of fiat currency. For every Tether coin in existence, there is one US dollar in a vault backing its existence.

> In this way, the stablecoin handles a complete theoretical rout with ease. Tether continues to serve the burgeoning digital asset space while garnering the implicit affection of regulators.

evdubs··on Erlang's not about lightweight processes and message passing
Jibe* https://www.merriam-webster.com/dictionary/jibe
← PreviousPage 5 of 8Next →