skysight-inc/HackerNews huggingface dataset:
Talking of Apple Clang as a crippled compiler comes across as very uneducated opinion to me. It goes through an extensive validation / stabilization for many months before being released. So yes it adds some delay in getting new shiny features, but calling it "crippled" seems like a very much uneducated opinion here.

You can have an idea about the integration exactly what version from upstream Apple is integrating by looking at Swift (they somehow have to be in sync).
I guess the last Xcode update was: https://github.com/apple/swift-clang/commits/swift-4.1-branc...
The next minor update will likely be this one: https://github.com/apple/swift-clang/commits/swift-4.2-branc... ; so judging at the history I bet you'll get a version of clang that is based of clang-5.0 upstream.
And likely the next major Xcode (10?) would be based of this: https://github.com/apple/swift-llvm/tree/swift-5.0-branch ; which is based off clang-6.0. Note that this branch will very likely get many bug fixes in the next ~6 months.
(the above are only guesses based on past release, I don't know anything about their current plan or schedule).

The Apple engineers will try to build all variants of the Apple OS for all the HW they ship with this new clang-6.0 based branch. The usual process is to fix upstream the development of clang-7.0 and cherry-pick in these branches.

So the compiler that you'll get with the next major Xcode, even if based of clang-6.0 will have many/most of the bug-fixes that will be in clang-7.0 (release in July), but not most of the new features (and new bugs!).
Caveat: this apply only to ARM64 and X86, of course Apple does not try to backport bugfixes for platform they don't support.

(Note that libc++ is handled a bit differently.)

Disclaimer: I was part of the Apple clang team until ~1y ago.
Vysor [1] has been around for a while. Does this improve upon the concept?

[1] https://www.vysor.io/
Agreed. Further, I hold onto some hope that there’s still a window to change the public discourse around the terminology. There should be no such thing as “identity theft”, as that pushes the burden of the actual crime (defrauding creditors) onto a non-acting third party.

It is creditor’s responsibility to verify the safety of their investments.
1. string_view makes for much more verbose code when it's the more common version.

2. string_view makes no sense when many str are not actually views into strings but either static data or "cast" bytes.

3. string_view makes no sense when str is the basic builtin type.

Renaming String to something like StrBuf might have made sense, but it's not like it would have been any clearer, people get confused by Path/PathBuf all the same if not more so.
Another could be someone lets you use their land for free, so you use the land to grow a unique breed of flowers. Later you find out that person that owns the land is selling honey from bees that visit those flowers (solely or in some combination with other flower patches). This honey revenue depends on your proper upkeep of your flowers.

Okay, fine, its the cost for using their land.

But THEN, you find out that your flowers (or, again, the combination) are so unique, that person begins making millions of dollars in revenue off the honey.

As the primary producer of the income, I'd feel a bit shafted if I didn't get some of type of reciprocation.

Doubly so if that person accidentally let a malicious entity on the land who then stole my unique breed of flower and then started selling/reproducing it.
I understand your point, but it's hardly the best example of a soundtrack that doesn't get in the way.

Red Alert(1) from 1996 got a "soundtrack of the year" award. Initially I was puzzled by that. It has a few great tracks, but not amazing. Until you play the soundtrack in a loop. The tracks are very atmospheric and totally unobtrusive.

Another soundtrack by Frank Klepacki - Tiberian Sun - is also not something you would play on a concert. But it serves a perfect background, too.

Then I understood there's more to a great game soundtrack than very memorable tunes. XCOM2 soundtrack is optimized for short term, for trailers even. Red Alert 1, Tiberian Sun soundtracks are optimized for long term, to be loopable.

I need to get in touch with newer games, but I have very fond memories of Master of Magic, Heroes of Might and Magic 1-4, Magic Carpet, Dungeon Keeper1,2; Little Big Adventure. Those were definitely special and music was a big part of it.

From newer games I appreciate Rimworld. It may be inspired by country and Firefly, but it's something I'm happy to play on a loop.

Incidentally ambient music artists are some of my favorites. I love programming while listening to the British band Fluke (on youtube) or even Orbital. Even ayahuasca shamanic songs.
I completely agree.

Path/PathBuf have better names, but the distinction still isn't immediately obvious.

String/str is the cause of so much confusion.
That's one reason we chose Braintree over Stripe. They both take about the same amount of work to implement, but Braintree gives you the ability to accept PayPal in addition to credit cards with almost no extra effort.
Ask HN: Considering using Golang for my main language for web development
Hi, I'm considering using Golang for my main language for web development, I'm trying to see if there is anything resembling Python's SQLAlchemy - basicly elliminating text query stitching (and to be clear I know SQL itself).

And a web framework that would resemble Pyramid web framework functionally wise.

I'm also trying to wrap my head around the fact that there are tons of db drivers, when I looked last time 2 years ago I was completely unsure which one would be the right to use - are there some "language standards" that are most used and supported well by community?
Your story reminds me of a tool I wrote for helping lawyers classify a feed texts as a test set for a project.

Our main initiative was creating a heuristic based classifier (think lots of regex). At my own initiative, I trained ML classifiers while we worked on it. As development went on, the ML classifiers were rapidly catching up with the heuristic based one. Unfortunately it was kind of a one off data processing task, and when time ran out the regex machine was still in the lead.

I was modestly proud of the legalese DSL generator I wrote up. The lawyers didn't even know they were writing coffeescript as they typed out what documents were, what key dates were, etc. :D

That coffeescript formed the basis of our accuracy testing suite. It was as fundamental as it was huge. That team ended up creating a couple thousand tests in less than a month.
I just updated this front page today. Content will be uploaded soon
The New York Times mistakenly publishes an article modified by joke software
I think the notion that "An apple product cannot be repaired" is also an internet spread cliche.

I found that it was pretty easy to replace the battery and screen of the last few cellphones I've owned. Ironically, it was much easier (and cheaper) to find the necessary parts to repair the apple ones than the cheapo android phones which often cost as much as the aftermarket parts.

If you consider the cost of specialized labour needed to diagnose the problem, then repairing quickly becomes unaffordable for a $300-$1000 purchase. This bill will not stop that.

Appliances are physically larger, and therefore are much more difficult to dispose of, ship, and get into place. So if you compare the cost of repair, to the shipping and disposal cost, they probably become equivalent. Goodluck getting a fridge out of your house without damaging the walls for cheap.
Is Kubernetes the next Xen?
If only it were cost-effective to repair cheaper things. Our vacuum recently stopped working correctly. We only paid $100 for it. Paying someone to repair it costs around that much after parts and labor. So my options are to fix it myself or simply buy a brand new one...
Hardcoded password and Java deserialization flaws found in #Cisco products
While the letter indeed would be nice, I'd much prefer the raise if it was me.
It seems hard to believe 75 million people have signed up for Credit Karma: that would be like 1 in 4 for the entire US population. Am I missing something obvious?
The only concern I have is, as long as companies can exclude portions of a product whose sole purpose is to protect the privacy of the user data. I am worried that law enforcement will use this to end run the current situation mostly with apple products that the secure enclave processor/parts cannot be altered without loss of data/etc.

as far as repairing tablets and such, any design changes forcing easier to repair items will have costs baked into the next generation and do these laws limit how much replacement parts can cost? Because it can take awhile for a 3rd party to make working replacement parts. finally, who certifies such?
I also hate feeling like such a weirdo for repairing my own appliances or electronics.

"Ending is better than mending."
My neighbor runs a washing machine repair business in a suburban neighborhood in Alpharetta, Georgia. He seems to stay very busy. This is a fairly affluent area so its not that people can't afford to buy new appliances (on average).
This is the same for every single aspect of going to market. The large incumbent always has advantages, and yet we still get new companies bringing new things to market, and we have more ways for them to make this happen than ever before (crowdfunding, small run manufacturers, 3d printing).

I see the largest difference this will make is that larger companies won't put extra time and money into locking down devices so they can't be repaired. For example, locked down diagnostic modes, and special hardware to open devices.

> And then you have to have a way to "rescue" a user if they really screw up the product and "brick" in in a sense.

Are you sure? There has to be a sane cut-off for when a device is broken and when it's repairable. A company will not be forced to provide directions on how to fix my device if I've decided to use it in a "will it blend" demonstration, so statements like this are FUD without us getting a good grasp of the details of when and what a company will actually need to comply with this.
Perhaps they'd be worried that their tool would be used primarily for narcotics trade. Oh wait, they already have zcash. Well, perhaps it's the redundancy between those two.
OT, but anyone have similar stack traces that show call stacks or abstractions in other layers, down to transistors, up to user?
>extremely-vague-homeomorphism

Analogy is the concept in its full generality.
>You now have to design a product that can be repairable

No, you don't. Pretty much the only thing you have to do is provide the same information that you provide to your authorized repair centers. If you don't repair a product, and therefore you don't have a service manual or diagnostic codes, you don't need to now create them to satisfy the law.

This is about having things like "secret" diagnostic codes that require you to go to a dealer to pull off.
Do you mean Google, Facebook, Amazon, Microsoft, ... are against certain regulations because it's cost them too much?
That's just normal markdown... sometimes I wish HN had basic markdown support: italics, `code`, [link](http://), etc.

Edit: looks like italics works...
AI jobs market heats up, listings and searches on the rise – CIO
How the Internet Works and How It Can Help You Be More Creative
The lowercase one is a language primitive, and so is lowercased like all language primitives.

The uppercase one is a standard library type, and so is uppercased like all library types.
For many of these appliance repairs, the costs quickly add up to a large fraction of a new appliance. In some of the countries you mention, the labor cost is lower.
Why the hate? The methodology is sound, the results are interesting and they show that there is some room for improvement in language support. Also the source code has been provided in case anyone wants to alter the benchmark to be more comparable to their workloads.

Hopefully this sparks a race between the different teams within Amazon. Great job!

Oh! These test scenarios seem to have a pretty good acceptance in case you decide to do another benchmark in the future: https://www.techempower.com/benchmarks/#section=code&hw=ph&t....
Assuming we're still talking about free markets, there are two solutions:

1) Build enough housing for everyone, tourists and locals alike.
2) Ban short-term rentals entirely.

