I think anything close to this much economic power should be controlled and allocated democratically. Would that be so hard?
I think anything close to this much economic power should be controlled and allocated democratically. Would that be so hard?
I think about this Tony Benn speech much more than I used to
Me automating: Haha fuck yeah!!! Yes!!
Me being automated: Well this fucking sucks. What the fuck.
This story of our local bookshop is a poignant portrait of our times. It rightly centers the previous owner, the workers, the patrons, and the ray of hope from the new owner.
denverite.com/2026/01/28/d...
People paint them, itβs amazing.
Tag yourself:
jp.pinterest.com/pin/49764782...
I donβt have it to hand (itβs an old picture) but if you dig a bit for Dreyfusβs early explorations of Kierkegaard youβll find references to The Present Age. Iβd start here goldberg.berkeley.edu/lecs/kierkeg...
Ugh 2001, sorry!
Excerpt from On The Internet by Hubert Dreyfus. Key paragraph reads: βBut the vision of a worldwide electronic agora precisely misses the Kierkegaardian point that the people talking to each other in the Athenian agora were members of a direct democracy who were directly affected by the issues they were discussing, and, most importantly, the point of the discussion was for them to take the responsibility and risk of voting publicly on the questions they were debating. For Kierkegaard, a worldwide electronic agora is an oxymoron. The Athenian agora is precisely the opposite of the public sphere, where anonymous electronic kibitzers from all over the world, who risk nothing, come together to announce and defend their opinions. As an extension to the deracinated public sphere, the electronic agora is a grave danger to real political community. Kierkegaard enables us to see that the problem is not that Rheingold's 'electronic agora' is too utopian; it is not an agora at all, but a nowhere place for anonymous nowhere people. As such, it is dangerously distopian.β
I really think Hubert Dreyfus nailed this in On The Internet (2002) and Iβll keep posting this page until everyone has seen it. Key para in alt text.
Yes!
Itβs a pretty little book too, if you have means and like Things.
Did you see the saga of her Ren Fair costume contest entry? So good.
#AdventOfCode Day 9 part 2 definitely threw me today. So much for bragging about the runtime of naive algorithms and JavaScript as βgood enoughβ. A hackish memoized somewhat brute force solution, after several attempts, finally competed in 15 minutes. Phew!
It only took 21 years for passwords to be split out of Safari as its own app, or 25 years if you see it as an offshoot of Keychain.
One optimization of note, switching to a basic PriorityQueue (sort as you build) instead of building then sorting the list by distance helped drop runtime from ~300 to ~90ms.
One thing I noticed this time: the answers worked more as "checksums" that you'd done the right calculation, rather than meaningful parts of the puzzle. Would have been nice for the answer to tie back to the question, e.g. the length of wire needed for the elves to complete the circuits?
Part 2 is my slowest performing JS code so far in this advent, running in about 300ms on my laptop. Might try to dig in and see if there are optimizations to be made... later!
An adventure in reading comprehension β I had an off-by-one error in my counts because I was counting *success* and not *attempts*.
I just completed "Playground" - Day 8 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/8
[Spoiler in thread]
While I respect everyone cranking on hyper-optimized solutions in their favorite languages, once again my naive implementation in Javascript (favoring clear syntax and convenience over any real optimizations) runs part 2 in ~4ms on my M1 Pro. Computers are fast, again!
This stumped me for a while as well - this is the correct hint!
Google sheets visualization of the log10 value of the number of tachyons at each cell of the simulation. Green = 0th percentile, yellow = 90th percentil, red = 99th percentile.
I just completed "Laboratories" - Day 7 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/7
Part 2 definitely caused a rethink - no use trying to trace everything, need to switch to a constant space algorithm. Final result is pretty!
itβs giving βHave you tried using an XML parser instead?β stackoverflow.com/posts/173245...
I just completed "Trash Compactor" - Day 6 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/6
Today's main fight was all about turning off the whitespace trim-on-save behavior in my editor. Once the input whitespace was preserved I could get parsing and transposing and evaling. Phew!
everyoneβs bsky age is 12?
Screenshot of implementation of consolidating the ranges in Advent of Code 2025, day 5, part 2. Full code follows: consolidateRanges() { for (let i = 0; i < this.freshRanges.length; i++) { for (let j = i + 1; j < this.freshRanges.length; j++) { let range = this.freshRanges[i]; let other = this.freshRanges[j]; if (range.intersects(other)) { let newRange = range.merge(other); this.freshRanges[i] = newRange; i--; // backtrack to start over with new i this.freshRanges.splice(j, 1); // throw out j break; } } } }
The whole solution for part 2 runs in ~3ms on my M1 Pro, including the time to merge ranges. With only 190 ranges, 94 after merging, why worry? ~12k comparisons. Computers are fast! #deliberatelyquadratic
Stayed as naive as possible and did an O(N^2) greedy merge of the overlapping sets. No trees or binary searches for me.