skysight-inc/HackerNews huggingface dataset:
> The mystery to me is that if my suspicion is correct, then the CEOs and upper management must think that devotion is ultimately (long-term) more important than productivity is to the bottom line.

That's actually what Jack Ma asked for in his original WeChat posts. You simply can't ask a passionate employee to work in a fixed schedule, because they prefer working MUCH LONGER than 996.
> * having judges that live within a changing society is what allows laws to be changed in accordance to what the state of public debate is at a given time

I agree that the system needs to have a feedback loop and the law should evolve over time. But IMO there are better ways to achieve that than introduce a biased decision maker. You can rely more greatly on legislation or bring in some evolving value system into your model.

> * it is harder to manipulate all judges in the land than changing one algorithm or its goals. The distribution and fragmentation of power is a feature and not a bug. It makes some things weird and others slow, but ultimately it helps making a dictator take over hard.

Fragmentation of power is generally a good thing. But the idea of having many judges as fragmentation of power is not actually fragmented. It would be fragmented if they all heard your case and sentenced you accordingly with some aggregation method. Or if they have a small jurisdiction. But in many cases, one judge (e.g. your sentencing judge), has all the power (ignoring appeals).

Let's assume I wanted to influence a sentencing judge. I could learn his biases. I could hire a lawyer with a good relationship with the judge. I could give him some financial incentive (e.g. kick backs from a private prison or campaign donations). I could manipulate jury selection using racial biases. I could look at the statistical properties of sentencing during different parts of the day and try to manipulate that. Less common in the US, but I could intimidate or threaten the judge.

How would that play out if it was an algorithm? I could hack into the administrating body and somehow retrain the algorithm? I could try to subvert some data scientist working on the algorithms and have them introduce slight biases into the algorithm that would eventually favor me?

I'd take my chances with the human judge. And that may be a good thing, but I don't think humans are harder to manipulate than algorithms.

> And it needs to be able to factor in circumstance in order to stay humane.

Again, I think it's a lot easier to tell an algorithm consider these new factors with the explicit goal of increase/decreasing X.
> But you lack the fundamental understanding that nothing in China has this protection. While our allies do.

You asked for a justification and you've answered your own question.

It happens because there are no protections for these thins in China. It is not in their culture to assign intellectual property protections in the way US culture does.

There's your justification. Their culture is different and they see yours as ridiculous and unenforceable.
Don't pollute your Windows Machine with tools.
Spin up a VirtualBox instance or delegate a Docker Image to be your dev environment and every X months update it with newer updated tools.
Because you are going to make the money and reward. Only the most desperate idiots would work that hard for someone else's dream.
We had built in PDF viewers in IE long before Chrome. In fact, it was even better because it was an OLE component, so IE could embed Adobe PDF, not the cut-rate alternative Chrome has. (Edge is even worse, it’s PDF viewer can’t even search large documents properly.) We have massively regressed on that front over the last 20 years.
> It's a taxi company. They have a web site and a mobile application, but so does several retailers as well as pretty much every bank out there

Taxi companies own taxis, calling uber a taxi company is too simplistic.
Show HN: How I Wrote JavaScript Framework
As someone who works with this tooling nearly daily I can tell you that OpenAPI is unfortunately quite messy.

It seems like Swagger v2 was reasonably well-liked so the idea was to make OpenAPI the best possible way to describe any kind of REST API in existence. Since the spec got more or less merged with JSON Schema it has become extremely unwieldy and full of edge cases.

At my company we're trying to develop tooling around OpenAPI but a lot of things (especially related to the 'oneOf'/'anyOf'/'allOf' features) are extremely ambiguous.

Not to mention that at least the Java versions of the parsing libraries are full of inconsistencies as well. For instance, there's a OpenAPI parser which also has a 'compatibility' mode so it can read Swagger V2 specs as well. Unfortunately the data you get from reading a Swagger V2 spec via that compatibility layer is different from when you'd first convert the V2 spec to OpenAPI v3 through an external tool.

The project is certainly ambitious and I completely agree that this is a hard problem to solve, but honestly I would say that if you want universal adoption of a toolkit for writing API's then the API specification language itself should not be so difficult or ambiguous in its implementation.
a colleague of mine pointed out many years ago that the slogan is not in fact 'Do be good' but rather just 'don't be evil'.
>As this Sydney Morning Herald article points out, STEM includes fields like biology, which don't have crazy wages.

Correct. The comment was clearly directed at the programming profession.

>That 'crazy wage' for a 19 year old does not mean that all professional athletes are well paid.

That's true but unlike professional athletics, programmers are paid well on average.

>"Extra-market forces" would be like the government including two years of plumbing training for all high school graduates. That's a non-market way to drive the cost for normal plumbing jobs down.

