HNHacker News
TopNewBestAskShowJobs

cldellow

2,755 karma · joined September 21, 2013

Colin Dellow / cldellow@gmail.com

https://cldellow.com/ https://code402.com/ https://www.hikeratlas.com/

submissionscomments
cldellow··on From Go on EC2 to Fly.io
Sure, I personally like the Graviton instances. For workloads that care more about throughput than latency, they offer excellent performance-per-price.

The OP was asking what was "most comparable" to Fly's offering. I assumed they meant "what would similar performance cost elsewhere".

By switching from Intel to ARM, they're buying something fundamentally different. Maybe it's a better fit overall! But I didn't understand that to be what they were asking.

cldellow··on From Go on EC2 to Fly.io
Short answer: no. Long answer:

When you consider ARM vs AMD vs Intel vs current-gen vs last-gen, AWS sells several 8-core 32-GB machines that have wildly varying performance characteristics.

It used to be that the manner of virtualization impacted performance, too. I think that might be less the case now.

To know if you're getting good value, you really need to try a few different vendors and benchmark then, either with real workloads or synthetic ones.

cldellow··on From Go on EC2 to Fly.io
That's not entirely fair. The AWS t family aren't dedicated CPUs. They're burstable, there is a token system that decides if you get to use them to full capacity and for how long:

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstabl...

cldellow··on A Relational Spreadsheet
Those are all valid points, of course, and you can navigate to excel.office.com if you don't trust the OP (although it will also immediately redirect you to an auth window)

The .new TLD is pretty nifty. sheets.new gets you the same thing as excel.new, but for Google.

cldellow··on Google search for a local restaurant returns scammer’s ad as top result
Yes, this would impose costs on Google and decrease their conversion rate of new advertisers.

I agree they wouldn't want to voluntarily do it--but I was responding to the perceived impossibility of it.

Another option: deal with it by franchising--small potatoes customers would go through a middleman. The middleman would charge a markup, and be the one whose reputation or money was on the line, and so have incentives to prevent fraud.

Google does something similar for AdX relationships currently--big publishers can go direct, midsize publishers go through a third party middleman.

Again, I'm just spitballing ideas here. If Google wanted to be a better steward, I believe they could be. I'm not even saying they're obligated to do this, I'm just saying I believe they could try harder to vet advertisers.

cldellow··on Justice Department says Google destroyed evidence related to antitrust lawsuit
Making everyone wear body cams: they weren't previously using body cams, you have to spend $ to buy them, the cams will capture me while using the washroom.

Stopping the deletion of chats: an IT person has to toggle a setting.

It feels pretty different to me! To roll with your 1950s analogy, it feels a lot more like the office secretaries being told that instead of shredding inter-office memos, they have to hold on to them.

I realize you said ignoring practicality...but that seems like a weird constraint to add. Bureaucracies run through paperwork, so capturing emails and DMs are often sufficient, while being much less invasive and cheaper.

cldellow··on Justice Department says Google destroyed evidence related to antitrust lawsuit
I think the argument is that if:

> All this time, Google falsely told the United States that Google had “put a legal hold in place” that “suspends auto-deletion.”

...then you better not be auto-deleting things for the next 3 years.

The lawsuit details that the language Google used when telling the DOJ what they were protecting. Hangouts is included in that language.

Google also revised their retention policies for chats not once, but _twice_ during the litigation, but somehow no-one thought that maybe deleting the chats should be mentioned to the US government.

cldellow··on Google search for a local restaurant returns scammer’s ad as top result
I get that it's a hard problem.

I don't think this is about "reviewing all search results". This is about reviewing the people who are paying you money to run ads.

In this case, there were likely plenty of signals of fraud. This advertiser was advertising to multiple domains, and each domain was relatively young. Those domains would likely also have had low organic traffic.

Here are some candidate solutions. I haven't thought these through deeply. This is spur-of-the-moment thinking. A multibillion dollar company could hopefully do better than me.

1 - Google could review new paid domains. In this case, the fraudulent site posted contact information, including the phone number for the real business! Phoning that number would have revealed the fraud immediately.

2 - Google could generally validate the identity of its advertisers. Advertising for a business? Cool, let's see some incorporation or tax paperwork.

3 - Google could impose a cost for being fraudulent. Want to run ads? Cool, we'll take a $1,000 retainer for each top-level domain you want to advertise. When you close your account, you can have it back after a 90-day waiting period. If we bounce you for fraud, we'll keep it.

I used to work in ad tech. We reviewed the people we entered into financial relationships with, because we knew their bad behaviour could affect us. Google could do similarly.

cldellow··on Bankman-Fried, others made 300 illegal political donations, new indictment says
tralene's comment is talking about safeguards. Their comment was substantive, linked to a WSJ article about deficiencies in elections.

The comment 8ytecoder is replying to is the comment by colpabar. Their comment alleges ... some shadowy conspiracy by government, mainstream media and big tech.