Option 1 might alter the surroundings or vibes, but option 2 will destroy the tourist-dependent component of the local economy, which for many places IS the economy.
Not related to AMP but this caught my eye:

> From a peak of 1.9% conversion rate at around 2 seconds

This sentence and the graph it accompanies seems to imply that if your site is too fast it could reduce your conversion rate. What's going on here?

Well, at the bottom of the article that graph came from:

> What about all those fast pages with low conversion rates and high bounce rates?

> Good question. Faster pages should retain and convert more visitors, right? In general, yes, but some of the speediest pages on a site are 404/error pages, hence the poorer business metrics.

It seems like you'd want to control for this, to get statistics on bounce rates only for pages that wouldn't otherwise bounce the user anyway.
It says right in the list of supported DBs "Your own easily implemented adapter" - it's definitely something that can be added.

Odds are he built it to use the DBs he uses, now it's your turn to contribute back the adapter for the DB you use.
The phrasing here reminds me of Godel's Incompleteness Theorem...probably not coincidental.

> "No physical theory of local hidden variables can ever reproduce all of the predictions of quantum mechanics."

GIT paraphrased to match: "No axiomatic system can produce all truths within that axiomatic system."
> Reddit markup

Oh boy.
Trump on Falcon Heavy
Satellite imagery analysis for operational damage assessment in Emergencies
I love the idea of "right to repair", but as usual, would require manufacturers of electronics to make diagnostic and repair information, as well as equipment or service parts, available to product owners and to independent repair shops. could have far-reaching negative consequences.
I often joke that str/StrBuf is my one wish for a Rust 2.0, but 2.0 will never happen.

