News for hackers. Stuff that matters.

wwfn

I only recently discovered \(x) like function wrapping is not required! Where magrittr::%>% uses ., base R's |> can use _, but only for named arguments

     penguins |>
      rpart::rpart(species ~ ., method = "class", data = _) |>
      rpart.plot::prp(extra = 4)
EDIT: maybe that wasn't the case in 2021 when the blog post was written
It looks like maak does not have a mechanism for specifying file dependencies (run recipe when dependent file is newer than output file). I'd love to be wrong. I try to use Makefile to document data pipelines, but it's easy for it to become spaghetti. [Edit: There's the decade-stale https://github.com/factual/drake "Drake is similar to GNU Make, but designed especially for data workflow management". I can't remember why I bounced off it.]

For command line runners like maak and just, why not use small cli scripts (`quick-math 23 42` instead of `maak quick-math 23 42`)? I think I'm missing the bigger picture.

Re:Project Xanadu: Even More Hindsight on Saturday September 05, 2026 @11:37AM (#49577567)
I read the quoted text as "Xanadu's 'transclusion' can't work in the real world because of copyright and legal issues." But neither of those are issues for popular existing technologies.

Rereading your parent comment, I'm guessing my confusion is in connecting that quote to why Xanadu fails to solve "the concrete problem" or endorsing "a solution in search of a problem"/addressing "worse is better."

My comment was intended as a +1 to @Rygian: Xanadu was prescient wrt. file management and an opportunity to push back against Freenet=CSAM

Re:Project Xanadu: Even More Hindsight on Friday September 04, 2026 @08:23AM (#49563595)
> fiercely opposed by many entities, but outright illegal.

As I understand it, this fails to advances the broader "searching for a problem" argument. And is actually addressing a problem others have tried to solve later.

re. copyright holders fierce opposition: Youtube might be a good counter to the suggested tragedy of the anticommons. And on the high seas, napster's rise and the continued success of torrents suggest legally is not a barrier to success in and of it's self. The article reasonably ties copyright to free software. opensource has done pretty well. [The article's link back to ycombinator referencing Xanadu's allergic reaction to opening the code is an interesting candidate for why we're not using the OS now. Too locked down to get the love and exposure it needed? Bonus recursive side note: "has never believed in FLOSS" links to hackernews, demonstrating both back and forward linking -- another counterpoint to the presented augments against Xanadu's impracticality ]

Its not your (quoted) claim, but it's worth being explicit. Freenet is as legal as facebook or twitter[0]. People do illegal stuff with crypography. But it's ostensibly a way to protect from authoritarian overreach. Which still seems like a problem in search of a solution.

[0]: https://freenet.org/about/faq/#is-it-legal-to-run-a-freenet-... > One example comes from U.S. law, used here for illustration rather than as a universal rule: 17 U.S.C. §512, part of the DMCA. It expressly addresses “transitory digital network communications” (automatic transmission, routing, and intermediate or transient storage) and “system caching” (certain automatic temporary storage of third-party material).

Re:A shell exclamation mark is not for yelling. Be lazy. on Wednesday August 12, 2026 @09:17AM (#49271963)
instead of !$, I use alt+. for the same reason `up` is preferable to `!!`.

!$:h is new to me. directory name of last argument is nice. I can imagine reaching for that. paired with alt-^ to replace the magic with the actual expanded text before hitting enter

Re:Hacker News but for Independent Blogs on Thursday June 18, 2026 @10:40AM (#48586149)
I think they're both "negative parallelism" constructs. Either way, neither are new.

The prose on https://mail.cyberneticforests.com/its-not-just-data-its-pos... changed how I think about it: the framework is useful for reasoning, not lazy writing. This bubbles.town submission's title could be light evidence of negative parallelism's utility. (Or, more likely, just the stochastic nature of what's popular when)

Re:Hacker News but for Independent Blogs on Wednesday June 17, 2026 @03:20PM (#48575433)
Excited to see this get traction! Federated voting and comments on top of RSS has an indie-web elegance to it.

Indulging in meta-commentary: The HN submit history for bubbles.town is interesting. Took 7 tries to reach the front page. The final viral title resembles the supposed-LLM-tell "X not Y." Coincidence or evidence that the models touch on a useful way to communicate ideas. (I only looked because I submitted the one 2 weeks ago.)

   436 points  3 days ago   Hacker News but for independent blogs
     3 points  4 days ago   Bubbles – community-ranked feed of blog posts
     3 points 13 days ago   A community-ranked feed of blog posts from curated sources
     3 points 20 days ago   Bubbles – an HN-like link aggregator for the non-tech internet
     1 point  28 days ago   Bubbles: Blog Post Discovery
     4 points 50 days ago   Bubbles
     6 points 75 days ago   Bubbles – HN-like frontpage for personal indie blogs
fediverse authenticate voting for articles in feeds enumerated on https://bubbles.town/blogs.opml

Every blog post on Bubbles gets a corresponding post on @[email protected].

Absolutely! And the list.pop version is multiple orders of magnitude slower. But I took the prompt to be asking for in-place modification of the existing list. Comprehension does not do that.
Ahh I didn't see the full original prompt -- it's overflowing into a horz scroll for me. I thought it was the "critique loop" that injected the *args requirement. I guess garbage in, garbage out. Still unfortunate example to use.
Tangential (but topical in that "The threat is comfortable drift toward not understanding what you're doing" is also on the front page):

Is the generated python code in the example wrong?

The prompt

> Develop a Python function that removes any falsey values from a list. Return the modified list without creating a new one.

Is answered with list comprehension, which makes a new list and leaves the original unmodified (never mind that the *args input necessarily can't be a modifiable list?)

   def remove_falsey_values(*args): return [val for val in args if val]
Whereas I'd expect something like

    def remove_falsey_values(l):
          for i in reversed(range(len(l))):
               if not l[i]: l.pop(i)
          # returned list is linked to input l 
          return l

    a = [1, 0, False, 'foo']
    x = remove_falsey_values(a)
    x[0] = 2
    print(a) # [2,'foo']
Re:Hoot: Scheme on WebAssembly on Saturday February 07, 2026 @08:47AM (#46923842)
Can you say more? Guile's the only scheme I've tried (attempts at packaging for Guix). Debugging has been difficult, but I figured it was me struggling with new tools and API. Does racket have better facilities for introspection or discovery at the REPL?

  * I suspect many existing and reasonable regulations do not meet that "simply caught" classification. @rconti's comment above[1] gives some examples of regulations on process that are not observed in the output (food, child labor). I'll add accounting, information control (HIPAA, CUI, etc), environmental protections.

  * Newsroom staff is incentivized to enforce the regulation. It protects their livelihood. From the article: 
  > Notably, the bill would cement some labor protections for newsroom workers 

  * Mandatory AI labeling is not impossible to enforce. At worst, it requires random audits (who was paid to write this story, do they attest to doing so). At best, it encourages preemptive provenance tracking (that could even be accessible to the news consumer! I'd like that).   
One reason for the regulation is we fear hallucinations slipping into the public record -- even if most LLM usage is useful/harmless. Legal restrictions ideally prevent this, but also give a mechanism for recourse when it does happen.

Say a news story goes off the rails and reports a police officer turned into a frog [2] or makes up some law[3]. Someone thinks that's odd and alerts whatever authority. The publisher can be investigated, reprimanded, and ideally motivated to provide better labeling or QC on their LLM usage.

[1]: https://news.ycombinator.com/item?id=46915463 [2]: https://www.wate.com/news/ai-generated-police-report-says-of... [3]: https://www.reuters.com/legal/litigation/judge-fines-lawyers...

> passing laws that only apply to people who volunteer to follow them

That's a concerning lens to view regulations. Obviously true, but for all laws. Regulations don't apply to only to what would be immediately observable offenses.

There are lots of bad actors and instances where the law is ignored because getting caught isn't likely. Those are conspiracies! They get harder to maintain with more people involved and the reason for whistle-blower protections.

VW's Dieselgate[1] comes to mind albeit via measurable discrepancy. Maybe Enron or WorldCom (via Cynthia Cooper) [2] is a better example.

[1]: https://en.wikipedia.org/wiki/Volkswagen_emissions_scandal [2]: https://en.wikipedia.org/wiki/MCI_Inc.#Accounting_scandals

That looks demonstrative! For those that don't want to click, from Aug to Feb S&P is up 10%. "Software - Applications" is down 21%.

But in this context, is Uber[9% weight, down ~4% YTD] a transportation company that roles it's own software for competitive advantage? I think other's in the composition are similar. The takeaway is maybe that the tech landscape is changing or LLMs have spooked investors and they're running without direction. But that doesn't necessarily speak to bespoke software uptake (already) cutting into profits(?) Uber would be fine in that case?

Hopefully not too offtopic: why so much boilerplate?

I see most would-be-boilerplate code refactored so the redundant bit becomes a small utility or library. But most of what I write is for research/analysis pipelines, so I'm likely missing an important insight. Like more verbose configuration over terse convention?

For code structure, snippets tempting[1] ("iff[tab]" => "if(...){...}") handles the bare conditional/loop completes in a more predictable way and offline/without a LLM eating into RAM.

[1] https://github.com/joaotavora/yasnippet; https://github.com/SirVer/ultisnips; https://code.visualstudio.com/docs/editing/userdefinedsnippe...

If looking for local email, why not a traditional client (thunderbird, claws, even outlook) or the more flexible/cli friendly maildir and notmuch? There are a bunch of front ends, including WebUIs https://notmuchmail.org/frontends/

Is what you're looking for a pretty good fit for how email was originally used? Or am missing something obvious

Re:How I archived 10 years of memories using Spotify on Sunday January 04, 2026 @07:28PM (#46493925)
do you share your top-24 anywhere?
Re:Surprisingly, Emacs on Android is pretty good on Wednesday November 26, 2025 @11:17AM (#46058976)
What keyboard are you using? one where å Å ∆ F12 are easily accessible?

Is there a good interface to (GUI?) openscad from termux?

Re:Red Alert 2 in web browser on Thursday November 20, 2025 @10:15AM (#45993450)
https://freedoom.github.io/ does that for the still proprietary DOOM assets. Though the DOOM engine itself is open source, so a slight different situation than Command and Conquer.
Re:AI Slop vs. OSS Security on Thursday November 06, 2025 @08:43AM (#45835149)
I would have thought supporting libcurl and libxml would also be in a company's self-interest. Is that companies do this for GPL'ed linux kernel but not BSD evidence that strong copyleft licensing limits the extent to which OSS projects are exploited/under-resourced?
Re:AI Slop vs. OSS Security on Thursday November 06, 2025 @07:42AM (#45834578)
Wealth generated on top of underpaid labor is a reoccurring theme -- and in this case maybe surprisingly exacerbated by LLMs.

Would this be different if the underlying code had a viral license? If google's infrastructure was built on a GPL'ed libcurl [0], would they have investment in the code/a team with resources to evaluate security reports (slop or otherwise)? Ditto for libxml.

Does GPL help the linux kernel get investment from it's corporate users?

[0] Perhaps an impossible hypothetical. Would google have skipped over the imaginary GPL'ed libcurl or libxml for a more permissively licensed library? And even if they didn't, would a big company's involvement in an openly developed ecosystem create asymmetric funding/goals, a la XMPP or Nix?

Re:Zed for Windows: What's Taking So Long? on Wednesday August 20, 2025 @04:41PM (#44966202)
I can see "ill defined" causing problems. But isn't an explicit code of conduct more defined than none? (Assuming I'm reading that correctly from your comment.)

There aren't too many epithets floating around that offend me specifically. And I haven't heard anyone say I shouldn't/don't exist. So it's hard for me personally to feel the need for CoC and the like. But I'm all for policy that protects everyone against that kind of abuse -- which seems to be on the rise. Are there better alternatives?

Re:20 years of Linux on the Desktop (part 4) on Wednesday July 23, 2025 @10:40AM (#44659748)
I'm curious if having JS makes the code more approachable for potential contributors or extension authors. And then if a project does "better" (measure utility to users? sustainability/longevity?) with more bugs but more engagement. Maybe that's just another way of asking "Cathedral or Bazaar?"
Re:The bewildering phenomenon of declining quality on Sunday July 20, 2025 @01:24PM (#44627285)
I feel that pain!

This comes up for me most often with running shoes. By the time the model shoe I've loved wears out, it'll be out of production and the n+1 iteration re-balanced whatever decisions to make the shoe a worse-for-me fit.

(It's tempting to think the big-sneaker cabal conspires to ensure consumers are perceptually exploring options)

Re:The bewildering phenomenon of declining quality on Sunday July 20, 2025 @08:44AM (#44624675)
I think that's a good take. Market pressure for durability decreases with brand awareness. Though I think the article argues there's little market pressure regardless.

I'm also worried it's all survivorship bias. If you acquired 100 items in 2010 and 5 of them lasted until 2025, it's hard to say if the 5 surviving would be the same 5 from another household or if the items you still have were all on the hardier end of that particular items quality distribution. Another house with 100 items from 2010 will have a different 5 remaining in 2025. If that's the case, the chance you'd buy those 5 again and even have 3 with the same 15 year life span is (1/20)^3 (I think. is that math right?)

Re:Max, a Real Programmer on Thursday July 03, 2025 @08:29AM (#44454315)
I didn't get the reference. For anyone else in my shoes: https://en.wikipedia.org/wiki/The_Story_of_Mel
.8% is a bit misleading. Public Land is 37% (as of 1991) [1] of the state. The ADK park is state owned/managed and huge. Catskill region also has lots of public land. They're both amazing places I'm happy don't look like the US side of Niagara falls [2]

[1]: https://www.summitpost.org/public-and-private-land-percentag... [2] https://www.nps.gov/parkhistory/online_books/runte1/prologue...

Re:Slack Overflow on Tuesday January 28, 2025 @07:36PM (#42860000)
I can't think of a more bloated way to communicate than putting a browser in the middle. For some quick numbers, compare web browser input latency to terminal [0] where one might run an IRC client. Even emacs [1,2] is fast and light in comparison.

[0] https://beuke.org/terminal-latency/#:~:text=6.2-,firefox%20(... [1] https://danluu.com/term-latency/#:~:text=terminal.app%20and%... [2] https://pavelfatin.com/typing-with-pleasure/#:~:text=0.8-,Em...

Older »