Right, but if you could do it using a meaningless portion of your wealth, and it didn’t morally bother you, why not silence all criticism of you? Once you hire the people, it should run itself like any traditional PR firm.
Through what mechanism would a PR firm that you hired to monitor online sentiment convince a French bank to close someone's accounts for criticizing your companies? Who at the PR firm has the power to reach decisionmakers at the bank, and what would they say?
That’s the real problem MS has. It’s becoming a meme how bad the relationship between the user and windows is. It’s going to cause generational damage to their company just so they can put ads in the start menu.
I switched from Windows to Mac 15 years ago. It was a revelation when the terrible habits of verbally abusing my computer and anxiety saving files every 22 seconds just evaporated.
Those old habits have been creeping back lately through all the various *OS 26 updates. I too now have Linux on Framework. Not perfect, but so much better for my wellbeing.
I bought and returned an AMD Framework. I knew what I was getting into, but the build quality + firmware quality were lacking, sleep was bad and I'm not new to fixing Linux sleep issues. Take a look at the Linux related support threads on their forum.
I've been using AMD EliteBooks, the firmware has Linux happy paths, the hardware is supported by the kernel and Modern Standby actually works well. Getting one with a QHD to UHD screen is mandatory, though, and I wouldn't buy a brand new model without confirming it has working hardware on linux-hardware.org.
If you look online, HP has a YouTube channel with instructional videos for replacing and repairing every part of their laptops. They are made to make memory, storage and WiFi/5G card replacements easy, parts are cheap and the after market for them is healthy.
I've also had good luck with their support, they literally overnight'd a new laptop with a return box for the broken one in a day.
We have Elitebooks at work and can confirm that the 8x0 series, at least until G8, has superb Linux support out of the box (and I run Arch, by the way). IME it's actually better than Windows, since both my AMD and Intel models have had things not working on Windows (the AMD still often hangs during sleep).
> Getting one with a QHD to UHD screen is mandatory
But I have to ask: are those screens actually any good? Ours have FHD panels, and I have not seen a single one with a decent screen.
There are roughly two categories: either the el-cheapo screens, with washed-out colors (6 bpp panels on a 1500 EUR laptop!) and dimmer than the moonlight through closed shades, but they have usable angles; or the "sure view" version with very bright backlight, usable outside (not in direct sunlight, of course) with, on paper, ok colors (specs say 100% sRGB) but laughably bad viewing angles (with the sureview off, of course) and, in practice, questionable color fidelity.
These are also fairly expensive, around 1500 EUR, and the components are of questionable quality. The SSDs in particular are dog-slow (but they're very easy to replace).
I have two 5-year-old 840 G8s (one Intel, one AMD), and they have both held up fine, but I usually don't abuse my laptops (my 2013 MBP still looks brand new aside from some scratches). However, looking around at my colleagues' laptops, they tend to fall apart, and I can count on one hand the ones still in good shape. The usual suspects seem to be the barrel power connector and the keyboard. Newer models only have USB-C AFAIK (mine have both, but came with a USB-C power adapter in the box). But they tend to look pretty bad in general, with very misaligned panels and fragile USB ports.
> But I have to ask: are those screens actually any good? Ours have FHD panels, and I have not seen a single one with a decent screen.
Yeah, I brought up the screens because the FHD screens are not good and there's a chance you might end up with a SureView screen. The QHD screens suit my needs, they support HDR and higher refresh rates. I'm not a designer or someone who can speak to color quality/contrast/etc, though.
I eventually had an issue with the keyboard on a G8 model, a key popped off 3 years into using it, but I've also had that same issue with the keyboard of every laptop I've owned including every MacBook from 2006-2018, so the problem is likely me.
> These are also fairly expensive, around 1500 EUR, and the components are of questionable quality. The SSDs in particular are dog-slow (but they're very easy to replace).
I buy them on the consumer side when there's a >60% off sale, I would not pay the sticker price for them, and get them with the intention of replacing the innards so I spec them out with the least I can.
If you don't care about new, if you buy Ebay open box/refurbished Elitebooks, you can find recent ones for a few hundred bucks with HP support for a year or more. The overnight laptop replacement I got was for a refurbed Elitebook I bought on Ebay and HP replaced it without question.
> Yeah, I brought up the screens because the FHD screens are not good and there's a chance you might end up with a SureView screen.
I actually prefer the SureView to the regular one for code / office work because it's much brighter and usable outside in the summer if there's shade. The other one needs to be at least at 80% brightness inside to be usable. Then again, it's OK in the dark, so YMMV.
> I'm not a designer or someone who can speak to color quality/contrast/etc, though.
Right, but those panels are quite bad, so I think it's good you've advised people to steer clear of them. Then again, some people don't care, so they could save a buck or two. Lower resolution is also easier to deal with for people still running X11 and multiple screens.
> I buy them on the consumer side when there's a >60% off sale [...] you can find recent ones for a few hundred bucks with HP support for a year or more.
Huh, I dind't know they got so low even relatively new. I was looking for some sff desktops on ebay the other day, and previous-gen ones weren't much cheaper than brand new current gens (I was looking in the EU).
I think for people who don't care about "great" screens but do care about Linux support these are a really great deal, especially if you don't expect to abuse them.
I'm generally very happy with my 845 G8, I only ever hear its fan when compiling. The only thing it's missing is thunderbolt, but AFAIK this wasn't available on AMD CPUs at all at the time.
Lenovo T and X series are excellent and cheap as dirt used. There is also System 76. Or you could get a MacBook and boot Linux on that. Some older ones work well, I hear.
> Or you could get a MacBook and boot Linux on that. Some older ones work well, I hear.
Is linux support on the M1/M2 models as good as linux support on x86 laptops? My understanding was that there's still a fair bit of hardware that isn't fully supported. Like, external displays and Bluetooth.
I use an old Lenovo AIO PC to dual boot Linux Mint and Windows 10. It works well from a hardware and firmware perspective, but I've deliberately avoided Windows 11 as it is crapware.
I have done triple booting of MacOS, Linux and Windows on an old Mac Mini, and it was a nightmare to get them working, but worked well once set up.
I think well known brands and models of PCs are better for such alternative setups, rather than obscure PCs.
They don't. I don't know what they're talking about, but I've had fewer problems with linux on my framework than weird stuff on my OSX work machine. And I'm running Alpine on my framework, so if anything should be wonky it's this one.
I've used Dell Inspiron laptops in the past, never had a problem. WiFi, multimonitor output, bluetooth, etc all work out of the box with Debian or Ubuntu.
I've had very few issues with Lenovo and Toshiba. They're generally somewhat repairable. EliteBook and Z Book from HP seems fine for Linux too, but I've never had to fiddle with hardware except that I once removed a battery from an EliteBook.
It’s funny because I started with Windows 3.1 and it was actively user hostile then. From 3.1 to XP it was awful. Then it got slightly better with 7, and went downhill from there.
Realistically, a major Linux distro is the most user-beneficial thing you can do and today it is easier than ever. If my 12 year old can figure out how to use it productively, so can anyone. Switch today and enjoy.
Maoboro cigarettes uaed to be for women, including red tipped filters to hide lipstick marks. Sales waned, so they actually rebranded the cigarette for men, and even succeeded in making it a definition of manliness.
Advertising stories like that, make sure M$ execs could care less about damage to their image.
You just have to look at who buys Windows to understand this. It's OEM's and enterprises. Almost nobody buys an individual license. That's why they don't care. As an individual you get what your employer or hardware supplier says, like it or lump it.
Valorant really is the only FPS where I was never once suspicious that someone may be hacking. I mean, I don’t play it and the anti-cheat is part of the reason, but it does absolutely work.
I've been working on Rust bindings for a C SDK recently, and the Rust wrapper code was far more complex than the C code it wrapped. I ended up ceding and getting reasonable wrappers by limiting how it can be used, instead of moddeling the C API's full capabilities. There are certainly sound, reasonable models of memory ownership that are difficult or impossible to express with Rust's ownership model.
Sure, a different model that was easy to model would have been picked if we were initially using Rust, but we were not, and the existing model in C is what we need to wrap. Also, a more Rust-friendly model would have incured higher memory costs.
I totally hear you about C friendly APIs not making sense in rust. GTK struggles with this - I tried to make a native UI in rust a few months ago using gtk and it was horrible.
> Also, a more Rust-friendly model would have incured higher memory costs.
Can you give some details? This hasn’t been my experience.
I find in general rust’s ownership model pushes me toward designs where all my structs are in a strict tree, which is very efficient in memory since everything is packed in memory. In comparison, most C++ APIs I’ve used make a nest of objects with pointers going everywhere. And this style is less memory efficient, and less performant because of page faults.
C has access to a couple tricks safe rust is missing. But on the flip side, C’s lack of generics means lots of programs roll their own hash tables, array lists and various other tools. And they’re often either dynamically typed (and horribly inefficient as a result) or they do macro tricks with type parameters - and that’s ugly as sin. A lack of generics and monomorphization means C programs usually have slightly smaller binaries. But they often don’t run as fast. That’s often a bad trade on modern computers.
The code is written in an embedded style, i.e. no dynamic memory allocation or thread creation/deletion after program initialization. It's also prioritizing reducing memory usage over performance since we are targeting memory constrained devices (and our performance target is 10 tps and we have like 100k tps). Thus we'd use trait objects over monomorphization. Dynamic collections are also off the table unless backed by a fixed-size arena on the stack or static mem.
We heavily use arenas. We also have runtime-typed objects used to represent dynamically typed data like that obtained from JSON/Yaml or over IPC. If we were to be more friendly to modeling in Rust, we'd likely require that all memory reachable from an object node be in the same arena, disallowing common patterns like having list/map's arrays in one arena and having keys/strings in another or in static mem (this allows reusing other buffers without forcing copying all the data, so backing arrays can be smaller).
> Also, a more Rust-friendly model would have incured higher memory costs.
I'm not sure how modelling everything in a rust borrow checker friendly way would change anything here? Everything you're talking about doing in C could be done more or less exactly the same in rust.
Arenas are slightly inconvenient in rust because the standard collection types bake in the assumption that they're working with the global system allocator. But there's plenty of high quality arena crates in rust which ship their own replacements for Vec / HashMap / etc.
It also sounds like you'd need to write or adapt your own JSON parser. But it sounds like you might be writing part of your own JSON / Yaml parser in C anyway.
Arenas aren't the issue. Its objects with mixed lifetimes and mutability. I cant easily model the lifetimes of objects when there are cases like an instance where buffer memory reachable from the object has a different lifetime than maps/lists. Also these objects could be transively shared or mutable. In order to make a Rust friendly model, I'd have the tree be all shared or all mutable, and have all reachable memory have the same lifetime. This would often mean allocating the full tree into one arena. That is where the overhead comes from. Each arena would need enough memory to store the entire object; currently they can be smaller since they often only need to hold parts of objects, not the entire thing.
This is ultimately a good example of how to use Rust. You express as much of the API as you can safely, and the rest is unsafe. APIs that can't be safely modelled can still be exposed to Rust & marked unsafe, if they're needed
Wouldn't a data type with no safe method of construction satisfy that? You can only get one by calling an unsafe function & satisfying its constraints.
The real reason single family housing ownership is the only real option is that society effectively pays people to own; appreciation out weighs all costs of ownership so in the end it’s free or even an investment.
But if it was truly a free market and supply met demand owning housing would be a depreciating asset and renting would be cheaper.
Land ownership is a cultural construct. Their is no natural state.
reply