skysight-inc/HackerNews huggingface dataset:
Similarly, according to Henri Cohen (personal communication), the leading number theory program GP/PARI was licensed under the GPL because of the dependency on Readline. RMS personally requested that Cohen change the license of GP/PARI to the GPL when visiting France long ago. I licensed SageMath under the GPL initially, since it heavily depended on GP/PARI, so I didn't have a choice. That said, the GPL makes a lot of sense for software such as Pari and SageMath.
12B
> but the correct response to a question of why they don't make a "better" looking game is that they don't care. Or, maybe, it's a taste issue.

No, he plainly states it is a cost issue. He can't afford to hire the people who could create truly "good" art for his games.
It says 404 there isn't a GitHub Pages site here... where did heptio docs move to now that they are VMware?
Tripod is still around. I still have an account there from 2001, but unfortunately nothing is hosted there now but a default landing page.

It still has a cgi-bin, but I have no idea if perl scripts will run in it.

And surprisingly enough, Angelfire still exists. I just learned they're both sharing a database being run by Lycos because I tried to recover an old Angelfire account and it complained that my new password was the same as my Tripod account.
No more than the local grocery store running out of watermelon after advertising them in their weekly flyer.
Working to Strike a Better Balance
> Ramey told me via email that Readline, far from being an original idea, was created to implement functionality prescribed by the POSIX specification, which in the late 1980s had just been created.

This actually isn't true. The POSIX shell spec (1003 IIRC) was published in 1992. The headline library was in the first bash release; Brian might have written it before starting on bash. The inspiration was the TOPS-20 input JSYS (system call) mixed in with Emacs.

How do I know? Well you can ask Brian; as he reminded me it came from design discussions for bash I had with him on this very topic at the time, specifically that interactive text input should be a library.
Fine by me, it's interesting enough :)
Aspects of Amazon's businesses have been breached in the past. One could argue that tech is Facebook's thing too, but that didn't stop them from storing millions of passwords in plaintext[0]. Drinking the kool-aid of a big tech brand does not a secure platform make. Amazon is inevitably gonna get hit again someday precisely because they're Amazon.

Whether or not they could theoretically provide a more secure service has no bearing on the monopoly argument because the moment that we accept companies completely destroying fundamental tenets of capitalism (i.e. not controlling a market) because they can do it better is the moment that capitalism truly begins to die. Amazon shouldn't have the power to control the ecommerce market regardless of their security, and the fact that there are people out there willing to make this trade-off kinda scares me.

It's also not that hard to replace a credit card since the industry has been regulated to cooperate with consumers on fraudulent claims. As another user mentioned, password managers help here too.

0: https://krebsonsecurity.com/2019/03/facebook-stored-hundreds...
To quote the article:

> (I'm using a function notation without parentheses here, so factorial 3 is the same as what is usually written as factorial(3). Humor me.)
I've seen lots of apartments only offer some 3rd party cable company and 3rd party dsl, that the owners would get kick packs. (Millenium as an example). One place I was at, they only had cable and no internet. I had to use ISDN then IDSL after I moved in. About a year later enough people complained and they put in comcrap with real cable modems.

My folks live in a small town with 1 tower for the town that has verizon, thats the only internet, and its slow.

This one time work put in frame relay to employees homes, they asked for my address and didnt ask if I was a owner, I was renting the house. One day a crew showed up and ran copper to my computer room. I had instant access into the servernet for work. (it was decades ago...)

I'm really looking forward to Sat internet like spacex, so I can sit in a cabin away from everyone, and still work. Someday soon I hope.
Look inward. The problem is likely in your company's management style. Instead of designing a big complex thing all at once, design a truly simple MVP-- and have your engineers involved in pruning back complex or low value features. THEN build the product. It usually far far far harder to debug a broken system than to build a new system from scratch. What your engineers are telling you is to reduce your requirements, think carefully about them and to build a stable system you can then develop on top of.
To be more explicit, that is 1,390 containers per year out of all shipping containers shipped in a given year. That's a fairly low failure rate. And most waste doesn't need to be shipped overseas, just within continents.

And besides, losing one (or even dozens) of these caskets at sea will not result in any noticeable increase in radiation. Multiple nuclear powered summaries have sunk with fuel still in their reactors.

The point remains: nuclear waste is a non-issue, and it is extremely difficult to use it as an objection to nuclear energy in an intellectually honest manner.
> that basically tells people they're wrong for thinking the games are ugly

Uh, no, he freely concedes his games are ugly. The title of the article is "Why All of Our Games Look Like Crap".
I'd probably call Spiderweb games one template, with some variations. Not much has advanced in the twenty odd years I've looked at them from time to time. First one was OK, all others I've tried for a few minutes and been pretty underwhelmed with the progress.
It can be both useful and obscure ;-) I realize it's not black magic, it's just uncommon.

