skysight-inc/HackerNews huggingface dataset:
The profession of "lamp lighter" definitely has been destroyed though. The person that can raise a burning stick to a kerosene lamp has to have a different skill set than the person fixing lamps in public spaces. I'm assuming you don't mean "screwing in a light bulb" type work, which would be close enough in skill requirements, that the person whose profession was destroyed could reasonably do the new profession without a lot of learning being required.

In the same vein, you doing OCR and now doing other work is not a profession change. You're still a computer scientist doing computer engineering work just on a different problem set.

Lamp lighter to cheese tapper is a profession change. A lamp lighter with bad hearing or attention to detail is not a problem per se. Tapping cheese to see if its ripe (and all the other skills that come with cheese making) will potentially be different enough.

Now the problem comes in, when lamp lighter is supposed to start doing OCR engineering work. Unless the lamp lighter was horribly over qualified, most lamp lighters will not be able to do OCR engineering or any computer scientist style engineering work at all.

Professions do get destroyed all the time. Hopefully while a new profession is born that has similar enough skill level requirements as the previous ones, just in different form. Like a lamp lighter might do well in an Amazon warehouse but not as an AWS software engineer.
Feeling deja vu. There was a previous discussion of this article, though it had a different title and URL then.

https://news.ycombinator.com/item?id=43268713

https://web.archive.org/web/20250306200642/https://www.recal...
The demographic time bomb that is the Russian population (human capital, to use an inhuman term) has been recognized since the late 80s. I am surprised how much that productivity along with health has plunged in the last decade. It is not as some suggested a lagging indicator of the aftermath of the Soviet empire but the continuing collapse of the Russian empire, of which the Soviet Union was just a phase. Despite the best intentions of would be autocrats in the West to pump it up, Russia is transitioning from a pretend developed nation to a much smaller developing country on a large land mass.
I always thought the Butlerian Jihad was a convenient way to remove AI as a plot element. Same thing with shields and explosions; it made swordfighting a plausible way to fight in a universe with faster-than-light travel.
right? not great examples. Here are the kind of prompt examples I would have used instead:

- explain this symbol to me

- what TV show am I watching

- how much is the house I'm looking at worth (bring in geo-location)

- How often should I be watering this plant

- how many calories are in this meal

- what type of car is this

- whats the exact name/type of this screw part

- what are the exact dimensions of this door frame

- what kind of style of art is this

- how often should I be taking this medication

- how many copies has this book sold

- which part of the world is this pic from
totally agree on the last part

What’s wrong with LinkedIn (in our view):
- It’s become more like Facebook than a professional network: lots of noise, humblebrags, and algorithm-chasing.
- Everyone looks the same on paper — resumes blur together, and it’s hard to stand out.
- You're incentivized to perform rather than be real — especially if you're early in your career or outside of the “right” networks.

How we're different:
- No feed. No likes. No fake engagement.
- You show who you are with video, audio, and proof of work — like a mini personal pitch.
- Profiles are curated and designed to be browsed, not scrolled endlessly.

Re: network effects — We’re starting small and high-signal: curated profiles + inbound interest from early recruiters. Our goal isn’t to replace LinkedIn’s entire graph, it’s to become the place you go when you want to stand out and be discovered for real.
There are a few really good ways to install Nix, including ones that people often invoke via `curl | sh`. If you prefer, you can download the exact same installers, and verify the checksums, read their code, etc. You don't have to actually use a different installer just to avoid `curl | sh`.
Not sure that's true. `Template`s don't provide a `__str__` function, so you need to pass them to a processing function to get a `str` back.

https://peps.python.org/pep-0750/#no-template-str-implementa...
LiveKit's Series B: Building the all-in-one platform for voice AI agents
> I'm honestly befuddled why anyone would downvote this.

