I should really find a game to play other than Minecraft lol
Link 9:06 p.m. Oct 04, 2022, UTC-4

I love how Firefox and Chrome agree that the correct color to annotate flexbox containers is purple.
Link 9:59 a.m. Oct 04, 2022, UTC-4

I'm sorry I'm still not over Double Life
Some Scarlet Pearl animatics: One of those says 'I love double-life Pearl a normal amount' and like yes. This is the only appropriate response to Pearl's character. => https://youtu.be/MhFDVkOANEs => https://youtu.be/HzXCXvEEy7A => https://youtu.be/M_7Ann8QwhI 'There are two green names, and there are eight of us. What do you say? What do say we go...' "I think we gotta call Cleo." *silence* *silence* => https://youtu.be/H9p3S60sS9o?t=139 I love that scene so much because Etho and I are on exactly the same page. I love Cleo.
Link 11:03 p.m. Oct 03, 2022, UTC-4

Don’t even want to think about American Greetings’s profit margins.
Link 7:29 p.m. Oct 03, 2022, UTC-4

Django doesn't have default templates for signup, login, reset password, etc. It has the code for that, but it's not a frontend framework,
it doesn't even give you basic HTML implementations. Which is frustrating because I really don't want to build logic to check if passwords match again, I want to build my actual application. Unfortunately, progress in the area of full-stack frameworks is depressingly slow. The only frameworks I can think of that will handle user authentication for you (including default pages), are Redwood, ASP.NET, and that's all. Rails doesn't by default but there's a library (devise) that does everything you want. Looking at the devise feature list makes it clear how much you really need. * authentication (e.g. login page) * session management (setting cookies) * password reset (email, etc) * registration (sign up page, confirm passwords meets requirements, email confirmation, etc) * user management (the ORM-level user object) * account deletion 2FA and third party auth providers (e.g. Oauth) are things that make sense to be handled by plugins. Plus lots of other settings (e.g. locking account after invalid attempts), some that are assumed. Anyways. Django does some of those things. Rails needs devise to do them. I haven't used other frameworks to know, but I feel confident saying most frameworks aren't wide reaching enough to cover all of them. But I don't understand why not. Why should I have to re-write any of that?
Link 4:20 p.m. Oct 03, 2022, UTC-4

Oh, Firefox has a square icon now?
Link 2:20 p.m. Oct 03, 2022, UTC-4

I've never been like, "man, I regret making a git repository for this." On the other hand, there are lots of times when I'm like, "man,
should have made a git repository for this a long time ago."
Link 11:31 a.m. Oct 03, 2022, UTC-4

Just read a little less than 200 pages in a little less than 2 hours, if you want an estimation of my reading speed.
This is children’s fiction, ~300 words a page, for ~500 wpm.
Link 10:04 p.m. Oct 02, 2022, UTC-4

"Our enemies think we're weak. Truth is, I've been holding back until now."
Link 4:34 p.m. Oct 02, 2022, UTC-4