I used this trick to declare and generate code for an entire parser, it's lovely.

I recently switched to the other style of C-macro though:

#define X(A, B, C) ...
#include <math/apply_operators.h>
#undef X

This style is less powerful but doesn't require the annoying \ at the end of lines.
New State of Matter to Boost Quantum Computers
Sometimes the simpler answer is best. I was comparing tool, and using technology analyzers. ️Thanks!
Using HN as a cluster of people with different knowledge and ideas seems like a good basis, although it might be a little too big.

About idea sharing, I've seen some reluctant commenters on a "Ask HN" post about side incomes when asked to share their ideas. I hope it's not a pullback force strong enough to stop your initiative.
> It turns out that the usual categorical semantics for linguistics shares a lot with the categorical semantics for quantum mechanics

so?
The magic of Chinese two step. There is a glut of Yuan in China while there is a scarcity outside.

All you have to do is take a look at their M3. PBOC is printing like no tomorrow, but cleverly puts a wall with they CNY-CNH shit.

Deep Throat says it should be 20 to 1 not 7 to 1.
First off, abide by HN guidelines please.

Second its only your perception that it receives favoritism, because of your mistaken interpretive frame that sees electoral college electors as being about individual citizens instead of as a compromise between two sets of stakeholders: states and the citizens living in them. Until you recognize that states themselves have an interest in Federal elections, you will continue to misunderstand the role the EC plays.

Fairness isn't a simple concept. There can be many mutually incommensurable notions of fairness. Unfortunately, partisans pick and choose those that suit their interests best.

Just as an example from domestic life. Consider a family of 4 individuals with different caloric requirements. One notion of fairness would split a pizza pie into four equal portions, but another would split it in proportion to their caloric needs. Getting everyone to agree on the notion that should be operant is hard because each choice implies winners and losers.

If you don't think states interest in Federal elections shouldn't count for anything, say so, and then give some thought about whether you think states should just be replaced with population based administrative districts that change with the census.
> This implementation only computes the distance if it's less than or equal to the
threshold value, returning -1 if it's greater. The advantage is performance: unbounded
distance is O(nm), but a bound of k allows us to reduce it to O(km) time by only
computing a diagonal stripe of width 2k + 1 of the cost table.
It is also possible to use this to compute the unbounded Levenshtein distance by starting
the threshold at 1 and doubling each time until the distance is found; this is O(dm), where
d is the distance.

That's pretty cool, especially the doubling scheme. I'm using a modified form of Levenshtein Distance for comparing lines when diffing files, and that's pretty expensive since code files that are thousands of lines long are not uncommon. Since you are usually comparing one file to another version of itself, the differences are often small though, so an incremental approach would really pay off.
Since it's perfectly well established at this point that one can be part of a given identity class while still supporting or actively enforcing behavior that's discriminatory towards the same identity class (not to mention inhumane in other ways), this is pretty much a red herring.
You reached Level 3C: https://waitbutwhy.com/2016/03/doing-a-ted-talk-the-full-sto...
Shady thing happens -> Lucky enough for issue to go viral -> Company makes an apology mainly bragging about how much they've paid out on H1 and playing some blame game.