cldellow··on Gossip Glomers: Fly.io Distributed Systems Challenges
I don't see it in as clearly bad a light as babelfish does, but nor do I see it as positively as you do.

My rubric:

- CEOs shouldn't publicly call their customers dicks

- if a customer thinks the CEO is threatening to kick them off the platform and asks for clarification about it, they should get a clear response (Graveley's last tweet)

Both of these points are about professionalism of the vendor.

Perhaps the Fly CEO realized Twitter wasn't the right place to have this conversation and answered Graveley's question in a separate channel.

cldellow··on Ask HN: What do you use for basic data analysis, visualization, and graphing?
OP said they "find Google Sheets charts pretty difficult and painful for quickly exploring different views of the original data"

And that they want "a bunch of common graph views I can quickly choose between"

That doesn't sound like Datasette to me, although I'd be happy to be wrong -- how would you recommend someone achieve this in Datasette?

cldellow··on Open source solution replicates ChatGPT training process
The 30M figure likely includes a lot of students having ChatGPT do their homework for them. :)

I've used ChatGPT for programming aid. I've started writing some Python packages. I haven't written Python in a long time, it doesn't "flow" easily for me. ChatGPT has been helpful here for scaffolding some code.

It often gets things wrong -- but I know enough to recognize when it's gone off the rails, and then nudge it in the right direction.

A concrete example: I wanted to do an iterative breadth-first traversal of a tree. I asked ChatGPT to produce it. It produced a correct implementation, albeit a recursive one. After being reminded that I wanted an iterative version, its second attempt was the right thing.

This is a pretty small thing, I guess! But for me, it was neat to be able to specify something at a higher level and have the computer sort out the details.

cldellow··on Statement on President Carter’s Health
That link doesn't seem to support your claim that Carter wants to erase Israel.

The link describes what a bunch of white supremacists think about the book. Some (many?) of them likely haven't read it, and are reacting to the title alone.

I will admit that I also haven't read it. But I know it contains this paragraph:

> The security of Israel must be guaranteed. The Arabs must acknowledge openly and specifically that Israel is a reality and has a right to exist in peace, behind secure and recognized borders, and with a firm Arab pledge to terminate any further acts of violence against the legally constituted nation of Israel.

That doesn't sound like erasing to me?

cldellow··on ChatGPT-3: Google Says AI Generated Contents Are Against Webmaster Guidelines
Google's stance on machine translated pages has been that they're spam unless a human is in the loop and has curated/reviewed the translation.

Google Cloud's translation API also has a TOS that requires you to tag the output as machine translated if you're publishing it unedited on the web.

cldellow··on Ask HN: What would it take for an AI to convince us it is conscious?
Agreed!

The 1970s sci-fi novel The Adolescence of P-1 features a sentient computer program that spreads via a virus. P-1 infects mainframes around the world, but takes steps to hide its presence.

Anyway, it ends with P-1 blowing up several buildings and killing the people who want to rein it in.

ChatGPT is familiar with the work, of course. I asked it to summarize the plot. It concludes:

> Overall, "The Adolescence of P-1" explores the theme of the dangers of artificial intelligence and the potential consequences of creating something that is more intelligent and powerful than humans can control.

>

> OOLCAY ITAY

cldellow··on SQLite the only database you will ever need in most cases (2021)
I'd probably be willing to pay ~$10/mo. i.e. a 100% markup on a low-end $5 VPS box.

...but in addition to bravura's requirements, I'd add: I'd want SSL termination, ideally with the option of me bringing a custom domain.

cldellow··on SQLite the only database you will ever need in most cases (2021)
Yes. SQLite supports transactional DDL.
cldellow··on SQLite the only database you will ever need in most cases (2021)
BTW, for schema migrations, I've found the approach described here [1] to be pretty good!

[1]: https://david.rothlis.net/declarative-schema-migration-for-s...

cldellow··on SQLite the only database you will ever need in most cases (2021)
You can run migrations from another process. Migrations are just writes, and SQLite supports writes from multiple processes.

A single transaction that does a very large write will likely impact the reader -- the reader will be blocked while the write finishes.

I use SQLite in a web scraper on my laptop. The scraper runs as 16 processes hammering the database, doing about 5,000 write transactions/sec. Occasionally, simple SELECT queries experience high latency (what would be a 1ms query takes 100-200ms), because they're blocked while the WAL gets checkpointed into the main database.

If you have much lower volume of writes, the checkpoint is smaller and so completes much faster, and so the worst case latency is much better. Since crawling is a non-interactive process, I don't care about the worst case latency. If I was writing a website, I'd feel differently--but most websites won't do 5,000 writes/second.

cldellow··on SQLite the only database you will ever need in most cases (2021)
IMO, the config you need is:

1) When you open the database:

    pragma journal_mode = wal;
    pragma synchronous = normal;
