HNHacker News
TopNewBestAskShowJobs

owlstuffing

343 karma · joined August 12, 2023

submissionscomments
owlstuffing··on A brief history of children sent through the mail (2016)
The Roman Empire lasted about two to three centuries in its unified form before it began to seriously fragment.
owlstuffing··on A brief history of children sent through the mail (2016)
Indeed, high trust requires more than homogeneity.
owlstuffing··on A brief history of children sent through the mail (2016)
Because history treats them as a package deal. Tokugawa Japan saw foreign faces as existential threats. The Ottomans built trust only within ethnic/religious silos (millets). Rome demanded a trinity of assimilation: Latin language, Roman customs, and worship of state gods (later emperor cults).

Today's civic nationalism experiment rejects this link, yet no society has sustained high-trust diversity without such enforced unity. Rome threw everything at assimilation: shared language, values, identity above tribe, and state religion. It still fragmented.

So Western nations face an unprecedented gamble: Can they maintain cohesion without these historical levers? History offers no successful precedents, only warnings.

owlstuffing··on A brief history of children sent through the mail (2016)
True, but there’s a key difference -- those earlier waves, despite being seen as "outsiders" at the time, still came from the same civilizational foundation. Europeans, whether Irish, Italains, Germans, or Poles, shared a common history shaped by Christianity, Greco-Roman influence, and broadly similar cultural norms. The friction was real, but over time, assimilation worked because there was enough cultural overlap to make it possible.

The post-1965 immigration wave brought in people from entirely different civilizations -- with no shared history, values, or worldview. That isn’t just "non-homogeneity," it’s civilizational fragmentation. And unlike the 19th and early 20th century European immigration, there’s no historical precedent where that level of deep cultural divergence integrates at scale -- not in Rome, not in Byzantium, not anywhere.

owlstuffing··on A brief history of children sent through the mail (2016)
Societal trust levels tend to correlate with cultural and racial homogeneity. The erosion of trust within Western civilization reflects this trend, particularly in the United States following the Immigration and Nationality Act of 1965 (Hart-Celler Act).

But this is hardly unique to the modern era. Consider ancient Rome: as the Empire expanded, it absorbed vast, culturally diverse populations. Over time, this growing diversity--combined with weak integration mechanisms--gradually strained social cohesion and undermined trust in institutions.

It’s a recurring pattern throughout human history.

owlstuffing··on A brief history of children sent through the mail (2016)
Reminds me of a book, Mailing May[1], I read to my daughter and now my granddaughter. A true story of a family on a budget who sent their daughter to see grandma as mail cargo on a train. Cute story.

https://www.amazon.com/Mailing-May-Michael-Tunnell/dp/006443...

owlstuffing··on I wrote my PhD Thesis in Typst
But in this case the passes are manual!
owlstuffing··on The Grug Brained Developer (2022)
I didn't say there aren't acceptable reasons to reach for the print statement, there are. But for the vast majority of codebases out there, if good debugger tooling is available, it's a crime not to use it as a primary diagnostics tool. Claiming otherwise is indeed ignorant if not irresponsible.
owlstuffing··on The Grug Brained Developer (2022)
Their comment conflates debugging with logging.

Professional debuggers such as the one in IntelliJ IDEA are invaluable regardless of one's familiarity with a given codebase, to say otherwise is utter ignorance. Outside of logging, unless attaching a debugger is impractical, using print statements is at best wasting time.

owlstuffing··on Tell HN: Help restore the tax deduction for software dev in the US (Section 174)
While this modification may contribute to layoffs, the general declining economy is the real culprit — the layoffs started long before the tax code change.
owlstuffing··on What We Lost with PHP and jQuery
Well… React apps are a category of huge blobs of who-knows-what-but-it-works code.

In fact, I would be surprised if AI were to generate code as rube-goldbergery as React would have you write. Shrug.

owlstuffing··on Semicolons bring the drama; that's why I love them
Or, if you are an AI:

“I prefer the em dash — it’s my calling card.”

owlstuffing··on Show HN: Fahmatrix – A Lightweight, Pandas-Like DataFrame Library for Java
Nice!

I’m currently using manifold-sql with duckdb for this.

owlstuffing··on Show HN: SQL-tString a t-string SQL builder in Python
Languages should strive to type safely inline SQL and other structured data.

With Java the manifold project achieves this via compiler plugin. The manifold-sql[1] module provides inline, type safe, native SQL.