Count me not surprised.

A company that goes out of their way to dispute the CVE, to turn around a day after a PR firestorm, is not actually turning around. They are saving face.
The article has examples of array parameters like

int b[const 42][24][*]

but you can get more fun with variably modified array parameters instead of just constants like 42. For example,

double sum_a_weird_shaped_matrix(int n, double array[n][3*n]) {
double total = 0;
for (int x = 0; x < n; ++x) {
for (int y = 0; y < 3 * n; ++y) {
total += array[x][y];
}
}
return total;
}

has a variable and a more complicated expression in those positions.

But those variably modified parameters can have arbitrary expressions in them, like

int last(size_t len, int array[restrict static (printf("getting the last element of an array of %zu ints\n", len), len--)]) {
return array[len];
}

C++ denies us this particular joy which could have made function overload resolution even more fun.
Harley-Davidson unveils upcoming electric bicycle lineup
I do the exact same thing. This will probably be considered sacrilege by some but I also remap tab completion to cycle through all matches instead of stopping at the first ambiguous character:

# Set up tab and Shift-tab to cycle through completion options

"\e[Z": "\e-1\t"

TAB: menu-complete

# Alt-S is normal style TAB complete

"\es": complete
Ask HN: How did you implement App Store subscriptions?
Like a lot of people, I work on a mobile app that offers a subscription to stream media from the cloud.

When I first read the docs on iOS App Store in-app subscriptions, I was surprised at how complicated it was. I was even more surprised when the docs had gaps in critical areas, such as how to determine when a subscription was renewed, after I went down the wrong path on that. Then there was some inconsistency between documented and actual JSON responses when dealing with receipt verification and status update notifications. I scrounged on the developer forums and Stack Overflow just to make non-intuitive guesses as to what Apple intended for developers to do.

Anyway, I couldn't find any out-of-box open source solutions. It would've been convenient to refer to an up-to-date implementation when I needed to. So I wrote my own subscription server and put it on GitHub.

https://github.com/carpenterscode/superscribe

I'd love some help for the new server-to-server notifications coming down the pipeline for this Fall or whenever they actually come, but first…

1) How did you implement App Store subscriptions? (existing solutions, in-house, etc.)

2) What feedback do you have for the subscription server I posted above? (whether technical design, code, or what to do next)
> Consequently, the Y combinator is not something that needs to concern a competent programmer, who will of course be using strong types ;-)

A competent programmer selects their tools based on multiple metrics, which can include meta metrics like popularity (size of hiring pool) as well as external constraints such as a predetermined platform or interoperability with an existing system.
I have a shell script I named 'e' (for edit) that does basically this. If VIRTUAL_ENV_NAME is set (by virtualenvwrapper), e opens a new tab in that gui vim remote if gvim or macvim are on PATH, or just in a console vim if not.
https://github.com/westurner/dotfiles/blob/develop/scripts/e

'editwrd'/'ewrd'/'ew' does tab-completion relative to whatever $_WRD (working directory) is set to (e.g. by venv) and calls 'e' with that full path:
https://github.com/westurner/dotfiles/blob/develop/scripts/_...

It's unfortunately not platform portable like vimer, though.
See above re: healthcare expenses. College costs are also small in comparison to a lifetime of earning thousands of dollars less. Most college graduates in the US have no debt, and the median debt for those that do is $10,000-25,000. Higher American salaries make that up in just a few years. Finnish National pension isn’t any more generous than Social Security, and other expenses are tiny in comparison.

As to “quality of life”—that’s subjective. If I wanted to live in a 900 square foot house without air conditioning, like the average Finn, I’d move back to Bangladesh.
Not to be glib; it depends what you mean by 'design' and 'abstraction', doesn't it?
Does this work if you want to look up multiple words and grade them?