I think there's two parts to this. First, there's a bit of a history of people making disingenious jabs at Rust for not having an "ISO C++" style spec. Typically people would try to suggest that Rust can't be ready for production or shouldn't receive support in other ecosystems without being certified by some manner of international committee. Second, Rust by now has an extensive tradition of people discussing memory safety invariants, what soundness means, formal models of what is a valid memory access, desirable optimizations, etc, etc, so your question what undefined behavior means could be taken to be, like, polemically reductive or dismissive.

In context I don't think it's what you're doing, but I would also not be surprised if a lot of people reading Rust-related HN discussions are just super tired of anything that even slightly looks like an effort to re-litigate undefined behavior from first principles, because it tends to derail more specific discussions.
It's cruel, it's bad for businesses that need their labor, and the chances for mistakes and abuse of power, which have already happened, are large.
Indeed, and it correctly explains the issue in one of the close-top-top comments: https://news.ycombinator.com/item?id=43162857
Use what's working for you but one of the strengths of parser combinators is managing abstraction so that you can reason locally rather than having to manage things "ten layers deep." That's more of a problem in imperative approaches where you are manually managing a complex state machine, and can indeed have very deep `if` hierarchies.

Parser combinator are good at letting you express the grammar as a relationship among functions so that the compiler handles the nitty-gritty and error prone bits. (Regexes also abstract away these details, of course.)
> there's an argument that our eyes are very coarse sensors. Instead they do basic analysis from which the brain can infer the real world around us with other data from other organs

I don't buy it. I think our eyes are approximately as fine as we perceive them to be.

When you look through a pair of binoculars at a boat and some trees on the other side of a lake, the only organ that's getting a magnified view is the eyes, so any information you derive comes from the eyes and your imagination, it can't have been secretly inferred from other senses.
'Let zem zing!'
haha thanks!!! :)
http://n-gate.com/hackernews/ , but it sleeps
> His decision making process always prioritizes supporting Free Software over proprietary efforts, pragmatism be damned.

No, this is giving him too much credit. His stance on gcc wasn't just purity over pragmatism, it was antithetical to Free Software. The entire point of Free Software is to let users modify the software to make it more useful to them, there is no point to Free Software if that freedom doesn't exist - I might as well use proprietary software then, it makes no difference.

Stallman fought tooth and nail to make gcc harder for the end user to modify, he directly opposed letting users make their tools better for them. He claims it was for the greater good, but in practice he was undermining the whole reason for free software to exit. And for what? It was all for nothing anyway, proprietary software hasn't relied on the compiler as the lynchpin of its strategy for decades.
StumbleVideo was exactly like TikTok, including focusing on mobile. The only material difference is that StumbleVideo's videos were landscape instead of portrait, and they had a "Stumble" button instead of swiping.

(Maybe it's the swiping gesture? Maybe the gesture is more comfortable in portrait?? But it's hard to see why that would make or break a video app like this…)
Do you have kids? Have you ever tried locking a door with a little one? Lol

Also, yes I've made signs. It's easy to forget to hang them.
Senator Chris Murphy lays out why we need to act now in this video posted a couple of hours ago: https://youtu.be/S_F1ECSSEH8
IMO comprehensions like `[x**2 for x in range(4)]` would be better written as `[for x in range(4): x**2]`.

That would make the mapping between a comprehension and the equivalent loop much clearer, especially once you use nested loops and/or conditionals.

For example, to flatten a list of lists `l = [[1, 2], [3], [4, 5, 6]]`:

[item for sublist in l for item in sublist]

vs

[for sublist in l: for item in sublist: item]
Black Mirror's pessimism porn won't lead us to a better future
>I tried to explain how review workflows work in a PR-based setup, and gave concrete suggestions for how we could improve the process. But they didn’t want to try it. That might sound like a small thing, but at that stage, all I wanted was a smooth and efficient collaboration process. The easier it was for me to track changes, the better.

I'm surprised the copy editor was more comfortable using git than using a web-based review tool to leave comments, especially given that she was reviewing a Go book and didn't seem to know what Go was.

How does that even happen? It seems bizarre that Manning had this copy editor at all.

