ETA: Today I learned I had a much much larger gap in knowledge than I thought I did. Thanks to everyone for the information and links!
Engineers follow a pareto distribution. In a normal sized team, with a typical hiring funnel, you will have a few high performers, who are responsible for most of the team's productivity. If you can only hire one person from that team, then it is more likely than not that you will hire someone with productivity below the team's mean. At an early startup, this could be a death sentence. Especially since we typically reason and plan in terms of means, so it may come as a surprise that your single engineer is less productive than the mean of most teams that you have worked with.
The other reason (also not mentioned) is that you eventually want to scale hiring. That means that you need to have people, that you have hired yourself, hire more people on your behalf. The best people (A players in the metaphor) don't have imposter syndrome, they know how good they are, and how good they aren't. They want to work with other talent, that makes their lives easier, more interesting, and less stressful than covering for/babysitting other people. It's also the only way they can grow from where they are at. So they can be trusted to hire more A players, out of self interest.
The median engineer (let's call them a B player) often knows about where they stand as well, and often they will have started to diversify their skillset into organizational politics. They intuit: hiring people more competent than them gives them less leverage, and they are pretty good at zero-sum status games, that's their edge. They don't want competition, so they hire C players.
So the reason you want to start with the best is because it's the only way to ensure you can move fast when you need to, and the best way to keep the organization effective long enough to exit. All organizations decay into incompetence, but hopefully you can get yours and get out before that happens.
In general, I've found that the younger engineers (20s, up to 30s) have a lot of vim & vigor; but, even the very best ones generally do a lot of spinning-in-place, when they think they're making progress. Almost anyone above a certain level -- call it the 30–40% mark (it's low!) -- can be raised up to be a competent engineer. Probably what'd be called an "an A- or B+" player? That's just part of a good training & onboarding regime; although, it can take 1-3 years, depending on the person. Very good "natural" talent can definitely boost top performance to an A+, but it won't substitute for literal time-under-stress of delivering high quality product-ready code to clients.
https://arxiv.org/abs/2410.11094
I'm not sure I understand your example; if I am looking at it right, it has overlapping bitfields.
But supposing you didn't want overlapping fields, you could write:
type Dang(tom: u11, baz: u16, bar: u5, foo: u5) #packed;
And the compiler would smash the bits together (highest order bits first).If you wanted more control, you can specify where every bit of every field goes using a bit pattern:
type Dang(tom: u11, baz: u16, bar: u5, foo: u5) #packed 0bTTTTTTTT_TTTbbbbb_bbbbbbbb_bbbzzzzz_????fffff
Where each of T, b, z, and r represent a bit of each respective field. struct Dang : bits 64 // 64 bits wide, int total
{
foo : bits 5 @ 0; // 5 bits wide at bit offset 0
bar : bits 5 @ 0;
baz : bits 16 @ 4; // 16 bits wide at bit offset 4
tom : bits 11 @ 32;
};Progress, for sure.
An interesting take on this is depicted in Attack on Titan, where they do in fact wall all the fields - the city (I don't remember if it's like the last vestige of humanity or whatever) is surrounded in concentric ring walls, the outer one which contains villages and farmland having a circumference of about 3000 kilometers for an internal area of 723,822 km², making its area just a bit smaller than Zambia and Chile.
Of course, a 3000 kilometer, 50 meter tall wall is ridiculous. But then again the great wall of China is 21.000 kilometers long. I believe there's more info about the walls and their construction in the source.