Oh yeah, I decided .bind is cursed, you should just create a wrapper function. (I'm particularly talking about using it to curry.)
Link 9:29 a.m. Oct 02, 2022, UTC-4

VS Code JSX syntax highlighting broke on me. My JSX is valid but VS Code is failing to syntax highlight it because I'm doing fun things
Minimum reproduction example: ```jsx function makeComponent() { return ( {component: <div>Hello</div>} ); } export default function App() { return <div className="App">{makeComponent().component}</div>; } ``` This works and renders fine, but VS Code doesn't syntax highlight the first div.
Link 9:28 a.m. Oct 02, 2022, UTC-4

I can't decide if `.bind` is the most beautiful thing ever or if it's cursed.
Link 9:50 p.m. Oct 01, 2022, UTC-4

I haven’t listened to enough music today.
Link 8:27 p.m. Oct 01, 2022, UTC-4

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.
Link 8:08 p.m. Oct 01, 2022, UTC-4

What is the point of the past? What's worth saving?
Link 6:37 p.m. Oct 01, 2022, UTC-5

I decided Arch Linux is too cool and I can't bring myself to wipe my Arch install off of this computer, so there's 250GB down the drain.
Not to imply that Arch requires 250GB; it of course doesn't. But that's how much I allocated for it and I'm not going to try to resize it now.
Link 7:26 p.m. Oct 01, 2022, UTC-4

I regularly tell Siri "one second" like you would a person and every time it starts one second timer. Thanks.
Link 7:25 p.m. Oct 01, 2022, UTC-4

Maybe I should give on my dreams of doing something and focus on learning and thinking, the things that I'm actually good at.
Link 1:49 p.m. Oct 01, 2022, UTC-4

Compiling Firefox from source, ran out of disk space.
Link 11:26 a.m. Oct 01, 2022, UTC-4

Yeah I think I can get this done in about 2 hours *Two hours later* Okay I got the JS build toolchain configured.
Link 9:55 p.m. Sep 30, 2022, UTC-4

Time to finding a Safari rendering bug after switching to Safari: 4 hours.
This is reproducible too, btw.
Link 4:54 p.m. Sep 30, 2022, UTC-4

Maybe DRY was a mistake and the secret to good programming is just to explicitly iterate all of the expected behaviors.
Edit (:47): This might just be prolog
Link 3:36 p.m. Sep 30, 2022, UTC-4

I really want to try a programming style where you just add hundreds of `assert`s throughout your code.
Link 3:30 p.m. Sep 30, 2022, UTC-4

"My life's become as vapid as a night out in Los Angeles"
Link 1:44 p.m. Sep 30, 2022, UTC-4

I really took for granted how much code I *read* on Khan Academy. It makes me sad that there's no equivalent for professional react.
I mean I guess there's Github. Maybe I should make a habit of perusing Github repositories. I actually really like that idea.
Link 1:34 p.m. Sep 30, 2022, UTC-4

Alternate universe where computers are fast please.
I've switched to Safari as my default browser.
Link 12:54 p.m. Sep 30, 2022, UTC-4

Okay this is weird but I’m still not over the ending to *Keys to the Kingdom*. Has any other book done that?
Link 11:00 p.m. Sep 29, 2022, UTC-4

(Reading Lockwood and Co. and Dracula) Double dipping on Lucy blorbos.
Link 6:38 p.m. Sep 29, 2022, UTC-4

"God made me a full-blown genius"
-Pre-Occupied, Jon Bellion
Link 3:01 p.m. Sep 29, 2022, UTC-4

=> https://thoughts.learnerpages.com/?show=06def988-b93a-496d-9523-6b4cac77416c This is also true of modern technology in general.
Link 2:09 p.m. Sep 29, 2022, UTC-4

Somehow I missed that Atlassian owned Trello (as of 5 years ago).
Link 4:57 p.m. Sep 28, 2022, UTC-4

I'm still alive.
Link 2:43 p.m. Sep 28, 2022, UTC-4

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.
Link 12:38 p.m. Sep 28, 2022, UTC-4

Have I ever told you I’m addicted to my phone.
Link 10:44 a.m. Sep 28, 2022, UTC-4

Read read read read
Link 7:00 p.m. Sep 27, 2022, UTC-4

You don't know the anxiety of waiting for a `git rebase` to complete and hoping you don't run into merge conflicts.
Link 4:44 p.m. Sep 27, 2022, UTC-4

How much does it matter.
Link 3:30 p.m. Sep 27, 2022, UTC-4

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?
Link 1:14 p.m. Sep 27, 2022, UTC-4

`exa` is noticeably slower than `ls` to me. Is that weird?
Oh it's because I'm passing `--git` so it has to go out to git which is not instant. exa is no slower than a `git status`.
Link 11:39 a.m. Sep 27, 2022, UTC-4

Object permanence
Link 10:02 a.m. Sep 27, 2022, UTC-4

I can't. I'm sorry. I can't. Etho just shows up. Builds Battle Bane.
Link 9:16 p.m. Sep 26, 2022, UTC-4

I’m lonely. I wish I had the words.
Link 8:55 p.m. Sep 26, 2022, UTC-4

“Touch me.”
Link 8:55 p.m. Sep 26, 2022, UTC-4

I'm going to re-write Thoughts in a fricking Lisp dialect and you're never going to hear the end of it.
Link 5:02 p.m. Sep 26, 2022, UTC-4

Hear me out, a block-chain-based database reliant on data transformations which are expressed in a functional programming language.
Oh my word. So your "website" is a function that takes a copy of the database and a network request and returns a new copy of the database and a network response. And the beautify is that if you write it right, in a lazily-evaluated functional programming language, you don't even conceptually need a database; you just store all the transactions. Oh my word. This is what I want. Frick. Cache invalidation, which used to be a hard problem, because literally so trivial, because the entire application is the composition of pure functions.
Link 5:00 p.m. Sep 26, 2022, UTC-4

If I ever mock people for binge-watching television, remind me that I will sit down and read a book for 6+ hours.
Link 4:45 p.m. Sep 26, 2022, UTC-4

If I could change one thing about JS I would make it throw key-errors when doing lookups on objects instead of returning undefined.
People complain about the fact that all values in JS are null-able, but that doesn't bother me that much. It's not a strictly typed language, I want to be able to assign any data to any variable at any time. But it's really weird and not-obvious to me that `({}).key` should return `undefined`, I think it should error. This is what Python does, and if you want to optionally get an item from a dict, you can either check for presence beforehand, catch the KeyError, or use `.get("key", "default value")`. I think the three of those are more than flexible enough, and more explicit and readable. In my experience, I hit a lot of errors as a result of assuming a key exists, and it would be easier to locate and fix these errors if it failed-fast, and errored at the source, instead of propagating into an error later.
Link 1:52 p.m. Sep 26, 2022, UTC-4

Novelty now!
Link 11:01 a.m. Sep 26, 2022, UTC-4

Uhhg. My sites are just such a mess.
I’m trying to remember how the Gemini version of MatthiasPortzel.com works. I think what I need to do is re-write it to be static like the HTTP version, then I can throw out Astronomical Theater. But I would still have to hack together static file support in Jetforce. This might be the sunk cost fallacy, but I just can’t see how it’s easier to reconfigure everything with a different Gemini server than it is to fix astronomical theater, which already does everything that I want, at least in theory. Especially since I have such esoteric requirements.
Link 12:09 p.m. Sep 25, 2022, UTC-4

I love Couriway so much. Thank you so much for coming back to give us an update, the hero we need but don't deserve.
Link 9:41 p.m. Sep 24, 2022, UTC-4

Some more great artists that have come up on my Coast Modern station include Sir Sly, Frank Ocean, Grouplove, COIN
Link 5:06 p.m. Sep 24, 2022, UTC-4

Don’t let me forget to read the fifth Ink and Bone book.
Link 4:34 p.m. Sep 24, 2022, UTC-4

It's literally just a known Node.JS bug, and they just closed it because "[virtual memory] is not a limited resource."
'Number of pages to allocate' is an unsigned int and it underflows and no one cares. https://github.com/nodejs/node/issues/37314 I'm crying.
Link 8:56 a.m. Sep 24, 2022, UTC-4

I've had a breakthrough! There is not a memory leak. Rather, starting astronomical theater just takes 11GB of RAM.
After 0 requests it takes 10.8 GB, while constantly serving requests (while true; … openssl s_client … done) it sits at 11.1GB, and afterwards, it stays at 11.1GB. And! This is on a different computer, still Linux, but with node.js 18. Also, in case it wasn't clear, this computer also doesn't have 11GB of RAM, and the OS is just overpromising.
Link 8:25 a.m. Sep 24, 2022, UTC-4

I think I'm dealing with four distinct bugs.
* Sometimes (~1/10) Lagrange will fail to open Thoughts. I think this is a problem with Lagrange, but it's also totally possible that Astronomical Theater is failing to send a TLS close or something. Update: yeah this is happening even with `openssl s_client`, it's definitely a problem with my code. Update: When this happens, Jetforce gets the request and I'm pretty sure it sends back a response. * Node.js appears to be leaking memory; as astronomical theater is currently at 12 GB of RAM. This is the one that interests me, that I wanted to debug, but I keep distracted by these other problems. Update: It's just a know Node.JS bug that it takes 11GB virtual memory to import a common-js dependency. * I can't get openssl 1.1.1f to print the content of a Gemini page. `echo 'gemini://matthiasportzel.com/\r' | openssl s_client -connect 'matthiasportzel.com:1965' -servername 'matthiasportzel.com' -ign_eof` works if openssl is Openssl 3 or Openssl 1.1.1q or LibreSSL 2.8.3, but it doesn't work with the Openssl version on Luther. * Astronomical Theater's reverse proxying is dropping or screwing with query parameters, or Jetforce for some reason doesn't reply if you make a proxy request with query params. Update: Jetforce seems to be behaving as expected. Update: I've fixed the issue where AstT wasn't passing through query params. The 1st issue is happening a lot more though, when navigating between these pages. It's happening in amfora too, not just Lagrange. Uhhhgg.
Link 7:44 a.m. Sep 24, 2022, UTC-4

This old version of openssl just hates me. It's clearly doing something differently, it's not just a settings issue, I don't think.
Edit (:43) it's not even letting me fetch content from other gemini servers.
Link 10:33 p.m. Sep 23, 2022, UTC-4

I'm not going to give up on astronomical theater.
I'm claiming to be betting on JavaScript and Gemini, and I'm willing to put code behind that.
Link 9:56 p.m. Sep 23, 2022, UTC-4

It’s really breathtaking to realize that computer science as an industry is founded on rules that we came up with.
Link 5:16 p.m. Sep 23, 2022, UTC-4

It's like, I don't think anyone would have a problem with there being a function to convert an object to a JSON string and another function
to convert an object to do JSON serialization but return the object hash before stringification. The problem, where I have a problem, is that one of them is called `.to_json` and the other is called `.as_json`. Yeah.
Link 4:09 p.m. Sep 23, 2022, UTC-4

Recommendations today are serving me Hippo Campus, Mt. Joy, courtship., DREAMERS; I'm chillin.
Link 4:06 p.m. Sep 23, 2022, UTC-4

Guy
Link 1:19 p.m. Sep 23, 2022, UTC-4

The World is a Midnight Heart
Link 1:01 p.m. Sep 23, 2022, UTC-4

Ugghh, thinking about the possibility of making my own music player was a mistake.
I want the ability to block songs. Like there are some songs that I just don't like.
Link 10:48 a.m. Sep 23, 2022, UTC-4

Something
Link 10:37 a.m. Sep 23, 2022, UTC-4

Good morning.
> Be me > wake up > go to work > create merge conflicts > resolve merge conflicts incorrectly > open PR to merge two branches > don't actually write any code > no one notices > 1000s of commits attributed to me > they're all merge commits > go home > best employee
Link 9:45 a.m. Sep 23, 2022, UTC-4

"It's just code."
Link 3:07 p.m. Sep 22, 2022, UTC-4

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.
Link 2:06 p.m. Sep 22, 2022, UTC-4

"One of them seemed to say he felt like an armadillo."
Link 1:38 p.m. Sep 22, 2022, UTC-4

My headache is back today. I think it's brought on by prolonged exposure to React.
Link 1:38 p.m. Sep 22, 2022, UTC-4

Have you ever been to heaven?
Link 1:37 p.m. Sep 22, 2022, UTC-4

I’m starting to slip, I can feel it.
Link 8:12 a.m. Sep 22, 2022, UTC-4

I might pull the plug on the Gemini version of Thoughts and switch matthiasportzel.com over to static content served with agate.
I hate to be like, 'this is too hard,' especially when the design and the technical engineering are done. Like I know what everything needs to do. But it looks like making everything work is going to be another several hours, for little payoff. It doesn't help that * maintaining the Gemini version of the site slows down development, making it harder to iterate fun ideas, like changing the pagination system or importing tweets * the Gemini version of the site is a different experience. It's better in some ways (I still love Gemini more than the web), but it doesn't (and will never) have the colors or the ability to link to Thoughts I don't know, I really like the Gemini version of the site, it's something that I think it cool that I want to exist. But I don't use it, no one else uses it, and it's essentially another whole site for me to maintain. Especially since I'm writing some of the intermediary layers like astronomical theater.
Link 11:55 p.m. Sep 21, 2022, UTC-4

Yeah the certificate I'm using isn't technically right. And this gets into subjective stuff I think. I'm using an expired certificate for
thoughts.learnerpages.com, which I should be using a self-signed certificate for localhost. And again, they're equally secure but openssl is aborting because the cert is expired.
Link 11:39 p.m. Sep 21, 2022, UTC-4

Okay so I opened up port 1973 on Luther. My computer can make a Gemini request to Jetforce on that port. So I'm guess the problem is with
openssl as I'm using it on Luther. My Mac has LibreSSL 2.8.3, and the server has Openssl 1.1.1f.
Link 11:36 p.m. Sep 21, 2022, UTC-4

I don't know how to communicate how hard it is for me to maintain this website. Like. Maybe I'm just an idiot. but like.
I removed the rss page but didn't remove the `link` tag pointing to it, so Google is emailing me about how I have broken links on my site. The rest of my problems are with the gemini version of the site, so I guess producing Gemini content is too hard, sorry. Maybe they should have made the protocol simpler. I suspect there's a memory leak in nodeJS around pipelines, I'm trying to look into it. I had to fix the Astronomical theater reverse proxy to pass query parameters. Jetforce in prod isn't responding to queries when I make them from the command line in prod. It's working because astronomical theater can find it to make queries against it. And the command that I'm using is right because it works locally. I just. Like. I don't know what to tell you, computers are too hard.
Link 11:32 p.m. Sep 21, 2022, UTC-4

Forcing myself to eat food like this is some sort of game. (I’ve been asleep for the past two hours.)
Link 9:14 p.m. Sep 21, 2022, UTC-4

Headache
Link 6:38 p.m. Sep 21, 2022, UTC-4

"The future looks real good but I just can't seem to stay awake."
-Levitate, Capital Cities Edited to fix the quote and attribute
Link 3:16 p.m. Sep 21, 2022, UTC-4

I'm so lonely. And I feel like I'm not enough.
Link 8:42 a.m. Sep 21, 2022, UTC-4

"But I gotta go so much bigger, so they can never shut me down"
-Next Up Forever, AJR
Link 8:32 a.m. Sep 21, 2022, UTC-4

Writing this down here so I have it: 64+24 diamonds in 100ish minutes
Link 9:37 p.m. Sep 20, 2022, UTC-4

Redditors explaining how high rent prices in the city is LGBTQ discrimination because people in rural areas are homophobic.
Link 4:28 p.m. Sep 20, 2022, UTC-4

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.
Link 1:45 p.m. Sep 20, 2022, UTC-4

I guess the React way of solving the item-deleting or resetable-counter challenges is by saying "the parent can't declaratively effect the
state of the child, period." If the parent needs to even "hint" at the state, then it needs to control the state, and you should lift state up. And furthermore, component organization is for grouping state and rendering, not for logic organization. If you have logic that needs to be shared, you should refactor it into a hook that can be shared. This is annoying because it splits what feels like a parent and a child component into a component ("Counter"), a component ("CounterButton"), a component ("ResetableCounter"), and a hook ("useCounter"). That is, you re-use logic through hooks, and you re-use rendering through state-less components, and there's not a good way to re-use logic and rendering at the same time (without also re-using state). Just to reiterate, I wish there was a way to re-use rendering and logic at the same time, while delegating control of state to the parent.
Link 1:05 p.m. Sep 20, 2022, UTC-4

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.
Link 12:48 p.m. Sep 20, 2022, UTC-4

Forgot how red this was, wow!
Link 7:58 a.m. Sep 20, 2022, UTC-4

Yeah so with Cloudflare Warp on Youtube can't load ads, it's weird.
Link 10:37 p.m. Sep 19, 2022, UTC-4

Thinking about how often I was lied to as a child and it makes me want to cry.
Lying, in my mind, is the ultimate betrayal of trust, because it shows that you have no respect for me and see me as just an object to be manipulated. This is about magicians who would say "magic" when I asked them how they did a trick. Even as a kid, I knew what it felt like to know someone that someone else didn't. That feeling of power and superiority. And it's humbling to explain it to someone else. So when I magician refuses to reveal their tricks I don't think think "oh it must actually be magic," I think, "this person values their own ego over any respect they have for me," and I pretty much instantly lose any respect I had for that person; as well as "willing to deceive others for their own reputation." And like, I've talked about the magic thing before. I like magic, I like magicians. It's the afterwords; after the show, in the comment section. Are you trying to ride the high of knowing something other people don't for as long as possible, or are you willing to admit how it was done. The magic looks cool whether you know how it was done or not. I can't put it into words well, but the dismissiveness just comes off as super disrespectful to the audience sometimes. Like if I respectfully ask a random person on the street a question that they can answer (what time is it? where'd you get that coat?), they'll answer me respectfully. To say, "you don't deserve to know how I did it," is treating me as less that a stranger, as an adversary. I feel like I'm in an adversarial position trying to uncover a big secret, and my point is it doesn't have to be that way. I meant the question very respectfully, even as a kid asking magicians. Asking a question of someone is humbling and shows you respect them. Magicians act and feel like it's a cold war or something, and I really think that that is the fault of the magicians and not the audience. Audiences are perfectly willing to suspend disbelief for every other fiction medium. I still haven't forgiven Rick Riordan for writing in the introduction of the first Percy Jackson book that the book was definitely true. Like do you think I'm idiot? Do you think I'm 4? No, I think you're lying to me because you're insecure about the fact that you're writing fiction. In a moment of brutal self-reflection, I realize that part of the reason this upsets me is because I want magic to be real and I want to be able to trust someone if they told me magic was real. Anyways, this post wasn't supposed to be about magicians or about Rick Riordan; it was supposed to be about how I take lying a lot more seriously than most people. But I think I made that point. Anyways, this is why I don't trust anyone and why I don't have any close friends.
Link 9:52 p.m. Sep 19, 2022, UTC-4