I recently had a negative experience with Manning. I sent them an email saying that I'm in the process of writing a book, and I'm self-publishing it, but I was curious about the possibility of applying to Manning for a second edition. I asked whether they accept second editions after a self-published first edition and what document formats they accept.

I got back a form letter telling me that they'd rejected my proposal. When I followed up and said I didn't send a proposal but was asking preliminary questions, they told me that they understood I hadn't sent a proposal, but they were going off of the table of contents on my book's website. I guess they decided to pre-emptively reject me?

They also only said Google Docs as a document format, but based on this blog post, clearly they accept AsciiDoc.
That's why I specified the context argument. Something like Template("{name} {address}", dict(name = ..., address = ...)) would be exactly equivalent to t"{name} {address}" assuming those variables are fetched from the local scope.
Ok, I played Voyage of the Marigold for a little bit now. Is it possible to get out of the shoals? Also can you beat the dreadnaught near the last two sectors with 1 torpedo and lasers, or do you need 2 torpedoes?

Good stuff. Cheers.
There are so many ways to fingerprint a browser and new ones are introduced and discovered all the time. The best protection against fingerprinting isn't to try to be the same as everyone else and pray that you've somehow accounted for every possibility, but to always present as a different browser. It can only take changing a single data point to look like a new browser/device, although you still have other things like your IP address which can associate fingerprints with each other. A VPN can give you a new IP every day, or every few hours which can help.
I like this but am still not a fan of the constant adding of things to the language. It’s starting to feel like a language designed by committee, which it basically is.
I do think that people are far too hesitant to bind member functions sometimes:

statement_endpoint: Final = "/api/v2/accounts/{iban}/statement".format

(it's likely that typecheckers suck at this like they suck at everything else though)
Not trying to persuade you to try again, but if you ever desire to, electrolyte deficiency (particularly potassium) is a common reason that people experience headaches or cramps when fasting or starting ketogenic diets. Watch out for sugar in commercial electrolyte tablets though!
I only wish it was longer. Also I can't stand dubs!
It's a feature that removes the need for hundreds of specialized template classes in various frameworks and is a generalization of an existing feature in a way that doesn't add much in the way of grammar. The net complexity reduction is a win here.
> balanced windows [1]

> [1] That is, three windows of the same size side-by-side.

`C-x +` (M-x balance-windows) for those who don't know . There's also M-x balance-windows-area.
> Presumably scattered radar receivers can detect faint reflections using similar correlation.

Yes, multistatic radars are already in service. An advance on the concept is that the active transmitter can be placed outside anticipated weapons range and those within range are merely passive receivers.

There have been proposals to build such systems that use 'oblivious' transmitter sources such as commercial radio broadcasts.
3 movies you would hate ranked from most to least:

1) Christian Marclay's The Clock

2) Sátántangó

3) Dekalog
Why should I use this instead of Template class from string
A (well written) article about the technical side of protecting yourself from border patrol would probably make the front page.
In my experience it was precisely when it wasn't abstracted properly that injection attacks became more prevalent, not the other way around.

In PHP, people used to just call mysql_query on a string and all the escaping was done with mysql_escape_string. According to you that nice locality of query construction and sanitization that should've improved security, but my god did it ever not do that.

It was exactly layers of abstractions, moving things far away from the programmer, with prepared statements to ORMs, that meaningfully reduced the number of SQL injection vulnerabilities.

Another example is JavaScript, how many XSS vulnerabilities never happened because of all the shadow dom frameworks? Layers of abstractions like these (JSX,etc) are a major reason we don't see many XSS vulnerabilities nowadays.
An interesting angle is if you automate it, you have the power to tweak the acceptance parameters. And once you make it easy to do, better keep the mba’s away. Whereas with a live person, I doubt anyone’s going to straightly say “please mark more cheese as top-shelf”.
I use Pdeathsig but with SIGTERM, not SIGKILL, to ensure clean shutdown of a child Redis process. Seems crazy to use SIGKILL.
> If a single interpolation is expensive to evaluate, it can be explicitly wrapped in a lambda in the template string literal