I really don't understand this argument. Government isn't trying to get people into STEM in order to drive down STEM wages. That is not how government works. That is not how politics works. This is not a good metaphor to understand the motivation. Governments will always have programs and policies to move people into specific industries or move people out of specific industries. That usually stems from good-intentions, values of the population (Armenia loves Chess, and therefore teaches Chess to kids in primary school), and maybe for some economic, ideological or political reasons.

>Similarly, the government might greatly increase the number of $10,000 scholarships for CS majors. This would almost certainly result in relatively more people with CS training, compared with other fields.

And that would be preferable to what the US (and Canadian) government is doing - mainly underwriting huge loans (or subsiding tuition) for majors that have low probability in resulting in a good paying job.

Trust me, if government wasn't involved in post-secondary education, you would see an even larger move to CS because no bank would ever underwrite a student loan for a 4-year history degree.

>The prediction is that this results in a higher supply of programmers relative to demand, and thus a lower salary.

OK. This is basic econ. Having said that, the math isn't so straight forward. Sometimes increasing the pool of engineers can also increase the market for engineers because more companies relocate to the area, or more companies get started by those engineers.

>Companies don't like this because it places the expense on them.

All employees need some training because no business is identical. But OK, I understand the point you're making though I think it is nonsensical.

For example, you're not seriously expecting a business to provide a 4-year degree program to train their engineers? That would be like building a house by grabbing a guy off the street and training them on how to build a house. If a company needs programmers to work on their software they will advertise for professionals with those skill-sets. This is why they pay good money for those professionals.
They are already seeing less innovation from phone makers. Phone makers have been short on ideas for a long time now.

It didn't require any IP theft for that to happen.
Also on an immutable array, `first` should always return the same value where `shuffled()` may return different values each time it's called.
This is actually why GCC has (or at least did at one point) an extra clause to the GPL to specifically allow its output to be used in non-GPL programs. Because the compiler output necessarily has to copy some bits from the compiler, it was the FSF's belief that programs compiled with it would become derived works and hence be forced to use the GPL. They didn't want that, so they added the extra clause.

You may think that's a strange interpretation, but before GCC many compilers took that exact same stance. You bought the compiler and you did not have a license to distribute the resultant binary. You had to pay an extra fee for the right to distribute your own compiled code. That pretty much stopped when Borland released a compiler with a mostly sane license. You can imagine why, though, that Cygnus made so much money doing contract work for GCC in the embedded space -- every other compiler required royalties for everything you shipped!
Nobody ever backs up this assertion.
https://www.intentapp.com/blog/weight-loss-cost/

All DIY dieting is very unlikely to work, and low-fat dieting is slightly worse than other diets.

If you can pay $200-300 a month, weight loss medication has a fairly high success rate (50%-70%)
What I think is fundamental is that employees are not payed for their work, but for their time. The implicit thought pattern is that they feel they own your time.
Is this describing something similar to how Haskell's return types work?
You're still not covering the core of his argument. He also says:

>“If you find a job you like, the 996 problem does not exist; if you’re not passionate about it, every minute of going to work is a torment,” Ma said in a post on his Weibo account on Sunday.

The point he's making is not that 996 is bad, he's saying it's bad for people who aren't passionate about what they do. It only works for people who are passionate about their jobs.

Now let's take that into consideration shall we, do you think he's saying that it's fine for you to turn up to BABA and do a 9-5 and tell your boss that you're not passionate enough to do 996? Hell No! In fact he says:

> if you’re not passionate about it, every minute of going to work is a torment

So here's the choice he's laying out - either you're passionate and you're happy to work 996 (and by corollary you need to work 996 to demonstrate your passion or commitment) or every moment is a torment and clearly you shouldn't be employed there.

So no, he's not endorsing forcing people to work 996. He's endorsing forcing people to pretend they want to work 996. Which by the way, isn't sustainable for most people no matter how passionate they are.
I personally see that as a feature because you can then specify what triggers you want recorded. eg just your nick? What about other phrases like an unusual hobby you might have? etc
Correct me if I'm wrong. But it's possible to mix native with some Flutter + RN for laying out views right? I'm pretty sure that's what Instagram does (mainly in Obj-C but some views are in RN) and Snapchat (Flutter). Doing this would make sense when running apps on both platforms yea?
Diwiner – Take notes during wine tasting
https://www.diwiner.com

DIWINER is for wine lovers, straight from Italy, the country of taste, flavor and beauty of vino. Save your favorite wines with useful personal references and inspired emotions.

- Take a pic of the label and get info on your wine

- All your wines on your mobile, tablet or desktop

- Find your favorite winery at a touch of the screen