I miss the park bench. It gave Tom an opportunity to talk about his medium (some that he's very good about doing) in an informal setting.
Link 6:19 p.m. Sep 19, 2022, UTC-4

Will probably bring the light theme back to American Animals this evening. It's fall, it doesn't feel right having a blue website.
Link 4:24 p.m. Sep 19, 2022, UTC-4

Have I posted my Thought about how I can't stand singer-song-writer songs?
Link 11:54 a.m. Sep 19, 2022, UTC-4

Bumper sticker that says “I don’t speed on Sundays”
Link 1:08 p.m. Sep 18, 2022, UTC-4

Maybe I should have switched to Jinja from Django's templating system, instead of caching things. It sounds more performant.
Link 9:46 a.m. Sep 18, 2022, UTC-4

I think the key is that there's a night and day difference between doing something in your spare time and doing something 40 hours a week.
Link 5:31 p.m. Sep 17, 2022, UTC-4

Making sure to use period-accurate typography for my T. J. Eckleburg fan-art.
Link 3:37 p.m. Sep 17, 2022, UTC-4

Okay, this is actually a lot better. Safari is slower with the dev-tools open. So I've closed them now and I think the couple hundred ms
time to first byte is fine.
Link 2:32 p.m. Sep 17, 2022, UTC-4

I think I'm being unreasonable, just because my criteria are things that I've made up. Like I want to do stuff on the server-side, which
makes caching hard (I can't have a totally static site on Cloudflare Pages). But that's just because I decided I wanted to limit my JS usage as much as possible.
Link 2:29 p.m. Sep 17, 2022, UTC-4

I'm honestly so upset right now that I can't make this website faster. I mean I'm not that upset. But I'm definitely not happy or satisfied.
If it were network latency, I'd be like, sure, what are you going to do. But it's not it's fricking processing time. For a website that is basically static.
Link 2:23 p.m. Sep 17, 2022, UTC-4

It takes just over a second to load Winter 2021. For a sane person that would be perfectly fine, but I'm not sane and that's not fast enough
Caching the HTML content from every thought instead of rendering them on-demand lets us save close to 400ms. I've been working on getting this working for the last 7 hours. It's still not fast enough for me, but I think this is close to the max I can get out of Django. Might need to re-write this as a static site at some point.
Link 2:11 p.m. Sep 17, 2022, UTC-4

The rhetoric here is incredible. This is what it's about.
It has a Dr. Seuss like cadence, at least the way I read it.
Transcript
But above the grey land and the spasms of bleak dust which drift endlessly over it, you perceive, after a moment, the eyes of Doctor T. J. Eckleburg. The eyes of Doctor T. J. Eckleburg are blue and gigantic—their retinas are one yard high. They look out of no face, but, instead, from a pair of enormous yellow spectacles which pass over a nonexistent nose. Evidently some wild wag of an oculist set them there to fatten his practice in the borough of Queens, and then sank down himself into eternal blindness, or forgot them and moved away. But his eyes, dimmed a little by many paintless days, under sun and rain, brood on over the solemn dumping ground.
Link 11:56 a.m. Sep 17, 2022, UTC-4

Thinking about the Count of Monte Cristo again.
There's just so much that happens in the book! Like we see Villefort, but then we also see his wife and daughter and baby and father and grandfather and it's incredible.
Link 11:50 a.m. Sep 17, 2022, UTC-4

I think it's more important to have a descriptive commit message than one that's less than 50 characters.
You just can't describe a commit in 50 characters in a complex project.
Link 4:00 p.m. Sep 16, 2022, UTC-4

Normal Vivaldi crash :/
Link 10:25 a.m. Sep 16, 2022, UTC-4

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?
Link 6:05 p.m. Sep 15, 2022, UTC-4

One of the things that I really liked about *The Edge Chronicles* was that it did both small scale and large scale worldbuilding.
Link 5:39 p.m. Sep 15, 2022, UTC-4

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.
Link 2:26 p.m. Sep 15, 2022, UTC-4

The ignore cache button in the Safari dev tools just doesn't work? Maybe this is what I was referring to when I said the Safari dev tools
were bad a little while ago. Going to try Safari Tech Preview, will update you. Also doesn't work in STP. I'm wondering if I'm misunderstanding it when it says "resource was served from memory cache" or else "Disable Cache" with a checkmark. Edit 5:41: Coming back to follow up: I think there was something else going on because I was getting data I thought was stale in three different browsers.
Link 1:43 p.m. Sep 15, 2022, UTC-4

In Matthias's JS style-guide, you only use arrow functions for pure functions that are a single expression. No side-effects and no brackets.
Link 12:34 p.m. Sep 15, 2022, UTC-4

React organizational question. You have a list of items and you delete one. You make a fetch request to delete it, easy. You could do a
client-side delete, and drop an item from the list. But this is weird if the list is paginated. As long as you weren't looking at all the items to start with, deleting one shouldn't decrease the number you're looking at, you should fetch a replacement item from the database. How do you do this? I think you might just end up needing to create a boolean variable "needsReset" that is set to true and then you can monitor when it changes with an effect. This has a lot of parallels to the The Resetable Counter Challenge => https://ourjseditor.com/program/B9YlIe
Link 11:42 a.m. Sep 15, 2022, UTC-4

Bruh Lapce added the farlands lolol => https://github.com/lapce/lapce/issues/175
Link 7:35 a.m. Sep 15, 2022, UTC-4

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.
Link 7:31 a.m. Sep 15, 2022, UTC-4

Lapce (new text editor) has so many features and is so unpolished it's impressive.
It's a Xi front-end, which I'm a huge fan of. I'm thinking it might be worth me forking it and literally just fixing bugs in it for the rest of my life and using it as a primary editor. Because all the hard stuff is done. There's a language server client implementation and tree-sitter syntax highlighting all these languages, it's just like missing half the keyboard shortcuts that I expect. But there's a panel for customizing keyboard shortcuts.
Link 10:15 p.m. Sep 14, 2022, UTC-4

Entering my cursed JS era.
Edit (:53): ``` window.fetch = (function () { const oldFetch = fetch; return function (...args) { let hasThen = false; const p = oldFetch(...args).then(function (res) { if (!hasThen) { console.log(res); } return res; }); p.then = function (...args) { hasThen = true; return Promise.prototype.then.apply(p, args); }; return p; }; })(); ```
Link 4:42 p.m. Sep 14, 2022, UTC-4

Decided I'm going to start wearing glasses as a fashion statement.
Link 3:47 p.m. Sep 14, 2022, UTC-4

The central paradox of the internet is that it's possible for you to have your own space, but it fundamentally relies on lots of
infrastructure created and controlled by other people.
Link 12:39 p.m. Sep 14, 2022, UTC-4

Fusion power in 2038, my long-term prediction.
Link 9:46 a.m. Sep 14, 2022, UTC-4

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...
Link 9:12 a.m. Sep 14, 2022, UTC-4

Vivaldi is a pathway to many abilities considered unnatural.
Link 9:09 a.m. Sep 14, 2022, UTC-4

The thing that's so weird to me about "communist takes" is that a lot of them follow a pattern of "humans are bad because of capitalism."
I guess I just don't follow? They like simultaneously want to blame human nature and capitalism, and maybe they just need to use more words, but human nature wasn't created by capitalism. This is similar to the 'capitalism is responsible for computers (and that's a bad thing)' that I've posted here before. This Thought brought to you by, "[people] want to use and abuse everyone around them…It's a side-effect of having built a society around the idea that money is literally more important than anything else (including even life itself)." Like. Okay. It's just, I would totally agree with "capitalism encourages people to hurt others in order to increase their own wealth." Or "capitalism rewards being greedy." But I honestly can't tell if these people would agree with that, or if they're arguing something more fundamental about how human nature is fundamentally corrupted by being in the presence of dollar bills. When you say you're glad that humans are in the process of wiping ourselves out, is that tongue-in-cheek, or do you actually believe that humans are inherently a stain upon nature, and that the most ethical way forward would be expediting a mass suicide? If you'll allow me to meta-pivot for a moment, In real life I wouldn't ask these kinds of questions. I would file away "is communist" in my mental notes on the person talking, and find a prompt that would turn the conversation in a more pleasant tone. But on the internet, I'm frankly not interested in the individual person. I'm here (on Hacker News) to stimulate my mind by engaging it with new perspectives or arguments that I wouldn't have come up with alone. To that extent, I want to engage solely the argument, in isolation from the author. I've said before that I'm frustrated by takes that I don't understand, and I think that's part of it. But I'm also frustrated by takes that aren't purely logical, because I can't engage them without understanding the person.
Link 10:11 p.m. Sep 13, 2022, UTC-4

All I want in life is for Blaseball to return.
Link 9:04 p.m. Sep 13, 2022, UTC-4

I have decided I have a tumor in my throat.
This is going to be a fun arc.
Link 3:10 p.m. Sep 13, 2022, UTC-4

I don't know if I have dandruff or if there's stuff falling out of my hair because I'm pulling my hair out with my head in my hands.
Link 2:27 p.m. Sep 13, 2022, UTC-4

I need to remember that there's no speed limit, sometimes.
Link 2:07 p.m. Sep 13, 2022, UTC-4

Anyways I started this trilogy last Wednesday (I think) and I finished it today.
Link 1:36 p.m. Sep 13, 2022, UTC-4

Screaming and crying inside.
This is about a book don't worry
Link 12:59 p.m. Sep 13, 2022, UTC-4

blub blub blub blub blub blub pfftttft meow mooooo
Link 11:12 a.m. Sep 13, 2022, UTC-4

Ode to the Bridge Builder: Nostalgia for the Wind
For the bridge builder, oh, to the creation of new things connections, stability architecture and art. The fierce orange winds of the autumns of my childhood, an all encompassing experience, warm gusts passing my body, to be swallowed by the air. The warm sand on the beach beneath me, the hot sun, radiating, and the cool, salty, air sweeping me along.
Link 9:34 a.m. Sep 13, 2022, UTC-4

Recently, like in the last couple of months (since living in DC) I’ve noticed myself get shivery when reading. It’s weird.
Link 9:59 p.m. Sep 12, 2022, UTC-4

I have a love hate relationship with Ruby, because it's flexible enough that you can create a method on a single instance of a class, but I
hate that it's object oriented and that's a meaningful distinction.
Link 5:12 p.m. Sep 12, 2022, UTC-4

The problem with hook-based React is that it forces you to enumerate your stateful dependencies and side-effects. This sounds fine, but it's
very hard to write because there are a lot of things that technically are non-pure but that you don't think of that way. It doesn't seems like you should need to list the current time or the network state, but if that's the dependency, then you need to. If you can rewire your brain to recognize those as dependencies, okay. But if you can't, then you end up abusing state and dependency arrays in order to hack your way to equivalent code.
Link 3:58 p.m. Sep 12, 2022, UTC-4

This is too controversial for a HN comment, but my two-sentence thoughts on Ladybird:
If they're trying to hit the sweet-spot where they've done 20% of the work and 80% of websites work, they're already there. If they're trying to compete with Chromium, well, not even Firefox or Safari can do that.
Link 12:52 p.m. Sep 12, 2022, UTC-4

There's nothing to write poetry about.
Link 9:00 p.m. Sep 11, 2022, UTC-4

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.
Link 8:59 p.m. Sep 11, 2022, UTC-4

I just, I suck at using the computer. I'm awful at it. I can't make a good website, I can't make a mobile app, I can't play Minecraft. And
like, this is what I do. The thing that I'm best at is programming and I'm bad at it.
Link 8:46 p.m. Sep 11, 2022, UTC-4

Kinda a rough night.
Link 8:43 p.m. Sep 11, 2022, UTC-4

Fell into the void trying to find an elytra and lost my good gear. I hate this game. I've been looking for an elytra for hours.
Link 8:32 p.m. Sep 11, 2022, UTC-4

Honestly working with SwiftUI is so painful. Apple's docs are so bad.
Link 6:54 p.m. Sep 11, 2022, UTC-4

Just for the record I don't like Twitch emotes. I would like Twitch so much more if it didn't have emotes.
Link 5:37 p.m. Sep 11, 2022, UTC-4

I am tired sleepy
Link 11:08 a.m. Sep 11, 2022, UTC-4

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).
Link 8:14 a.m. Sep 11, 2022, UTC-4

