427 karma · joined December 15, 2023
>>> Foo = namedtuple("Foo", ["bar"])
>>> Baz = namedtuple("Baz", ["qux"])
>>> Foo(bar="hello") == Baz(qux="hello")
True
This also happens with the "new-style" namedtuples (typing.NamedTuple).I like the convenience of namedtuples but I agree with the author: there are enough footguns to prefer other approaches.
> Dernière Heure conducted a test using two smartphones, one with 84% battery and the other with 12%, to request a ride from their office in Brussels to Tour & Taxis in the centre.
> The result showed a significant price difference, with the phone at 12% battery being charged €17.56 and the phone at 84% battery being charged €16.6 for the same service.
Uber also denies it in the article. Obviously you don't have to believe them but IMO it's more likely that the "significant price difference" (less than one euro) is explained by some other variable that the author wasn't able to identify.
[1] https://www.brusselstimes.com/449143/uber-fares-allegedly-li...
[1] https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Secur...
My understanding is that AES has some design warts that make it not ideal (basically, it's easy to both implement and use in ways that leak information if you're not careful) but that it's still essentially perfect symmetric encryption if you're using it as recommended. Is that wrong?
FWIW, the reason I brought up performance was because the OP spends a large chunk of the post talking about it, so I assume it's an important requirement for them.
Just spit-balling a little, but I wonder if Wireguard is the best tool here given that the author is only using it for a single point-to-point link and they control the devices on both ends. That CPU supports AES-NI and probably does it a lot faster than Wireguard's ChaCha20 (hard to get numbers for their server CPU, but the tiny little x86 mini PC I use as my router does AES XTS at 43Gbps according to `cryptsetup benchmark`).
You might see better performance by tunneling the vxlan connection using a different technology which can use AES-NI? Then again, Wireguard is definitely still a good tool for stuff like this, and maybe the performance penalty isn't a big deal here.
(Again since it can come off wrong in text, this was just pure curiosity about the project, not dismissiveness.)
It seems like you'd need to trust a C compiler anyway, but I guess the idea is that there are a lot of small C compiler designs that are fairly easy to port?
> Plex Media Server uses a sophisticated neural network to analyze each track in the music library, cataloging a wide variety of characteristics of the track. Think of it as things like female vs male, vocals vs not, sad, happy, rock, rap, etc. All these various characteristic constitute a “Musical Universe” and the server is determining where that particular track exists within it.
> For the math-savvy, the Musical Universe consists of points in N-dimensional space. But what’s important is that this allows us to see how “close” anything in your library is from anything else, where distance is based on a large number of sonic elements in the audio.
I haven't tried it so can't speak to its effectiveness.
(a) you can't share one TLS connection to the host between multiple clients; if you wanted multi-client support while preserving end-to-end TLS, the host would need to maintain a TLS connection with each client and waste bandwidth re-uploading the same image
(b) there is no client software requirement, so you would have to do the TLS decryption clientside in the browser (maybe via WASM) unless you're OK with having viewers download software
Similar things are also possible with nginx and Apache.
[1] https://www.cnn.com/business/live-news/ticketmaster-taylor-s...
I ended up buying a small battery-powered Bluetooth-to-3.5mm receiver that I keep in my left pocket, and then send Bluetooth audio to it from my phone in my right pocket. It's a pretty ridiculous setup.
Even outside of high-intensity CPU work, this can be useful. A problem lately is that a lot of code is written using Python's native asyncio language features. These run single-threaded with async/await to yield execution, much like in NodeJS, and can achieve pretty good throughput even with a single thread (thousands of reqs/second).
However, a big problem is that any time you do _any_ CPU work, you block all other coroutines, which causes all kinds of obscure issues and ruins your reqs/second. For example, you might see random IO timeouts in one coroutine which are actually caused by a totally different coroutine hogging the CPU for a bit. It can be very hard to get observability into why this is happening. asyncio provides a `asyncio.to_thread()` function [1] which can help to take blocking work off the main thread, but because of the GIL it doesn't truly allow the CPU-bound to avoid interfering with other coroutines.
[1] https://docs.python.org/3/library/asyncio-task.html#asyncio....
Of course it can still be useful to group objects in the S3 UI, but it would probably be better to use some kind of prefix-centric UI rather than reusing the folder metaphor when it doesn't match the paradigm people are used to.
I don't think it's much of a stretch to assume these kind of laws will be used to censor topics like "race, gender, and sexuality". There is a ton of precedent in recent years of e.g. books on these topics being banned from public libraries (not just school libraries) under the guise of protecting children. It seems like a reasonable inference that the same topics would be targeted in online content if the laws allowed it.
You could give each AP its own intermediate CA tracing back to the same root CA to avoid sharing private keys and allow easily revoking certificates signed by a compromised AP.
You would only need coordination for revoking client certificates (but you can't really avoid that regardless of model).
I can't take NY Times articles, translate them into Spanish, and then sell the translations under fair use, even though clearly I've transformed the original article content.
I'm sorry that blocking cross-site tracking makes it harder for ad companies to make money, but that's just not my concern. My browser is supposed to act in _my_ interests. It's the _user_ agent, after all. I'm not going to give any sympathy to the company that built the internet into the ad-supported hellscape that it is when they now use their browser monopoly to try to protect their business model.
This is why phone cracking devices like Cellebrite rely on exploits in phones rather than just cloning the disk and trying the small number of possible passcodes.