I’m having trouble understanding this - Can someone please help out with an example use case for this? It seems like before with an f string we had instant evaluation, now with a t string we control the evaluation, why would we further delay evaluation - Is it just to utilise running a function on a string first (i.e. save a foo = process(bar) line?)
I’ve always felt like my LinkedIn just collects dust unless I actively post, will definitely check out openspot
"The Google Pixel 9 is powered by the Tensor G4 chip, a custom-designed processor optimized for AI. This chip, along with 12 GB of RAM (or 16 GB for Pro models), enables advanced AI features and enhances overall performance."
I don't think Go is particularly esoteric to where these "gotchas" are a big problem.

In fact, I would argue that the gotchas are an intentional part of Go's design philosophy. I think it is strange to work in Go when coming from another language because of this, which leads people to think Go sucks.
Trump Administration Wants to Install Federal Oversight of Columbia University
What will the annual fee be?
A fantasy writer telling fictional stories about the future is more credible than many so-called serious people (think Marc Andreessen) who promote any technology as the bee's knees if it can make them money.
So that you can calculate the string in A.py and then use it over in B.py .
Neutrinos' maximum possible mass shrinks further
Out of those three, Australia's economy is proportionally the most reliant on natural resources. Its mining sector alone is a bit over 10% of overall GDP.
Also, many cards have temporary bonuses, like the Savor's previous 10% Uber promo. If they can handle this, thats huge.
Most of the mistakes in this book and general mistakes you make when programming aren't about crashes or other runtime errors. They are about writing code that is overly complex or otherwise difficult to maintain.
> It’s starting to feel like a language designed by committee, which it basically is.

That's exactly what it is. It's just that they use the word "council" instead of "committee".
To all Chinese sellers: you need to eat the cost of the tariffs on your side. Ask your local government comrade official to subsidize your product more.
Early Tom Clancy, before he monetized his name, was pretty amazing. The Hunt for Red October was published by the Naval Institute Press. [0]

It was also the first adult book I read. Probably around 6 or 7? Before Jurassic Park, which I read before that movie came out.

I'd asked my father if "There were books about other things, because kids books were boring."

He handed me Tom Clancy off his bookshelf.

[0] https://en.m.wikipedia.org/wiki/United_States_Naval_Institut...
We're stretching the metaphor here. I know, kind of obnoxious.

If I have accidentally lifted too much weight, I want a spotter that can immediately give me relief. But yes, you're right. If I am always getting a spot, then I'm not really lifting my own weight and indeed not making any gains.

I think the question was, "I'm stuck on this code, and I don't see an obvious answer." Now the lazy student is going to ask for help prematurely. But that doesn't preclude ChatGPT's use to only the lazy.

If I'm stuck and I'm asking for insight, I think it's brilliant that ChatGPT can act as a spotter and give some immediate relief. No different than asking for a tutor. Yes maybe ChatGPT gives away the whole answer when all you needed is a hint. That's the difference between pure human intelligence and just the glorified search engine that is AI.

And quite probably, this could be a really awesome way in which AI learning models could evolve in the context of education. Maybe ChatGPT doesn't give you the whole answer, instead it can just give you the hint you need to consider moving forward.

Microsoft put out a demo/video of a grad student using Copilot in very much this way. Basically the student was asking questions and Copilot was giving answers that were in the frame of "did you think about this approach?" or "consider that there are other possibilities", etc. Granted, mostly a marketing vibe from MSFT, but this really demonstrates a vision for using LLMs as a means for true learning, not just spoiling the answer.
Good. Our lack of tariffs and our soft vulnerability in the Chinese trade wars enabled them to pull scams like Temu.

My mother became addicted to catalog shopping, and she flooded our home with cheap Chinese shit, even before website catalogs were a thing. Even our USPS mailbox was clogged with thick glossy catalogs full of useless trinkets that would cost us nearly nothing.

