MurphyA/hacker-news huggingface dataset:
by danielmarkbruce | 2025-04-10 22:21:33+00:00
It's simpler than you are imagining. In practice, anyone can make USD go in one side and EUR come out the other. It's just the notion that something is "destroyed" which is wrong. If I owe you x USD, you can call me and we can agree I now owe you y EUR. If my name is "JP Morgan Chase Bank", it's really easy. And, the "m1 money supply" just changed. But, m1 is kind of nonsense because... it includes checking account deposits which are just IOUs from banks. So, no one just got richer (the bank still owes you money) and nothing is really going on.

Your mental model is falling down around the definition of "currency", "money" etc. It isn't what you imagine it is. We just have a system for trading bank receivables and call it "money".
by wruza | 2025-04-10 22:21:42+00:00
As a python meh-er, this is actually good design. Everyone is jumping on C that it has no strings, but then other languages throw raw strings at you with some interpolation and call it a day. Also it's 2025 and people will still comment "do we need such a bloated string mechanism" and then watch new devs produce bulks of injectionable strings.
by nhumrich | 2025-04-10 22:23:05+00:00
PEP 501 when originally written (not by me) was intended to be the competing standard against f-strings, and to have been more inline with ES6's template strings. There was debate between the more simple f-string PEP (PEP 498) and PEP 501. Ultimately, it was decided to go with f-strings as a less confusing, more approachable version (and also easier to implement) and to "defer" PEP 501 to "see what happens". Since then, the python internal have also changed, allowing t-strings to be even easier to implement (See PEP 701). We have seen what happens, and now its introduced. f-strings and t-strings are not competing systems. They are different. Similar to ES6 templates and namedTaggedTemplates, they are used for different things while API feels similar intentionally. f-strings are not inferior to t-strings, they are better for most use cases of string templating where what you really want, is just a string.
by vessenes | 2025-04-10 22:23:37+00:00
OK - basic plan here, which I feel I may have read (just called something like a concept LoRA on r/stablediffusion?):

1. Any concept you're interested in, get inputs with and without it. For images: 100 with, say a pink elephant, 100 without.

2. Calculate the difference between these models as represented by an "Optimal Transport Map".

Apply the map at desired strength, and voila - you don't have a pink elephant anymore. These can stack.

There are lots of obvious and interesting applications here in LLMs - there's some research showing that LLMs have honesty/dishonesty parameter groupings, for instance.

But, I can't really figure out what this OT map is. Is it a single layer tensor? Is it multidimensional? If it's the size of the original model (which they say it is not), then I understand how to apply it - just add weights and rerun. If it's not a copy, where and when is this map applied? Another way to say this is, how is this different than calculating the average difference and storing it in a low-rank adapter? I have no idea.
by weard_beard | 2025-04-10 22:24:50+00:00
Art without money is madness. Money without art dies on the vine in obscurity or pays its dues in criticism through time.

99% of everything commercially produced is somewhere between these and, if made by a person, part of a cannon, a body of work that grows and changes as the person does.

Just because an artist invites us into their mind does not mean we don’t owe them the respect we’d give a stranger. At least that’s how I look at it.
by DiogenesKynikos | 2025-04-10 22:25:07+00:00
> Get the attention of leadership in a way that is respectful

"Excuse me sir, but I've just become aware that you signed a deal to provide tech support for an army that is conducting a genocidal campaign. Would you please consider rethinking this contract? Thanks."

That's respectful, but completely pointless. Microsoft knows who its doing business with.
by lxgr | 2025-04-10 22:25:12+00:00
> Install the local root certificate to the system's trust stores

I really wish there was a safer way to do this, i.e. a way to tag a trusted CA as "valid for localhost use only". The article mentions this in passing

> The sudo version of the above command with the -d flag also works but it adds the certificate to the System keychain for all users. I like to limit privileges wherever possible.

But this is a clear case of https://xkcd.com/1200/.

Maybe this could be done using the name constraint extension marked as critical?
by robertkluin | 2025-04-10 22:25:59+00:00
Honestly, Koreo can cover most of the use cases of the other tools just fine. We leverage Koreo to manage deployments of the Koreo controllers along with their service accounts and RBAC—it works quite well. We also use it with Helm in order to install, for example, ACK controllers which have existing Helm Charts.

