mr_luc
Which, I would say, does seem a lot less black-and-white than the cell phone example, and anyone who thinks it's all settled now might be in for a surprise.
It does seem like that's an element, then -- this is not to say that it's sufficient for anything, since obviously a sufficiently good record of where one goes on public thoroughfares would fail the same test ('reliably reveals that so-and-so went to visit a specialist doctor, divorce attorney, and brothel all on the same day')
The space station, the Artemis capsule, microbes on interplanetary probes, etc.
It could technically be said in a sentence and be true, but it would be misleading to most people.
Below a table, it says "adjusted for social deprivation index, hypo- and hyperthyroidism, and use of other antidiabetic drugs..." -- but nothing about obesity.
What if the GLP-1-prescribed patients tended to be more obese?
- https://github.com/elixir-explorer/explorer - https://hexdocs.pm/explorer/Explorer.html
What makes it my favorite is how clear Norvig's writing is. It's easy to follow (both when reading it in English, and when following its execution if you're a programmer), and it introduces important ideas so effortlessly that, years later, it will give you a chuckle.
Anyone interested in clearly communicating about technical topics, and with a knowledge of Lisp's nature and some idea of what programming in 1991 looked like, might be tickled to read Chapter 1; even its first few paragraphs are refreshing.
Thanks for the answer -- the current SDUI renaissance is a beautiful thing. Cheers :)
Didn't mean to distract from the main discussion either -- pre-emption is something that more people should want, I think, so y'all making it the default for WASM stuff feels super valuable. And surely the sandboxing is really valuable to some people too. (But day-to-day I probably won't use Lunatic, whereas LiveView-based SDUI is my current shop-time project).
In the phx protocol, their diffs depend on having split the render into a tree of 'statics', 'dynamics', 'components', and on each change, that structure is patched, and needs to be recursively zipped to a string, parsed into a DOM, and patches computed against the previous DOM.
I've been playing with a new client as a way of understanding it, and it's definitely a certain amount of work! Fortunately computing 'what needs to change to reconcile 2 html-like DOMs' is a project that's been wrapped into libraries a few times in a few languages (phoenix relies on other people having done that too, via the 'morphdom' library in JS, and Dockyard recently open-sourced an ergonomic Rust library I'm using in my client).
So -- it's a lot of client work, but it optimizes for bandwidth. Cool.
But I've wondered if there could be any benefit to optimizing for granularity of patches, and simpler clients -- by sending 'just the patches', ie the list of DOM operations that cause the desired end state. My intuition is that the bandwidth 'cost' would be prohibitive, because the list of patches required to perform the morph could be quite large for a change that appears small in 'what string has changed' terms. (maybe harder to debug, too? lots of trade-offs)
I just don't have the energy to try it that way too, hehe, on the off chance that my intuition is off base and it'd actually help improve things (simpler clients, and maybe the bandwidth hit wouldn't be too bad?); it'd require deep server changes as well, when up until now I've only been writing a client. So I was curious what approach y'all are taking.
Prior/related art in the Rust space: I know there's a non-Phoenix liveview project, 'dioxus', with a generic DOM liveview implementation that several clients have been created for, by making a state machine that operates on that list of generated Patches; however I don't know what that one sends, whether DOM patches directly, or Phx-style diffs that need to go phxDiff -> zippedUpString -> dom -> morphPatches -> applyToDom.
It has a great programming language “tower of babel” illustration.
It wasn’t until years later that I realized it was a Soviet science ecosystem book. Some of the content should have been a giveaway …
a special thanks to @whatyouhide for leading
the release process while my arms are not 100%
so I don't think so!Giving money to, say, a powerful criminal mob would be bad.
But giving money to someone who is simply dishonest or exaggerating when seeking donations from people looking to give locally? Not such a problem.
Moving money from people in the richest country to people in the poorest country is probably good, if that money gets spent (instead of hoarded) via normal economic activity -- paying people in a community in that poor country -- I'd say, regardless of the morals of the person through which it moved. Relatively small amounts of money can be turned into durable wealth in a poorer country; for instance, it can be the difference between a young family buying/building a house or not.
An example of skimming I've seen firsthand: large-scale subsidized programs of house construction for poor folks.
The skimming that arguably occurred: the local program administrator's son, both of his woman's kids, several of his ex-wife's kids in another province, all got houses under this program. It's arguably skimming or corruption, because he and his family gained 6 houses from this program intended to help the least fortunate, out of maybe the 20 or so I know were built in the area. 'Arguably', because these people did qualify; they were adults living with other family who legitimately couldn't afford their own houses or rent, it was only an injustice in the sense that it disproportionally benefitted one family in the community.
But all of the money stayed in the area, and mostly in the country, because (in the words of the prefect of police in the movie Casablanca), he was 'only a poor corrupt official'; no one in their family had even attended local universities at that point. The construction and trade workers were local, the materials were local, and his now more-materially-secure family was engaged in economic activity locally.
It's possible, of course, for scammers to organize large-scale fabrication of 'sob stories' and I'm sure it's happened and will happen, but hopefully the scammers are 'sufficiently local'. :)
I don't want my life's work, or anyone else's, to be engaged in a struggle to change mucky 'institutions and opinions.' Eww! Gross! Honorable, necessary, maybe. (But only 'maybe', I wouldn't assume it about those who claim to be engaged in such a struggle). It's not completely implausible that realpolitik can be creatively fulfilling, worthwhile, and life's calling. But I'd chalk that up to humans being able to imbue even the worst situations with meaning, rather than it being particularly attractive as a life's work.
If I think of that question:
Suppose [...] that all the changes in institutions
and opinions which you are looking forward to,
could be completely effected at this very instant:
would this be a great joy and happiness to you?
I'd answer 'yes', and I think a lot of HN readers would too (aside from "Monkey's Paw"-style unintended consequences). I wish we had a safe, abundant world for everyone, where all respected each others' rights -- so we could get on with the best parts of human life.The best parts of human life are limitless, so the Mills' thought experiment can't touch them: creating, and sharing.
Creation is limitless, and there is no end-game, nor can there be. The question falls apart immediately: "imagine that everything that should be created has been created." It would be nonsensical -- whether in a cave, in the present day, in a 1950's sci-fi future or some (implausibly) transcendent Singularity, there are always things that you don't know, and thus new things you can do with the new knowledge once you acquire it. And thus there will always be new things you can experience and share with others.
Edit: and as a note about EA specifically, so as not to derail one of my favorite recent HN comment sections.
I'm a fan personally, and my experience is that 'expat' living is a good way to help accomplish it, without any particular misery traps (10 years out of the past 18).
Specifically, I align with the 'Our World In Data' take, about how inequality globally is so much more than within rich countries -- so any 'sticky' ways of funneling your money into poorer countries is good, and you don't even need to worry too much about getting scammed, as long as the scammer legitimately lives and spends in a poorer community.
And then if you're actually living in that poorer country, while working in a richer one, you're 'funneling money' there, by and large not competing with the locals (except in things in which there is already effectively global competition, like, say, oceanfront property/rentals). And you can also develop excellent 'local knowledge' in order to give more targeted help, which is rewarding -- but that kind of 'give a kidney' stuff isn't scalable, where remote work is.
I do see that it shouts 'EXPERIMENTAL!', so I guess it's 'experimental, but official'.
In Unicode spec terms, 'UTS 39 (Security)' contains the description of how to do this, mostly in section 5, and it relies on 'UTX 24 (Scripts)'.
It's more nuanced than your example but only slightly. If you replace "German" with "Japanese" you're talking about multiple scripts in the same 'writing system', but the spec provides files with the lists of 'sets of scripts' each character belongs to.
The way that the spec tells us to ensure that the word 'microsoft' isn't made up of fishy characters is that we just keep the intersection of each character's augmented script sets. If at the end, that intersection is empty, that's often fishy -- ie, there's no intersection between '{Latin}, {Cyrillic}'.
However, the spec allows the legit uses of writing systems that use more than one script; the lookup procedure outlined in the spec could give script sets like '{Jpan, Kore, Hani, Hanb}, {Jpan, Kana}' for two characters, and that intersection isn't empty; it'd give us the answer "Okay, this word is contained within the Japanese writing system".
See [1] https://foreignpolicy.com/2021/01/28/report-transparency-int...
Also, it might be hard for them to mention the strongest examples of brazen corruption in leadership without being accused of being political, so I don't blame the author for using the even-handed examples drawn from all quarters -- which does make it easier to characterize as cherry-picked noise -- when the thesis of the article is that leadership, a necessarily tiny fraction of the 1% in the public spotlight, are growing increasingly shameless.
But the author well could have mentioned certain boundary-pushing, prosecution-taunting illegality by political actors in the United States, including actions rescued only by equally brazen presidential pardons -- actions in the public sphere that are almost without precedent.
Those kinds of actions, so few in terms of data points, could be characterized as 'noise' for their rareness, but the author's thesis (which seems sufficiently plausible not to be discounted out of hand) is that extremely brazen action by different kinds of leadership are at least leading indicators of institutional inability to deal with corruption and wrongdoing, preceding spillover into society at large -- and that maybe, due to the outsized impact that leaders have on society, those actions have an element of influence or causation.
Well, a thesis like that doesn't, to me, mark the author as being morally dubious himself for having it.
If a society is getting more corrupt, over the short-term, (see [1] for proof that at least some well-informed people think this one is), then an increasing number of individual members of society will be corrupted.
The author simply draws an obvious corollary that we may not have considered: hey, reader -- we are among those members of society. We should assume that we can, and will, be influenced if corruption increases, or if we're exposed to very public and visible examples of it.
That may be uncomfortable to consider, but I'm glad the author helped us consider it. Is it really only other people, other people's children and families, who are corrupted if they live and grow in a society in which corruption is on the rise?
(It's clearly an opinion piece, and I'm not sure how HN-ish it is, but it doesn't seem like a particularly trashy one to me)
I see a few comments saying "this is stuff the rest of the world has had for a while now."
That's probably true to some extent. But it undersells the value being reported on, because the US market is a valuable one.
'Surprise! The richest, biggest economy in the world had banking/financial systems that were inefficient in X, believe it or not -- but that's in the progress of being fixed, which means Y is now more possible/profitable.'
They raised a howl because the plans say they will start on a power plant, whose impact is considered -- but 'oh my goodness, where will the gas come from? A well? Trucks? Oh my!'
Well -- that literally may not be known yet, as is when and whether they'd get close to running it at anything like capacity.
And that's not a problem; Texas has power plant regulators, and pipelines have their own paperwork and process.
The FAA regulating this is a bit funny anyway. :) Eventually that'll change, but right now they're doing a good job handling these weird corners of their responsibility with grace.
This is a hard market to time. Nobody
believes the Internet will be IPv6-only
within the next few years. There are
credible people who believe IPv4 addresses
will be scarce and useful indefinitely.
We might put money on you getting away
with an IPv6-only app 20 years from now.
But we'd have said that 20 years ago, too.
This was interesting to me, so I looked up adoption metrics.In 5 years (2016-2021) it went from 9% to 35%.
Source: https://www.google.com/intl/en/ipv6/statistics.html
TL;DR: it's being adopted at 5% of internet traffic per year, over the past 5+ years.
Once it gets to 80% or so, some number, there plausibly could be a flood of "we don't support IE6" behavior where adoption accelerate.
But that would still be 9 years, if the rate of adoption didn't accelerate at all.
--- Edit: this one seems simple enough to learn from, it's minimal, MIT licensed, audio-focused, written in Julia, and references the course material that it's based on:
https://github.com/nicholaskl97/wavelets
It, uh ... like lots of scientific code, it has a lot of single-letter variables. :D But if one was to google up a few acronyms ('DWT'), install Julia, get it to run, and then re-implement it in another language, my feeling is that you might understand wavelets pretty good, no? Or be at least be well-equipped to understand more interesting uses of wavelets?
(I'm posting this because I might use some 'shop time' doing approximately that, so I would definitely appreciate any HN comments telling me 'consider learning from $some_other_example instead, for $some_reason.')
When you say:
When you scan this wavelet across the audio file
Is that literal in code?Apologies for the naive code analogies -- your comment makes me think of something like an XLA 'reduceWindow' operation (edit: or an OpenCL kernel), where a wavelet-sized 'window' is slid over the input, the difference is computed for each data point -- and then (waves hands: probably something smarter than just a) 'cumulative sum' to see how close/different is is.
(a) is that on the right track/what you meant by 'scanning the wavelet across?
(b) what about transforming the wavelet -- to different scales, etc?
This seems like the kind of thing that's actually like a search problem, heh, where you'd need to slide it over the input many many times, and where it could conceivably benefit from (waves hands) machine learning techniques as a result, to come up with something that does the search for a good wavelet encoding more efficiently based on the input.
(a) if my intuition is super wrong I'd love for HN to correct it, heh. (b) long shot, but anyone have links to code? It's HN after all -- maybe some commenters in this thread are aware of cool/idiomatic/simple/etc uses of wavelet code in open source software.
(I know of a bunch of cool uses they've been put to, from JPEGs to the spacex fluid dynamics presentation about using wavelet compression on gpu, but I've personally never used them as a tool for anything, and it'd be fun to learn about them with code!)
Nortel was the main reason this all happened.
They were the ones that were doing all the cutting
edge wireless network research and when they
collapsed Huawei was the one that executed the
best in the wake of said collapse.
Err ... not sure if you're aware, but it's common knowledge that Nortel's sensitive IP was hacked by the Chinese.In fact it went on over almost a full decade, from the late 1990's to 2009 when it was brought widely to light. [1]
Say what you will about Chinese companies but
damn some of them execute well.
Well, I mean, especially the ones benefiting from nation-state level corporate espionage.Of course empires stealing tech from each other has happened many times historically; we don't have to all act shocked that it can happen.
But neither is it irrelevant that it did, in fact, happen, and specifically in the case that you mention of Nortel and Huawei.
It's definitely not just a simple case of "generous credit", though the wider point about Western governments not supporting their core digital infrastructure companies in strategic ways during those years is certainly correct.
---
[1] https://mindmatters.ai/2021/04/why-do-huaweis-inventions-loo... -- well-sourced article referencing much of the earlier reporting on the matter
"They have to take a bus to go to a physical location
to pick it up, and there are gangs that hang out
around those offices. They know what people are
going there for, and they basically rob them."
And “Remittances are one area where the status quo
in our legacy financial system is terrible"...
And ... Alex Gladstein, chief strategy officer for the
Human Rights Foundation
“That’s drop-dead stunning. It’s an
incredible humanitarian improvement.”
The story of the article, and the headline, seems to be: old-timey remittances are on the ropes; can't compete.FWIW I do actually agree w/pg about macros; I use them day-to-day for more mundane things than his impressive fully-bottom-up approach to programming. But each time I do use them, I feel like "thank heavens I don't have to reach for some weird external codegen tool to do this".