The funny thing about Rails is that when I go back to Django I miss the little things.
Like to get a object by ID from the DB in a shell, Rails: ``` $ rails c > Thing.find(1) ``` Django ``` $./manage.py shell >>> from app.models import Thing >>> Thing.objects.get(id=1) ``` Like, why doesn't Django import my models for me?
Link 9:53 p.m. Sep 10, 2022, UTC-4

The thing I love about "The Magician Poem" is that it exemplifies the fact that I have no idea what I'm doing. I absolutely love something
about its cadence, but I couldn't tell you want that is. I can't write more like that, the poem just came to me. Like it's not even a poem, it's bloody prose, and yet it triggers every part of my brain that is triggered when I'm reading poetry.
Transcript
I once saw a man do a magic trick Misdirection, he didn't say He did nothing with one hand that looked flashy While with his other, he suffered So too, these words.
Link 9:16 p.m. Sep 10, 2022, UTC-4

Happy Tuesday.
Link 12:12 p.m. Sep 10, 2022, UTC-4

It took me like half an hour to figure how to install Turbo on a page, but once I did, it just worked, which is pretty cool.
To get to the point where you can copy a script tag into the top of the page, you have to go hotwired.dev > Turbo > Installation > skypack link which returns a JS file* > copy and paste a link out of the comments at the top of the JS file > the actual fricking installation instructions. * You can just include this JS file, *if* you specify `type=module` on it. That isn't documented anywhere, which is my main complaint.
Link 7:23 a.m. Sep 10, 2022, UTC-4