- Analyze visual, smell and taste to rate all your wines
Ask HN: What tool/trick has most improved your programming productivity?
Whatever do you use, NEVER, repeat NEVER use windows for developing if your account name and home directory has non-ascii-7 characters on it.

Just setup a user called "Jalapeño" and see how many tools break.

If your username is ascii-7 friendly, it's a good platform to code.
And in that sense, the purpose of copyright has never changed. It is still used to decide who gets access to what information, with all the complicated licensing arrangements and insane life of author plus 70 years terms.
I don't see any design which could allow civilians to use the encrypted signal without also letting the attacker spoof the same signal.
If terraform saves its state to an S3 bucket it is really fairly similar.
Also just skimmed it and concur; article barely delivers on its title, if at all.

Currently working with modern JS myself in context of Node (after a long hiatus that largely predates ES6), and the trend with frameworks in that space seems to be minimalism combined with composability. Guessing this is due in part to the whole microservices phenomenon in past years, or more probably developers just being fed up with monolithic frameworks in general.

Personally I think strict adherence to and/or overuse of most design patterns is itself an anti-pattern, though there are notable exceptions (namely observables, which constitute a cornerstone of event and reactive architectures).
I've written an entire XP planning tool in Org mode. Unfortunately I don't know where it is any more (it was a long time ago). I should dig it up.
Kotlin/Native might turn out to be that, but it depends pretty much where JetBrains is willing to take it.

In any case, as rule of thumb, systems languages that come with an OS/platform usually win in the long run.
My ideal simple language is Java 1.4 without checked exceptions.
North Korea Could Exploit Cryptocurrency to Fund WMD Programme
Alexa Is Spying on You to Help Amazon Improve It
no Android version?
what the OP describes is caching.

Each lambda has some state which, if one is sensible can be used to cache things. Having a db connection cached is perfectly sensible, assuming there is some retry logic.

Making an API around RDS its just a boat load of tech debt, when its trivial to cache a connection object. Not only that, it will add latency, especially as the goto API fabric of choice is http. So a 20ms call(worst case) can easily balloon upto 80ms (average)

its now possible to have SSM secrets referenced directly in lambda environment variables, so I don't see the need for the complications of doing it yourself.

Lambda is just cgi-bin, for the 21st century. There is nothing magic to it.
Any product is going be a poorer fit for customers fitting a less common profile than those fitting a more common one. You will never get rid of that. Even if performance between races equalized due to a disproportionate amount of resources being expended on adapting the product to fit those belonging to minority racial groups, performance between unusual and common facial types or minority and majority ethnic groups within the races would exist.

There will always be some minority group that the product fits less well with, because you can divide people into an infinite number of groups based on an infinite number of traits.

This is a consequence of R&D resources being finite and the complexity of the world being unbounded. It's not sign of a moral failing or mis-placed priorities.
How so? I know Haskell has pretty extensive type inference, but I’m not sure exactly how it relates here.
https://www.theverge.com/2015/3/9/8175491/wordpress-automatt...
In view of games as art, these are definitely mandatory stylistic choices involved in creating a unique experience for the players.
Modern facial recognition uses landmarks, much like humans do. First it identifies a face, which is essentially a flat 2-d plane. It's able to identify locations of the nose, ears, mouth, chin, etc. It then looks for relationships between these features (e.g. how wide is the mouth, how far apart are the eyes, etc).

It's a much simpler problem than the general image detection. Imagine how many different types of dogs you can encounter at various angles, sizes, colors, perspectives. For that it's much more of a black box as your model would have to support detecting a dog from behind, side, front, above, sitting down, walking, jumping, standing, dogs with long tails, short tails, long hair, short hair, etc. Now think about a face. Most faces are very much alike.

https://github.com/ageitgey/face_recognition
Jetbrains IDEs and learning using flashcards.
Or just not track people [with cookies] when it's not essential?
That works only until what you can "understand" and "want" changes.

I really like to learn everything about every tech that I use, bordering on obsession, and after a few solid times that I hit roadblocks or had to fight with the tool because it is too "simple", I started to grok the difference of "simple" and "easy".
"In the end, why did anybody care? Was it just a pleasing respite from gruelling news? Like so much of our lives with technology, the episode could be read as a reason for either optimism or gloom. In an instant, people had raged and imagined conspiracies; most did not. Many helped. "

I wonder sometimes how much time is wasted on stuff like this.
Data Science (Cheat Sheets), All in One Place
Sure, and get 350 mln a week to fund NHS.
The situation you're describing sounds perfectly acceptable and it sounds like he'll grow up with a healthy relationship with technology. Of course there are no right answers when it comes to parenting.