Our design is very, very deeply inspired by Kustomize. If Kustomize or kpt are sufficient, I would strongly encourage using one of them. We developed Koreo because we have cases where we need to sequence resource creation (for instance to map values from one resource to another) and wanted to programmatically set values.
by terrabiped | 2025-04-10 22:26:07+00:00
I’m pretty sure that the answer you quoted was a joke, mainly because the topic of AI packages comes up all the time on that subreddit and people are starting to make fun of the same question that’s asked every other day.

Codecompanion (Zed-like experience), Avante (Cursor-like experience), and Copilot all exist and integrate well with the rest of the neovim ecosystem.
by lcnPylGDnU4H9OF | 2025-04-10 22:28:00+00:00
> at least in theory

The point that they are making is that this 9/11-inspired law would not have, even in theory if one assumes perfect enforcement, prevented 9/11. They are saying that they can conceive of gun control laws that would have, in theory if one assumes perfect enforcement, prevented 9/11. Coming up with a specific intention of such is not relevant to their point.

I’ll answer your question to hopefully illustrate the point: no guns in US airports. That law, in theory, at least would have had a chance of preventing the attack, which is not something that can be said about this one.
by Mistletoe | 2025-04-10 22:28:33+00:00
I really can't remember. I'm not a speed demon doing 17 minute 5ks for sure. I'm trying to look online and it looks like I have run a 23 minute 5k a few times. I don't know if I have run faster than that or what training I was on when I ran those. I wish I could remember but I haven't done races in quite some time.
by amarshall | 2025-04-10 22:28:40+00:00
The problem isn’t that they might be out-of-order. The problem is expecting that they merely might be out-of-order and actually getting missed and duplicated values due to the timing of shared memory access. This was enough of a problem that they [changed the behavior][1] in Go 1.22.

[1]: https://go.dev/blog/loopvar-preview
by pansa2 | 2025-04-10 22:30:49+00:00
Putting aside template strings themselves for the moment, I'm stunned by some of the code in this PEP. It's so verbose! For example, "Implementing f-strings with t-strings":

def f(template: Template) -> str: parts = [] for item in template: match item: case str() as s: parts.append(s) case Interpolation(value, _, conversion, format_spec): value = convert(value, conversion) value = format(value, format_spec) parts.append(value) return "".join(parts)

Is this what idiomatic Python has become? 11 lines to express a loop, a conditional and a couple of function calls? I use Python because I want to write executable pseudocode, not excessive superfluousness.

By contrast, here's the equivalent Ruby:

def f(template) = template.map { |item| item.is_a?(Interpolation) ? item.value.convert(item.conversion).format(item.format_spec) : item }.join
by Lammy | 2025-04-10 22:31:47+00:00
> Kingdom of Loathing, one of my favorite games growing up, has nightly maintenance windows - short daily ones, and a longer weekly one. And... that's about all that I found.

So does KONAMI's e-amusement service, affecting arcade games and home versions alike: https://iidx.org/eamuse_maint
by dm03514 | 2025-04-10 22:32:07+00:00
Congratulations, second streaming acquisition in recent memory, after benthos.

Arroyo on paper looks amazing, high performance, advanced streaming primitives like windows and joins.

I think / hope the foundations provide a long term alternative to flink and spark streaming, the extremely heavy jvm-based incumbents.

I only have ~5 hours of experience with it so def an ultra beginner, but it was very UI configuration heavy when I tried it. API based config was mentioned but didn’t slot into the way $dayjob provisions so it was a very hard sell.

In response to this I created a lightweight high performance dev-centric streaming solution powered by duckdb, it’s getting a little traction

https://github.com/turbolytics/sql-flow

Iceberg has been one of the most popular feature so far:

https://sql-flow.com/docs/tutorials/iceberg-sink
by all2 | 2025-04-10 22:32:16+00:00
The types aren't so important. __call__ or reference returns type string, an f and a t will be interchangeable from the consumer side.

Example, if you can go through (I'm not sure you can) and trivially replace all your fs with ts, and then have some minor fixups where the final product is used, I don't think a migration from one to the other would be terribly painful. Time-consuming, yes.
by lukan | 2025-04-10 22:33:34+00:00
"If a photo-sharing app is down at 3am, I'm sure the users can go to sleep and wait till 10am"

There will be people, who will feel it is critical important to post some pictures at 3 am and they will get stressed, if it is not working (say people preparing an event and the pictures should be online the next day).

But .. whether that is worth that engineers must be on call, is a differnt question. I never had a job like this and I know I would never accept it as default for myself.
by r00fus | 2025-04-10 22:35:29+00:00
My hypopnea (pre-apnea) is getting resolved as I have lost a lot of weight by following a program using GLP-1 meds. I also no longer have knee discomfort when hiking or doing long climbs on my bike (used to wear a sleeve beforehand to do that). Not to mention, I just look and feel better.

CPAP is a life-saver for sure, but treating your underlying causes of apnea can often help as well.
by robertkluin | 2025-04-10 22:35:54+00:00
Awesome feedback, thank you!

The CLI is presently being reworked to expose that capability. Right now, you can use FunctionTest in order to validate that you get your expected outputs from an input. This works well because you can test many scenarios, including error conditions. The CLI does not currently emit the materialized manifests purely because our initial use cases needed to map values from reconciled manifests into other manifests. It is completely viable to emit the materialized manifests though.

Honestly, our ambition is to develop a tool that makes the operations and platform engineering people's lives better. Our team is comprised of software engineers who've worked in the operations and platform engineering space for a long time. It is a crowded space for sure, but I am optimistic, probably foolishly so, that we can develop something that is more pleasant for the platform folks than many of the other options.

We'd welcome any other feedback or thoughts on how to accomplish that.
by Philpax | 2025-04-10 22:36:22+00:00
It "succeeded" in that it delivers on its promise and some people still use it, but it is largely dead now due to the lack of development and the community's inability to push the language itself forward. There are forks that address that, but Elm itself seems unlikely to Lazarus any time soon.

It's definitely proof that software can be written in such a regime, though, and I hope we see something similarly dogmatic some day.
by davepeck | 2025-04-10 22:36:28+00:00
We wanted at least a couple examples that showed use of Python's newer pattern matching capabilities with the new Interpolation type. From this outsider's perspective, I'd say that developer instincts and aesthetic preferences are decidedly mixed here -- even amongst the core team! You can certainly write this as:

def f(template: Template) -> str: return "".join( item if isinstance(item, str) else format(convert(item.value, item.conversion), item.format_spec) for item in template )

Or, y'know, several other ways that might feel more idiomatic depending on where you're coming from.
by protocolture | 2025-04-10 22:38:50+00:00
The report I read, and your statement is very true, but their findings were that instead of buying a meal, when they had capital, they began businesses (or larger capital investments, like livestock) so they could take care of themselves long term.

The issue is that, sort of like you say, theres a lot of low hanging fruit in a poor village that just a bit of money can set someone up. And the comparison was other charity, apparently another charity had sent this village a shipping container full of beach balls. So comparatively money is easily the victor.
by spankalee | 2025-04-10 22:39:00+00:00
Maintainer of lit-html here, which uses tagged template literals in JavaScript extensively.

This looks really great! It's almost exactly like JavaScript tagged template literals, just with a fixed tag function of:

(strings, ...values) => {strings, values};

It's pretty interesting how what would be the tag function in JavaScript, and the arguments to it, are separated by the Template class. At first it seems like this will add noise since it takes more characters to write, but it can make nested templates more compact.

Take this type of nested template structure in JS:

html`<ul>${items.map((i) => html`<li>${i}</li>`}</ul>`

With PEP 750, I suppose this would be:

html(t"<ul>{map(lambda i: t"<li>{i}</li>", items)}</ul>")

Python's unfortunate lambda syntax aside, not needing html() around nested template could be nice (assuming an html() function would interpret plain Templates as HTML).

In JavaScript reliable syntax highlighting and type-checking are keyed off the fact that a template can only ever have a single tag, so a static analyzer can know what the nested language is. In Python you could separate the template creation from the processing possibly introduce some ambiguities, but hopefully that's rare in practice.

I'm personally would be interested to see if a special html() processing instruction could both emit server-rendered HTML and say, lit-html JavaScript templates that could be used to update the DOM client-side with new data. That could lead to some very transparent fine-grained single page updates, from what looks like traditional server-only code.
by vacuity | 2025-04-10 22:39:07+00:00
Definitely weird, or perhaps I'm just not imaginative enough. I have a hard time figuring out what some KeyKOS constructs mean in familiar terms, particularly whether a given feature is an instance of essential or accidental complexity. I'm more familiar with today's seL4, which has carried on many of the principles of KeyKOS. Learning about the state of the art today is one thing, but learning history is quite another. I rely on simplicity in kernel design to avoid hindering more creative ideas that others have had.
by gsf_emergency_2 | 2025-04-10 22:43:01+00:00
>Doesn't sound like getting them into every cell would be easy

>Viruses would be happy

As a programmer, I sometimes wondered at the value proposition of certain antiviral drugs, especially the ones that interfere with replication.

https://en.wikipedia.org/wiki/Antiviral_drug#Reverse_transcr...
by bb88 | 2025-04-10 22:43:19+00:00
What's interesting from a legal perspective (to me anyway) is if his call list and contacts are protected by attorney client privilege.

I think maybe the correct answer is to backup your phone in the cloud, and then factory reset it before coming back into the US.

You might also try to mail the phone back to a friend in the US with a tracking number, then you'll know if it got seized in customs, and you can fight it there. You might have to pay a tariff on it, but the tariff might be worth it to avoid trouble at the border.
by elarssen | 2025-04-10 22:45:18+00:00
My understanding of Argo CD is limited so forgive me but I believe Koreo is a bit more similar to Argo Workflows. Where the scripts and logic is baked into the Argo Workflow image, in Koreo it leverages other K8s controllers to do the heavy lifting of interacting with the APIs. If I understand Argo CD correctly, it is an implementation of Argo Workflows. In this way, you are able to build your own CI/CD workflow via Koreo if you so wanted.
by aeblyve | 2025-04-10 22:45:44+00:00
I am ethnically Russian, although spent virtually my entire life in the US. My father went to a special grade school for English in Russia when he was younger there. Presumably, there was some state-sponsored idea that its graduates would become diplomats and leaders and enrich Russia itself.

He reports that some 80% of his class have left the country. I would say that his generation (i.e., some of the first to come of age in the post-communist period) especially were very eager to find lucrative work in the states and elsewhere. The capitalist structure of early capitalist Russia was quite unstable, not offering good pay, or in many cases even consistent pay, and that's if you could find a professional opportunity.
by sksxihve | 2025-04-10 22:46:43+00:00
A government by the AI for the AI, at least all those tech companies will be able to justify the money they've burned when they get awarded some sweet tax payer dollars.

> They must also maintain and update an AI use case inventory accessible to the public. This inventory must call attention to "high-impact" agency uses of AI, such as when the AI output "serves as a principal basis for decisions or actions that have a legal, material, binding, or significant effect on rights or safety."

> Certain AI use cases automatically qualify as high impact, such as the use of AI in "safety-critical functions of critical infrastructure" and "in healthcare contexts".

Cool, AI that will have a high impact on trivial things like "rights", "safety", and "healthcare", nothing can possibly go wrong with any of that.
by davepeck | 2025-04-10 22:47:11+00:00
> assuming an html() function would interpret plain Templates as HTML

Agreed; it feels natural to accept plain templates (and simple sequences of plain templates) as HTML; this is hinted at in the PEP.

> html(t"<ul>{map(lambda i: t"<li>{i}</li>", items)}</ul>")

Perhaps more idiomatically: html(t"<ul>{(t"<li>{i}</li>" for i in items)}</ul>")

> syntax highlighting and type-checking are keyed off the fact that a template can only ever have a single tag

Yes, this is a key difference and something we agonized a bit over as the PEP came together. In the (very) long term, I'm hopeful that we see type annotations used to indicate the expected string content type. In the nearer term, I think a certain amount of "clever kludginess" will be necessary in tools like (say) black if they wish to provide specialized formatting for common types.

> a special html() processing instruction could both emit server-rendered HTML and say, lit-html JavaScript templates that could be used to update the DOM client-side with new data

I'd love to see this and it's exactly the sort of thing I'm hoping emerges from PEP 750 over time. Please do reach out if you'd like to talk it over!
by adeon | 2025-04-10 22:47:17+00:00
Yes, that was the crux of my question (and was answered by that link when I checked teivah-given link, which linked https://go.dev/blog/loopvar-preview right there as well). Basically I wondered if the example given was really about:

1) In Go, the 'i' variable in the for loop is the same 'i' for each round of the iteration, meaning closures created inside the loop all refer to that same 'i' variable, instead of getting their own copy of it. Very easy to accidentally think the all closures have their own copy of 'i'. Goroutines are only mentioned because in Golang this mistake tends to come up with Goroutines because of a common code pattern.

OR

2) Goroutines themselves either behave or have some weird lexical scope rules in a way I don't know and it doesn't really have to do with closures but an entirely Golang-foreign-alien concept to me I cannot see, and this is why the book example had Goroutines mentioned with the mistake.

I rarely write Go myself so I was curious :) It looks like it was 1) unless I am bad at reading, and I think the Go 1.22 change is good. I could easily imagine myself and others making that mistake even with the knowledge to be careful around this sort of code (the link shows a more complicated example when scrolling down that IMO is a good motivating example).
by throwawayffffas | 2025-04-10 22:47:29+00:00
On a more philosophical level php is this feature. At least as it was used originally and how it's mostly used today. PHP was and is embedded in html code. If you have a look at a wordpress file you are going to see something like this:

<?php ... ?><some_markup>...<? php ... ?><some_more_markup here>...
by tylertreat | 2025-04-10 22:47:45+00:00
> The CLI does not currently emit the materialized manifests purely because our initial use cases needed to map values from reconciled manifests into other manifests. It is completely viable to emit the materialized manifests though.

Only in cases where the values are statically known, however. If you have resources that depend on the output of another resource, then we can't know that at "template time" as you pointed out.
by nhumrich | 2025-04-10 22:47:45+00:00
Your example is a bit too simple. What I mean by that is, you have hardcoded your function to inject a specific part of your string. But t-strings allow you to write the full query `t'select * from table where name = {name}'` directly, without have to use a function. This matters because the SQL connection library itself can enforce templates. SQL libraries can NOT enforce "sanitized types" because then you couldnt write raw sql without problems. They have to know the difference between "this is hard coded" and "this is a dynamic user variable". And the libraries can't know that, without t-strings.
Show HN: Time Travel with Your SQL
by modelorona | 2025-04-10 22:48:37+00:00
Hi, my name is Anguel and I am one of the developers of WhoDB (https://github.com/clidey/whodb)

I am not a fan of the dbeaver, beekeeper, adminer, etc experience because they are bloated, ugly, and at best okay but not great.

Hence why I started working on WhoDB.

The approach:

- browser-based (chrome/firefox)

- no bloat

- jupyter notebook-like experience (Scratchpad)

- built-in AI co-pilot with ollama (local) or openai/anthropic

We just shipped query history and replay (time travel?) to the Scratchpad.

Would love for you to check it out and give some feedback aka roast us into oblivion:

docker run -p 8080:8080 clidey/whodb

Food for thought:

1. What's your biggest database pain point?

2. Any killer feature missing from current tools?
by bediger4000 | 2025-04-10 22:48:44+00:00
None of the beefs you list seem to constitute criminality. I don't understand how the problems you list merit having a security clearance revoked.

If Krebs might have done something wrong we've got a court system to determine whether he should be punished or not. Part of any punishment would surely be clearance revocation.

As it stands, this is just Trump lashing out, a terrible thing for representative government and a little dumb. We want people to follow laws and to exercise judgement. Trump's punishing someone for behavior that's probably not illegal. We don't want a bunch of cowed courtiers doing His Presidency's wishes. Even an autocratic president shouldn't want that, for obvious reasons.

It's also cowardly of other cybersec firms to just go along with this. Do we not have freedom of speech? I was told in the state of the union address that Trump brought that back.