This confusion is why we reorganized the book to talk about String and &str very early on, and use them to teach ownership and borrowing.
We let Greenkeeper update our JavaScript repos. We still have to accept and merge its pull requests. So there are ways to do this where GitHub won't shut you down (if you are Greenkeeper)...

Maybe a solution would be for someone to create an app like Greenkeeper, but which promised to start by doing five things, but to add more over time, informing you of each new thing and letting you opt out at any time: a list of checkboxes.
std::String is a struct, and str is a type defined by the language.

There's a summary of the differences at [0].

[0]: http://www.ameyalokare.com/rust/2017/10/12/rust-str-vs-Strin...
While that's true to some extent it's not that hard. This is a physical analog to the overhead imposed by requiring more generalized code as opposed task specific code.

If your workflow is "move fast and break things" or "just ship it, we won't have to support it in a year anyway" then, yeah, this will be a pain in the ass.
Sure, cross breed humans with a ridiculously strong animal with a propensity for murder. Great idea.
Amass: Subdomain Enumeration from Go
I always thought the opposite. It seems things like non-determinism and retrocausality made free will more physically coherent instead of less coherent. It is the strictly deterministic universe of Newton that makes free will illusive.
"Physics by definition is seeking the full description of the Universe."

From the "inside". We can not have an exterior perspective, and the Church-Turing thesis suggests that we will never know what the "outside" looks like because there's any number of possible models and literally zero ability to discriminate them from within the system. The only way to find out would be for someone from the outside to tell us, and even then you can get into some interesting philosophical knots asking how you'd evaluate such a claim, or even be sure it was from the outside.