For example if the input query is "ello" and there is a dict.txt with millions of entries, it should output the words that are closest to the query: "hell", "hello", "fellowship", "mellow" and their respective matching scores (e.g 0.8, 0.9, 0.3, 0.7 respectively). The scores are just random numbers in this case.

(edited for clarity)
RMS wouldn't put readline under the library license because it thought it was too useful.

He was really upset when I wrote the library license (LGPL) in the first place, though eventually the FSF embraced it, though calling it the "lesser license".
He maintains bash too!
I also switched to minimal footwear, it improved my running technique a lot.

The big advantage is that running barefoot or with minimal shoes forces you to run with a foot strike instead of a heel strike. When running with a forefoot strike you use your calves and achilles to absorb the impact, instead of your knees, which was a big help for me. I would always get pain in my knee when running more then 10k, but that is no longer the case.
I can recommend it to everyone who is into running, at least try it a bit, you don't have to run barefoot all the time, but it is really good training.

It takes some time to adjust though, in the beginning my calves and achilles would get really sore after a short run, but after about 6 months of gradually increasing the milage I can run for hours without issues.

Before switching to minimal shoes I ran on zero drop shoes (Altra) for a few months, which I think eased the transition to minimal shoes.
Come on, that might not be obscure for a C ninja master like you, but I'm pretty sure many people had no idea ;-)

Notice how the list is sorted from actually obscure to less interesting.

I even took the time to write a pseudo disclaimer above this one :D
I'm not surprised at the Pivotal acquisition. VMware is determined to succeed at Kubernetes. There is already a lot of integration with Pivotal's Kubernetes distribution both at a technical as well as a business level.
> They're not necessarily bad, I don't mind a lot of the tiles, but something does seem off with it.

The problem I have with it is that it all looks really generic -- like default "RPG Maker" tiles or stock art. The old-school Exile art was simple, but it was unique and had its own distinctive style.
Back when it was written Emacs was pretty popular (well, it had been the default around the lab for about a decade). So users would use it without noticing. The same reason the standard text widgets of Mac OS support Emacs commands.
To me the key question is: Why is iMessage not a normal iOS app?

We've seen numerous iMessage bugs over the years inc. full OS take-overs (often used for jailbreak), soft bricking (endless restarts due to corrupt notifications/requiring a factory reset), crashes that reboot the phone (once), and a bunch of potential for escalation/code execution.

None of this is possible with apps in the normal iOS sandbox. The apps themselves would crash, but they're context confined, they cannot bring down the underlying OS, write invalid notifications, or cause a kernel panic.

But they've designed iMessage to act like a part of the underlying OS for no real reason. You could very easily hand off the most hazardous parts of iMessage's inner workings into the app's context, or even another user space/context confined service, and just let them crash like normal apps do.

Ten years ago it was common for font processing to happen in the kernel. This was problematic because front processing is hard, and bugs occur. Since then we've seen many migrate fonts into userland. Why is iMessage's security model so far behind the times, it is a lot less critical/performance impacted than fonts, but yet has worse security than most font systems in 2019?
Six Lessons Children Need to Learn|PDF File – Tugadar Bible Blog
Is there some issue with the NYT specifically? I'm out of the loop.
Edit: Oh, pay/account wall, right.
To add another data point, I interviewed at Palantir and asked questions about ethics and transparency at every reasonable opportunity: during recruiter outreach, during the product presentation given to the group of candidates interview that same day, in my interview with the hiring manager, and with C-level person who did the final interview.

Each person I talked to acknowledged that the issues I raised were legitimate, and I still received an offer.
You don't need phishing if they have the credit card numbers and name/address information.
> As with climate change, systemic problems can't be solved with individual action.

But they can certainly be improved.
See my update above :)
I came here to post exactly this! Very useful.

Two more quick tips

1. Undo is ^_ (ctrl+shift+-)

2. To learn more tricks...

bindkey -p
>Many countries in Europe, for example, have already destroyed majority of their forests.

You have a source for that? Last I recall, countries like Finland have more trees now than ever before.
Fuck man you're so god damn keen on missing the point, aren't you? Nobody's saying the climate has emotions.

