Oh this is very nice, I think it was stabilized since I wrote said code.
HN user
vgatherps
Writing: https://vgatherps.github.io
Public key: https://pgp.mit.edu/pks/lookup?op=get&search=0xFD02E0A649B3DCE5
Yes, this is the case that I ran into as well. You have to zero memory before reading and/or have some crazy combination of tracking what’s uninitialized capacity or initialized len, I think the rust stdlib write trait for &mut Vec got butchered over this concern.
It’s strictly more complicated and slower than the obvious thing to do and only exists to satisfy the abstract machine.
Uninitialized memory being UB isn’t an insane default imo (although it makes masked simd hard), nor is most UB. But the lack of escape hatches can be frustrating
I wish that there was a useful “freeze” intrinsic exposed, even if only for primitive types and not for generic user types, where the values of the frozen region become unspecified instead of undefined. I believe llvm has one now?
Iirc the work on safe transmute also involves a sort of “any bit pattern” trait?
I’ve also dealt with pain implementing similar interfaces in Rust, and it really feels like you end up jumping through a ton of hoops (and in some of my cases, hurting performance) all to satisfy the abstract machine, at no benefit to programmer or application. It’s really a case where the abstract machine cart is leading the horse
True, we absolutely couldn’t allow a place that people can voluntarily participate in to say things to exist without a governing body deciding what is and isn’t allowed to be said
“Financial derivatives” and “downside is limited” should never appear in the same sentence without strong conditions on what sorts of derivatives/ combos of them
Jane Street is one of the slower market making firms and generates a significant share of revenue from being everywhere on everything (MUCH easier said than done). You want to trade some Canadian lumber ETF? Jane Street will be there. Some bond product with constituents that trade across 3 different trading sessions? Jane Street's active in that market. None of that is to say they don't have any presence in major products or don't have real short term alphas/edges of course.
They've never been at the forefront of latency games, like Jane Street isn't the firm sweeping equity markets since they have the fastest radio network out of CME (dubious value) or getting their quotes first-in-line every time.
People who don't want to X can always find a reason not to, for any given X. Somebody might even talk about how they want to do X, and go through many of the motions and preparations, but always find some reason at the end to back out.
Is Paul's statement much different from the statement "talk is cheap"?
How is
How do you justify using AI for your game art? I have thought about this, and couldn't justify it. I also know that I hold on to morals almost to a stubborn degree.
different from
How do you justify using Blender for your game art? I have thought about this, and couldn't justify it. I also know that I hold on to morals almost to a stubborn degree.
Aside from a vague implication that it is immoral to use an AI tool instead of <some other tool> to generate your own game art?
People who have some understanding of study design and data collection would be in a much better spot to understand and interpret day-to-day news / “information flood” than those who have done a lot of calculus-based probability. You can go all the way through rigorous measure-theoretical probability and come away with almost nothing useful for interpreting a study.
Most problems I see with moderns statistics aren’t of the form “ohhh, they fooled you by using a subtly wrong statistical metric to ascribe significance” but “the way the data was gathered/interpreted is fundamentally wrong and made to mislead”
This is not true, you can run non-send futures using Tokio: https://docs.rs/tokio/latest/tokio/task/struct.LocalSet.html
I mean yeah that's the point I made? FWIW, trading firm noncompetes are almost always compensated with the base salary and they're still blanket applied. A major contributor is that the employer is only paying a fraction of the true employee compensation, making it easy to blanket apply and creating a form of golden handcuffs.
I feel like the solution is to force the company to pay full TC (average of previous years + inflation or something?) for the duration of the noncompete.
It absolutely has to be something like this at a bare minimum. The whole "We pay full base" argument is nonsense when the TC is multiples of base.
Most tech work is not particularly novel at a technical level. Very few services have any sort of massive advantage in the technical IP. Some of them might have advantage in customer/data analytics, but most advantage is in the idea itself as well as being gaining the market and brand. Another firm can't just go "Ah, today we'll knock out X new app and take 50% of the market"
This is not true in trading. If I go take my strategy/forecast and go to a competitor, I can just outright take the same opportunities that the other desk was taking (to a fairly good approximation). There's no real branding/network effect - it's a pure quality of execution business.
Lack of noncompetes is the reason that most trading firms have opened offices everywhere except SF
So the solution is that employees should only be able to work for one employer in their career?
Yes, I very definitely made this anything remotely resembling this argument in my post.
Regardless, it would be a beyond-amazing deal for most employees if they got lifetime yearly TC from a quant firm only on the condition that they didn't work for a competitor. Mindblowingly, shockingly, amazing.
Quant firms at least are one of the few places where noncompetes can make sense. It's an extremely IP sensitive industry with stupendously high pay where the employee is going to someone probably competing very directly with you, for the same/similar opportunities. Actual code + NDAs banning literal reimplementations of stuff aren't that valuable, the knowledge and ideas will stay in the head of the employees.
The two main issues I have with them are that firms tend to give them to just about everybody (instead of just to folks working very directly with real IP), and they only pay base salary, not something closer to actual total compensation (often multiples of the base pay).
Having said that, the quant firm is relatively unimportant and not a good reason to prevent a total noncompete law. It's probably better to just ban them then try and make allowances that aren't full of loopholes.
It would probably be even worse today. Dynamically discovering ILP “just works” even as memory gets slower and slower and slower. A CPU today can execute hundreds of instructions and many predicted branches ahead of a slow load. It would be impossible to statically schedule this (you don’t know what will/won’t be in cache), and difficult to try and hoist all loads 100 instructions in advance especially when you take branching behavior into account.
GPUs have taken over much of the niche where these processors excel, number crunching where you have entirely pre-determined memory / compute access patterns.
Beyond the fact that just telling people to do so is ineffective, my experience is that most people have a very poor idea of what is and isn't calorie dense (I've been there!), how many calories they consume in snacks, or how to eat in a way that leave you feeling full without gobbling down calories.
I've been around people who made legitimate good-faith efforts to diet and eat "healthy", but have no idea that "just a bowl of rice to go with it" and "I need my afternoon milk tea" and maybe another snack are like 500+ extra calories each day, that hardly even leave you full.
Don't forget meaningful regulations and legal requirements placed upon these parties
Invisible can equally mean “actually invisible” but often means “we told the people shouting and screaming about this risk to shut up”
This is how most asset trading works, but outside of crypto these third parties are actually trustworthy
I know plenty of Jane Street (and other “prestigious” quant firm people). They’re generally smart, admittedly tend towards overachievers, and are otherwise relatively normal people. They’re not a class of god tier humans sitting above everyone else.
The major hft firms do pay well but new grad pay is often inflated in a few ways - signing bonus is included in “total” as if it’s recurring, first-year guarantees/targets are treated as recurring total, “this pays out over 4 years” is lumped into single-year recurring total, and you only hear about the biggest and best online.
2020-2022 high tech sector pay and huge profitability brought by the return of volatility also saw much higher base/bonus pay across the board, but the market really cooled down towards the end of 2022 longwise all the tech layoffs and HFT firm over hiring. I watched a few eye watering open offers fade away towards year end myself.
Statistical arbitrage trades don't tend to be like "yolo long these great stocks today" unless you have access to information very few other players do (and even then you try and only gain exposure to the factors you are informed about). They tend to trade complex relationships between many assets in a universe, like if your universe of assets has moved in a way that's out-of-line with how the assets tend to move together.
Edit: Someone pointed out this might be a VC trap, which would explain why there's such breathless writing about a bogus model with no actual results included.
This is a whopper of ai-will-totally-take-over-trading nonsense paper, you'll become less informed about reality if you read it. I'm not going to cover everything but to make sure nobody thinks some new gpt is going to give trading recommendations:
* It's not clear the group ever trained a model. If they have, there's no data about that. There's an infinitude of subtle traps when training financial models you have to be aware of.
* The proposed training and evaluation periods are remarkably short for the holding periods they suggest, if they were to have included good test results
* There's no information about how the exact timing of the data feeds they're giving, how they measure the price+time+cost of execution, how they think about market impact, etc.
* There's no mention of risk management aside from some vague risk-preference ideas the gpt might theoretically have
Putting that aside, there's a fundamental misconception held by the authors. If you have some mega-network that can parse all sorts of financial information/statements/whatever and meaningfully tell you information about the future, you're not going to add a ton of nonsense about understanding written language prompts to have a discussion with the user. The actually valuable thing is the predicted forward returns / target portfolio / whatever piece of information you're trying to get.
Erlang is built for easily achieving fairly low and reliable latencies, with easy distribution/concurrency primitives, and building highly reliable systems.
It’s not very good for “make packet in to packet out as fast as possible at the cost of all else”. All of the abstraction layers come at a performance cost and aren’t all useful in the first place for low latency trading systems.
This is almost certainly incorrect, unless it’s using a very stretched definition of “hft” and using microseconds to mean 99th% <1ms instead of say <5us (reasonably competitive software range depending on your trade).
They might be forwarding non latency sensitive client/internal orders through a system written in erlang, or using erlang for an orchestration layer, but they’re not competing with other hft traders in one.
Source: I work in the field and have built <5us systems.
https://m.youtube.com/watch?v=NH1Tta7purM Is a free great watch about the things you have to do to very reliably have such low latencies
The proof of uncountability of real numbers starts with a process of enumerating this infinite list of infinitely long binary numbers.
How could the diagonal construction ever finish to allow a "check" of whether the result of that process is actually on the list.
The diagonal just seems like a shortcut to a number that we know the first process hasn't gotten to yet?
I think you are mixing up the enumeration of the (hypothetically countable) reals with the existance of said set of reals, and viewing the construction of the counterexample as an actual process that involves programmatically iterating over the list instead of a description of how the digits of said new real number is created.
There is no pause or setp-by-step of this iteration that's required, since it's only telling you that the i'th digit of the counterexample will be distinct from the i'th digit of the i'th number (thereby creating a real not in your countable set, since you have created a number outside of your 1-1 mapping onto the natural numbers).