I HAVE HIJACKED JERF'S MESSAGE TO TELL YOU FROM THE OUTSIDE HOW YOUR UNIVERSE WORKS. YOUR UNIVERSE IS A QUANTUM SIMULATION RUNNING ON WHAT TO ME IS ANALOGOUS TO A SMALL BREAD PUDDING WHICH HAS JUST STARTED BAKING, WHICH I INTEND TO CONSUME SOON FROM MY POINT OF VIEW. YOU NEED NOT WORRY, IT'S MANY TRILLIONS OF YEARS IN YOUR PERSONAL VIEW OF THE FUTURE.
Fundamentally, String and &str communicate very different things. String has ownership, &str does not. This is not a reconcilable difference.

The closest you could get is automatically allocating &strs into Strings, but then you're introducing silent allocation, which has a host of its own problems.

> A constant reference to a string should automatically decompose into a view of that string and that should be that.

This is exactly what happens, through Deref coercions.
> no observations we can possibly make can be statistically independent of each other.

Yep. When I'm reading these articles, "Everything Connects" is a pretty useful heuristic for flowing with apparent discrepancies in theories...although of course nailing down concrete theories and finding precise explanations for phenomena is important.
From what you quoted, that seems like a reasonable bill. It just levels the playing field for everybody.

Not sure about this California bill though. The devil is always in the details.
I haven't read the text of this bill, but the push for Right to Repair isn't that companies need to design their products differently - but they need to provide documentation and components so people other than the manufacturer can perform repairs on them.

Apple doesn't repair logic boards, if you have a bad backlight controller on your MacBook Pro and it's out of warranty you can expect to pay $700+ for a logic board replacement - repair shops can replace the backlight controller for a much more reasonable fee.

