I’d say, let’s have everyone brainstorm the best way to go about this, and let a thousand flowers bloom!
I’d say, let’s have everyone brainstorm the best way to go about this, and let a thousand flowers bloom!
It is time for the mainland to come back into the fold.
I agree the mainland should be allowed to maintain some amount of self rule during the transition.
Pixel 7 with a barely customized Nova Launcher, because I’m basic but I need rounded square icons.
The background looks iffy in the shot, but it’s a live wallpaper from Shader Editor running Machine DNA’s GLSL shader with minimal tweaks needed to make it fit on the phone.
That weird twitter icon is a Firefox PWA running twitter.com with various userscripts installed, to remove antifeatures and bad logos.
I vote for xX-[X]-Xx
Alas, this being the darkest timeline, we’ll probably end up with X Social
.
I’ve been having fun writing a dumb userscript to help me cope with this.
Yes, it can put back a bird of your choosing as a logo, but why stop there.
Instead of tweeting on Twitter, I can now spez on Reddit, skeet on Bluesky, or just eXecrate on X, the Elon way.
It’s ridiculous and pointless, and I’m not sorry.
Next (2007), starring the One True God, alongside Julianne Moore and Jessica Biel.
It’s a brilliant movie (loosely) based on a Philip K Dick short story. It’s been nominated and won actual awards (Worst Actor and Worst Supporting Actress from the prestigious Razzie Awards, Worst Foreign Actor from the Yoga Awards), and it stands the test of time comfortably at 28% on the tomatometer.
I wish I was kidding. I’ve watched this over a dozen times. I can’t stop. Send help.
You can list every man page installed on your system with man -k .
, or just apropos .
But that’s a lot of random junk. If you only want “executable programs or shell commands”, only grab man pages in section 1 with a apropos -s 1 .
You can get the path of a man page by using whereis -m pwd
(replace pwd
with your page name.)
You can convert a man page to html with man2html
(may require apt get man2html
or whatever equivalent applies to your distro.)
That tool adds a couple of useless lines at the beginning of each file, so we’ll want to pipe its output into a | tail +3
to get rid of them.
Combine all of these together in a questionable incantation, and you might end up with something like this:
mkdir -p tmp ; cd tmp
apropos -s 1 . | cut -d' ' -f1 | while read page; do whereis -m "$page" ; done | while read id path rest; do man2html "$path" | tail +3 > "${id::-1}.html"; done
List every command in section 1, extract the id only. For each one, get a file path. For each id and file path (ignore the rest), convert to html and save it as a file named $id.html
.
It might take a little while to run, but then you could run firefox .
or whatever and browse the resulting mess.
Or keep tweaking all of this until it’s just right for you.
There are stories after stories of students getting shafted by gullible teachers who took one of those AI detectors at face value and decided their students were cheating based solely on their output.
And somehow those teachers are not getting the message that they’re relying on snake oil to harm their students. They certainly won’t see this post, and there just isn’t enough mainstream pushback explaining that AI detectors are entirely inappropriate tools to decide whether to punish a student.
One of my guilty pleasures is to rewrite trivial functions to be statements free.
Since I’d be too self-conscious to put those in a PR, I keep those mostly to myself.
For example, here’s an XPath wrapper:
const $$$ = (q,d=document,x=d.evaluate(q,d),a=[],n=x.iterateNext()) => n ? (a.push(n), $$$(q,d,x,a)) : a;
Which you can use as $$$("//*[contains(@class, 'post-')]//*[text()[contains(.,'fedilink')]]/../../..")
to get an array of matching nodes.
If I was paid to write this, it’d probably look like this instead:
function queryAllXPath(query, doc = document) {
const array = [];
const result = doc.evaluate(query, doc);
let node= result.iterateNext();
while (node) {
array.push(node);
n = result.iterateNext();
}
return array;
}
Seriously boring stuff.
Anyway, since var/let/const are statements, I have no choice but to use optional parameters instead, and since loops are statements as well, recursion saves the day.
Would my quality of life improve if the lambda body could be written as => if n then a.push(n), $$$(q,d,x,a) else a
? Obviously, yes.
The only clue we have is that the desk reflections look really plausible.
But yeah, it’s real: https://www.newyorker.com/news/our-columnists/the-president-is-shilling-beans
There have been efforts to build reputation systems that don’t rely on central servers, like early day bitcoin’s Web of Trust, which allowed folks to rate other folks with public key crypto, thus ensuring an accurate and fair trust rating for participants, without the possibility of a middle-man putting their thumb on the scale.
One problem with it is that it was still perfectly practical for bad actors to accumulate good ratings, then cash out their hard-earned reputation into large scams, such as the “Bitcoin Savings & Trust” (for $40 million in that particular case), which quite possibly made it measurably worse than not having a system that induced participants into making faulty judgments in the first place.
I think the main practical value of something like reddit’s karma is an indication of age and account activity, both of which can probably be measured in other, if less gamified ways.
It’s weirdly difficult to remap the “office” key so that pressing it won’t open an ad for ms office 365 and pressing office+L won’t open linkedin.com, and a few more equally valuable core OS features.
In the end I just had to grab a small bit of C code from GitHub, compile it, move the exe to the startup folder, have Windows Defender yell at me for having obviously installed a particularly nasty brand of trojan, and make Windows Defender put the executive I had just compiled back.
But really, I deserve this for using a Microsoft natural keyboard in the first place.