I am once again trying to turn off IntelliJ's rainbow tag highlighting.
For future reference, the setting is called "HTML/XML tree tag highlighting" s/IntelliJ/RubyMine/, same idea A screenshot of RubyMine showing some JSX and the tags are highlighted in the colors of the rainbow and there are corresponding rainbow colors in the editor gutter.
Link 3:54 p.m. Sep 09, 2022, UTC-4

Still not over Stop ERA.
Link 3:29 p.m. Sep 09, 2022, UTC-4

Somehow this is the first time I'm reading #842 and it's beautiful.
Link 12:49 p.m. Sep 09, 2022, UTC-4

"All computers are just carefully organized sand. Everything is hard until someone makes it easy."
Link 12:36 p.m. Sep 09, 2022, UTC-4

Humanity could do a better job operating on a multi-generational scale.
Link 12:33 p.m. Sep 09, 2022, UTC-4

Uninstalling Firefox because they're too busy to update the icon to be a square, like every other app in my dock.
Link 11:39 a.m. Sep 09, 2022, UTC-4

There's a conflation between "modern" and "popular." People tend to say "modern JS" when they mean "popular JS."
Link 10:29 a.m. Sep 09, 2022, UTC-4

`git ls-files` is scarily fast.
Link 9:53 a.m. Sep 09, 2022, UTC-4

