HN user

MichaelGG

17,386 karma

mgg@giagnocavo.net

Posts5
Comments6,948
View on HN

Well history suggests some answers to that question

Such as? American Natives arguably fared rather poorly with immigration. What other examples did you have in mind? Other countries don't seem keen on immigration. Is South Africa encouraging Europeans to come over? Mexico and a lot of Latam have difficult immigration laws. Hell I ended having to pay a few thousand dollars to have my Canadian daughter leave Guatemala because she overstayed her visa despite her mother being a citizen. Imagine the outrage if the US started applying fines to be able to leave!

but they don’t have a solution, period.

Isn't it automation plus very very limited purpose-specific visas?

What's wrong with them having preference for people of a similar race? What's wrong for looking at the source countries of many of these immigrants and saying no thanks? No one's in a hurry to make sure lots of whites have positions in Mexico or China.

Japan has a low birthrate but doesn't accept losing their ethnic makeup is a good solution.

I agree with your first 2 paragraphs. The problem is that people can be convinced that there is an issue where there is none, then resort to violence on weak grounds. It is easy to get people riled up on spurious reasons. I was about to bring up BLM but see you did so:

considering what they’re protesting, I think BLM has been remarkably NON-violent

Last year only 20 unarmed black people were shot and killed by police vs 30 whites. So far this year the numbers are 8 and 11. Counting all police shootings last year, whites are 457 of them, blacks 223. About twice the number of whites have been shot by police. https://www.washingtonpost.com/graphics/national/police-shoo...

So yes blacks are killed at a higher rate per population. But what about by actual violence? When looking at violence, blacks and whites commit about the same number of homicides despite population differences. Homicide is the most fair stat we have. If we use lesser crimes [like drug possession or other violence], we will see blacks overrepresented due to higher policing and a biased justice system. In fact, as minority areas of cities have a low solve rate, going by homicides may understate the racial difference in crime in favour of blacks.

It sort of looks like, if you want to get racial about it, whites are the ones killed too much by police. And if you look at the numbers for Hispanics, it is even worse. (But that might be an artifact of how race/ethnicity/Hispanic is reported.[1])

Yet that does not stop perception. There was an ad on TV a while back with a black mother having "The Talk"[2] with her teenage daughter about getting stopped by cops and not wanting her killed. Well, let's see: in 2017 one unarmed female black person was shot by police, and that was when a SWAT team raided her and her bf's place. Such ads that portray this as an issue are simple fear mongering. 2018, so far that number is 0. An ad about how to hide in case of lightning storms would be more realistic. Or simply more training about driving. Or avoiding pools. Or practically anything else in the world.

Try it out: Go ask around and see what your friends and others think the true rate is of unarmed people being killed. Ask them what difference in numbers they think exist for black vs white, and ask them about the flip side of civilian violence. My guess is you'll first get some incredibly high statement about how this is just happening non-stop, then when you reveal the numbers you'll get some other excuse about how it is not about the numbers anyways but some other general racial problem.

1: I'm using https://ucr.fbi.gov/crime-in-the-u.s/2014/crime-in-the-u.s.-... for a quick view of homicide stats. The numbers could be off by 2x and it would not change the point much.

2: Found it: https://youtu.be/3s20ePvTaME?t=21 "This is not you about getting a ticket, this is about you coming home" to which the girl says "I'm going to be OK....right?" Obviously a dramatization but if you're somehow implying to your teenage girl that cops are going to pull you over and you'll not "come home", you're the problem.