I regularly turn into Marie Kondo's disciple, and I get rid of the useless crap my Mom foists on me from those catalogs. They do not spark any joy! I try to destroy/break it really good before I toss it out. Sometimes, I capture the more dramatic destruction sessions on video. I've got to check into those new services where you go in and you put on armor and then you break stuff to release aggression. I would prefer to bring in my own items to destroy.

China has been buying US debt; they've been accepting metric fucktons of garbage and refuse from us; they've been selling us horrible stuff including worthless religious tchotchkes. Sometimes I imagine working-class Chinese in the factories being converted to Christ and seeking baptism, simply because they spend 100s of hours hand-painting Sacred Heart of Jesus and images of Our Lady of Fàtima!

Of course China has also sold us insanely useful things like a Windows 10 notebook from Lenovo in 2018. I purchased it with my FAFSA student aid funds and it was 100% configurable on the Lenovo's own website. It shipped to my place direct from Shenzhen in no-time-flat. It was a miracle of modern logistics, supply chain and engineering. That notebook lasted for over 6 years and 3 OS including Fedora Linux. I loved it. It was still 100% functional when I recycled it.
It's fascinating how differently languages approach the string formatting design space.

- Java's been trying to add f/t-strings, but its designers appear to be perfectionists to a fault, unable to accept anything that doesn't solve every single problem possible to imagine: [1].

- Go developers seem to have taken no more than 5 minutes considering the problem, then thoughtlessly discarded it: [2]. A position born from pure ignorance as far as I'm concerned.

- Python, on the other hand, has consistently put forth a balanced approach of discussing each new way of formatting strings for some time, deciding on a good enough implementation and going with it.

In the end, I find it hard to disagree with Python's approach. Its devs have been able to get value from first the best variant of sprintf in .format() since 2008, f-strings since 2016, and now t-strings.

[1]: https://news.ycombinator.com/item?id=40737095

[2]: https://github.com/golang/go/issues/34174#issuecomment-14509...
I don't buy this as sold because Big Tech has very strict policies about IP ownership on code you write while you're working for them, even if it is totally separate from work.

Wish you the best of luck, but I also wish for a tradeoff towards honesty from salesmanship in this world.

EDIT: A cursory review of your Twitter reveals several significant departures from this narrative. I'm very confused but given your goals with this, would highly recommend you at least tighten things up enough so it doesn't take 1 missed piece of ingroup knowledge on your part, and ~1 minute of due diligence on X, to find out we're reading copy-pasta.

It's also really uncool to create two bits of "someone else did it" knowledge in the world that are absolutely false and irresponsible (built quickly parttime, quit after launch).

Also, if the other founders contracted you while they were still at big tech, that can be a major problem for them.
That depends on the library implementation. A given library can be anywhere on the spectrum from "user knowledge and management of the transport methods required" to "transport method is determined by protocol format or invocation" (eg. "local://..." vs "remote://...").
White House may seek binding control over Columbia through consent decree
Here is your chance to have a similar experience if you're in NY: https://www.moma.org/calendar/exhibitions/5746.
Credit cards allow proxying? How will you route it?
I understand your concern, and I think the PEP addresses it. Quite bluntly, t"foo" is not a string, while f"foo" is. You'll get a typecheck error if you run a typechecker like any reasonable developer, and will get a runtime error if you ignore the type mismatch, because t"foo" even lacks a __str__() method.

One statement the PEP could put front and center in the abstract could be "t-strings are not strings".
On the subject of software freedom, I hate how accurately prophetic he is.

RMS: Here’s how they'll get ya!

Me: Nice, but that'd never happen.

Vendor: Here’s how we got ya!

Me: Dammit.

Seriously, he must have a working crystal ball.

Now, my agreement with him starts and ends on that subject. He says plenty of other things I wholly disagree with. But his warnings about proprietary software lock-in? Every. Single. Time.
How do we report this?
Formerly, the Republicans were for small govt and keeping out of people's lives. Then the Tea Partiers and MAGAts took over.