My cousin's youngest on the other hand... Every single family event since he's been old enough to pick up an iPad he has sat in a corner and not communicated with anyone (he must be 8 or 9 now). Earbuds in, fixated on the screen. Last family event I was at he came over to my cousin to get his fingerprint to authorise some purchase or other and the scuttled back off to his corner, which is the most I saw him move all day. He won't even put it down if we're singing happy birthday or taking a family photo etc.

I wonder what he'll be like when he grows up - whether he'll be able to communicate with people and form proper relationships. I know I've never managed to have a proper conversation with him. For what its worth, I do think my cousin and his wife are great parents and their other 3 kids grew up into perfectly respectable young adults, so I'm sure they know what they're doing.
New Ways of Seeing
shuffled() can accept randomness generator, this form just uses the default.
Also .shuffled() returns a new array. For in-place shuffling there is .shuffle(). This pattern is consistent: verb() is for in-place actions, verbed() if for actions returning a new collection e.g. sort()/sorted().

Btw, there is also .first(where:) which accepts a predicate.
I don't have any data for the F-1, but the typical high power rocket engines of these days had an explosive temperament that needed to be tamed on the test stands. I recall that the SSME had a tendency to self-disassemble vilently on its test stand due to turbo pump failures that took a long time to solve. Other rocket engines probably were very similar in that regard.
The reverse seems weird to me. Things like the first element, or the count of an array seem conceptually more like properties than functions: they're just values derived from the data structure.

The fact that you need to use function call syntax for things like this in other languages seems like it is unnecessarily exposing implementation details to the API because of limitations of the language.
Dark Patterns: Submission by Design?
They are acting as if this "full self driving" silicon is rather expensive...

I dont doubt that, because designing a large fully custom recent tech node ASIC is a very expensive endeavour, and the engineering cost will be huge when divided over just 100k units.
Light syntax, algebraic datatypes, type parameters, very solid enumeration, the whole ObjC library ecosystem, semi-decent (compared to Haskell/OCaml et. al) pattern matching, immutable and mutable data structures (Array vs ArraySlice for example).
Search for RSS aggregators like Feedly. You can follow whatever blog you want and add them in a timeline.

Or maybe you want something like https://svbtle.com/
I don't really see how "quite similar to Rust" and "GC, no borrow checker, no multi-threading safeguards" can both be true at the same time.
Demonstration of 4 Row Janko Keyboard [video]
You're right. However, being there and doing low-impact work like planning the next day in my head yields the same suspicion.
Heavy caffeine consumption is so normalized in nerd culture that I didn't even think about my intake. A friend of mine who also has social anxiety quit caffeine and made me realize what a large effect it was having on my mood.

The physical withdrawal symptoms of cold turkey are pretty eye opening.
"Too many connections!"

Seems overloaded... show's what happens when you expose a simple server to Show HN!
I think that Jack Ma his trying his best to reduce the Chinese population. Today Chinese population is already almost shrinking, and policies like that will make sure that having a child will be left out of the equation. Can you imagine having a child with such a work schedule? Even if one the partners stays at home, it will mean that you will barely now your child (a few hours on Sunday).
What is strange is that the communist party realized that this will be a big problem in the future, but don't link that to company policies like that...
Is there a validator to verify if an implementation of an algorithm respects the TLA+ specification? Can somebody please tell me (some of) the main differences between TLA+ and JML?
They are more practical, specially when using a computer.

Besides the gimbal lock problem mentioned in another problem, Euler angles are not easy to compose. It is also not obvious how to calculate the misorientation between two rotations with Euler angles, but it is trivial with quaternions.

Other approaches have their own problems. For example, matrices are more expensive to use in a computer (normalizing a quaternion to avoid rounding errors is much faster than normalizing the equivalent matrix, and quaternions need less memory), and Rodrigues vectors, while usually very useful, present the problem of infinite values for rotations of 180 degrees (which, in my opinion, should not be a problem, but it is in many programming languages).

At the end of the day, quaternions present the best compromise.
Yeah, just to cheer you on, if you are using Emacs just for Org mode you really can just learn the Org mode commands and use the editor just like you would any other insert mode editor. If you want to do complex editing, then it helps to know Emacs.

However, Evil mode now works pretty amazingly right now if you like Vim. I use Emacs with Evil and Vim practically interchangeably. My biggest frustration is a bug (which is probably unfixable) with how undo doesn't always correspond with a vi command. There are some details with how buffers are specified, etc, but you can customise it to get close.

Spacemacs is a pre-setup Vim setup for Emacs using Evil mode which is highly recommended, though I haven't used it (I like minimal setups). I don't know if anyone has ever setup edit-mode key bindings for Org mode, but I just use the Emacs ones (I was originally an Emacs user before switching to Vim... and then back to Emacs :-P )