Hacker News new | past | comments | ask | show | jobs | submit | more ahupp's comments login

You might be able to do this transparently with a [MetaPathFinder](https://docs.python.org/3/library/importlib.html#importlib.a...), the only trickyness would be replacing the lookup in sys.modules which I don't think has has an official interface.


That stat alone doesn't tell us if the disparity is due to different rates if criminal behavior, or different treatment by the system. A useful check is to look at murder victimization rates, since a) murder is almost always reported, and b) most murders are intra-racial.

The doc you linked says 39% of inmates are First Nations, and this[0] says they are 37% of Alberta murder victims.

Of course this isn't saying that there isn't inequality in the system, but just that happens before someone gets sentenced.

[0] https://www150.statcan.gc.ca/t1/tbl1/en/tv.action?pid=351001...


We could further ask why racialized minorities might have higher crime rates, such as how those people have been treated by society and the state.


But that’s unrelated to the “racism” comment above. European Canadians came and destroyed the indigenous Canadian population, scattered their population and upended their societies. But Canadians today might treat indigenous people without any prejudice.

Generally speaking, crime isn’t a matter of economics. My dad’s village in Bangladesh in the 1950s—when 1/4 of kids died before the age of five—was safer then than Toronto is today.


Worth keeping in mind that even a lot of these cases weren't treated as murder...


Why else would different races have different rates of criminal behavior?


Historical socioeconomic factors, things that aren't fixed within a handful of generations


Also culture, socialization, and community structure (which may also be the result of historical events).

“Socioeconomic factors” by themselves have limited explanatory potential. Even the poorest Canadian reservations are wealthier per capita than India is now or China was a few years ago. But the homicide rate among indigenous Canadians is about double what India’s was in 1990, and triple of what India’s is today. It’s almost 20 times higher than China’s homicide rate.


For all sorts of reasons?

British Pakistanis and British Hindus look basically the same, especially to a naive native European, but the groups are internally different enough to be on the opposite ends of the British societal ladder in all sorts of attributes - education, wealth, crime rate etc.


Yes, a large fraction of ER visits aren't emergencies. Typically they triage new patients, take the actually critical ones immediately and everyone else waits.

I'm not sure wait time is an informative metric, vs something like survival rate for different kinds of conditions.


> I'm not sure wait time is an informative metric

Seems to be a good metric for a dysfunctional triage system. How else does a type 1 diabetic with a known non-functioning insulin pump on the verge of going into coma get labelled as non critical.


They’re not bleeding or have obvious trauma?

I’m not defending the hospital in TFA, per se, but my wife recently had an ER visit on a miscarriage. She was immediately admitted and tended to be a doctor for the fact that she was hemorrhaging.

During the course of our 12 hours I came and went from her room through the waiting room and to my vehicle. Saw folks waiting hours and hours. For all I know they had a faulty pump.

When it came time for dismissal, we waited hours and hours. The attending staff were handing a GSW and a head trauma on a child. While I didn’t go full-Karen I had to drop the “my wife suffered a miscarriage and is having a mental breakdown, are we going to be banned from your hostile system if we just leave?” to receive final clearance to leave.

Triage is just… complicated. You can’t plan and staff accurately for random tragedy.


I'm sorry this happened to you. I don't know what happened, but good ER docs and nurses prioritize getting people out before they get people in. (No beds left = no new patients can be seen... not that hard of a concept!)

Sometimes things happen that we can't control, but I sure do get tired of ER docs/PAs/NPs overlooking common sense stuff like this. Especially since most good ER RNs would have bugged your provider multiple times to just get y'all the hell out of there!


The wait to get you out is, imo, purely due to understaffing.


I assume because DKA usually takes 24-72 hours to develop. So unless said diabetic waited the good majority of that time with their non-functioning pump before showing up at the ER, then that might be their assumption (though if a BGL wasn't done, that's a problem, but not of the triage system).

Also, ER isn't really the place to handle DKA, those patients will cycle quickly through the ER to endocrinology or the ICU. It won't be "give me some insulin manually so I can get on with my day".


There may be a bug or change since I left, but I built the app library and authorization logic, and it was explicitly designed to work offline. Of course, using it day-to-day and initial setup are different and I'd imagine if Apple is down it's hard to setup an AVP as well.


I'm not sure who this is directed at. A more interesting question is, does Substack expand the number of people who can support themselves by writing vs a world without it? I personally spend over $1k/yr on Substack; sometimes because I get great value out of the paid posts, and more often because I want to author to keep working in an area I care about.


> I personally spend over $1k/yr on SubstacK

I imagine your photo might be up on a "whales" board back at Substack HQ, and the growth team might refer to you by name in their weekly meetings when they hypothesise on how to attract more like you.


If there's one universal truth about whales, it's that there's always a bigger fish. Every time I've heard about a real-life whale, I've been out by multiple orders of magnitude from my wildest guess.

And yes I know whales are mammals but facts don't get in the way of puns.


I liked the use of "whale."

I'm just not one. Or the addictive type, either. I had rotator cuff surgery last month, and a couple people joked, "Oh, you get these really good drugs for the pain!"

I had Percocet (oxycodone + ibuprofen). It did nothing for me; no high at all. I wonder if there's a connection.


These are really good. I had them after removing my wisdom teeth (less than easy operation as they came out horizontally) I stopped taking them as soon as the pain subsides because I understand why someone can be addicted to them. The pain just vanishes a few moment after ingestion.


I think individuals vary. For me, they just dulled the pain; they didn't eliminate it.


That's 10x more oil per capital in Norway.


And the US is producing more than any other country at any other time in history....


If you're interested in this kind of thing, I wrote a python package called "unit-syntax"(https://github.com/ahupp/unit-syntax) that adds physical unit syntax to python:

   >>> speed = 5 meters/second
   >>> (2 seconds) * speed
   10 meter


I'd been using Jupyter notebooks as a calculator for engineering problems and was wishing for the clarity and type safety of real units, but with the succinctness of regular python.

It works in both Jupyter notebooks (with an input transform) and stock python (with an import hook). The actual unit checks and conversions are handled by the excellent `pint` package.


I don’t understand why you’d go to the enormous trouble of extending the syntax when you can write it with perfectly normal syntax. A value-with-unit is, after all, just a scalar multiplied by the unit, and I suppose this would work with the underlying library pint:

   >>> speed = 5*meters/second
   >>> (2 * seconds) * speed
   10 meter
Given the ecosystem problems and other problems extending the syntax gets you, I don’t get why you’d do this at all, when all it gets you is the ability to write ' ' instead of '*'.


IMO using operator overloading for this kind of thing makes it hard to read, since I have to be extra careful to mentally parse whether that `*` is a multiplication or units, remember what variables are in scope etc. Notation matters, and if I didn't care about that I'd just write `pint.Quantity(5, "meters/second")` and be done with it. Or more likely, not go to the trouble of using them at all.

> I don’t understand why you’d go to the enormous trouble

But more importantly, it was just really fun to get it working.


> IMO using operator overloading for this kind of thing makes it hard to read, since I have to be extra careful to mentally parse whether that `*` is a multiplication or units

Units are inherently exactly multiplication.

5 meters is:

5 (unitless) * (1) meter


Yes. There are many (infinitely!) ways to write an equivalent expression, most of which are not as clear to read as the standard format.


You neglected to say that this does automatically determine the type instead of type checking as in the article.

You could also use python type hints for this stuff.

Here are some links about units in python:

https://socialcompare.com/en/comparison/python-units-quantit...


> the technical VR "stuff that works" is basically written by Qualcomm.

I worked at Oculus on the product that became Quest from 2014-2019 and this statement could not be more wrong. You need more than a vulkan driver to make a VR headset, e.g:

  * lenses that minimize distortion and chromatic aberration, that are lightweight and compact
  * astounding amounts of work on inside-out tracking to make it work within latency and power budgets with sufficient accuracy
  * latency reduction and prediction throughout the stack
  * foveated rendering
  * supporting all of those things in Unity and Unreal
And for every one of those there are 10 more that I'm forgetting.

> The user side Android system is, really badly done and irritating for people using it as people like Carmack have pointed out.

The user shell side we have today is entirely his creation, as a response to the less-than-stellar behavior of the Unity shell in the first release. I'm not sure Android is very material for the day-to-day user experience; it's just a particularly opinionated version of linux.

There are plenty of missteps here, but none of them are things you've described.


The hand tracking has seen continuous improvement and the depth correct passthrough is pretty good and I'm sure quite a feat to accomplish.

Its worth noting that much of that 10 Billion wasn't just spent on Horizon Worlds as critics off-handedly suggest, but has been sunk in to lots of acquisitions (hardware and software companies) and research, much of which has yet to be seen in released products.

I'm very impressed with the ambition of what they are trying to do and their committment to a longer term vision which is something that often is lacking in many companies. As an example Nvidia were working on AI tooling and hardware for a decade before it really started to pay off big.


Just bought Meta's latest smart glasses and i use them almost daily because for taking pics and short videos they were almost perfectly and like most people I wear sunglasses almost daily.

Im not sure they will win this race, but the glasses are solid for the two instances i mentioned. Other features aren't as solid like Hey Meta barely works.


> lenses that minimize distortion and chromatic aberration, that are lightweight and compact

That was Corning, not Meta.

> astounding amounts of work on inside-out tracking to make it work within latency and power budgets with sufficient accuracy

That was Valve, not Meta.

> latency reduction and prediction throughout the stack

That was Carmack, so technically Meta, but it was also 6+ years ago.

> foveated rendering

That was a waste of time.

> supporting all of those things in Unity and Unreal

I'm sorry, I haven't seen the Unreal code, but based on what's in the Unity code, this being a "win" is laughable and maybe signals the low expectations you have to also think that Android hasn't had a material impact on day-to-day dev experience.


> That was Corning, not Meta.

I don't know who manufactures them, but Meta has had a team of optics engineers working on new lenses for years.

> That was Carmack, so technically Meta, but it was also 6+ years ago.

Timewarp was one of many improvements, done by many different people over the years.

> That was Valve, not Meta.

Are you referring to the classic Valve room demo which used fiducials plastered on the wall for tracking, or the Valve lighthouse which projects lasers on the walls for tracking?

Whether you put fiducials on the wall and a camera on the headset, or vice-versa (like the original Rift did) is not that relevant of a distinction. Whatever "inside out tracking" meant in 2012, today it means you get 6dof without having to setup a pile of gear in your room.


> > astounding amounts of work on inside-out tracking to make it work within latency and power budgets with sufficient accuracy

> That was Valve, not Meta.

When did Valve make a headset with camera based tracking instead of setting up lighthouses all around the room? Their tracking that I'm aware of is all about the timing of light flashes sweeping across light sensors, it would be totally useless on Meta's self-contained headsets.

> > foveated rendering

> That was a waste of time.

If you're trying to sustain non-barf-inducing framerates on a mobile processor this seems useful to me?


Have you ever tried foveated rendering? I find it to be significantly more uncomfortable than low framerates.


I have a Quest 1, so yes, games that use it look terrible outside of the center area (including text being unreadable). If you want to look at something you have to turn your head and face toward it, since there's no eye tracking to move the high detail area around. It's not great.

But the alternative is the games wouldn't sustain acceptable framerates, so I'll take that tradeoff. I'm not saying it looks good, but it's running on a Snapdragon 835 so you do what you have to.


I worked at Oculus on every headset from Rift DK1 to Quest 2 from 2012-2019 and this statement could not be more wrong.

> That was Corning, not Meta.

You need more than a glass maker to build novel optical designs, besides which, none of the headsets at least within that time window used any material from Corning. The lenses in DK1 and DK2 were essentially straight copies of an off the shelf magnifier. The first consumer Rift used a Fresnel lens design that was re-optimized internally off of a design that started at Valve. The design was just the tip of the iceberg though. A colossal amount of engineering work went into manufacturability, especially around coatings. Rift S, Quest, and Quest 2 all used an evolution of that design that took in further advancements done internally within both the product and the research teams. One general note on all of this is that "lens design" for isn't a matter of drawing some curves and throwing it out to a factory.


Meta does a ton of ongoing work to optimize the stack in the headset. I was just reading about Application SpaceWarp (https://developer.oculus.com/blog/introducing-application-sp...) earlier today and it's impressive.


The closest large city to me is Oakland, which spent $750m on schools last year:

https://oaklandside.org/2022/01/12/oakland-schools-are-facin...

So this cost 13% of one years spending in a mid-size district.


Presumably there are a number of fixed costs in the $750m. That means the extra money might have disproportionate benefit.


Which of these things is "training AI"?

  * an abuse detection system is trained on user behavior and data to flag bad actors for human review
  * When I perform a web search the ranking function is trained all user behavior
  * The email composer will suggest completions based on my own typing history
  * a public chat interface to an LLM is trained on my private emails
"training AI" is an implementation detail that probably doesn't belong in a privacy policy most of the time. Would be nice if Mozilla was more explicit about the behavior they are concerned with.


Consider applying for YC's Summer 2025 batch! Applications are open till May 13

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

Search: