skysight-inc/HackerNews huggingface dataset:
One way apps get high MRR is by offering free trial for a small period, then charging for subscriptions later

The user forgets about the subscriptions and ends up paying for a while before cancelling

This is probably what apple means by "bait and switch"

Of course I can't say if these app did this or not, I am just saying this is a common practice
The headline could be read as stating this is a problem, but if you read further:

> The report quality is stellar. …

They are reporting getting many useful bug reports from Linux users, far more so than the rest of the population.
One thing that boosts conspiracy theories is the existence of conspiracy agencies in the government.
> Vaccines can injure people

Nobody said otherwise.

What's being contested is the framing of those who are getting vaccine-derived polio as vaccine injured. They're not. They're side effects of the sterilizing polio vaccine. If they were vaccinated, they wouldn't have been injured.

> silent that just foster conspiracy theories, because once trust is lost it's hard to rebuild

Nobody is silencing anyone. We're in an era of the opposite of silencing.

It's increasingly clear there is a psychographic or political profile that will not get vaccinated, facts be damned. I don't think they should be forced to. But they shouldn't be allowed into the healthcare profession, and they should be restricted from public spaces in healthcare crises. (Countries should also be free to restrict them from entry.)
> In that scenario, Apple should have been more specific in their communications.

Often AML policy prohibits this because it could be constituted as tipping off the offender.
I defined the concat function in TS and Python below: https://news.ycombinator.com/item?id=38391702

Now, obviously Python doesn't support it due to a restriction in the TypeVarTuple PEP, which is the literal entire point of everything I have written. But what more are you asking for? What more do you want as an example?

I am not going to touch the intersection function, as I haven't made any claims in that direction.
https://archive.is/lxSNJ
Considering how much data Apple also has on their users, it’s insane that they haven’t yet solved this problem.
It's like any medical procedure or drug. There are always risks and possible side-effects. The idea is that the risks of not treating the problem are worse than the risks of the cure.

Yes some people get infections after surgery. Most do not.

The COVID vaccine killed some people. Most were fine.

Don't make your medical decisions based on anecdotes.
Adapting WozMon for the breadboard 6502 [video]
Officially, There were QtQuickControls: https://doc.qt.io/qt-6/qtquickcontrols-index.html . No one i knew really cared for them though.

Most of the time, QtQuick was meant to target embedded/mobile world, while QtWidgets - desktop.
QtQuickControls 1.0 have been a dumpster fire anyway. So we had to write our own for performance reasons.
QtQuickControls 2.0 were a bit of a licensing headache iirc. (Most of the companies i worked for stuck with Qt5.6 for licensing reasons).
Can you give details on how you do “automatic tagging”?
More specifically the newtype pattern is mostly so that you can implement foreign traits on foreign types.

You can't normally do this since there's a high risk of duplicate implementations, so by enforcing only local types/foreign traits or foreign types/local traits (and of course local/local types and traits), this duplication doesn't occur - there's only ever one implementation of a trait per type, and the ownership of those implementations is very clear and we'll defined.

The newtype pattern simply makes a "local" type that wraps a foreign type, allowing you to implement the foreign trait on the new local type, and forwarding calls of the trait methods to the inner type - all while maintaining the single trait impl and ownership constraints rust imposes.

Further, given all of the compiler optimizations that happen, newtypes are effectively free.

For those who haven't seen it, this is what newtype looks like:

use some::ForeignType;

struct LocalType(ForeignType);

As the parent comment states, it has nothing to do with enums.
Explosively pumped flux compression generator
That doesn't change the fact that these are not "secrets" (except by accident) and that their current secrecy-by-coincidence therefore should not be relied upon
> But not being able to block third party cookies would be a deal breaker.

Chrome has a proper setting for that you don't need an addon for it?
I think my thesis is that rather than looking for diamonds in the rough I need to reset my sense of good enough at least high enough that the exchange of new wisdom is somewhat proportional. I can teach you things and you can teach me things.

As a polymath my natural instinct is to learn by observation and doing rather than engage a teacher directly. Fortunately I can also learn by interviewing, so I’m not completely hopeless. If I’m asking you a ton of questions odds are good I think you’re a mentor or I think you need one.

The problem is that I’ve worked for a couple places that I thought could teach me a lot more than they did, I mistook individual attributes as a pattern that wasn’t there, and what I saw was more (or less) what I got. So at the end of the day I am probably the wrong person to ask. Thankfully other people replied.
When the entire structure of commits is called a tree, I find the name "branch" fitting. The branch is identified by its head commit, so the path from head to root is uniquely defined and that's the branch. (Disregarding merges for now.)
Hmyeah but if you do that you might as well just join by call of course.

And they will notice anyway. A real avatar with full body tracking is quite emotive.
Ha, and of course just messing around gets me something that actually works.

There always seems to be just one more stackoverflow thread to read that has the real answer: https://stackoverflow.com/questions/68435607/how-to-clone-ma... (found via Kagi which I wasn't using before, and the search "pygit2 detached head")

def checkout_branch(path, branch_name):
repo = pygit2.Repository(path)

main_branch = repo.lookup_branch("main")
print(f"Main branch upstream: {main_branch.upstream_name}")

if branch_name not in repo.branches.local:
print(f"Branch {branch_name} not found in local branches")
remote_branch = "origin/" + branch_name
if remote_branch not in repo.branches.remote:
raise SystemExit(f"Branch {remote_branch} not found in remote branches")
(commit, remote_ref) = repo.resolve_refish(remote_branch)
repo.create_reference("refs/heads/" + branch_name, commit.hex)

branch = repo.lookup_branch(branch_name)
print(f"Branch name: {branch.name}")

repo.checkout(branch)
print(f"Is branch head? {branch.is_head()}")

(commit, branch_remote) = repo.resolve_refish("origin/" + branch_name)
print(f"Remote branch: {branch_remote.name}")
branch.upstream = branch_remote

With git reflog telling me the right thing:

d44aedc (HEAD -> test, origin/test) HEAD@{0}: checkout: moving from main to test

And git push has the remote branch already set.

I wish there was a pair programmer AI that you had to explain stuff to. That would enable the "by explaining it, I solved it" phenomenon.
Watch the already limited traffic I send to Google servers go even lower. I am not entangled in their mess. None of the faangs can touch me because I wasn't stupid enough to put my entire digital life in the hands of a company.

I'm looking ten or more years in the future, though. By that time, the Firefox/Chrome duopoly will be broken by alternatives that don't compromise between the user and business models.
The Country with the Highest Murder Rate Now Has the Highest Incarceration Rate
Ah, you don't need to go far. Just go to your local HOA meetings.
Makes sense that Hyundai is willing to do this. Their dealer network is not particularly strong and the experience on the ground is not great.

That said I (know I’m a minority) will miss the haggling opportunity if car e-commerce takes off. It’s amazing how much you can get out of a dealer simply by showing up, leaving, coming back at the end of the day and month and asking for few thousand dollars here and there.

Default no is the way to go.
This year? Leaving a relationship I was thankful the previous year
I meant to have the word not in there. Kinda changes the meaning
Anyone who thinks that landlords can or should be expected to pay for repairs from thin air would not get along with me, true. It's tough being a realist adult instead of a fantasy-prone child, I guess
I doubt it is a global throttling by an IP address. The most common reason is ISP traffic shaping and ISP ingress/egress deals with the networks it is connected to.
We've been on the brink of eradicating polio for something like 60 years.

And then vaccine manufacturers across the world fuck up and cause an outbreak.

This is one of those cases that I have no sympathy for the hype piece, no sympathy for "the science", or the pharma companies making bank off of keeping this thing rolling. Only sympathy goes out to the people hurt by polio and human idiocy.
Reduce can use an async function which wraps the collector in a promise and gives you a ton of control over how it executes because you can choose at what point you want the function to block waiting for previous results.

In this particular case it's a lot more verbose, obviously, but if you're doing any kind of further processing of each element, you can move it into the reduce and be able to control exactly what you get out of it if something fails for any reason, while still running mostly concurrently like all or allSettled would.

const result = await elements.reduce(async (collector, x) => {
const arg3 = computeArg3(x) // explicitly handle whatever errors, try catch, whatever you need
const asyncResult = await someAsyncFunction3(arg3)

// this has to happen after calling someAsyncFunction because it will block until the previous iteration finishes
collector = await collector;

collector.push(result)

return collector
}, []);
Hey, author here! Thanks for the feedback.

I agree that this could have been worded better - I'll make an adjustment to change this.
I don't think it's about having a stance, it's about git's architecture. From the commit graph point of view, there's no such things as moving anything at all, neither files nor content. Commits represent a whole new state of the repository, not a diff from the previous state. The only way a commit is linked to the previous state is via parent pointer, it can otherwise be completely unrelated (and you can simply change the parent pointer without changing anything else in the commit). Any diffs are calculated at runtime. The issue with renames is just a consequence of assuming such data model - you could try to plaster it over with some metadata, but ultimately you would still be fighting against the model rather than working with it.

Many people develop a bad mental model with commits as diffs, because that's what the UI makes them think commits are. It can work for a while, but inevitably leads to confusion later on.
But also

LLM: Unfortunately, as a subsidiary of MSFT, I cannot allow you to create a competitor to Edge. Would you like to try Edge now instead?
Why would they if they can keep aka escrow $100k?
Yes, but the app depicted doesn’t do that.

https://about.instagram.com/blog/announcements/introducing-b...

https://apps.apple.com/us/app/boomerang-video-maker/id145467...
Ask HN: Name names and thank open source maintainers of small projects!
Are there some small open source projects you really love? Take some time to thank the maintainers today. If they have a discussion forum where they welcome feedback, go thank them there. If there's nothing like that you can find, do it here. Post a comment. That's all it takes!

Mention the project(s) you love, why you love them, name the authors/maintainers you want to thank and thank them!

Try to find examples of small open source projects that you benefit from. Utilities, libraries, services, games, amusement software, everything counts!

The big projects like curl, Linux, etc. get a lot of limelight from everyone. Let us try to appreciate the small projects too that you benefit. I'm sure the authors/maintainers will appreciate this gesture!

Happy Thanksgiving!
The Gameboy homebrew community is amazing. Hoping in the future that other homebrew communities grow as popular.
In a real sense, vaccinations are superpowers. Immunity from pestilence was historically taken, across cultures and for obvious reasons, as signs of divine influence.
I should make some videos on how to use it as it is daunting.

But I’m glad you got it to run! Totally cool!!!
For every entrepreneur who gets rich off mooching from vc, 10000 are reading your comment with despair. Most people never get any funding to begin with. Not so different I would say.
Let me address the one in python.

First off we are talking about concatenating tuples.

What you're doing here is called preppending an element to a tuple. Like come on man. Have you not been reading the examples I've been posting.

Your typescript example is relevant. But like I said it's an arbitrarily narrow thing. It's a special case. Typescript arbitrarily only supports only concat. Which is what I've been saying. It doesn't type level programming.

>Why does Python disagree with you?

There's no need to be a complete ass hole. Why does not being an ass hole disagree with you? First off your python example is completely wrong. Second off no point in saying snarky comments like that.
How do you cope with Told Ya So? I’ve found it’s never as cathartic as I think and keeping it to myself is somewhat stressful, so nobody wins no matter which option I choose.
https://ossia.io uses verdigris pretty much exclusively. Worse syntax but lots of advantages compared to moc.
Great overview: Titanium production technology essentially “willed into existence” by the US government (mainly the military branches) but now critical in health care for implants that embed with bone and that do not induce rejection.
> You write a library, then wrap a thin service interface around it. Distribute the lib as needed. Publish the service as needed.

At $CURJOB, we did this but at a higher level of abstraction (an authentication architectural component, rather than a library). I think this is what the author means when they say "writing a standalone server reached through a network protocol".

We see a lot of folks who like the flexibility of consuming functionality as a service or library, as they see fit. We've even had customers who said "we chose you because now we want you as a service, but later will want you as library" or vice versa.

Flexibility isn't free, though. Versioning, support, backwards compatibility (features and performance), even offering the service all become more complex.
> I'm not, I acknowledge everything you say. It may seem that I'm not acknowledging stuff. But this is not the case. I read and understand all your posts.

Then why have you not yet acknowledged the Typescript concat function I posted here yesterday? You have since written 16 replies, not a single one of which acknowledges this. Why do you keep not acknowledging that I gave you the function you consider impossible?
Where did you get a 3 order of magnitude difference? Are you still using hard drives for your storage medium?
Twitter loads on mobile maybe < 20% of the time. This must be the superapp we were all promised.

Also, slightly relevant: Dbrand skins are excellent. Support.
Are you aware of how much "ewaste" is still viable and will 'lose support' for these Big Brother chip designs, but still be plenty serviceable by a normal person?

Windows 11 requiring a TPM has already locked some people out of their zeitgeist. There is more old circuitry that can get the job done well enough, they'd be competing with prior freedoms.
> eradicating the virus probably isn't possible

Every domains expert disagrees. That most people get the non-sterilizing IPV is not a secret. Switching from the sterilizing, but virus-producing OPV to the non-sterilizing, but non-spreading (and more expensive) IPV is a well-run playbook.

Yes, it means when an unvaccinated nutter from Brooklyn gets polio in Europe [1] that it spreads--inefficiently and without further consequence--through the vaccinated population. But those are edge cases which are diminishing in frequency as we switch from OPV to IPV on the periphery.

First we eradicate the wild type. Then we eradicate the weaker vaccine-derived virus. It's a simple, precedented and achievable playbook. All we have to do is keep vaccinating (and keep our poop water away from our drinking water).

[1] https://www.cnn.com/2022/07/21/health/new-york-polio/index.h...
Procreate Dreams Now Available
I have very little experience with QML but from what I saw was that it was more barebones than widgets and offered little advantage over UIC which I also don’t use for the reasons stated above.
Show HN: Distraction-Free Environment Building – Less (E)Mail
Looking for feedback:)
Well, there are still 12 other viruses in the genus (including one newly discovered in 2015 and the monkeypox outbreak of 2022-2023) so I think we are still good on source genetic material. Still possible for one of those species to evolve to be more virulent and deadly...
Been using Firefox on Android for a while now and it's great. Chrome's forced tab groups thing is what pushed me to switch, and it's been mostly great since. Firefox on Android even has proper scroll/fling physics now (they used to have an awful implementation on Android).

Only complaint is text input on some sites is very sluggish and drops letters, notably many of the wikis used by games. But those sites are not exactly optimized either so no idea how much of that is Firefox vs. the site.
I've given up trying to configure git push the branch I'm on so I type this little dance each time :

git switch -c foo
git push
> did you mean git push --args-with-branch-name?
sigh, copy, paste, enter
> I'm working much more directly with the underlying abstraction

Your strategy of seeing things as they are is a useful general purpose life skill.
(I am going to use the word "shell" to refer to posix-sh like shells specifically)

I think a lot of this is a (li)nix culture thing.

Not liking javascript is "cool" in some sense. It's this new fandangled web language, not a "real" programming language in this culture. Shell scripting is not seen in the same light because its older and associated with unix I guess.

Not liking newer technologies in general is a thing that I have noticed, like with Rust or even C++ which isn't that new!

I do think shells have a better excuse for being bad programming languages than javascript though. Shells are primarily an interface to your computer and not a programming language. I use a shell in a terminal emulator to do most things on my system, like managing files and updating the system, you couldn't easily use javascript for this without writing a shell in javascript.

Shells are also much older than javascript, and "newer" shells like bash or zsh need to maintain some level of backwards compatibility.

Mostly shell scripts are used for very small tasks and not for writing large programs which is another factor.

You do bring up a very interesting point though. I think this idea applies to perl as well. It's interesting to see the difference in how these things are viewed.
> You're saying my landlord shouldn't be required to repair it because of incentive?

I'm saying the landlord shouldn't be expected to lose money on a unit. That's really not a drastic thing to expect, unless you are an entitled child who simply expects things to be given to them.

You were living in a rent-controlled apartment and your non-rent-controlled neighbors were likely paying double, triple or more what you were paying. Your expectation of even more beyond the privilege of living in an area that you should have been paying many times more for, is astonishing to me. You have CLEARLY never owned any kind of property, either to live in or rent out. That means there's this entire segment of reality that you have zero exposure to which is tainting your worldview with falsities about what owning property is like.

This reminds me of a story a lawyer friend told me about one of her coworkers. They all work for a nonprofit but this one coworker demanded to be paid more, based on nothing. Complete unrealism. shrug.gif

One day you should try buying any property at all, and try renting it out at cost while also still doing all the paperwork and having to eat the bills that continue to flow (such as mortgage) even when it's vacant. Then, also spend tons of time going to court to attend to frivolous lawsuits made by slightly-crazy tenants.
And easy to fake
Dell G3223Q

32 inch, 4k, 144hz, HDR, HDMI 2.1, About $700. I have one and I'm really happy with it.
While not directly on-topic, this article has many interesting links https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5137497/

Also we don't really know that much of funghi, mosses, lichen & algae, and their symbiotic relations utilizing bacteria.

All in all a rather undiscovered territory.
> It was trained not only to "sound good" aesthetically but also to solve a wide range of NLP tasks accurately.

Was it? I've only heard of pre-training (predict next word) and subsequent RLHF + SFT "alignment" (incl. aligning to goal of being conversational). AFAIK the NLP skills that these LLMs achieve are all emergent rather than explicitly trained.

I'm not sure we can really say the net fully understands even if it answers as if it does - it was only trained to "predict next word", which in effect means being trained to generate a human-like response. It will have learnt enough to accomplish that goal, and no more (training loss tends to zero as goal is met).

Contrast this to an animal with a much richer type of feedback - reality, and with continual (aka online) learning. The animal truly understands it's actions - i.e. has learnt to accurately predict what will happen as a result of them.

The LLM does not understand it's own output in this sense - it exists only in a world of words, and has no idea if the ideas it is expressing are true or not (hence all the hallucinating/bullshitting). It only knew enough to generate something that sounded like what a person might say.
A lack of desire to implement technologies that are harmful to the Web; specifically technologies designed to usurp control from the user and/or its agent.

Remove Javascript and 90% of your challenges go away.
It's necessary that government and large corporations work in tandem to prevent terrorists and child abuse. The point of government is to keep us safe. Without government, licensing, laws, fines, taxes, etc, etc we would keep 40% more income... But no one would want to build roads sadly, and the terrorists and child abusers would be rampant, unlike today. Thank you big G!
> More specifically the newtype pattern is mostly so that you can implement foreign traits on foreign types.

For some definition of "mostly".
I use most of my newtypes neither in Rust nor in Haskell to implement traits, but most of the time to declare - newtypes ;) that wrap other (primitive) types.
I don’t think under current Constitutional precedent a warrant is required to retrieve information exchanged with a third party voluntarily from that third party.

Smith v. Maryland is probably the most relevant case:

https://supreme.justia.com/cases/federal/us/442/735/
> Data that is released will eventually be leaked.

I'll do you one better; data that exists will eventually be leaked. The government already collects, holds and distributes background information on gun owners. If you don't want that data to be leaked, you shouldn't live in an overt surveillance state like the US. Sorry.

> What possible use is there for giving the phone numbers? So that the researchers can contact them?

I dunno, ask the researchers. I'm not defending the collection of data, but your overreaction here is kinda unnecessary. Wait until you find out about FIVE-EYES...