1.https://github.com/manifold-systems/manifold/blob/master/man...

owlstuffing··on Oberon Pi
If this interests you, I highly recommend Luca Boasso’s oberonc project for the JVM[1].

1. https://github.com/lboasso/oberonc

owlstuffing··on Strings Just Got Faster
Right. Oracle should reconsider the naming here: stable -> lazy
owlstuffing··on JetBrains defends removal of negative reviews for unpopular AI Assistant
Downhill fast since JB hastily exited its offices in St. Petersburg and Novosibirsk. It’s no coincidence.
owlstuffing··on Instant SQL for results as you type in DuckDB UI
Cool tool, even cooler when paired with the manifold project for SQL[1], which has fantastic support for type-safe, native DuckDB syntax.

1. https://github.com/manifold-systems/manifold/blob/master/man...

owlstuffing··on Growing a Language [pdf] (1998)
Agree 1000%

There’s a Java compiler plugin[1] that muscles in operator overloading pretty comprehensively, and works with all LTS JDKs.

1. https://github.com/manifold-systems/manifold/tree/master/man...

owlstuffing··on America underestimates the difficulty of bringing manufacturing back
I suppose so, since your use of “we” includes both America and China et al.
owlstuffing··on America underestimates the difficulty of bringing manufacturing back
> We never stopped manufacturing, we just stopped employing people.

That’s a misleading oversimplification. While it’s true we haven’t stopped manufacturing, we did offshore a massive portion of it--especially after the Open Door Policy with China and subsequent free trade agreements. That shift didn’t just change where things are made; it fundamentally altered corporate incentives. Once production moved overseas, the need to invest in domestic labor--training, benefits, long-term employment--shrank accordingly.

owlstuffing··on America underestimates the difficulty of bringing manufacturing back
Outside of government, this shift also coincides with the decline of pensions and the rise of the 401k.

Career growth has always been a shared responsibility between employees and employers. In white-collar fields--especially medicine and engineering--education has long been frontloaded, with formal schooling as the main on-ramp.

Blue-collar jobs, by contrast, have relied more on trade schools, mentorship, and hands-on training. These pathways have steadily eroded since the 1980s.

Much of this traces back to the Open Door Policy with China and the broader Free Trade Agreements that followed. These moved massive segments of industry offshore--along with the structures that once incentivized long-term employee development through education and skill-building.

Revitalizing domestic industry could reintroduce competition among employers, which in turn could restore the pre-1990s incentives for long-term investment in the workforce.

owlstuffing··on Introduction to Theoretical Computer Science (2023)
Skimmed, nice writing style, on reading list. Finishing Ch. 22 before I put this down.
owlstuffing··on Why I Program in Lisp
> No types barking

No thanks

owlstuffing··on Show HN: The C3 programming language (C alternative language)
And. . . Java does not have conditional compilation.
owlstuffing··on Show HN: The C3 programming language (C alternative language)
Well, if your language gains traction that plan may not succeed. For your sake, I hope that's the case :)
owlstuffing··on Show HN: The C3 programming language (C alternative language)
You do, that's the point here. You need ifdefs in this example to selectively compile the same code with different compilers, or different language levels with the same compiler. In either case C3 will fail while parsing a newer feature with an older compiler or lang level.
owlstuffing··on Show HN: The C3 programming language (C alternative language)
Imagine v2.0 introduces a new feature that requires a parser change—one that v1.0 wouldn't be able to parse.

  $if $defined(C3_V2_PLUS):  
      // new feature
      fn f = \ -> foo(); // this won't parse in v1.0
  $else
      Callback f = ...;
  $endif
This is also an issue if a future version of C3 introduces language level support, allowing newer compilers to compile code as if it were written for an earlier version. While this approach works well when teams standardize on a specific version’s feature set, they may still want to take advantage of performance improvements in the latest compiler.

That said, this is a niche case and not something I’d consider a dealbreaker.

owlstuffing··on Show HN: The C3 programming language (C alternative language)
That strategy will backfire when the grammar changes in a later release. A pre-parse step is necessary for code that targets different compiler releases.
owlstuffing··on Show HN: The C3 programming language (C alternative language)
Ah. The top-level lang description claims “No preprocessor”, but my definition of that word doesn’t appear to be the same as yours :/
← PreviousPage 3 of 9Next →