Right now Apple products are the most popular market for these 3rd party repair shops exactly because Apple charges so damned much for out-of-warranty repairs, and they work in a legal gray area because Apple won't give out board schematics or sell replacement components. Without schematics troubleshooting issues ranges from anywhere to a pain to impossible, without parts anything that can't be readily sourced from a manufacturer (thankfully they use bog-standard Texas Instrument controllers for the LCD backlight that you can buy reels of, but other components like the SMC, GPU, etc. you are pulling off boards that were dumped from the factory or if you can somehow find "new" ones the chances that they are DOA is dubious since they're often factory rejects).

Nobody wants to make life more difficult for companies designing their products, the Right to Repair crowd just wants to be able to fix their own devices provided they have the skills to do so.
Its kind of the same thing, Vysor has ads in it though and isn't open source. So this seems like an improvement in general as it doesn't have ads and its open sourced.
China on the rise as 2018 biopharma VC funding passes $3B
I remember many years back California passed a law that restricted what equipment auto parts stores could loan out to owners to diagnose their car issues. Maybe they should lift that law also.
> That's not the problem. There absolutely should be two different types (and I don't even care that the names are so poor). But half the rust APIs take one type and the other take another (even when the string isn't manipulated or stored in any way, shape, or form). Some interfaces are only implemented for string and others only for &str.

Things which are implemented for Strings are those which actually require it. String derefs to &str so you can call any &str method on String, any trait implemented by &str is basically implemented by String, and if you need to pass &str and have a String you just &v.

> Deciding between two distinct types &str and &string (not mut &string) for your function's interface is nonsense.

There are very very few reasons to ever ask for an &String but then what, should the language somehow forbid regular references to a perfectly standard type?

> It makes no sense to have to _decide_ between which two views of a string that you can read-but-not-manipulate you want to use

&String is not a view of anything, it's a regular reference to a string living somewhere in memory.

> A constant reference to a string should automatically decompose into a view of that string and that should be that.

It does that if a function asks for an &str and you &s where s:String. All Rust doesn't do is remove &String from the language, in the same way string is a valid C++ construct.

> Additionally, that dereferencing a string returns a pointer... that makes no sense.

Dereferencing a String doesn't return a pointer. String is* a pointer, so you can deref' it to get the str behind it (which is not a pointer, it's the actual unsized string data).
Yes, anything implemented for &str is automatically implemented for String... except some API are stupidly implemented for &string instead. And you can't pattern match strings properly (think some `for in`) without first explicitly converting to &str.

Dereferencing a string does not return a raw pointer, that was exaggeration on my behalf. But a string is a container, so *string returns.... &str? But string.deref() returns str?

Don't get me wrong, I'm fully invested in the language [0], [1], [2], but it's got a lot of warts that could have been avoided by thinking bigger picture. So many APIs are restricted by thinking easy instead of big pre-1.0. Like str being hardcoded into APIs that should have been generic (FromStr vs From<&str>, .parse() vs .into()), shipping 1.0 without async/await, and the whole mess with strings.

0: https://github.com/rust-lang/rust/issues?utf8=%E2%9C%93&q=is...

1: https://github.com/rust-lang/rfcs/issues?utf8=%E2%9C%93&q=is...

2: https://crates.io/search?q=neosmart
I just ordered a T480 to replace my aging T410. The T410 is still functional, but has been crashing as of late. I'm planning to repair it (I suspect RAM, HD, or CPU heat), but I decided it was time to upgrade to something faster and lighter. Over the time I've owned it, I've replaced the keyboard twice and the battery at least once, and I've upgraded hard drives (it now has 768GB of SSD) and RAM (maxed out at 8GB, IIRC).

I hope I'll be able to maintain the 7-year refresh cycle with my T480; newer ThinkPads are less beefy, but they still have similar levels of maintainability, so I should be able to fix anything that breaks.

I am very much looking forward to the screen upgrade—even the best screen available for the T410 was mediocre at best. I've heard good things about the WQHD IPS screen I'm getting on the T480 (not quite as good as a MBP, but leaps and bounds better than my T410).
Here it is for anyone interested (click the image)

http://catagolue.appspot.com/object/xq6_yyocxukcy6gocs20h0a3...
Excellent lexical analysis :) Glad to know I wasn't the only one who couldn't help but cringe while reading this.
No it's not. It's a rational response to avoid a race to the bottom (tragedy of the commons) problem.
Shoutout to you for responding graciously to criticism. It's such an important skill.