Mmmm, Youngblood Hawk, "In Our Blood"
Link 2:53 p.m. Sep 08, 2022, UTC-4

Honestly I don't know how JS screwed up generators so badly.
Link 10:00 a.m. Sep 08, 2022, UTC-4

Stackoverflow is so fricking brutal. You can misunderstand something, get flagged out of existence, ask a genuine question on StackOverflow
Meta about how to improve your behavior, and get downvoted to -5 with no reply.
Link 9:37 a.m. Sep 08, 2022, UTC-4

You really have to want it, I think.
Link 8:52 a.m. Sep 08, 2022, UTC-4

I’m still constantly mind blown by the fact that light and radio waves are the same thing.
Link 7:56 p.m. Sep 07, 2022, UTC-4

Working on a theory that I have OCD. That my obsession with perfection isn't normal.
Link 7:55 p.m. Sep 07, 2022, UTC-4

One of the ways that I cope with my perfectionism is by being aggressively respectful of your territory.
Link 4:39 p.m. Sep 07, 2022, UTC-4

I wonder if positional function arguments is just an anti-pattern.
Oh my word oh my word: a functional language without positional function arguments. Because really that's what rubs me the wrong way in Lisps and Haskell, more than anything. And it lets you do magical things with currying; it makes currying even more powerful.
Link 4:17 p.m. Sep 07, 2022, UTC-4