You're not going to fix anything without convincing people do act, and its more likely that you can convince people to act if you can connect with with on an emotional level, rather than just tell them the facts and saying what needs to be done.

We've been telling people the facts for years and it's not done shit.
So they don't charge any explicit foreign exchange fees, but

"Currency conversions are based on currency exchange rates applicable on the date of the Transaction." Well can't they just use a super advantageous measure there? There's no pinning to any external rate in the language.
All craziness but then:

>a[b] is literally equivalent to *(a + b).

Is this obscure? I thought that's pretty much the first thing you learn about arrays in C? It's pointers, all the way down.
I still fail to see the justification for the old formula. A simple principle on pricing is that no one should be surprised about where there money is going. The old pricing model wasn't obvious or direct, the new one (only implemented after backlash) does.
Smith wasn't some prophet. He got some things right, and some things wrong. He was trying to imagine a world he couldln't possibly imagine from a point in time when slavery was rampant across the world, there were nobles and monarchs, and power was as centralized as the technology would allow. Free enterprise is not intuitive because tribes were so small and the world was so sparsely populated, they never had the issue.

Edit: spelling.
One thing that bothers me in this discussion is the 'business model' justification.

>his audience values that particular kind of game way more than it does art

Isn't that ridiculously self-selecting? If he's always been making ugly games, then it follows that his current customer base will be limited to people who don't care as much about visuals. This will always be true, regardless of what genre games you're making.

It absolutely does not mean that he wouldn't expand his audience by making good-looking games. In fact, if what he said is true and most of his current customers don't care about looks, it's more likely an indicator that the subpar visuals are indeed costing him customers.

I honestly have a hard time grasping that this even passes as an argument. It's like someone who sells shit sandwiches saying their customers don't mind the shit taste.
Couldn't the researcher have just sold his finding to Project Zero?

If so, that seems like a superior alternative to immediate public disclosure.
I bet Americans are feeling pretty free with the on-going mass-shootings and rampant outright bribing of politicians by corporations and lobbyists. I am happy with the security. To me American system feels insane and is characterized by delusional statements like yours. You think you are the absolute free'est country on earth, while it's in practise no different to any other developed country. Yet you preach about it like you invented it. Sure you can shoot big guns and pay your own education, but i bet in some undeveloped countries you could run your own kingdom. There you could do whatever you wanted! Such freedom, a true American dream
OK, the nasty and brutish part might not have been huge.

Modern medicine is great, but it turns out to not add that many years to our life spans. Mostly money does. Or more likely, the healthy lives money buys.

Put in other words, it's much better to not get sick than to have great health care!

(I'm not just bullshitting here, this is what the data shows (not that I have any links with proofs to show (so feels free to not believe this :)))
There are some companies keeping the joy in tech alive (see thread about Google renaming Android Q to 10)
It’s super niche, but I have two specific use cases:

- loading an account family members have access to, without linking to the main credit card.

- loading foreign accounts, where small transactions are painful with most cards.
>Think dots the size of periods replacing components that are now the size of rice grains.

That is possibly 100x difference in size? So if this was 1000x the cost per cubic mm, it would only be 10x more expensive per unit of same Capacitance.
I'm curious if a rules engine [1] could be used instead of implementing the logic in code for something this complicated?

Could fuzzy logic be used to build a case when the laws become contradictory? Maybe after the case is built it could be passed on to legal counsel for approval.

[1]: https://en.wikipedia.org/wiki/Business_rules_engine
This thread reminds me of patio11's thread "What I'd Do If I Ran Tarsnap" where Colin took a strong contrarian stance and everyone raged against it and in the end Colin won from all of the exposure.

In case you didn't read the end note: "I am writing these blog posts to get attention to our newest game, Queen's Wish: The Conqueror." I'd say he succeeded pretty well in that aim!
Streaming Video Will Soon Look Like the Bad Old Days of TV