Applies to software too. Standards need to be strongly defined with no leeway. Parsing should be tight and leave no room for creativity. (Text protocols like HTTP I'm looking at you!) Anything that deviates should be rejected by reference implementations instead of trying to be "robust" by accepting junk.

I'm unsure how it doesn't fix the speed advantage. Anyone can get in front by bidding a millionth cent more. You can keep doing that until the price starts mattering, right?

I'm not against HFT at all. But having such granular pricing doesn't do anyone favours. More decimals would reduce spreads as well as silencing HFT critics and maybe make trading a bit more accessible without as much high end systems. But the spread reduction is valuable alone.

Some things are just wrong. I've implemented SIP, a horrible standard. Lots of compatibility issues just from their insistence on a "human friendly" text format alone.

At any rate there's lots of things you just have to ignore, drop, reject, and otherwise muck about with in order to run a sane network. These standards are not written with software experience. They're written much in a vacuum and out of touch. This varies widely across RFCs so it might not apply to RFCs you like.

Example of a MUST for SIP and HTTP: line folding and comments in headers. Apart from being crap for performance (so much for being able to zero-copy a header value as just a pointer+len) there's zero legitimate use for these "features" of the syntax. Simply rejecting such messages is in your best interest as a network operator.

Fast checking is really useful in things like HTTP/SIP parsing. Rust should expose such a function as well seeing as their strings must be UTF-8 validated. Though it's even faster if you can just avoid utf8 strings and work only on a few known ASCII bytes, it means you might push garbage further down the line.

I could see Cook & co. make the case that these devices are so dangerous in that regard that they shouldn't be able to be used by anyone.

OK but that is not a legal strategy. You're not providing any basis other than that Apple should have some magical power to prevent people from touching devices they legally have access to.

OK and if you got Planned Parenthood or the Humane Society listed as a domestic terror organization it would hurt their funding, too. What's your point?

Android P 8 years ago

I get "Connection problem or invalid MMI code" on an AndroidOne device when I dial that. Edit oh hidden asterisks.

Here's a version https://github.com/michaelgg/cidb -- Just some of the raw integer k-v storage part. It assumes you already have the hashed entries (you truncate them and the compression takes it from there). It is really what you should expect more from a college course IR project but since I never went to school... oh well.

I used this same library to encode telephone porting (LNP) instructions. That is a database of about 600M entries, mapping one phone number to another. With a bit of manipulation when creating the file, you go from 12GB+ naive encoding as strings (one client was using nearly 50GB after expanding it to a hashtable) to under a GB. Still better than any RMDBS can do and small enough to easily toss this in-RAM on every routing box.

Some day I'd like to write it in Rust and implement vectorized encoding and more compression schemes. Like an optimized SSTable just for integers.

Depends on scale. At higher end, it was near impossible to scale when you're e.g. inserting a MySQL row per packet. But maybe good enough for a viable business. I would probably try to take it as far as possible on Elastic if I were to write it today.

Same thing if you read the Dremel paper. Worrying about bits helps when scaling.

Sometimes it's a huge advantage. I wrote a network search engine. On a single 1TB spinning disk, I could handle 5TB of traffic, stored and indexed, per day. That's around 2 billion packets indexed. The key was having an log/merge system with only a couple bits of overhead per entry, and compressed storage of chunks of packets for the actual data. (This was before LevelDB and Elasticsearch.)

In practice the index overhead per packet was only 2-3 bits. This was accomplished by lossy indexes, using hashes of just the right size to minimise false hits. The trade-off being that an occasional extra lookup is worth the vastly reduced size of compressed indexes.

To this day, I'm not sure of general purpose, lossy, write-once hashtables that get close to such little overhead.

Competitors would use MySQL and insert per packet. The row overhead was more than my entire index. But it worked out: just toss 50k of hardware at it.

But... It does take over a lot of engineering time writing such bespoke software. Just compressing the hashes (a common info retrieval problem) is a huge area, now with SIMD optimised algorithms and everything.

Ok but that sort of takes away the entire argument that .io "belongs" to these people somehow. It doesn't, it's purely a political issue. It's not some natural resource or anything they'd have claim to otherwise. (And seems that Mauritius might have claim, meaning no extra ccTLD.)

It's fine if people want to raise awareness to Brits behaving badly. But saying .io should go to those people is misleading.

Ok but a serious company wouldn't pay per byte if they were trying to save money. They could buy that much connectivity for like 50k a month. (Though they'd need to get some switches and have a network engineer.)

And if that's audio/video Vs just text, clever NAT hole punching techniques could reduce it if truly needed.

But, it seems WhatsApp was on SoftLayer? In that case their costs might have been vastly higher.

Is this new? I tried it out a couple years back on a decent spec phone and it was the slowest app I've ever used. I'm pretty sure Snapchat the app was known for being sort of a wreck at some point. My daughter still put up with it but it was painful to watch her use it.