Shoot, I think I need to invent a word. "Idea" just isn't going to cut it.
Link 4:08 p.m. Sep 07, 2022, UTC-4

Vivaldi can pull the theme color from the website into the browser to use as an accent color. Now, on this website I haven't set the meta
tag that specifies theme, so Vivaldi has to guess. It does that by taking all of the colors in the favicon and mixing them together like a small child mixing paints. Imagine yourself as that small child. You take the beige that underlines the T, and mix in some of the background green, but the result is an ugly greenish-brown. What else did you expect from mixing green and brown? You try to salvage it by including some of the barely-not-white from the T itself. But it's too late; there's nothing to be done but throw it all over the browser window anyways. Vivaldi, being a computer program, lacks even the artistic sense of a small child, and so it feels no shame in framing my website with this disgusting color. Edit (3:58): reworded to be more rhetorically enjoyable
Link 3:27 p.m. Sep 07, 2022, UTC-4

I'm still alive.
I know we're all more concerned about whether or not Alex is still alive, and not necessarily whether or not I'm alive, but I thought I'd update you anyways, just in case.
Link 3:15 p.m. Sep 07, 2022, UTC-4

One of the beautiful things to me about modern, abstract, or surrealist art is that it creates an in-group just by virtue of who is willing
to embrace it.
Link 11:08 p.m. Sep 05, 2022, UTC-4