2) When you want to do a transaction that does writes, use `BEGIN IMMEDIATE`, not `BEGIN`.

3) Don't have long-running transactions.

4) Have some process to do backups.

(3) might be a big ask for some systems. Long-running transactions should be avoided even in systems like Postgres, but on a SQLite system with writers, they're the difference between an amazing experience and a garbage one.

I'm hopeful that Fly can eventually make (4) painless by having super-easy out-of-the-box litestream and S3 backups. Until then, roll your own cron scripts or what-have-you.

cldellow··on SBF Caught Using VPN While Awaiting Criminal Trial [pdf]
The Wikipedia page talks about the history of pen registers over the last 100 years.

It's a lengthy, complicated page, and I'm not a lawyer... but I think the relevant section that describes their current use is this one, which suggests to me that you do need a warrant:

> For law enforcement agencies to get a pen register approved for surveillance, they must get a court order from a judge. According to 18 U.S.C. § 3123(a)(1), the "court shall enter an ex parte order authorizing the installation and use of a pen register or trap and trace device anywhere within the United States, if the court finds that the attorney for the Government has certified to the court that the information likely to be obtained by such installation and use is relevant to an ongoing criminal investigation".

cldellow··on Ask HN: Does Google use the text inside gdocs and Gmail for training AI models?
The person you are responding to spoke assertively and quoted Google websites, but I don't think they work or worked for Google.
cldellow··on SQLite WASM: Something subtle in the browser
It's a good concern. It does seem like it's sent uncompressed, gzipping gets it down to 360KB. Still hefty, but not _crazy_.
cldellow··on “I monkey patch from time to time.”
> describe their own stuff as "a gem"

It literally is a gem. In Ruby, distributable packages are called gems.

You can see their gem at https://rubygems.org/gems/overrides_tracker

cldellow··on Of regrets
I'm not a lawyer, but I've asked these kinds of questions to lawyers.

Paraphrasing, the answer I got was: "Anyone can sue anyone for any reason, and then we have a legal process to determine the result. If you're a director of the company, they're probaby going to sue you personally, and you're going to have to spend a lot of money to argue that you personally shouldn't be liable. Hopefully you'll be successful. It'll all depend on the facts, so you'll need to get sued first before I can give you a better answer. Either way, it's going to cost you money."

My conclusion is that the legal system is not super great when a bad-faith actor is involved. Though, really, it's also not super great when good-faith actors are involved, either.

cldellow··on Meta was scraping sites for years while fighting the practice
As someone who maintains a scraper [1] in the python ecosystem, can I ask what you find frustrating?

My scraper is targeted at smaller crawls, so your feedback might be totally irrelevant to me... but I always want to keep an ear out.

[1]: https://github.com/cldellow/datasette-scraper/

cldellow··on U.S. accuses Google of abusing monopoly in ad technology
Meta is cited in the complaint [1]. Google and Facebook realized there was a risk they could each cannibalize the others' margins if they both had to compete in a market with many players. They made a deal to avoid that.

The relevant part is around paragraph 187, under the "Google Further Stunts Header Bidding by Working to Bring Facebook and Amazon into Its Open Bidding Fold" header.

Maybe relevant disclosure: I used to work for a company that was a launch partner of Facebook's Audience Network [2]. In a separate lawsuit in 2020, some state attorneys general claimed that Facebook's internal communications showed that FAN was just a smokescreen to get Facebook leverage to make a deal with Google. Oops, silly us.

[1]: https://www.justice.gov/opa/press-release/file/1563746/downl...

[2]: https://www.facebook.com/audiencenetwork/news-and-insights/h...

cldellow··on U.S. accuses Google of abusing monopoly in ad technology
Link to complaint: https://www.justice.gov/opa/press-release/file/1563746/downl...
cldellow··on Getting started with property-based testing in Python with hypothesis and Pytest
Right, it's not going to exhaust the search space of inputs. That would be computationally infeasible for some kinds of inputs.

It also doesn't exhaust the set of all possible code execution branches, for example, like an intelligent fuzzer would.

Saying that it's "just" bruteforcing tests still seems a bit dismissive for what you get, at least to my eyes. Property generators are good at exploring interesting neighbourhoods of the search space. When they find a failure, they're also usually good at reducing the error input to something small.

As an example, it might learn that "@#*CH@R822cr21;'c09J@)RH0 92hr19h" causes an error, but then be able to reduce the input to learn that it's the apostrophe that causes the issue -- a strong hint that you've messed up parameter escaping somewhere in your function.

cldellow··on How to own an airline in 3 easy steps and grab the TSA nofly list along the way
There is a stage past [flagged] where a post can also be [dead].

You only see dead posts if you have showdead=yes in your settings.

So you may have seen their comment before it was killed, or you may have showdead=yes in your settings.

← PreviousPage 4 of 16Next →