skysight-inc/HackerNews huggingface dataset:
CIS and the various NSA STIGs are about the best actual prescriptive guides.

But threats occcur on a continuum - at a point (which is focused organised crime/nation state actors) you will lose...but there is still a lot of low hanging fruit you can win on.
F* is probably the best equipped at the moment to deal with situations like that CVE at the moment, since its library has a concept of heaps. Basically, any function that can access or modify the "heap" (which in F* is just a set of pointers that are guaranteed to point to a value and not alias any others outside of the same heap) must specify what properties of the state of the heap must be true at entry, and what properties are true afterwards. So in pseudo-types (, the functions for accessing a JavaScript array would be something along the lines of

fn arrayLength(x: JSArray*) -> n: uint (requires nothing) (ensures length of x = n, changes nothing)
fn callToJson(x: JSValue*) -> JSValue* (requires nothing) (ensures nothing)
fn arrayAccess(x: JSArray*, m: uint) -> JSValue* (requires length of x > m) (changes nothing)

(NB: F* syntax doesn't look much like this, but I'm guessing this will be readable to more people on HN)

The stuff in parentheses after each function type are the preconditions and post-conditions respectively. So if you do something like:

let x = arrayLength(someArray)
for i in range(x) {
let element = arrayAccess(x-1)
}

It will typecheck just fine. But if you add the call to toJSON:

let x = arrayLength(someArray)
for i in range(x) {
let element = arrayAccess(x-1)
let transformed = callToJson(element)
// ERROR: (requires length of x > m) not satisfied for all runs of loop body
}

Since callToJson cannot ensure any property of the heap after it runs. In this way you can elide range checks when needed for performance without worrying that you've sacrificed safety.

Covering all the cases a JS engine would need without adding 10 million lines of proofs to the size of SpiderMonkey is still an open problem, but this general approach (known as Hoare Logic[1]) is very enticing, and the type systems that languages like Idris and F* have are definitely the closest to realizing it in more places. There are real software engineering efforts using descendants of Hoare logic like TLA+ (notably Amazon IIRC), but it's rare to see it even in huge projects like browsers.

It's also critical to note that the heap concept of F* is not a totally fixed part of the language; most of the specification of how heaps work are actually in the standard library. That level of flexibility is what I think makes these languages likely to become capable of tackling these problems: something like a JS engine or any optimizing compiler is exactly the kind of place where being able to come up with your own type-level verification model is worth the effort.

[1]: https://en.wikipedia.org/wiki/Hoare_logic
Don't hold your breath that lowered cost would improve anything... https://medium.com/in-justice-today/five-ways-the-media-driv...
They don't exist in Java ME, but a large majority does in Embedded Java, depending on which compact profiles are supported.

They also existed in SavaJe OS.

As for examples, just use the API diff tool and search for java.lang* modifications.

https://developer.android.com/sdk/api_diff/<version>/changes

Or play around with the API level on the reference docs.

To be more concrete:

- Locale.Builder, Java 7, introduced in Android 21

- java.lang.invoke package, Java 7, introduced in Android 26

- java.nio.file package, Java 7, introduced in Android 26

So one needs to do API hunting or just target the very latest versions to be on the safe side that an APK won't just blow up on user's device.
Don't Stay in Monte Carlo (for Autonomous Vehicles Verification)
> Just because it can send MIDI messages does not make it a "MIDI controller".

Technically it does. In the very literal sense. Perhaps what you meant to say is that this is more than just a MIDI controller? In which case I'm still waiting for you to example how (without referencing "build quality", which was never in dispute).

> In fact, you can use it entirely without sending MIDI messages at all (with its control voltage interface).

VC is just what people used before MIDI was a thing. Does anyone actually still use VC or does this device just support it for compatibility with 40+ year old hardware? In any case, citing VC as a reason it's not a MIDI controller isn't a hugely convincing argument given the two are equatable and MIDI superseded VC decades ago.

> It's not just about the build quality. It's about the interface. It's a very elegant and thoughtfully designed sequencer

Personally I'd still class that as part of the built quality if you're just listing off qualities like "elegant". But I will concede that there is a lot of profession gear out there with software that would make most techies scratch their head in confusion.

> and there's nothing else quite like it.

But what is it about that sequencer that is so unique? I’ve not played on that device so happy to take your word for it if you had but from what I’ve seen on their blurb it doesn't sound like it offers anything I wasn't already doing on my Atari ST in the 90s - let alone any of the hardware I've owned since.

Honestly, I'm not trying to be argumentative here. I fully embrace people buying nice hardware if want. And I agree that 1.5k isn't significant for high end gear. But my point was that you can accomplish the same thing for a fraction of the price (with no dip in sound quality either) if you're not fussed about build quality. You claim you couldn't - and you might be right about that. But whenever you're pressed to give examples you just keep coming back to build quality, which was the one thing that was never in question.

> The Rolex comparison is ridiculous, because Rolex watches don't even keep good time. They're overpriced jewellery.

I don’t buy watches so you’d have to excuse my ignorance there but I do feel you’ve completely missed the point of what an “analogy” is meant to be (ie they’re not a literal like for like in ever detail).
Actually the person who makes more efficient use of calories is more likely to become fat because they don't need as much. There's also a lot of evidence that burning through loads of energy will reduce your life span. Eating less is always better than trying to burn more.
Live Bitcoin social sentiment analyses
I think the "career" you're talking about is entrepreneur, built upon the "skill" of programmer. On the other hand, if your "career" is programmer, you're limited by salary, and competing (largely) on skill, which a talented recent graduate could beat you at. If your "career" is entrepreneur, then you get a bunch of multipliers (as Sam calls them) which make your core skills more valuable.

For example, 10 years into your career as an entrepreneur, you'll have a network (and possibly financial assets, and possibly an existing successful business, plus vague intangibles like 'wisdom' and industry insight) which all lets you be vastly more effective than someone who is equally skilled but still in their first couple years.

I don't think Sam is telling you not to build any particular skill, but rather to put yourself on a path where, 10 years down the line, you'll be able to use those skills in a way that other folks can't compete with, thanks to the other assets/resources/multipliers you've built up for yourself, and the fact that you're playing in an area where there is a) the potential for scale and b) you own the upside if it works.

Caveat: I have no idea, just my interpretation of the article.
Lawyers be getting paid.
I've been obese. Then I stopped eating too much and haven't been obese for ten years. The secret is not eating too much.
No way! Compilers won't secretly append to an array.
Hmm, if being in management makes him conflicted from making anti-union statements, does being an employee also conflict someone from making pro-uniom statements?
Micro is often written off as a mechanical task, but this is only relevant with expert systems (like microbots).

There is a lot of tactical nuance and understanding that comes in micro, for a neural network/learning algorithm to understand and optimize is actually very impressive just as much as macro.

Knowing it's optimal to blink when your shield runs out before taking hull damage? To dance your weakened stalker to bait your opponent to overextend? To focus fire but not overkill? To wait for a projectile to be mid-air before blinking or picking in a transport? There's so much more to micro than precision and APM.

To your other points, SC maps have lots of ramps and cliffs and high-ground/low-ground impact (no bonuses, but vision constraints and battle surface area and choke points)

AI development is not easier because of micro potential, because it means the AI needs to be prepared to deal with a wider range of effectiveness for any given unit or set of units, they won't always scale linearly in impactfulness or between different player's playstyles
I don't follow gaming balancing too closely, but I (naively) assume there's some reasonable analytical solution to find tuning. Like I would imagine if you're Blizzard and have logs of all the data, you could just regress race attack/defense/movement/etc. stats to find a potential equivalence point.

I suppose there's lots of interactions, but finding "well Zerg beats Protoss X% of the time", you could balance by messing slightly with resources or blanket buff.
That's a good point. I suppose the goal is that your right to a judicial process must become inalienable, much like your rights to life and freedom that cannot be waived contractually.
It was literally using magnets to write a new value to the end of the tape.
Can you show me a device like cirklon that's a fraction of the price?
I'm certainly no expert but isn't it only cheating by western standards? Wouldn't it be interesting to have a culture that doesn't conform to that standard and see how it fares? Imho it's like a society where everything is GPL-ed, is it really so wrong? Sure social credit etc are horrible imo but I fail to see that the copying of smart ideas without punishment is inherently wrong. It's non-capitalistic, but inherently wrong? I dont agree with that.

Sure, one (sentient individual) should never be forced to share ideas (or anything for that matter, unless one chooses to deny others that right), but to battle that with government granted monopolies... hmm, idk... I feel like we should be a bit more open-minded.
Slices of ZST elements is indeed what I was thinking of, but is there anything actually stopping me from constructing a `std::slice::from_raw_parts(0 as *const u8, usize::MAX)`? What if I'm working on an architecture where the heap and stack are separate address spaces, and every single address in the heap is reachable? In fact, doesn't WebAssembly work this way? If I can declare that my linear memory is usize::MAX bytes, then constructing a slice that covers the entire memory address seems like a potentially-valid thing to do.
I think it can be balanced by the amount of UBI. UBI should just be enough to make sure no one goes hungry or has to sleep out in the cold. That, in addition to public health care and education and access to libraries and opportunities for self-growth. Anything more can and will be misused. Anything less makes it too risky for people to experiment and fail. At least that's the theory I have in my head. How exactly to determine this amount fairly? I don't know.
Arbitration is perfectly reasonable. I can imagine in the old days (even now in some regions) the elders would gather to settle /judge disputes so they'd be no fights, killings and so on.

But today, the fact that companies, with a lot more lawyer money than individual employees, push that, shows all we need to know.
Apple’s next AirPods will support hands-free ‘Hey Siri’ voice commands
Google and a large majority of Linux kernel developers think otherwise hence Kernel Self Protection Project.

According to Google 68% of 2018 CVE's were caused by C's lack of bounds checking.

Google is also collaborating with ARM on their memory tagging extensions to tame C.

Like everyone else you can go watch the Linux Kernel Summit 2018 talks.

Oracle also thinks otherwise, hence Solaris with SPARC ADI memory tagging turned on by default.

DoD has a report where UNIX typical exploits weren't possible in Multics thanks to PL/I instead of C.

https://multicians.org/b2.html
The paper http://karubian.tulane.edu/wp-content/uploads/sites/9/2018/1...
I think there is some debate about what the neural net did and what was hardcoded. So far all starcraft AIs consist of hardcoded intelligent micro ruled by a neural net that picks one out of less than 100 possible hardcoded choices. And things like "expand", "scout", "group units", "micro" are hardcoded outside of the neural net, part of the API in fact. When the researches said they only used 15 TPUs for 14 days on LSTM, this makes me think they really narrowed down the search space of the neural net and hardcoded a lot of the micro or at least trained separate micro nets.
As the article itself points out, the Chinese media is full of stories about Chinese people being targets of scams by food producers, eCommerce companies selling fakes, and scams by one another (dating scams and so on). These social-credit surveillance programs have been marketed to the people they're aimed at as a benefit that protects them from potential crime. It's the same everywhere - here in the UK we have the most CCTV cameras per capita than anywhere else in the world and they're always talked about by the government and the police as tools for "protecting the people from crime." TV documentaries about the police feature them 'following' criminals around town centres using CCTV. It's impressive. It works. The fact the cameras also gather data about everyone else who isn't a criminal is never mentioned.

People respond well to things that make them feel safer, regardless of whether they're actually safer, so privacy-invading surveillance technology is marketed as a something that does just that. The actual reason why governments want it, in order to keep the people in check, isn't good PR.

In the case of China, they've had decades of government PR telling the people to be fearful, and at the same time selling them the thing that means they can stop being fearful. It's not surprising the people like it.
How Evolution Really Works
ON the importance of benchmarks and entitlement values
I wouldn't say "full office". I use Office on Mac and it's clearly not as configurable or polished as Windows :(
”is to not eat more calories than your body uses”

No, it is for your body to not take in more calories than your body uses. Some bodies may not take in all excess calories you eat, just as a car doesn’t use more gas if you keep the gas topped up, or do take them in, but have ways to burn them of instead of storing them in fat (say by moving more blood through the skin), just as some oil refineries flare off gas that they don’t need, rather than storing it and becoming larger and larger over time.

So, eating too much is the cause, but what constitutes too much can depend on the person. If your digestive system has a hard limit on the amount of stuff it can take in, it may even be impossible for you to become obese.
First Go, now Starcraft 2...I fully expect archery or women's golf to be conquered next. Someone at deepmind must have an axe to grind with Korea ;)
so, obviously, calories in and calories out are what controls your weight. But that doesn't conflict with the idea that your success at managing your weight in a world where calories in are increasingly cheap and calories out are increasingly expensive is largely genetic.

I think I can speak to this a little bit; I've taken four points off my BMI in the last year or year and a half or so, all through counting calories in and calories out... and I'd rate the experience as slightly easier than trying to breathe a little less.

The most annoying part was that everyone... fat people and skinny people would give me a hard time for actually tracking everything I ate. "Just eat less," they'd say, along with some advice about how they have a friend who lost weight on some fad diet that restricts not how much you can eat but what you can eat. I had a doctor who told me to take the sides I'd normally eat and cut them in half, you know, like I planned my meals or something.

For me? writing down what I ate was key; Obviously, (and this is likely the genetic part) some people have something that causes them to be not hungry anymore after they've eaten enough food. Whatever that is, it's obviously not working properly in me, or else I never would have gotten fat in the first place, so I need some external tracker to figure out if I've eaten enough.

(The other thing that seemed to be different about my experience than about most people's was that if I went a lot below my maintenance caloric intake, say, significantly more than 40% below for several days in a row, my work performance would collapse. If I tracked my caloric intake and kept it around 25% below what I burned, i was okay, though it was still difficult.)
Totally. What would be interesting to see is a low APM bot that still beats human players. A lot of that macro was unbeatable.
"Prof Tom Sanders, emeritus professor of nutrition and dietetics, at King's College London, said: "This is an important and well conducted study confirming that precocious severe obesity is often genetically determined"

No. It says that thinness is genetically determined.
Yes one is the flip side of the other, I don't think that allows the 'severe' though.

Professors should surely be choosing their words more wisely.
I never said that object orientation == strong typing, rather that Smalltalk/Simula OOP isn't the only way of doing OOP.

CLOS, Beta, SELF, Oberon (the first version), Component Pascal all have explored different ways of doing OOP.
I've been imprecise, sorry. What I meant: how lead chargebacks to a credit card to a negative Schufa entry? I've never heard of this.
This is a toxic and harmful attitude.

There are genetic, dietary and fitness components to obesity. This is not disputed. At least one of these components is outside of the control of the individual. Others can be influenced.

If someone is chronically obese, the best thing for them is to work on what they can control with professionals, which might normally include a dietitian or a personal trainer but they might also benefit from work with professionals in other fields -- psychiatry, comorbid diseases etc.

And having friends support them in this process helps too. (I don't think their friends should tell them "fat is beautiful," by the way, but I'm not a professional in any of the relevant fields, so does my opinion even matter?)

At no point do I think shaming the obese (which is basically what you're doing when you say "this is simple and it's your fault" does more harm than good.

Shame isn't listed anywhere as a treatment for any disease or disorder as far as I know.
If I'm 6'4" and 20 years old, I can probably eat 2500-3000 calories a day and stay slim. If I'm 5'10" and 50 years old, I can probably east about 1900 calories a date a stay slim.

It is a huge difference. But, it doesn't matter. Some people can eat more than others and not get fat. There is no justice in the universe ;-). Whether it is some gene, your body size, your age or something else, it doesn't matter. Eat too much and you will get fat. Don't eat too much and you won't get fat.

That last bit is super important. There is no illness that causes people to starve to death even when obese. Your body is a factor, not an excuse (Ha ha! Here I am quoting Arnold!)
Never mind if a person (or Aliens) can get in...can someone feed a firehose into the room from next door and turn it on?
So in practice, nobody uses actual x86 assembly anymore, but everybody uses it as a target for compilation. It’s just like The Birth & Death of JavaScript¹, but non-fictional, and on a lower level – a Birth & Death of x86 assembly, if you will.

1. https://www.destroyallsoftware.com/talks/the-birth-and-death...
Maybe I'm reading "cheating" too literally but I can't imagine any scenario where I would want someone's expertise who copied other's work instead of creating the work themselves. At best I temporarily have a small lead, at worst I'll get sued or kill someone through hiring incompetence.
> I would not use this editor as a result of that clause.

Because it is too closed or for fear that works created using the editor would make your use commercial? Surely the license only applies to the code?

Edit: Okay, I'm not sure, this is what they say on their GitHub

> Oni 2 is licensed under the CC-BY-NC-4.0 license.

> This means that Oni 2 is free to use for non-commercial or educational uses. You are free to distribute and modify Oni 2 for personal use, as long as this README and License are included unmodified.
"A well-run union bargains for what its membership wants."
how? if it's via democracy then no thanks, as that comes with so many issues it's not even funny.
We hear a lot about Chinese cheating, from sat scores to ip theft. I've long wondered - why is cheating endemic in China whereas you don't hear the same complaints about people in Taiwan, Hong Kong, Singapore; places with large ethnic Chinese populations which should be very similar culturally to mainland China. It seems implausible that the value systems in these places would have so widely diverged in a relatively short amount of time. Or perhaps it is the legal and regulatory environment (or lack thereof) that brings out the worst in people when they know they can get away with it?
AFAIK Android originally didn't use OpenJDK, but rather Apache Harmony, which is an IBM reimplementation of the Java JDK. So in that sense maybe Oracle does have a point (if API's are deemed to be copyrightable).

I think Android has since switched to OpenJDK, so it seems to me what Oracle and Google are arguing about is whether Google owes Oracle some damages for their previous use of Harmony. And of course, the lawsuit could have larger repercussions as well, if API's are deemed to be copyrightable.
IP theft is not just copying the idea, its stealing of non public documents/prototypes that helps you implement the same product without as much research.
InspectIT to catch the OpenCensus wave
incomplete and yet has 1600 stars now. good job. also it's top on HN.
Yes! The purpose of posting those links is to point new readers (and old ones!) at the earlier threads.

Just to be clear, if the repost was inappropriate we'd have marked it [dupe] above. The rules for that are at https://news.ycombinator.com/newsfaq.html.
It's important to realize that lack of public outcry/protests, or even public approval, does not necessarily mean that they support it. All my Chinese Tsinghua/Peking friends (20+) find it horrifying, yet many of them will find ways to show support for both this and other government propaganda, because they realize doing so will be beneficial for their future (even those who don't realize the government is building a profile based on everything they've ever said can still find value in sharing the propaganda because their friends, family, coworkers, teachers and bosses will see that they're "patriots").

Why should they risk their future/life fighting for something they don't believe they have the ability to change? It's like asking, why weren't the Germans resisting Hitler's government? It's easier said than done, heck, I even feel worried about posting these comments even though I don't live in China anymore and have no intention of ever going back.
any industry that has unions and/or requires unions, is an industry that is ripe for automation.
Thoughtcrime is now being called Hate Speech by leftist witch hunters from the Ministry of Love.
I bought 40€ glasses online, send them back and got 200€ glasses at a normal shop.

I see the issue that everyone should be able to get glasses as it is that important but I will not compromise my eyesight quality because of a few hundred bugs.