It's just so f-ing depressing to me that we're never going to fix these bugs. Like this generation is going to grow up with the expectation
that bugs are bugs are just a normal, expected, part of using a computer. And the status-quo is never going to change. Computers aren't the real world. We can do better. We can be better. Software doesn't have to have bugs, we just need to invest more resources into fixing them.
Link 12:04 p.m. Sep 05, 2022, UTC-4

Most of the time the computer wins, actually.
Link 11:53 a.m. Sep 05, 2022, UTC-4

7 minutes shaved off of the AA WR! New world record holder is (checks notes) still Feinberg.
Link 10:28 a.m. Sep 05, 2022, UTC-4

Receiving gifts is just really stressful for me because it feels so performative. Like it seems like you're giving me the gift, and in
response I'm supposed to do a little a dance, smiling and thanking you for it, regardless of how much I actually want it. I know this is just like, "being polite," but I don't like it.
Link 10:58 p.m. Sep 04, 2022, UTC-4

I wish I were an artist. I wish I could create beauty.
Link 10:17 p.m. Sep 04, 2022, UTC-4

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.
Link 7:46 p.m. Sep 04, 2022, UTC-4

Transcript
"This is how they destroy countercultures: they tried arresting hippies and noticed it didn't work. What did work was stripping the movement of all values, making it fit corporate beauty standards and selling its empty, powdered husk of a corpse to the masses until it means absolutely nothing. They did it with the hippies, they did it with punk, they did it with grunge and they'll do it with any new subculture that dares challenge and oppose capitalism."
Link 3:13 p.m. Sep 04, 2022, UTC-4

"At the day of judgment, the men of Nineveh will stand and condemn this generation, because they repented at only the sign of Jonah, and
something greater than Jonah is here." -Matthew 12:41
Link 12:08 p.m. Sep 04, 2022, UTC-4

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.
Link 10:03 a.m. Sep 04, 2022, UTC-4

It's funny to me the differences in what's allowed in different speed games. Like minecraft speedrunning just like, allows segmenting and
some mods.
Link 7:36 a.m. Sep 04, 2022, UTC-4

Do laundry on Saturday challenge (impossible)
Link 7:23 p.m. Sep 03, 2022, UTC-4

aaaha crippling social anxiety
There are problems that I can't solve alone, that I'm afraid to mention to other people. And I just write off solving them, which is really frustrating. I don't want to be a complainer, I don't want to cause problems. But I notice things that are wrong that no one else seems to notice or care about and I like are we just all ignoring this? elephant in the room, the sentry docs install instructions don't make any sense. And I point that out and get gaslit into thinking that they do work. The lightbulb in my room burned out and I hate talking to people and that's not really a problem I can solve without talking to people. But moreover, it's my problem, I can just live with less light in my room. No one else is bothered by that, but if I mentioned it to them I would be complaining, right, I would be making it their problem. And I don't want to do that. I want to curl up into a little ball and not exist.
Link 10:01 a.m. Sep 03, 2022, UTC-4

Matthias's first rule of Reddit: unless a given subreddit has rules that disallow posting political screenshots, it will eventually be
overtaken by screenshots of political tweets. I do not understand why in 2022 you can get thousands of upvotes for posting a screenshot of a tweet insulting Trump on a tangentially related subreddit. It's just a force of nature. Redditors just can't help themselves.
Link 9:22 a.m. Sep 03, 2022, UTC-4

“You’re acting like I’m an anarco-libertarian and I’m not”
Link 6:46 p.m. Sep 02, 2022, UTC-4

This website is actually a fidget toy. Typing here gives my fingers something to do doadoawdmkmad klmawd kmkmak mwkamw dmawdlmlkamsn otitnh
kmaksdkma klmwdcna and sle
Link 4:25 p.m. Sep 02, 2022, UTC-4

Link 4:02 p.m. Sep 02, 2022, UTC-4

It just drives me insane knowing that I'm an irrational, illogical person. Because I'm doing things that are dumb because I can't come up with a better alternative.
Link 3:33 p.m. Sep 02, 2022, UTC-4

I think I stopped asking questions because people stopped being able to answer them.
Link 12:43 p.m. Sep 02, 2022, UTC-4

Why doesn't Google make a web framework?
Link 10:00 a.m. Sep 02, 2022, UTC-4

The hotwired.dev paradigm has the potential to be the future of the web.
Unfortunately DHH's mastery of the long-form essay isn't appreciated by today's JavaScript developers. The difference between the Next.js docs and the Turbo documentation is shocking, especially when you consider that Turbo is much simpler than Next.js.
Link 9:44 a.m. Sep 02, 2022, UTC-4

I love that I can be like “when I worked as an ASP.NET developer four years ago…”
Edit: it was four years ago, not ten
Link 7:36 a.m. Sep 02, 2022, UTC-4

I think I can save 500ms off of page load time for seasons with a lot of thoughts (i.e. not this season yet) by adding a Redis cache.
Link 5:03 p.m. Sep 01, 2022, UTC-4

https://www.matthiasportzel.com doesn't serve the correct cert, I hate this.
Link 3:32 p.m. Sep 01, 2022, UTC-4

I am addicted to my phone. I need to check Twitter and I can't and it's killing me.
Link 3:27 p.m. Sep 01, 2022, UTC-4

"Hey Mami" is such a Sylvan Esso sound. I don't know anyone else with that sound.
Link 2:38 p.m. Sep 01, 2022, UTC-4

Good afternoon.
Link 1:05 p.m. Sep 01, 2022, UTC-4

Oh it's fall. Happy fall.
Meteorological seasons make so much more sense than actual seasons.
Link 9:05 a.m. Sep 01, 2022, UTC-4

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.
Link 7:51 a.m. Sep 01, 2022, UTC-4