126 karma · joined July 17, 2015
I've worked in a company that, for all intents and purposes, had the same thing - single thread & multi process everything (i.e. process per core), asserts in prod (like why tf would you not), absurdly detailed in-memory ring buffer binary logs & good tooling to access them plus normal logs (journalctl), telemetry, graphing, etc.
So basically - it's about making your software debuggable and resilient in the first place. These two kind of go hand-in-hand, and absolutely don't have to cost you performance. They might even add performance, actually :P
The advantages that you listed make them worth it.
Base style & tone - Efficient
Characteristics - Defaults (they must've appeared recently, haven't played with them)
Custom instructions: "Be as brief and direct as possible. No warmth, no conversational tone. Use the least amount of words, don't explain unless asked.'
I basically tried to emulate the... old... "robot" tone, this works almost too well sometimes.
Anyways, nice engines, but you don't need something to be exceptionally reliable to keep it in production for 25 years.
Right click latency in explorer is annoying.
Opening the settings "app" after first boot takes several seconds because who the hell knows - I personally blame it on moving everything to some thousand layers JS framework since I like being grumpy about that. This is a core part of the OS, FFS. Fairly certain that they have the talent to pull it off properly.
Search has been fine for me.
Language switching almost always breaks during updates - "ghost keyboard layouts" and such. Has been the case for a few years now.
General "we'll shove down whatever we feel like on you" BS.
Just let us pay for "ultimate" (a.k.a. end-user enterprise) and be rid of all the BS.
Getting WSA back (yes, I have the community version) and expanding on connected standby or however they call it now would've been neat, especially on a convertible, but it is what it is, I guess. WSL2 is also quite the improvement. Lots of other small little things like the task manager (not using procexp too often nowadays).
Formula student cars and other open-wheelers have far greater packaging flexibility as well. A quick search doesn't bring up a whole lot of encouraging discussions on FSAE and related places re: inboard brakes, please share if you've seen such.
There are good reasons why people haven't moved away from old school rotors, pads & calipers right at the wheel hub, for basically any application.
-There are some decent internal cable routing setups. The newest fad (through-headset), though...
-Comfort has a ton of variables, of which tyre volume/pressure/type/details(inserts/etc) are a major part of, but not the be-all-end-all. Grips, handlebars, saddles, pedals, crank length, etc, etc, etc, etc...
Adding a bigger battery to those isn't a whole lot of increased complexity. The only issue is making a PHEV that has the same performance characteristics in both EV and hybrid mode - not that it hasn't been done. Specifically on HSD cars, the two electric motors combined, or even just MG2 (the "motor") have way more power than you'd assume - they actually function as an AC-AC converter, converting a significant portion of the engine's output power from mechanical to electric and back to mechanical again. It's essentially the way the eCVT works. Therefore, with a battery (and buck-boost converter) that can support such a load, they can propel the car alone way more than adequately - with a speed limit to protect the "generator" from too high RPM, due to the way the HSD works.
Anyways, it absolutely can be done and it absolutely can be way simpler. If it's a case of a typical modern ICE with a big battery and a motor thrown in somewhere that makes it "hybrid"-ish - i.e. all the ICE complexity + the EV "complexity" (minus the classic starter/alternator) - yeah, no thanks.
IMO: Good examples - the Chrysler Pacifica PHEV. Bad examples - C63 AMG (the PHEV version).
If your times are, say, 20% or more above the absolute top times for a given course, you've got a long way to go by improving yourself - on just about any bike whatsoever. The super expensive parts make low single digit differences.
About the concern of not having a more senior person around - true. I was (and still am, as a good measure) scared of that bit, what I pretty much did was dig in everything that I could find on the subject before development of my part (and the ones that I'm linked to - not writing a software driver ;) spinned up. That pretty much meant scouring the books (windows internals, Oney's WDM, MS's WDF one, except for the UMDF part), MSDN/linked "whitepapers" (let's say that there are some holes), any sample code that I could find, and most helpfully, NTDEV discussions/linux drivers docs and guides (yes, it is very relevant :)/osdev wiki&forums... and whatever else I've stumbled upon that seemed even remotely connected. As a consequence, I had a slight burnout during my part-time period (school&work) - I'm nowhere near as exhausted now (8/day) as I was during that period (3-4/day) :)
The other defense mechanism against being alone is that documents and code reviews are common in the company, and I'm steadily documenting / teaching others (who have significant linux drivers experience) the concepts of windows drivers, so it's not entirely without scrunity. Perhaps the biggest issue there is converting people from the "windows sucks/linux rules" mindset (well, it's not so bad, but there are some cases in which I feel it approaches that set in stone mentality).
Also, a mindset of "making the thing work somehow" for kernel programming (driver or otherwise) doesn't strike me as proper ;)