Thoughts
Anyways, first Julia program written*. Moving on to other things.
*translated from Matlab. Mostly a copy-paste but with an hour spent reading Julia docs to understand what was going on.
My generation has an interesting relationship with poetry.
This post brought to you by /r/nonpoetry
The reason that it feels weird for me to say that I'm addicted to novelty is that I kind of love habits and things not changing. But I
realize that I like habits because I don't have to think about them, and I love thinking about novel things. It's weird to me when people think about or comment on things that I wouldn't consider novel.
My Discord username is Matthias. This person has the *nerve* DM me, "I assume your name is Matthew?" I feel attacked.
"if I have be bigger and stronger than something in order to feel whole, then I will be bigger than loneliness and stronger than shame."
Another home run from /r/LibraryOfBabel.
Transcript
"How can I be better than everyone in the room without hurting anyone? Because hurting anyone closes doors and I crave freedom.
I need to find the people who don't **** me off, and I need to be special. What is special? What is rare? How do I twist myself into a shape humans can tolerate?
Oh, idea. I can accept them. I can tell them I think I know what's best for them and then allow them to tell me what it is anyway.
I can show them a kind of support and understanding that is very hard to find anywhere on earth because I know what it's like to have the howling void of insecurity inside me and I have the gift of narcissism making me feel like a brilliant star in the center of it, disintegrating anything, origin of creation, all and nothing and the magnificence of the universe.
I can take someone's hand when they reach out and lift them up in the manner they choose and assist them in thriving after trauma has punched out the ground beneath their feet.
I have no pretense of being a therapist but if I am going to be the best of something I will be the best friend and the best at choosing my friends and I will love rapaciously and unhesitantly anyone I can, since that list is very small.
And the difficulty I face in doing so will fuel that star as long as I keep letting it guide me because there is little more you can do to boost your own ego than humble a narc even if it's you
I am very good at playing this game called Empathize and Support and if I can't make my own humility then storebought is just going to have to do.
If I have to beat something, if I have to win at something, if I have be bigger and stronger than something in order to feel whole, then I will be bigger than loneliness and stronger than shame.
I will take them as they are and embrace them, and I will fly my flag beneath theirs because my humility is hard won and therefore worthy of praise, and therefore so am I.
Also, what the frick. I [described](https://matthias1.micro.blog/2018/08/10/small-blogging.html) this website in *2018*.
=> https://thoughts.learnerpages.com/javascript/jquery/jquery.js
now gives Not Found instead of Forbidden
It’s difficult to describe how awful the passcode entry field in settings on iOS is.
People have muscle memory for their phone passwords. The buttons are a weird shape and are in a different place on the page, for no noticeable advantage.
How will we ever find a system expressive enough to communicate the complex nuances of individual gender?
Don’t worry, the HTTP content negation protocol is more than complicated enough.
Accept-Pronouns: he/him,*/*;q=0.28
This accept pronoun header for me is different from last time I made this joke because I reread the spec and I think this is more accurate. I was under the mistaken (but reasonable) assumption that the q values were percentages that should add to 100, but they aren’t. Also, in this example, I left out q for he/him so it’s assumed to be 1.
Accidentally lost some code with git (`git reset --hard` instead of just `git reset`. I knew I didn’t know reset had 3 modes and I knew I
didn’t want `--soft`. But that’s not the point.) I managed to restore my changes by scrolling up in my unlimited scroll-back terminal until the last time I had run `git diff`. So I’m thinking about unconventional ways of syncing up with git again.
Honestly I kind of miss TypeScript. I never thought I'd say it. I'm sure if I actually had to use Typescript I wouldn't be happy about it.
The masculine urge to disconnect from contemporary society and join a Hutterite colony oh my word.
You don't even know how tempted I am to subscribe to *Consumer Reports* magazine. I can't handle the internet.
My fifth emotion, and the one currently incapacitating me, is what I'm going to call "time sickness." It's a feeling of dread at the
inexorable passage of time, a longing for the past, a fear of aging all at once. It's tinged with nostalgia; indeed at one point I thought this was nostalgia. But nostalgia is used today as a positive thing. This feeling is not. It's a terrible crushing weight; the weight of everything I've ever done and ever will do compressed into a moment. It's a violently intense homesickness for a time that you will never again experience. And it's the knowledge that the present too will one day be as far out of reach as the past currently is. And there's nothing you can do about it except stare at the picture and try to remember. I could shake it off, I could move on, but I feel an obligation not to.
"You all act like you've never seen a good coder before, jaws on all on the floor" -The Real Xacer, Mango
Some bands, like U2, are in no hurry. Their songs feel very intentional. And that makes them timeless. Other bands, like AJR, feel hurried.
Me, Edward, and Willard all have slightly different shades of green in KACC and it annoys me.
But talking to Willard about programming has been very nice.
The captions on Instagram meme pages are wild. They make this website look like a coherent and normal blog.
'Oh I know this is a bit of a longer one, but my dad died and I'm screenshoting memes as a coping mechanism'
Just deleted 2 thoughts (with incorrect information, nothing important). I used Python's `pickle` to save them to a file first.
Apple Music did a “alt hits of 2022” playlist and it’s like Blink-182, Paramore, Red Hot Chili Peppers, etc
My hands aren’t dry and my hands aren’t rough, but they’re like thin leather. The skin is stiff. There’s moisture on them, but it doesn’t
soak in to them.
"You only look to Heaven when you goin' through some drama
And when they goin' through some problems and that's the only time they call Him
I guess I don't understand that life, wonder why?
Cause' I'm all in
Til the day I die"
Not to be a feminist or an incel, but maybe a woman could ask me on a date.
I’m not afraid of rejection, at least that’s not my main concern. On the contrary, my concern is that I’ll want to back out of the relationship. Men are just expected to know what we want in a girlfriend. And, I mean, I want to be that type of person. I want to be decisive, I want to be able to commit. But that commitment really scares me because then if <something> and I break up with her, I would feel bad.
I bullied Illumina into taking down his video. We win these!
There's like 4 levels of context here, I don't want to give one level of context, but I also don't want to explain everything.
Writing is on the wall for Wikipedia. Wikimedia foundation can only burn so much money before someone in middle management there decides
revamping Wikipedia is their ticket to a promotion.
Overthinking is going to be the death of me.
If I fail to accomplish something in this life it's going to be because I overthought it.
It is my impression that this has profound implications in our understanding of machine learning.
I really value consistency. Even though I wasn't watching Bill Wutrz in 2014, it makes me happy that I can go back and find his videos from
then and they're the same as they are now. It makes me feel better about saying that I like him or his content. I trust that his content accurately reflects what he wants to be making, as opposed to just trends, and makes me optimistic that he will continue making similar content in the future.
Anyways, watch this:
https://youtu.be/TgZH9s788mQ
When I say I have poor time management skills, what it means that I have an executive functioning issue.
"When I say I'm insane, what it means is that I have bad time management skills.": https://twitter.com/Matthias_4910/status/1233980268970594309
I have decided WolframAlpha doesn't understand how to multiply matrices. Which is still concerning, but slightly less so.
Compare https://www.wolframalpha.com/input/?i=matrix+multiplication+calculator&assumption={"F"%2C+"MatricesOperations"%2C+"theMatrix2"}+->"{{1%3B0%3B0}%3B{0%3B1%3B1}%3B{0%3B1%3B2}}"&assumption={"F"%2C+"MatricesOperations"%2C+"theMatrix1"}+->"{{1%3B0%3B0}%3B{0%3B1%3B0}%3B{0%3B-1%3B1}}"
and https://www.wolframalpha.com/input/?i={{1%3B0%3B0}%3B{0%3B1%3B0}%3B{0%3B-1%3B1}}+*+{{1%3B0%3B0}%3B{0%3B1%3B1}%3B{0%3B1%3B2}}
Why are they different? I don't know. You don't know. No one knows.
Updated per-season numbers. Unless I post like 10 times tomorrow, which I might, who knows, this is representative of the end of Fall 2021.
```
>>> [(p.formatted_name, p.get_all_entries().count()) for p in pagination.get_all_pages()]
[('Fall 2021', 379), ('Summer 2021', 375), ('Spring 2021', 317), ('Winter 2020', 410), ('Fall 2020', 584)]
```
I've had the same phone background from the pre-installed Apple ones for like 5 years, if not longer. Just changed my phone background to
Etho-Joel fan art.
The problem is that my desires and my standards are not in line. So if I do what I want I'm not happy because I haven't met my standards and
if I follow my standards than I'm not happy because I haven't done what I want.
And I think everyone has to some degree, probably, but it feels extreme for me.
I haven't like really thought about a hard problem in a really long time.
I do tons of thinking, but it's pretty light thinking. Like the difference between re-reading a middle-grade fantasy novel and reading a non-fiction book on the brain. I do lots of the former, thousands and thousands of words a day. But I've been stuck on the same brain-books for a year.
Google used to publicize their R&D as a form of marketing.
You can't do that when you remove the Google branding from it.
You could view self-driving car R&D as a Marketing Expense. Instead it's listed as a loss in the "Other Bets" category of Alphabet's quarterly report.
We're going to run out of IPv6 addresses because we're using them to encode data. Facebook's IPv6 address is 2a03:2880:f0fc:c:face:b00c:0:35
"face:b00c"
HackerNews is fricking brutal. You call these 2000 pixels Waldo and the comment is "[you've] misidentified Wanda as Waldo."

I give the collapse of society another generation.
Maybe 2.
In particular, what I'm predicting is a dramatic crash in the amount of work humans are doing. I have the distinct impression that human beings are doing more work than we need to be. That 20-30% of man-hours that are payed to be worked are superfluous to human existence.
For example, systems that are upgraded because they need to upgraded because they need to be the upgraded version. Not because the old version is bad. I'm not hating on this. I have a job that feels like this and I get paid and I go home happy.
I don't know what form this will take. It's fundamentally a cultural issue.
It may become culturally acceptable to work 32 hours a week instead of 40, or go to school until you're 16 and take a couple years off until you start working at 20. Or jobs could become significantly easier. Or unemployment, the amount of people living off their parents, could increase to 20%. Or we could have a full-on socialist revolution, who knows.
Unfortunately, my data is wildly American-centric. This may only happen in America and not globally.
The question "why haven't robots taken our jobs yet" is a hard one to answer. It's an incredibly weird and loaded question, and I'll need to re-examine it in the future.
"We're driving toward the morning sun
Where all your blood is washed away and all you did will be undone."
-Taxi Cab, Twenty One Pilots
I made the mistake of going downstairs with only 1 sweater. Needed to go back up and get a vest to put over it.
I love systemd. It's like the perfect mix of like, user friendly and high-level, but super fricking powerful.
I use systemd instead of `network-manager`. I use system instead of `cron`. Etc.
```
$ systemd-analyze calendar '*:00/15'
Original form: *:00/15
Normalized form: *-*-* *:00/15:00
Next elapse: Thu 2022-03-17 18:00:00 EDT
(in UTC): Thu 2022-03-17 22:00:00 UTC
From now: 8min left
```
Sometimes it feels like I go to bed later, wake up earlier, and yet get more sleep than most people.
So I created the council of Matthiases (inside my head) in the hopes that one of the Matthiases would have a life philosophy that worked
and solved all my problems but so far none of them have.
They make good arguments and can help me solidify and enumerate options, but it's really a garbage decision making technique because after listening to them I still have to make a decision.
Some of the Matthiases (because I think you'll find this funny):
Matthias Portzel
Matthias 1.0
Matthias 2.0
Saihttam
The Count of Monte Cristo
Mel
Christian
The Matthias that wrote the about page (I'm not sure how to refer to him. System 1?)
"But you gotta get an education, can you take the pressure? / Well you better / Or it's over."
-Student Loans, AJR
I started a list the other called "The Imperfections". It's a list of everything that I want to fix. It's really fricking long. I didn't
realize I was storing ~50 issues/projects in my head, more or less in RAM. Like the data structure that was being stored in my head was a linked-list, where 1 item reminded me of similar problems. I think it's been effecting my productivity (for my entire life). Of course, writing it down helps a little bit. But it's almost worse because now I just want to sit down and start tackling the list. (I wrote a Gemini the 28th because "a perfect Gemini client" was one of The Imperfections. Still working on that one.)
It's truly an awful day for people named Matthias.
The Joker is about how people with mental issues who try to ignore them, rather than properly addressing them, drive themselves further into insanity. And so also me.
Just cursed while talking to myself. smh
Sometimes I do think interjections like "frick," but other times I will think curse words, even words that I've never said. These words normally get filtered when I say them out loud, without me having to think about it. In the same way that you don't have to think about the pronunciation of a word, I don't have to think about filtering my words.
So it was shocking to me when my personal monologue (I talk to myself frequently), included a word I don't normally say.
I think even when I "succeed" I still feel like I've failed if I haven't transcended. Probably a lot of my problem.
The keyboard-only people are trying to use the keyboard for everything to save time moving their hand to the mouse, but like, have you tried
moving the mouse closer to the keyboard. Save a bunch of time that way.
Some have said that society is an illusion. But it is more precise to say that society is a series of illusions stacked on top of each other
I thought I'd never say it but I'm now working on a codebase that is too complex for me to keep it all in my head and I wish *shudders*
that we could have just a little bit of TypeScript types on these objects.
If you create a list of all infinitely many numbers which are rational but which have an infinite base-10 representation and are between 0
and 1, and then you preformed diagonalization on them, what would you get?
I have social anxiety so I have my own bug tracker in the Notes app on my computer so that I don't have to interact with other people.
Microsoft is in a weird position because they own a lot of random things that I tangentially interact with, but like, if they tried to get
any money from me I'd run in the other direction. I own Minecraft from before Microsoft bought it. I use Atom as one of my main editors. They own Electron, of course, which I can't escape from. And of course, Github. But I would stop using any of those if Microsoft tried to make a penny off of me.
Working on a theory that having things moving on the screen in front of you makes you not want to move.
I think the relation that AJR describes in "Joe" is perhaps more universally found in with regard to a parent or older sibling.
"Always down to hang, he had no time"
-Joe, AJR
"Conversations about moderation, rules, bans, and other meta topics take place in /r/metanarchism (message the mods to get in)."
When the anarchism subreddit has a separate, private, subreddit for discussions of their authority system.
I was logged into my gmail account watching an English Youtube video, and Google shows me an add for some Pixel phone, in Spanish!
Yeah GUI Emacs is the way to go, this is pretty hype.
I've installed as a Homebrew cask. The main packages I have installed right now are use-package, ivy, and the Catppuccin theme.
It's just the little things that are going to drive me crazy until I can dive into Emacs and fix them. If you have a selection and press left, the cursor should end up at the left end of the selection, and if you press right, the cursor should end at the right side of the selection. Emacs, instead, moves the cursor one position right or left of the side of the selection in the direction of the selection. Which also makes sense, like it's clear what Emacs is doing if you think about it, but I don't think about it. My brain goes "duplicate line" and my fingers go *command-right command-shift-left command-c right enter command-v* in about 50ms. And then I have to replay it in slow motion to figure out what Emacs did wrong because the line has ended up inside of itself.
I'm tired of popups. If I open the front page of your website, and I get hit with a popup, I'm leaving. I don't care about your cookies or
your newsletter or donating now or anything except the content I came to see.
I don't get it. I have voluntarily opened your website because I want to see your content. Do you know how hard that is? I've given you that hard-to-get initial click, and you respond with a full-screen cookie popup? Please.
Why are there no terminal-based text editors in active development these days? lynx was last updated 2018.
For my own future reference (since the mdn page that describes this is called "Your first extension" and so doesn't come up in searches):
You can temporarily side-load a Firefox extension for testing by going to about:debugging > this Firefox > and clicking "Load Temporary Extensions."
Donne really said, 'Why'd you let that mosquito stick its thing in you but you won't let me stick my thing in you' except the year is 1590
and it's like 400 years too early to be arguing that virginity is a social construct. There's ahead of your time and then there's 400 years ahead of your time. Legend and a half.
One of the things that makes the poem so enjoyable is that you can totally picture Donne's girlfriend smiling and rolling her eyes as Donne explains the grave injustice she has committed in killing the mosquito that he's using as a metaphor.
Sorry for Flea-posting again.
=> https://www.poetryfoundation.org/poems/46467/the-flea
I'm actually going to use a variant of this code, I think, because the idea of a nonce well-represents the idea that we have a "hint" that
state needs to be invalidated, but no specific variable that went into the state has changed. Obviously this seems super hacky to reset a button, but it makes more sense for the variant where the "reset" is an imperative CRUD operation and the effect is a network effect to get a new state from the database.
```
function NonceCounter (props) {
const [count, updateCount] = useState(0);
function reset() {
updateCount(0);
}
useEffect(() => {
reset();
}, [props.nonce]);
return html`<div>
<button onClick=${
() => updateCount(count + 1)
}>+</button>
${count}
</div>`;
}
function NonceResetCounter () {
let [nonce, setNonce] = useState(Math.random());
return html`
<${NonceCounter} nonce=${nonce}/>
<button onClick=${
() => setNonce(Math.random())
}>Reset</button>`;
}
const domContainer5 = document.querySelector('#nonce');
render(html `<${NonceResetCounter} />`, domContainer5);
```
Edit (:39): I've found several people on the internet doing something very similar, but instead of using `Math.random` they just use a value that counts up sequentially. I like `Math.random` because then generating the new value doesn't rely on the previous state. But in the button example it makes a lot of sense. You just call it `numberTimesReset` and then have an effect/state inside the button so that when it increases you reset the button value. It feels a lot less hacky.
I focus on listening a lot. But if you're looking for information, asking a good question can be as important of a skill as listening.
The best breakcore is not on Youtube, or Soundcloud, or Bandcamp.
=> https://archive.org/details/DCRPS044/ Dark Side, Reizoko Cj
Just skimmed a re-read of the first *Dragonwatch*, then finished the second. What the fricking hell?
I was under the impression, for some reason, that *Dragonwatch* targeted the same, younger, demographic that *Fablehaven* does. (Maybe because Mull has said as much multiple times. Honestly, that's part of the reason that I didn't read *Dragonwatch* earlier.)
But I'm getting ahead of myself. The first book is pretty bad. I gave it like 4 stars when I first read it, but 4 stars for Mull is embarrassing. That's like, he's in exactly the genre that I want to read, but he's writing too poorly to get 5 stars. (Everything else by him that I had read was 5 stars.)
What the frick happens in *Beyonders* that this is less scary? I'm terrified of the end of this second *Dragonwatch*. This is a nightmere twist ending. This is like, 'Mull got bored and got Brandon Sanderson to ghost-write' levels of twist ending. Like, I never expect or enjoy brutal twists at the end of books. But I really don't expect it from Mull. Wow.
I guess there are some brutal betrayals and twists in *Fablehaven*, but those feel largely foreshadowed, don't effect the main cast of characters, are largely actionable (the characters can do something about them), and! they don't! happen at the very end of the book! This is honestly feels like Brandon Sanderson. What the hell.
I am *so glad* I didn't buy the second Dragonwatch at publication, because I would have been traumatized.
Still, traumatized is better than bored. Might just be because I've been re-reading, but I did appreciate the increase in action. I'm going to wait until morning to rate it because maybe this isn't actually a horror-story, and I'm just tired. but man!
These people on HN are arguing that Apple has more money than Google to spend on making a web browser.
Like I know Apple has more money than pretty much any other company, but Google is right there with them, and Google has a lot more incentive to push the web forward.
Anyways Safari is dead, FireFox is dead, long live Chromium.
Mull really is a good writer. The Five Kingdoms books weren't perfect like I remembered them bing, but they were still easily 5 starts
compared to other books. Makes me want to Rereead Beyonders honestly. to see how good those were.
Okay I found it, it's glorious.
=> https://youtu.be/0xdWpkc9TyY?t=150
From 2017
> People laughed at me when I said it four years ago. We're going for ten million. Okay. That's always been the dream. People laughed at me four years ago. They'll probably laugh at me now. I'd laugh at me now. It's a pretty stupid goal to have right now. 'cause you know, I'm at 100 thousand.
> Not saying we'll hit it tomorrow, or this year, or the next three years, but possibly the fourth year, if I'm really lucky. The future is bright, who knows. We'll get there eventually.
We've made it. He's there.
For some reason my phone clears cookies for this site like every time I lock the screen and I have to log in again.
My toxic trait is using all-caps "OR" and "AND" in the middle of otherwise grammatically correct sentences.
I am so screwed up.
Screw it, I'm giving the second *Dragonwatch* 3 stars out of spite. Please. My characters.
11ty is like 'oh yes we're extremely flexible.' I have some React generated pages and some Gemtext generated pages. 11ty does not support
adding custom template languages. So I can't generate either of them. 11ty is super flexible if you're working with liquid and markdown and js.
It's difficult to describe how cracked Feinberg's AA gameplay is.
AA is like Minecraft's 100% category. It's basically 'do everything in Minecraft'. And no one runs it because it's so hard. It's random seed, a random world, right. So you have to keep track of everything in the game and route these like 100 advancements, dynamically. RSG Any% is hard to route and you have to keep track of like 5 things.
Illumina, the undisputed GOAT of Minecraft speedrunning, got the AA WR a year ago with a fourteen (14) hour time!
It's impressive to watch, as a Minecraft player, because it looks like someone playing Minecraft normally, just super fast. Any% looks so different from normal gameplay, and AA doesn't.
So it seems like anyone could be the best. Or like, it requires so many different skills that no one can handle it.
But somehow Feinberg just wins. Feinberg has nine (9) runs between 3 and 4 hours. It's just insane.
I don't even like Feinberg. But it's just so impressive to me.
"I am addicted to nothing. That is, to being addicted to nothing."
I am addicted to being free.
The app formerly known as iTunes won't play music. Have to use my phone or the browser version.
Have I ever told you how much I love git?
Not that I love git over other VCS; I've only ever used git, but it's really fun.
Trying to figure out how to explain *Paradise Lost* to an atheist.
“C.S. Lewis but from 1600” requires knowledge of Clive.
Everyone wants to be the next Martin Gardner. Everyone wants to do recreational mathematics.
You can't read Gardner, and make a Youtube video, and be the next Gardner. Gardner *invented* recreational mathematics. He found things Mathematics had never heard of and introduced them.
I love Vi Hart and her content, and she introduced me to Gardner. Her following and reputation is deserved. But she's not, and shouldn't be, a famous mathematician. She's making mathematics accessible to the public, but she's not doing new math. The same goes for Numberphile, and 3Blue1Brown, and all the other math Youtube channels.
My concern is that Recreational Mathematics is a "field" of math, and the topics discussed are the same topics that Gardner introduced years ago. Recreational mathematics should be a philosophy of math. Recreational math should be people *doing* math for the fun of it, and right now it is people *learning* about (or else teaching) math for the fun of it.
Matt Parker is one of the few channels that gets this, and Matt makes a point of trying to do new math, for the fun of it. He has made videos responding to 'dumb' questions people have sent in. Questions that *don't matter*, but are still super important in furthering our understanding of math, and demonstrating the mathematic process.
“React kind of reminds me of English. It is ubiquitous for reasons that essentially boil down to imperialism.”
Edit: I've removed my commentary, because I think the quote really stands for itself. To clarify, it is referring to the React web framework.
I was tired, so tired. I put on Jon Bellion, and I'm not tired any more. It's amazing how that works.
I'm going to move forward with the current version of Next.js and consider the 67kb wart a cost of the framework.
If I find I'm not using any features of the framework and -all- my pages are static then I'll switch to Gatsby or roll my own solution with Preact's render to string or something.
Free serverless and static-site hosting is cool, but it’s still not at the point where I can distribute templates to non-coders.
All the fricking "just use a subset of HTML" people do not understand how hard parsing HTML is.
You basically would have to say "any attribute is not allowed" and then allow clients to throw/abort on anything that had element attributes. I kind of want to try this now, and write a minimalistic HTML spec page, satirically. Like just make it 50,000 words listing all the things you're not allowed to do.
You would have to aim for "miniwebsites" that could be accessed by Chrome. But I really do not think you could design the spec in such a way that miniweb-browsers would be able to read any HTML pages that weren't designed for the miniweb. You couldn't have that as a design priority.
Wait frick HTML links are `a` elements that require an `href` attribute. So now you have to support attributes. Like show me a regular expression that can hope to parse a single HTML element.
Okay, okay, you probably don't follow. For an example, given `<a href="..." tabindex=0>Click me</a>` is pretty common. See the problem? Even if we can parse attributes, a naive attribute parsing approach assumes the attribute is surrounded by quotes. But quotes are optional. And if you don't have quotes, it's hellish to find where the attribute parameter ends. Oh not to mention a lot of the time you don't have an `=` at all.
I've said before, I still don't understand the rules by which HTML collapses whitespace.
HTML and Gemtext are just not in the same galaxy. It's like walking into a conversation about markdown and saying "why not just use HTML". Except that HTML is still HTML and Gemtext is about an order of magnitude easier to parse than Markdown. Like, no one knows how to parse Markdown.
If you asked me to write a Gemtext parser in assembly, I'd be like, 'yeah sure why not.' If you asked me to write a parser for a *subset* of HTML in assembly, I'd tell you it wasn't possible. Like, okay, you'd have to say that you're not allowed to nest elements. (Because otherwise I have to come up with dynamic memory structures to store my theoretically infinite nested parse tree...) No attributes except for `href`, no elements except for `a`, `h1…6`, `pre`, `block quote`, wait! But if we have bulleted lists, then we have to nest elements. That's awful.
Like, imagine you have a feature-set, say, the stuff gemtext supports. And you want to be able to store and parse those features. Option 1, is all of the complexity of parsing HTML. Option 2 is literally designed to be as simple as possible to parse while support the needed features.
I haven't even gotten to servers. Chrome sends so fricking many headers, you'd need a dynamic memory system in order to handle an arbitrary number of headers. Modern browser could add more headers at any time. Firefox just invented the DNT header and started sending it. There's no way around the complexity and extensibility of the web.
Gemini is designed for non-extensibility. So you can write a server in assembly and allocate 1024 bytes for the URL and know that you'll never need more than that. Fun weekend project, Gemini server in assembly. It would be better than Astronomical Theater.
eBay doesn't store transaction history, item listings, past 9 months. It seems like everyone's transaction history would be interesting data.
I am waiting for them to make me a sandwich and on account of my being hungry I have greatly expedited the rate of my increasing insanity.
My sandwich is ready going insane is canceled
.
Transcript
"When it's quiet and I stop thinking, I hear voices in my head that sound like radio commercials."
Getting people to agree with you is not “debate” or “logic” it’s “art” and “rhetoric.”
I saw a post that used “American Pie” as example of an artist creating something that communicated a feeling that the listener wouldn’t otherwise have ever experienced. Every emotion that I feel thinking when I think about that plane crash was communicated to me by Don McLean. Reading the Wikipedia page communicates nothing.
Maybe I should have switched to Jinja from Django's templating system, instead of caching things. It sounds more performant.
I need someone to make a short film about Danish and Black Hat because, dang, OTP material right there.
Let's make a connection
=> https://thoughts.learnerpages.com?show=22c65757-d280-4714-abb4-13fc97dfa4fb
=> https://en.wikipedia.org/wiki/Tacit_programming
Atheists arguing that the state of the universe before the Big Bang is obviously unintuitive and we don’t have to understand it in order to
know that it existed. (Theists frequently argue that God’s nature is obviously unintuitive and we don’t have to understand it to know that He exists.)
I estimate that I passed 100 PRs on Github sometime recently.
I'm kind of surprised it's not more, considering I probably have 1,000s of commits, but I guess most of those are to projects that I have write access to and don't need to PR to. Like I have 267 commits to OurJSEditor and 19 PRs.
I love art of birds, okay. When I say you should just draw a bird I mean it. There is no reason to draw a Minecraft YouTuber if the majority
of the drawing is the wings that you’ve put on his back. I’m so sorry Grian. Like the art is absolute fire I just don’t get why it’s Grian.
I’m just not a very reliable person. I need someone to stand in front of me and take my bursts of insight, my bursts of passion and
creativity and genius, and package them into something easily digestible by everyone.
Tailscale's whole fricking thing was that you installed it and it just worked. Well I installed it and it doesn't work.
Okay I had to re-authenticate my laptop. Now it just works!
Oh, I'm stressed. I'm like terribly stressed, oh my word. My brain is like broken. I need to explode. I need to start exercising again.
I'm participating in forced content non-consumption time. Let's say for the next 10 minutes. pineapple
Apparently Google has been archiving this webpage. I'm a bit scared. Where did I even link this from?
It doesn't help that I am bad at taking jokes. Sometimes I say "I take everything literally." That's not perfectly true. Obviously, with
context I can tell a joke, (even if I'm worse at it then other people). But with exaggerations (things that aren't 100% joking) or certain contexts, I do horribly.
This is I think one of my most important and significant thoughts:
It would be really cool if Akamai used their Linode acquisition to bring their edge-compute infrastructure to individuals.
The libertarians are having an absolute field day with this one.
'when you gamble sometimes you lose.' 'should've done due-diligence on
the bank' "The crypto people haven't been getting bailouts and it doesn't seem to be hurting the ecosystem" "Don't ask taxpayers to fix your mistakes for you."
The communists are also having a field day. 'the guillotines will be brought out eventually.'
Have you ever driven yourself insane? Thought without thinking, wrote without writing? Consumed without consuming and read without reading?
I have. I do every day. This is my purgatory. My boulder. My pain. My cross.
It is a small cross, a light cross, and I carry it. There is something to be said for universalism. There is something to be said for anarchy and for death. There is something to be said for life and for everyone who lives it. There is something to be said for "the latest and closest plural approximation to singular prenatal passivity which science,in its finite but unbounded wisdom,has succeeded in selling their wives."
If there's a line, there's going to be people on the other side of it.
A mountain is a mammal. A soul that keeps singing long after it should have stopped. A voice that starts singing long after it should have started.
A cave, and in the cave, a mine, and in the mine, something, something indescribable, something valuable, something more than you and me, and yet nothing without us.
A nose. A nose and The Nose and in a piece of bread and above our heads. I'm tired of not being able to say what I mean. I being unable to describe the angle through which I view the world.
A movie to end moving.
Even if one tree has an abundance of water, it cannot nourish another tree. The second tree needs roots as well.
Jumping into the vacuum of space and hoping that you catch me because I can’t bear the thought of living without you (but in a platonic way,
this is a children’s novel).
Need to stop trimming white space from the front and end of posts here, I don’t know why I thought that was a good idea.
When Blaseball does return I'm going to be insufferable. I'm going to watch every game; memorize the coffee preference of all the Jands...
The best, bad, sequel titles:
* Breakin' 2: Electric Boogaloo
* 2 Fast 2 Furious
* Alvin and the Chipmunks: The Squeakquel
I know what you're thinking. 'Matthias, it is a crime, to put what is undeniably the best sequel pun, "squeakquel" at third place.' But one of the factors that I considered heavily when rating was the ability to parody. And "The Squeakquel" only works as an Alvin and the Chipmunks title, whereas you can throw "Electric Boogaloo" after anything that ends in 2 and it is hilarious.
Also I would like you know that there was a Breckinridge Jazz Hand named Wyatt Mason II and we called him 2 Wyatt 2 Mason.
The comparison between *The Count* and *Emma* must be made. The stakes in *The Count* are much lower. The Count’s future is already
decided, he wants only revenge. Emma is playing for the future lives of herself and several other characters.
Oh my fricking word I don't actually understand React. I've never made a "good" React app with cascading state.
Word dump
ah frick these are words from inside my mind boy i do not have the sanity to create the things that I want to never be destroyed on this earth or in the heavens beyond our comprehenious in time sheep yelow words flow from my mind like they've never had a chance to escape before and this is the opening of the floodgates that destroys a city and a town and the world and everyone behind thier own minds is light oh
Me: all computers will be destroyed by the heat death of the universe.
HN commenter: This is wrong.
Apparently the heat death of the universe isn't a modern cosmological theory, I stand corrected.
Okay this is weird but I’m still not over the ending to *Keys to the Kingdom*. Has any other book done that?
The thing about pushing yourself hard is that it never feels like you're pushing yourself hard enough
I wish there was a genre like 'musical music.' Not that I ever listen to music from musicals, but it seems like a lot of the music I listen
to, especially AJR, would fit in better in a musical sound track than with other "Pop Hits."
The Vite and Turbopack people are fighting over whether it takes 10ms or 100ms to do HMR. At work we're using webpack and it takes 10,000ms
to do a partial recompilation, at which point the HMR fails because webpack is misconfigured, and you have to reload the page anyways (which takes another couple of seconds).
Asking ChatGTP is already better than reading the docs and is arguably better than Google searching or Stack Overflow.
Like the documentation for `defalias` doesn't include an example, so I ask ChatGPT, "can you give me an example of using defalias in emacs lisp?" and it gives me 3 examples with explanations.
The one other thing that I want to point out is just how beautifully simple the ChatGTP interface is. As soon as they have sidebar ads the arithmetic vs. stackoverflow will change.
OH! A proxy is when the server is listening for all of your requests and proxies them through; a reverse proxy is when a server is listening
for all of another server's requests.
This always confused me because,
Proxy:
```
User ──► Proxy Server ──► Actual server
```
Reverse Proxy:
```
User ──► Proxy Server ──► Actual server
```
It sounds like the "reverse proxy" is proxying from the server to the user, but that's not the case. The user always starts the request
The difference is:
Reverse Proxy
```
User ──┐
│
User ──┼────► Proxy Server ──► Actual server
│
User ──┘
```
Proxy
```
┌─► Server
│
User ──►Proxy Server├─► Server
│
└─► Server
```
If you want to see the diagrams well (since I know I don't support markdown on here), try a gemini client.
A slightly edgy but well edited Biden victory meme compilation: https://youtube.com/watch?v=I0UK1KVtMQM
I think what I want is CGI. I think my problem is when you start semantically defining whether a file should be executed or echoed based on
its place in the file system. But there's no way around that, since the location in the file system is the only thing that defines files. Or I guess it would be super nice if there a was web-server that was optimized for serving static content that also supported arbitrary scripting.
For example, this is ugly in my opinion (pseudocode):
```
<Directory /static>
ServeAsStatic
</Directory>
<Directory /cgi>
CGIExecute
</Directory>
```
But this is nice:
```
<Match /static>
ServeAsStatic /static
</Match>
<Match /cgi>
#!/usr/bin/python3
import os
os.stdin.read.parse_as_cgi()
...
</Match>
```
Like Apache wants to establish the mapping between the request URL and the file system first, then decide if the file should be served as static or executed. I think the request URL should be parsed to decide if it's serving a static file or a cgi file, then allow each path to define its own logic for how to handle the request. (In the static case, that means mapping the request to the file system. In the dynamic case, that also means mapping the request to the file system (the file with the code in it), but I wish it didn't.)
Horseshoe moment. Zero isn't a number. Zero should be defined as a set of numbers with a magnitude of 0.
Here's an opinion for you: I don't like trail or nut mixes with small little seeds. I don't want to feel like a bird, I want to crunch down
Would be fascinating to do an essay on Dracula Daily as a format. Because it’s the same content as the original book, so it defies any
narratives that people today can’t/won’t read long form classic novels, and yet, it is extremely different from the original novel in medium.
What would make this better?
Would I be happier in a culture that encouraged positive feedback? Where people complimented me. Or would that hurt too?
What is my real problem?
I want a functional programming language like Haskell but with Julia's Multiple Dispatch.
Haskell *kind of* has this. Types in Haskell can have different constructors, (which can be almost completely different, almost like subclasses or classes implementing an interface or something), and you can overload a function to work with different constructors of the same class. But what's beautiful about Julia is how much the language embraces overriding methods and using them for every different type imaginable.
Dracula Daily is amazing because it feels like I’m part of a fandom. Like I can go on Tumblr and there are people talking about the
characters and what happened today and not really saying anything but experiencing the same thing. And that’s not really something that I have with most of my media interests.
Like Blaseball or HermitCraft come closest, but somewhat integral to those is that everyone has a difference experience. Everyone has a different Blaseball team whose games they watch, or a different different Hermit whose videos they watch. And since everyone’s been participating for a different amount of time, everyone’s experience is really pretty unique. With Dracula Daily on the other hand, everyone’s reading exactly the same book at exactly the same time and it’s fun.
I don't normally like non-English songs in my music library, but "99 Luftballons" is the exception.
I want to be crushed.
"But people who have been flattened by the earth still live."
We cannot start over.
Hmmm
This was super easy to do because of Safari's support for WebEx and the `xcrun safari-web-extension-converter` tool. Unfortunately, signing and distributing a Safari extension is still $100/year. Also, Safair runs *super* slowly with it installed, although I'm not sure why.

The WHATWG can no more tell me how to make a good website than the government can tell me how to be a good person.
I’ve decided Gru is an antisemitic stereotype. Greasy black hair, long nose, greedy, steals children, etc
I want to break things.
I mean I guess I'll go to sleep since there's nothing I can do that will make me happy, but I'm just going to end up in bed staring at the ceiling sad.
GoodTimesWithScar is an inspiration. Absolutely incredible.
I don't even watch his videos regularly, but I have a large amount of respect for him.
It's like the Lapce people have never used another application. Like they're just not detail-oriented at all. Buttons fire on mouse down.
At some point in the past I made my phone’s vibration pattern (e.g. when someone calls me) “Matthias” in Morse code and then forgot about it
It is now time for Silly Songs with Larry, the part of the page where Larry comes out and sings a silly song.
Okay uh if you're a lawyer from Big Idea and you want to serve me a take down request please contact me at Matthias.Portzel at gmail, I just love following the law and I'm not willing to have this site taken down for copyright reasons.
Description
Literally just an entire silly song ripped from https://youtu.be/tpcf_qD3GW4.
I can't even tell you how much I wish JS had better utilities for point-free programming.
I shouldn't have to
```js
.then(function (data) {
displayNotifs(data);
addReplyListeners();
})
```
I should be able to
```
.then(data => progn(displayNotifs.bindArgs(data), addReplyListeners));
```
or even
```
.then(prognPassArgToFirst.bindArgs(displayNotifs, addReplyListeners));
```
I'm working on a theory that my sanity is inversely correlated with the length of my hair. My hair is in my face and my sanity is thin.
I bought a “does Tumblr still exist?” keychain because it’s funny now, but it’ll be really funny when Tumblr goes out of business
awddwawadawd awda wda wda wd awdawdawd what is a brain
brain bug bye bee bit best before brew butt bin binary. buh boo bfft woolop me
aah oh my. inside and outside turning tables upside down in the temple outside the inside. brrr bar baz. loop. yeah.
'You can call this a class and you can call me a teacher but we're on a learning journey together.'
-Josh
I have a new theory for the origin of my insanity.
To skip the explanation: the world is too large and I’m not going to read anything that
doesn’t directly pertain to me, for a couple of days at least. No more Twitter, HN, Reddit, Blaseball. I’m never bored anymore.
Okay so I've definitely seen the mail-jumping that was featured in today's Tom Scott video before. And if you had asked me yesterday where I
had seen it, I probably would have told you in a Tom Scott video, but that's obviously not the case. My second thought is that it was in an episode of my favorite television show which I haven't thought about in 5 years, Fetch! with Ruff Ruffman, but a quick search doesn't surface anything there.
Side note, Tom Scott's channel and Fetch! with Ruff Ruffman are like basically the same show.
The problem is that it could have been like any show. "Kid's show that features sending kids to places IRL" is a surprising prolific genre. My current plan is going to read all the comments and see if any are like "I remember this from X."
Thinking about *Check, please* again.
Honestly I probably just need to read more fiction, my standards are so low.
But like, so many things don’t meet my standards. Like none of the *Check, Please* characters are great. They’re good, but the story and worldbuilding is amazing. One of very very few non-fantasy stories to do 5-star worldbuilding.
I would argue, counter intuitively, that positive feedback hurts an action that is an expectation.
That is to say, if someone is regularly doing something, rewarding them for doing it makes them less likely to continue.
I just want this website to be accessible from every device and it's failing in the experimental browser in my 2012 Kindle.
I really want to put like a dumb CRT-effect overlay over this website but my GPU (or lack thereof) cannot handle it.
Decided I’m doing an Edge Chronicles re-read (except that I only read the first 6-ish and I don’t remember them). At the latest, after
Dracula Daily finishes, possibly before.
I’m struggling right now since the last DD was two days ago, but the book is picking up a lot so I don’t want to start something else at the same time. What am I saying, I read DD in like 5 minutes in the morning at work?
I can’t keep summarizing this book. I can’t take it.
There’s a whole paragraph in here about how he’s not homophobic he just thinks there are too many gay characters in comic books these days.
This is the main character, ostensibly a 15-year-old in 2010. Who used the f-slur to describe umbrellas earlier in the book.
To Rex’s credit, we made it half way through the book before there was a “lesbian porn” joke, so that’s better than some things. I just. I thought this was supposed to be about vampires why are the characters debating the quality of Neil Gaiman’s comics?
I am now convinced Cybersmith is a troll. “Do these bones look hollow” *posts picture of the outside of bones*
No it’s not that they’re dumb, it’s that they have accounts on Twitter, Reddit, and Tumblr and continue to try to argue with people who are clearly making fun of them.
Edit: others on Reddit are convinced the original user was legit and the account was take over by a troll somehow in the last year.
I guess I should include a content warning: the post that made Cybersmith famous can be mentally scaring. Don’t seek it out if you value your sanity.
The thing about cancel culture that gives me a bad feeling is that it normally takes a person and then enumerates the things that that
person has done that are bad. It seems to me that if you cared about addressing the issues, and not about attacking the person, you’d take one issue at a time and list some people that were to blame.
Maybe this is a distinction without a difference, I don’t know.
.
The sky is shattered like a jigsaw puzzle.
Fragments of it fall between my ears.
Fragments of it float overhead.
The light from the sun shines down.
The leaves fall aimlessly.
Buildings slice the world.
I'm on the ground.
The sky above.
Grass below.
Me.
"I have a statistics minor and some proficiency in R, so I am the most qualified person to solve this problem."
I haven't written a computer program in months. My brain has rotted. I have forgotten how to write code.
I still think about code, of course. I'll never stop thinking about it. But writing it? Oooh, I don't know.
Lightbulbs are super aesthetically pleasing. They have a technical look because they’re electric, but a very natural shape.
10/10
"Why Do I Choose This for a Living"
Chrome is gaslighting me. Git checkout OJSE from last year, it's broken. Like? I'm pretty sure this code worked at some point, please?
The problem with clickbait is that if I get clickbaited once, I start assuming everything is clickbait. I have to start ignoring the whole
genre, (assuming that I don't already know who is going to clickbait and who is not). Clickbaiting hurts not only your reputation, but the reputation of the whole category that you're in.
I feel four emotions strongly. First of course, loneliness or longing, then pride, purposelessness, and one that is more difficult to
describe but which I would normally call the desire for perfection or frustration with imperfection.
Hot dang! Black, bold, large point Helvetica on white.
Normally, the emotional response that comes from seeing something diminishes with repetition. But some letterforms just never get old.
Also, the font stack for this page and OurJSEditor is `Helvetica, Arial, sans-serif`. It's not quite the same here, with less contrast and fewer pixels, but I'm fan.
I know Helvetica is basic and overused, but also, have you seen it?
Why would I go to college, work hard, get a job at reputable company, when I could just make software that DOESN'T WORK and get paid for it‽
The Better Touch Tool buttons stopped working again. And then Vivaldi crashed.
Thankfully both are working now, but like. I pay money for these softwares for a reason. It seems reasonable to expect a minimum of functionality from them.
My fourth problem is that I'm a perfectionist, and I feel the need to fix all of my problems at once.
I keep a list of all of the problems that I have or have ever had, in an attempt to avoid repeating them. But this means that it's very easy for me to get distracted with one problem when I should be focusing on another.
The left fielders. The non believers. The short chubby kids with red hair and freckles and toes that are a bit too long.
The other side of the fence, the upside down painting and, of course, the inside of an elephant.
People that are washed up, too tired, sleeping on the roadside, like an old rusty can on a beach.
Dirt and grime and dust. A little too long since the last success. A little too long since they were clean and popular and fancy.
A little too long before they will be again.
Some people need a little more than a freshening-up. They need a deep clean, a real scrub. They need you to shift your perspective.
Inside out.
Black socks. Broken guitar strings. Dirty headlights. New glasses.
One of the things that made Lockwood and Co so aggressively different from other children's books or books with children as main characters
is that all of the characters are treated like adults, in that they have backstories and are fully independent at the start of the book.
We write words not just to be understood or appreciated by others, but to bask in the warm glow of beauty.
(This is a riff on the Rails Doctrine quote I posted the other day. It feels weird to put any sort of quotes around it since I've competently changed the meaning but I can't exactly not attribute it when I stole all the words.)
You'll be glad to know I regularly test and update this website for compatibility with both `lynx` and `links`.
I'm going to tentatively code-freeze this site until spring. It's at a really good balance of functional but really weird.
And I'm at the point now where a lot of future improvements (e.g. improving page-load-time even more, importing Tweets) require large architectural changes (e.g. static site generation, DB schema changes). Oh and I don't feel the need to do more "wacky" things with it. There's still milage to be gotten out of the red colors, the about page, and of course Super Thoughts.
I'll think about it for a couple of months; I might rewrite it entirely in 2023.
Zig doesn't have generics per se, but it allows you to pass around types as compile-time values. Which is basically the same thing.
Okay this is authorization attempt number 3.
I got rid of the code referenced in my second ever Thought.
=> https://thoughts.learnerpages.com/?show=d90ad16e-df3a-437f-b4fc-be2c9539b9d2
Hermitcraft charity stream hit their 25k goal before the event started at 2pm. They hit their new goal, of 50k, at 2:04pm.
If we don't hit like 1million I'm going to be disappointed at this point.
I ordered stuff from Amazon like many hours ago, why is it not here yet?
I mean I don't have Prime and it was estimated to get here on the 26th, but still, I want it here now. Please...
Nevermind, JS generator functions return `Generator` objects so you have to `.next().value` all the time. 0/10, IIFEs are more flexible.
It's easy for Christian to forget that the religion is founded on God's forgiveness, not on our sinfulness.
Gemini gets so much hate for being different. I can't take it.
And like, since there's so little substance to Gemini, you really can't criticize it for anything but being different, but man, people do.
Like, there's no argument you can make against Gemini that you can't make against either a) Twitter having a character limit or b) any protocol that is not HTTP(s)+HTML.
My real problem with editors is that I am unable to write code with any theme other than Atom One Dark.
I subscribed to Make It and Fake It for the electronics content, but she is low-key making me consider taking up sewing.
The character limit on my first line is 140 characters. 280 on Twitter was too many, it was easy to stay under that. This requires effort.
"Here needs no spies, nor eunuchs; her commit
Safe to thy foes, yea, to a marmoset."
- Elegy II "The Anagram" John Donne
Honestly, I'm speechless. Donne just murdered her right in front of me.
I love bread so much.
If I could get all of my nutrients from eating only bread for the rest of my life I think I would.
On second thought, I understand that not everyone wants the same things I do. It's interesting that that is a fundamental difference in
desires and not a difference in circumstances. You have 2 stoplights and don't need one; that makes sense. You don't want a stoplight? That throws my mind for a loop. It makes me uncomfortable. I start questioning whether I should want a stoplight, or else if you *should* want a stoplight.
I would very much like to stay up and hand color a QR code, but I am going to go to bed instead. I think that is the smart decision here.
I'm curious how long I use this website. I'm not attached to using it forever, I could very easily switch back to Twitter, but it is nice.
The gas station employee wouldn’t charge me for the pre-made pizza they were selling. I’m a little scared.
One of these days I’m going to explain Policy to someone and it’s going to become clear how deranged I actually am.
We have inadvertently formed an elite, composed merely of people who are unwilling to accept the status quo.
This is about how multiple JS devs on the team have modified their local webpack configs to make build speeds tolerable.
Pop quiz: You're a python programer. You have a web request that is one line with the Python standard library. No, what are you doing? Stop
pip installing requests. There's no reason to use requests. It's not. Ahhhhh
Banging my head into the wall.
requests is like jQuery for Python programmers. They just can't live without it and it looks exactly the same to me.
I’m firmly in the lowercase “into” camp. I think they decided on the wrong way.
They decided on following the capitalization of official media, but no other Wikipedia page follows “official” portrayal over rules of grammar. See, e.g. the Wikipedia page of any band or company that stylized their own name in all lowercase.
But like, I’m sure there’s a reason that they decided the way they did and I haven’t read the 40,000 word argument or the Wikipedia style guide or anything.
Yeah, so if you don't have an adblocker Quizlet just loads ads infinitely, throttled by your internet or CPU. I'm at 100+ MB of ads.
I hate the web.
Quizlet is literally unusable without an adblocker. I don't get it. How is that good for business? Is it that hard to load a single ad?
"My Play" is beautiful.
It's like Legos but better. I said previously I didn't expect AJR to do anything radically different on this album, and while they haven't, "My Play" is definitely different enough to keep it interesting. The hype for the album has increased!
Also yes I forgot to listen to it until now I'm 15 minutes late, fake fan, rip
One of these days I'm going to really go through drawabox.com. I started it once but gave up when they expected me to like practice drawing
things for hours. Although that sounds strangely appealing now. I need a hobby like that…
A man can you hear me
A man can you hear me inquires of an empty room can you hear me upon receiving no reply can you hear me he concludes can you hear me that he is mute can you hear me
Programming is a game. You agree to the computer's rules, and then you do whatever you want.
This doesn't quite capture the essence of what I mean.
Writing and programming and art and creation are about control. (Whether they should be or not.)
I'm very glad that, while the objective quality of discussion on the internet has deteriorated in the last 10 years, the novelty pumps have
continued to churn out content at an increasing rate.
Oh my word. Not-resonant voice Tom Scott is something else. I can hear it. My word.
=> https://youtu.be/2QKPQ6JYVhU?t=265
One of the weird things about React is that there's some sort of difference between `<Component />` and `Component`
Just learned about vim easy mode (`-y`). All the people are Hacker News are just being mean, but I'm about to fricking us it as my default
editor. After I configure some iTerm key re-mappings so I can use command instead of control.
There are certain things you can do with video discussion of statistics that are really cool. I don't think I'll ever get tired of graphs
that go off screen in a video such that the camera has to pan up.
I hate time I hate the concept of time I hate entropy I hate that everything falls apart if I don’t actively hold it together.
Okay so Gaud wrote a Tony the Tiger x Grinch fanfic, and while I can handle that it exists, I hate that it is good. Like quality writing.
Better than some books that I’ve read.
https://biggest-gaudiest-patronuses.tumblr.com/post/636714357200470016/biggest-gaudiest-patronuses
People tend to over complicate regular expressions. And like, they need to be that complicated, but you don't need to use all of the regular
expression features in a single regular expression.
Hur dur Hur dur
I have about 30 seconds of content for my lisp KA game and I really need more but I’m lazy and I don’t want to create more content for the game, since in my mind the project was about the lisp interpreter and not the game itself.
Okay I have another weird programming language idea. Pass-by-value? pass-by-reference? What if you had to choose?
```
// There's no distinction between data types
// You need to use the `new` keyword to create a new object
var a = new 5;
var b = new [1, 2, 3, 4];
// Read as, "c also equals b", b and c are now both pointers to the same mutable data
var c = also b;
c[1] = 0;
print(b[1]); // prints 0, since the underlying array was mutated
// x and a are both 5, but they are the same 5
var x = also a;
x++;
print(a); // prints 6
// Copy keyword makes a copy of the data
var e = copy b;
// Conceptually, moves the data in b into f.
// b is now empty, an invalid reference
var f = move b;
```
Writing this out I think makes it really clear that there are three distinct options. And most programming languages have kind of erratic rules that treat different data types differently.
I think this would make programming a lot clearer.
I don't how to do function calls or other operations yet.
“Good thing / it only takes a little faith / to move a mountain / because a little faith / is all I have”
-Even If, MercyMe
I think to some degree, gen Z has taken tongue-in-cheek complaints about corporate America and said ‘working is bad.’
For example, many people in my generation were exposed to The Office, Dilbert, and our parents complaining about their bosses when we were kids.
And while the things being complained about are certainly valid, the solution isn’t communism.
It reminds me of some kids who look at boomer-comics about marriage, and go “wow, I’m never getting married.”
Here's a weird idea I've had for a bit. It's hard to describe, but imagine a browser that supported plugins for other file types.
I say it's hard to describe, because if you remove HTML as a first class citizen, i.e., HTML support is also a plugin, then what I'm describing is really an operating system.
So imagine this operating system, that looks just like a browser—it has an address bar and tabs and that's about it. No other "applications." Not just a tabbed window manger, because the address bar is also super important here.
In browsers today, you type a link to an HTML page in the address bar, and it opens. And you enter a link to an image, and it opens. Browsers can open PDFs, images, html, sometimes folders, and plaintext. But that's it, as far as I know.
What if you had a browser that supported those file types by default, but also supported plugins to open and edit other types of files. Websites already send a Content-Type header that the browser uses to decide what type of content it is. What if I could register a plugin for a different Content-Type, like text/markdown, and then the browser could use this to open markdown files and read them.
This removes the need for browsers to focus on making everything. It really separates the "browser" as a loader for these file types from the "browser engine" that parses HTML and runs javascript. Because the second task has become so daunting, it's really impossible to write a browser. But there's still a lot of room for improvement with the first problem. Why can my browser open all these file types, but not edit them? Obviously, PDF editing is out-of-scope for browsers today, but why then can I open a PDF file? I can open a folder from my SSD in my browser, but the item listing hasn't been touched in 10 years, it looks like. In 2021 markdown is a super common format, but markdown didn't exist when the browsers were being written, so it's not supported. And today, the browser makers are worrying about other things. If they let someone else write a markdown render, it would make the browser better.
I could probably achieve a similar effect by using Atom with a browser plugin. Atom's vast array of plugins for different files is one of the inspirations for this idea. Or a tabbed window manager, like I mentioned. But those miss the idea of an address bar. It would be cool if I could type in the same box, "https://apple.com" and get a webpage or "file:///bin/zsh" to get a shell.
Hacker News comment comparing Tilde users to the unabomber. Not even sure if it’s intended as an insult.
I'm going to become a fricking ---
*the rest of this thought was deemed too dark and was redacted*
Me, who has never been in nor had any desire to participate in theater, crying, “I really really really really want to show you my play!”
In the past two days, Facebook has gone down, all of Twitch's source was leaked, and all `.club` domains went down. This is anarchy.
I do not appreciate the loop macro at all. It’s so ugly to me. If functional code is so good, why do you need DSLs?
Veritasium tries to clickbait me with a giant "INCOMPLETE", and I’m like, oh yeah, Gödel's Incompleteness Theorem, classic.
This is a circle in which a robot spins.
This is the attack of the bees.
Oh yeah, I made a Rigby post earlier today with something I had
posted here.
The NYC AEOUD is going to sell out so fast. I’m considering driving four hours to see it (probably won’t). Like the possibility of meeting
Matt and Grant at the same time in the US? This is a once-in-a-decade event.
When you have a child component and a parent component and both of them need to be able to read and write state, what do you do?
```js
function Counter ({ parentCount, onUpdate }) {
const [count, setCount] = useState(parentCount || 0);
useEffect(() => {
if (typeof parentCount === "number") {
setCount(parentCount);
}
}, [parentCount])
useEffect(() => {
console.log("inner count changing");
if (typeof onUpdate === "function") {
onUpdate(count);
}
}, [count]);
return html`<div>
<button onClick=${
() => setCount(count + 1)
}>+</button>
${count}
</div>`;
}
function RestableCounter () {
const [count, setCount] = useState(0);
return html`
<${Counter}
parentCount=${count}
onUpdate=${setCount}/>
<button onClick=${
() => setCount(0)
}>Reset</button>`;
}
```
In some ways this is exactly the solution I was looking for. Both can read and write, the Counter can be used without the RestableCounter. The reset logic lives in the parent, the incriminating logic lives in the child. The obvious unfortunate part is that the parent and the child both store state, and so state is duplicated, and furthermore, it relies on React aborting the update when the props are the same. It looks like it's going to loop with the child updating the parent and the parent updating the child.
“People want an authority to tell them how to value things, but they choose this authority not based on facts or results.”
I want music that knows what music is supposed to be, yet doesn't know what it is.
I know who I am supposed to be, but don't know who I am.
We live in a purgatory where 97% of text is UTF-8 encoded but we can't write tools that assume arbitrary text is UTF-8.
Uninstalling Firefox because they're too busy to update the icon to be a square, like every other app in my dock.
Cannot get over how based bill wurtz is.
“all 16 personalities belong to myers-briggs. depending on which way i answer the questions, i get to read a different one of their personalities”
Oh I should disclaim, I don't actually speedrun Minecraft. It was like 3 hours or something. But it might have been 2 or 4 hours, IDK
95% of light color schemes could be improved by changing the text color to pure black.
(Or indistinguishably close. This site uses #092B3B, which you can tell isn't black if you have a large swatch of it, but in text looks black. The point is that you shouldn't use a dark gray. Light code color schemes will use like #4D4D4D and it looks awful. Not enough contrast.)
Listening to “Kitchen Sink” and “Christmas Saves The Year.” We should be due for a TOP album this year, but this will work for now.
Don't have time to try it right now, but the new Vivaldi address bar features seem very exciting.
*Left Handed Booksellers of London* would make a great 1-season TV show. So much happens in that book.
"And yet your heavenly Father feeds them" "And yet your heavenly Father feeds them" "And yet your heavenly Father feeds them"
"And yet your heavenly Father feeds them"
My least favorite bug is back. Moving the mouse off of a button in causes the pointer to be draw in the wrong place for a frame.
Edit: On second look, it's a macOS bug, not Chromium.
I love breakfast food, I love IHOP, but they call their waffle a Belgian waffle when it is the most American waffle imaginable.
Hey fun fact my (and everyone's) SSH public keys are available from Github
=> https://github.com/matthiasportzel.keys
Using `more` because `less` complains about my terminal.
My computer is in the shop so I'm using a web terminal on a computer that I can't install things on.
Search is fixed.
The issue was that I didn't specify a home directory for Django when launching it from Apache, so when it went to lookup the search template it looked it up relative to `/`. (Search is the only thing effected since the other template lookups are preformed relative to the `thoughts` app.) (This wasn't caught locally because locally the working directory inherits from the working directory of the terminal.)
Here's the weird thing. The commit that made this change renamed things, sure, but shouldn't have effected this behavior. I have no idea why it now decides that it needs a working directory set. I'm going to look into it more, will edit if I find anything.
"I use vape so it only contain nicotine as harmful substance not any other things"
This fool is like 'oh yeah, nicotine's addictive, I'm addicted to my vape.' And you're a kid. That's a *bad thing*. I don't care if it doesn't kill you, I still wouldn't want to be addicted to anything.
The colors on my external monitor so fricking washed out. It makes Vivaldi look awful. And I can't fix the color settings because something
magically reverts them every time I do.
Look at this. This is htop output from astronomical theater. I restarted it just a bit ago (TIME is 1.16 hours),
and made some test requests to this page over Gemini. (For a bit of context, the Gemini version of this page isn't paginated, so it's just 700KB of every Thought I've ever had.) Anyways, it's using almost 12GB of RAM. VIRT is virtual memory; the kernel is telling it it has 12GB if it needs them, but this is a VPS with 0.5 GB of RAM and 2 GB of swap. It doesn't actually have 12 GB of RAM. And my code doesn't actually need 12 GB of RAM, it's actually using 28kb of RAM (RES). But V8 just isn't designed to be memory efficient so it's going to aggressively ask for memory and since Linux doesn't want to fail until the very last minute, it's going to promise memory that it doesn't have. Anyways I don't know if this is an actual problem or just a consequence of using V8. I hate node.
```
PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command
995704 root 20 0 11.8G 28852 15604 S 0.0 2.9 0:01.16 node gemini/gemini.js
```
(This is why astronomical theater isn't open-source, by the way. I regret using node for it.)
RIP e.gg
Honestly, who the frick thought it was a good idea to create an alt social media with "Brought to you by FACEBOOK" in big letters on the front page. Could have been cool other than that
I am re-reading but a few chapters of *The Count of Monte Cristo*. It cannot handle it, this was a mistake.
Morrel is like 'death before dishonor', and picks up a pistol to kill himself.
His son walks in, 'what horrible violence is the pistol for?'
Morrel: 'We have no money. Our debts will not be paid and the name of Morrel will be dishonored!'
His son: "You are right father; I understand you." "There is one for you and one for me—thanks!"
You can't make this stuff up. The book is fricking wild.
Thinking about buying Cyberpunk and wasting the entire rest of my life playing it. Just 70 hours a week for the next 20 years.
Words have power, and you can argue or pretend like they don't as much as you want, but they do.
Okay so I almost have the post page working without Javascript. But I need to ask the user for the timezone. Hm.
=> https://aberant.tumblr.com/post/167375099/a-letter-from-why _why on code style
Edit: finally found this link again
=> https://viewsourcecode.org/why/ _why's estate
I wish I could listen to Panic! for the first time now. I think the music is really good but I decided I didn't like the band 10 years ago
and I can't forget who I'm listening to for long enough to change my mind. Maybe I just don't like the lead singer's voice.
"And by the way, it's supposed to be funny. Something that has all but vanished from serious music these days"
-Gatekeeper Julie (feat. Jim Svejda), Capital Cities
This Thought might have been interesting, but my thought process getting there was pretty dumb.
=> https://thoughts.learnerpages.com/?show=e858a7d7-fc3c-41eb-a1a5-5dc4c4a5d4c2 Something about 'humans act like NPCs'
But the examples that prompted it were like, someone wearing the same jacket every day, or wearing a T-shirt for the club they were in. Like. I'm not wrong. But also. 'Humans walk places because that's the easiest way of getting there and they're lazy and therefore they are like NPCs.'
I think there's something there… But it's not nearly as interesting as I thought at the time.
jan Misali just roasts a language for 10 minutes in the most dry tone. It's amazing.
"It's not very computer friendly, which wouldn't be a problem if it were pen and paper friendly, which it isn't."
=> https://youtu.be/12bT6wGXESc
I don't even care about conlangs at all. He's been doing this for 5 years.
You have to be gentle with things that are delicate.
Sorry for spamming here I need a mental outlet right now. Post button goes post post post
ChatGTP can generate code that matches one requirement, but when I added another requirement, it introduced a bug.
Yeah macOS's application/window switching is pretty bad.
I just wish Console.app supported ANSI color codes and I don't know why it doesn't.
"ERROR: We've reached an unreachable state. Anything is possible. The limits were in our heads all along. Follow your dreams."
If you start learning things at 8 years old, let’s say. Like, I think around that age your brain is close to
functioning like an adult. (I recognize that assumption is controversial, but that’s not the point of this Thought.) Then let’s say 8 years later you’re 16, you’ve learned an immense amount of information. You feel like you know just about everything there is to know. But someone who has lived another 8 years, someone who is 24, knows so much more. In absolute terms, it’s not wrong to say they know twice as much as you.
The 16 year old has an outline, but the 24 year old has filled in more of the details.
I this partially explains why the 16 year old wants respect from the 24 year old, and the 24 year old doesn’t want to give it to them. And of course this effect is greatly magnified with increased age gaps.
I made it on top of the pergola. 9/10, very relaxing, highly recommend. A nice substitute for the roof.
Monetize Tumblr Challenge (Impossible!)
Attempts to monetize Tumblr:
* Ads. Outcome: the ads are infamously weird. It's often unclear what the product they're selling actually is. There's no way a sane person would actually click on any of them, but sometimes people screenshot the ads and share them because they're so weird. A common feature request is being able to reblog ads so that you can make your followers see the same surreal ad that you did. (https://66.media.tumblr.com/2f985a5ed8624a0917d9fc543d90292e/tumblr_pnkgrx6qpu1v25kqw_540.jpg)
(Ads covered the first 10 years of the site. All of the following attempts occur in the last year-ish, since Tumblr was given to Automattic by Verizon.)
* Post Plus: bloggers could make posts private, and charge for access to those posts (similar to Patreon or Substack). Outcome: The "limited beta" features one person, who didn't agree to be part of it, and was bullied for charging for posts that used to be free. Users protested, afraid that the feature represented Tumblr trying to appeal to "content-creators," as opposed to fan-dom, their historical userbase. It was canceled before it fully launched.
* Tumblr Blaze: Announced on 4/20, 2022, Tumblr Blaze allows you to pay money to promote your own posts (known as "blazing"). Outcome: Tumblr reacted favorably to this. People blazed their own work to advertise, but also funny posts they wanted to share. Although many Tumblr users did complain about the religious sections of the website (like Catholic-Tumblr) using Tumblr Blaze to proselytize.
* Tipping posts and users: if the author of the post has enabled it, you can tip the authors of posts you like. Outcome: this feature bypasses the legal issues of charging access to posts on a website that features mostly gifs of TV shows. It is enabled by a non-zero number of users, but is still mostly ignored in favor of paypal links for fundraisers. (For those not aware, the Tumblr community welcomes Go-Fund-Me-style posts asking for financial assistance.)
* Ads never went away, but Automattic tried to find new, better advertisers. Outcome: Manscaped becomes the primary advertiser on the site. Manscaped's mission, if you're not aware, is to create the cultural expectation that men should shave their balls, and profit from selling special, ball-shaving, electric razors. Why they're doing this on Tumblr, which has a disproportionately female audience, I cannot imagine. https://www.tumblr.com/blog/view/manscaped/682906639183101952?source=share https://www.tumblr.com/blog/view/manscaped/688948518002589696?source=share
* Ads from Automattic. Automattic frequently promotes their own content on the platform. Outcome: The half of Tumblr ads that are not a half-naked person selling intimate-grooming supplies are ads for Automattic's own products. Ads for Wordpress and Day One Journal aren't worth mentioning. However, they also advertise Tumblr on Tumblr. I don't know why. One such ad features a person in a Pikachu costume. But like, it's just a yellow morph suit with red cheeks and glasses? Expert speculation is that they're trying to terrify people into buying their new ad-free tier. https://www.tumblr.com/blog/view/parasiteangels/688462337355694080?source=share https://help.tumblr.com/hc/en-us/articles/6797403156631-Help-I-clicked-a-Tumblr-ad-on-Tumblr-and-now-I-m-still-on-Tumblr-/?utm_medium=display&utm_source=tumblr&utm_campaign=houseads_set4&source=wordads Oh yeah ads are now re-bloggable so you can share Pikachu man with your friends.
* An ad free tier. Outcome: Automattic seems to believe at this point that their best option is to give Tumblr users lots of options to pay for their website. One of those options is an ad-free-tier. The ad-free-tier removes ads, unless you're afraid of missing out on the latest Tumblr-advertising-cultural-event, in which case there's an option to turn ads back on.
* Merchandise. For their fifteen-year anniversary, Tumblr started a merchandise run. https://www.tumblr.com/blog/view/staffs-secret-blog/694234268426207232?source=share Outcome: I don't know why anyone would want to wear Tumblr merch. Apparently Tumblr was self-aware about this, as their merch-store launched with the tagline "cringe is dead." You wish Tumblr. Many people reply that they should sell shoelaces, referring to a 2012 meme in which someone suggested Tumblr users could covertly identify each other in public by complimenting their shoelaces. https://www.urbandictionary.com/define.php?term=I%20like%20your%20shoelaces https://www.tumblr.com/blog/view/staffs-secret-blog/694460275848511488?source=share
* Subtle shoelace campaign: There's a small banner that sometimes pops up, saying "Shh, I like your shoelaces." Clicking it takes you to the Tumblr merch store, which now sells shoelaces. Outcome: Some people buy the shoelaces with the Tumblr logo on them. I was not one of those people, I'm glad to say.
* Manscaped ad featuring a person in a yellow morph suit dressed a Pikachu. https://www.tumblr.com/blog/view/manscaped/688335951551938560?source=share Outcome: Aahaahahaahahhhh.
* Post Plus. Oh yeah they brought back Post Plus at some point. https://www.tumblr.com/blog/view/babiedeer/680083679311216641?source=share Outcome: I didn't hear about it all when it actually came out, so I guess they're downplaying it and no one cares.
* Crabs. For April Fools, Tumblr had added (among other things), a button that, when pressed, added a crab to the dash. Users enjoyed spam clicking the button until their dash with crabs, and they mourned when April Fools was over and the crabs were gone. Tumblr now sells access to the crab button for $2.99 / 24 hours. https://www.tumblr.com/blog/view/matthiasportzel/694509011986432000?source=share Outcome: Crab.
It's honestly profound the difference between "nothing can be perfect" and "everything can be better."
Obvious there's an attitude "half-full/half-empty" difference. But there's also logical difference. Saying that something isn't perfect doesn't imply that it can be better.
Edit:
Similarly, the second also implies a qualitative aspect that the first doesn't. It's not a binary, perfect or imperfect, it's about being better.
Clicking on a time stamp to jump to a post is so unintuitive and such an anti pattern it’s ridiculous
That’s got to be a problem, right? Like just a memory leak in V8 or node?
The thing that makes this weird is that IIRC the kernel can just decide to not free memory. Like the app calls `free` but sometimes Linux goes, “well no one else needs that memory, we’ll just keep it allocated to you.” So sometimes you see that, where an app’s memory goes up after a large operation, and then doesn’t go down, and it’s not a memory leak, it’s just the kernel trying to be ready for future operations. But a) 11GB is a lot. Surely the kernel should start actually freeing at some point and if it’s not at 11GB I don’t know when it is. And b) It should have been able to allocate a MB, and re-use that same MB for all the operations. I never did a 10 GB operation. I might have done 1,000 1MB operations.
It's interesting to me that my bottleneck in being able to post audio samples here is the number of things I think are worth recording, not
my time or willingness to record myself.
I've editing some old posts to fix some super minor typos, but they're things that have been bothering me for a while, so it's pretty nice.
I know what you're thinking, I know what you're thinking,
'Matthias, you claim to be a typography nerd, yet when I open my favorite
webbedsite, thoughts learnerpages, it is filled, absolutely stuffed, with straight quotes.'
I apologize. The plethora of straight quotes on this website is as much an affront to my eyes as it is to yours, I just don't know how to fix it without spending like 30 hours writing Zig code to implement a proprietary markup specification. Which I still plan on doing at some point, but there's also a certain beauty to typing in text and then having the same text emerge unchanged out the other side. Maybe I should just manually curve all the quotes. Hm.
When I'm typing quickly I just leave out whole words. It's annoying because I check my grammar and spelling, but my messages sometimes are
unintelligible because I forgot the verb of the sentence.
Where do the types of people who have read *Gödel, Escher, Bach: an Eternal Golden Braid* hang out?
IRC?
Matt Parker using "she" to refer to his friend in a video.
What is this? Why are Jame Grime and Einstein are "they" but Eugénie v Tunzelmann is a "she." I don't understand. What are Matt's pronouns? What are pronouns?
Discord is removing their username#discriminator system and moving to a globally-unique username and a global display name for everyone. I
think it's dumb. The only reason they cite is that it's hard to share usernames and discriminators with other people IRL. That's very true, but I would fix that by adding Snapchat-style QR codes to add friends. Usernames are just so boring. I'm going to go from being @Matthias#4910 to @matthias4910. Woohoo.
One of the nice things about Discord was how low-friction sign up was. You just told them your name and they rolled a discriminator for you, so you wouldn't have to pick a unique username when first signing up.
I mean, it's really like they said 'how can we appeal to more people.' 'we can make our product more similar to other people's.' And they're not wrong, but you're also removing the things that differentiated yourself.
If there's really a problem, you should try fixing it in a new way and see what happens. Choosing to fix in the way that everyone else fixed, while safe, is also really boring.
Free story idea (it came to me in a dream): Two characters are friends, and then a witch curses them. Now the main character remembers their
friend, but the friend treats them like a total stranger. Insert some drama here, where they're angry at each other. But the twist is that it's actually only the main character who has been cursed. It's not that the friend has forgotten anything, it's that the main character is experiencing time out of order.
The last post about migrating to fossil was a joke, I have decided. Not worth learning a new CMS.
People on Hacker News are like, ‘why would you buy a Playdate for $180 dollars when you could buy a cheap android phone or an old Gameboy?’
(Because those things aren’t a Playdate? IDK)
Another common take is, ‘people are only buying this because it’s made by a popular brand.’ Like, how much brand loyalty do you think Panic has? They make Mac-only developer tools, last I checked. I guess Untitled Goose Game was big but like, Panic didn’t really get publicity from that.
Of course, I’m not even going to consider getting a Playdate myself until Panic can actually manufacture them, which is apparently a lot to ask.
I’ll admit, I wasn’t a fan of Dream ever since he click-baited Notch and then plugged Notch’s Twitter, when Notch is known to be
*questionable* on Twitter. (Things he has posted have been described as transphobic or sexist. However, he is far from the worst offender on the platform.)
Some people have called for boycotting Minecraft or pretending Minecraft was made by someone else. I wouldn’t go that far; I do respect Notch as a game developer. But I don’t agree with his Twitter, and I wouldn’t link to it with a target audience of children.
So when Dream did that, and didn’t to my knowledge face any backlash for it, I was taken aback. That seems like a bigger deal in some ways then cheating for a 5th place leaderboard spot.
(Remember, this is a Thought, not a judgement or a thesis or my only thought.)
I said this and then I fricking popped off.
=> https://thoughts.learnerpages.com/?show=8f027781-2a8c-4b71-a91a-7516764ecaeb
I'm on track for most posts ever this season.
I'm at the limit of my intelligence every day, and it's a frustrating feeling.
I guess I always have been.
Cloned the Sentry docs, it is all over. I'm just going to start fixing things they can't stop me.
@aspiringrobotfm deleting her Tweets is a modern-day tragedy.
Some of my best Tweets are in reply to deleted Quinn Rose Tweets.
I'm so good at staying away from things that make me angry that it's easy for me to forget that I have anger issues.
Apparently this means Firefox raced the cache and the network and it was quicker to transfer 3kb over the network than it was to read the
page from disk cache. That's iconic. This laptop has an SSD. I mean it's not a good SSD but it's an SSD. It read the other content (images+scripts) from the cache, so maybe since that took a little while, it was able to complete the download first. Still, the whole page is only 300kb. The server is in Utah. The internal SSD is literally 0% of the distance. It's quicker to roundtrip a couple packets to Utah than it is to read 300kb from the disk.

In what world is this a helpful debugging experience????? I'm trying to type a print statement! Suggestions are disabled! Inline details are
disabled! Code verification is Disabled!

This isn't even a marathon. This literally isn't even a race. Life is literally a sandbox game. You can do whatever you want.
*The Majesty of Our Broken Past* is amazing.
I've been looking for good soundscapes for a while.
So Misali uploaded a toki pona lesson and since I'm subbed to them I guess that means I'm learning toki pona now.
My brain hurts so much and I've learned like "pona" and "sona." Here, let me try to say, "I'm learning toki pona": "mi sona toki pona." Woohoo! I'm so good.
Edit (Apr 10, 2022): That translation is wrong, it should be "mi sona e toki pona"
If you have a Django model and you want to turn it into a JSON string, your options are:
1. Put it in a list, serialize the list with `django.core.serializers.serialize`, parse the list as JSON, get the first element from the list, JSON-stringify the resulting dict.
2. If you're using django-rest-framework (which I am), you can create a serializer class that inherits from serializers.ModelSerializer and has a child class called Meta with a `model` property that points to the Model and a `fields` property set to `__all__`. You can then serialize an instance of that model by creating an instance of the serializer class with the model instance that you want to serialize as an argument to constructor. You can then JSON-stringify this object.
For comparison, in Ruby on Rails, every Active Record object has a .to_json function.
Who comes up with these ideas?
'Which of our contestants will eat a post-it note for the fewest number of points?'
The problem with unordered lists
There are a couple issues with unordered lists in markdown, Gemini, and Apple notes, surrounding how you indicate them.
CommonMark dictates that a list block can be started with no padding and a single item. I've written this intending to source a quotation. I don't want a bullet here. My solution would be to require at least 2 items for a list, but this obviously adds backtracking complexity.
```md
"Hello, world"
- Matthias
```
This brings me to the second issue: CommonMark allows for unordered list items to begin with either an asterisk or a hyphen-minus. This is annoying because both get translated into a bullet.
This third one is the big one. If I'm formatting a document in ASCII, i.e. without any markdown, I would like to indicate a list by starting items with " - ", that is, space, hyphen-minus, space. This objectively looks the best since the hyphen-minus has padding on the left, and is vertically centered (where a bullet would floats above the mid-line). This doesn't work in Apple Notes, which disallows a leading space. This doesn't work in Gemini, which requires `* `. And, as mentioned, in CommonMark this is converted into a bullet.
```md
This is a test list:
- Cookie
- Bread
- Apple
```
```md
This is a test list:
* Cookie
* Bread
* Apple
```
Looking at this, it's clear that the easy solution here is just for me to stop being different and start my lists with `* `, which works perfectly everywhere except for raw-text. But I have to look at it before post-processing is applied. Sad.
I want to print out each panel of "Choices", Monroe, and arrange them around around my wall in a non-linear fashion.
My concern with the metaverse is not that it's impossible to make, but that you would end up making something like EVE Online.
> In those days Peter stood up among the believers (a group numbering about a hundred and twenty) and said,
> "Brothers and sisters, the Scripture had to be fulfilled in which the Holy Spirit spoke long ago through David concerning Judas, who served as guide for those who arrested Jesus. He was one of our number and shared in our ministry."
…
> "For," said Peter, "it is written in the Book of Psalms: 'May his place be deserted; / let there be no one to dwell in it,' and, 'May another take his place of leadership.'
> "Therefore it is necessary to choose one of the men who have been with us the whole time the Lord Jesus was living among us, beginning from John’s baptism to the time when Jesus was taken up from us. For one of these must become a witness with us of his resurrection."
> So they nominated two men: Joseph called Barsabbas (also known as Justus) and Matthias. Then they prayed, "Lord, you know everyone’s heart. Show us which of these two you have chosen to take over this apostolic ministry, which Judas left to go where he belongs." Then they cast lots, and the lot fell to Matthias; so he was added to the eleven apostles.
-Matthias Chosen to Replace Judas, Acts 1:15-26
A picture of a whiteboard. Overlapping text in different colors reads as follows.
[Black text, not overlapping anything else:]
No.
I
Who
is. Your friend.
right. Or.
Surrender to the system.
Become more than yourself.
[An untranscribable scribble]
U
Europa.
Somewhere else
Someone else
Has created
And destroyed
More than I will ever see.
[Blue text, sideways, underneath red text:]
Some say
Life is about something.
They miss that life is everything.
This not poetry.
This is prose. An essay.
Of course
[Black text, upside-down, underneath red text:]
Pale flowers.
Left for hours
Sun above
A dress.
Stress
[Red text, written over the last two blocks:]
What is this if not me?
Who am I if not this?
To live for _____
Sorry.
This is not poetry
This is not art
This is some words on a whiteboard.
That shouldn't have been written.
This is nothing.
I'm sorry.
Except I'm not
And these words are everything
These words are poetry and they are art
These words are life
They're me and you and the connection between us and they matter
Michael M (@MikeMcl on Github, default profile picture, no bio), maintains decimal.js, which has 1.7 million users. XKCD 2347 moment.
I’m floating. I can’t bring myself to dive back down. I’m afraid not of the water, but of drowning.
Everything I've ever written is poetry.
I talk to myself a lot. And even if I'm not talking out loud, I have a constant narration in my head. And so almost everything I write is first said, and so is intended to be said.
No you don't get it, the drugs don't cause problems, they actually solve problems and so the people with problems are the ones who do drugs.
I need to not spend any time on the internet today. I need to process a little bit, you know. I watched like 4 episodes of game charger last
I was really fricking confused when learning LISP because I kept trying to understand the datatypes and like the differences between them.
Like I'd see Lisp code use `hello` or `:hello` or `'hello` or `"hello"` and I was like, oh, it's got this special "token" datatype that you offset with `:` and it's got strings and it's symbols and they were all different things in my head. But no. Lisp has lists, and it has symbols, and that's it. And there's some syntax sugar/parsing rules where some symbols evaluate as values and some variables don't. `:hello` is just the symbol `:hello` (`:` isn't a special character at all as far as I can tell). The quote character means "don't evaluate the following symbol". Similarly `"` seems to indicate just that the symbol including `"` isn't evaluated. `(eq? '"hello" "hello")` is true.
This is a dumb post because I still don't know what I'm talking about and I'm kind of talking about common lisp and kind of talking about scheme/racket.
The point is, Lisp is wild. It's almost more like writing JSON than JS.
I can't argue in favor of in-person work because if I tried people would jump in with the "I used to commute an hour each way" and I'm like
yeah, that's miserable. You should never.
But, speaking for myself, I really like working in person.
The thing that frustrates me about Jekyll is that it forces content into the _data and _posts directories. So if you try to group all of
your content together, then all of your content, everything you regularly change, is in sub-directories with names that start with `_`.
But like, you don't have to do that. Jekyll will also post-process files in a `./posts` directory. And this is the type of thing that gets me about every static site generator (or least Hugo and Jekyll and eleventy). They have these conventions and assumptions about where to put their files, but it's unclear which of them are defaults and which of them are enforced. And how easy it is to overwrite any given default.
I wonder if other fields of study are solvable in the way computer science was.
Like Turing discovered a series of building blocks that can be combined to create any program. Gödel proved that formal logical systems are incomplete. I wonder if there's like an equivalent for Geometry, where we can say, all shapes are made up of lines and circles and complex curves or something.
That is, we have rules that constrain the behavior of all computer programs, and that constrain the rules of all logical systems, but do we have a set of rules that constrains all shapes? Or can someone turn up tomorrow with a new type of shape that behaves differently from normal shapes?
TIL that studies have been inconclusive in attempting to prove that I am anything more than a figment of your imagination.
:(
I still can't get over Ruby. `example "foo", value: 5` is syntax sugar for `example("foo", {:value => 5})`
Society is a stack of bricks balanced on top of each other. I am brick, and there is a brick above me and a brick below me.
Interesting post on how far mathematical proof languages have come.
I cannot imagine not liking someone who has programmed in Elm. I mean, like maybe if they didn't like Elm, but I can't imagine that either
Day 13, finally got the Journal. Don't want to spoil anything but it's possible to do much much earlier I was just dumb.
"Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,3)"
Yeah that's about what I expected from dd-ing to the hard drive.
Now the question is how to fix it. I didn't think this far ahead.
My problem is that I am on anti-drugs. That is to say, I am doing not every drug. Which is kind of a lot. Possibly an uncountably infinite
number of drugs that I am not doing.
Torrent for obscure textbook finally finished, after leaving rtorrent open in the background for a day.
Finished the fifth Fablehaven last night at 3am. It's pretty dang good.
Vanessa is one of the best characters from any piece of media. Icon.
Donne really said, 'why do girls never go for nice guys but let themselves be used by mosquitos.' In 1590.
Well, tailscale stopped working. The mac app just loads endlessly without connecting. Good job everyone.
Edit Apr 12: I think this was a conflict between Cloudflare WARP and Tailscale. (Both provide VPN-style functionality.) Cloudflare WARP wasn't running, or shouldn't have been running, but it's possible Cloudflare left some configuration dangling or something, which wouldn't be Tailscale's fault.
I'm working on migrating my old tweets into a backlog on this website. Wow. Re-reading is wild because I agree with most/all of them but had
forgotten most/all of them. As opposed to Thoughts, which I reread periodically frequently enough that I remember (or at least am not surprised at) most of them.
There's a huge difference between ugly code that lets you write clean code later, and ugly code that forces you to write ugly code later.
I cannot take this. I am addicted to content consumption. I cannot stop myself from opening Youtube.
"When one ceases to feel, I am of the opinion one should keep quiet."
"I do not take particular note of the empty moments of my life"
"The first sentence will come spontaneously, so compelling is the truth"
-The Surrealist Manifesto
Evan Chen was low-key like, I'm going to write a textbook on advanced math, for the fun of it, then make it free.
https://venhance.github.io/napkin/Napkin.pdf
"If you can’t see why the theorems here 'should' be true, you’re doing it wrong."
“Seventeen months captivity to a sailor accompanied to the boundless ocean, is a worse punishment than human crime ever merited”
Ah! Dante would spend another 9 years in prison. My heart aches for him.
AoT hasn't dropped off yet so I'm basically just waiting for it to end so I can start my anime arc.
Computerphile is not a good channel.
Tom Scott's videos on there are fine, but Tom is carrying hard. The other computer scientists, they're not good at explaining things in a practical way.
Cursed sorting algorithm that always returns a sorted list, but sometimes sorts increasing and sometimes decreasing.
Something about the README for EnderIO saying it's licensed under CC0 despite the fact that the LICENSE.txt is the Unlicense. Quality.
One of the things that makes my axiology difficult to reconcile with many people's is that I believe that all ideas have inherit value. Even
if X is not a good thing, thinking about X, the idea of X, is a good thing.