skysight-inc/HackerNews huggingface dataset:
Sure, that's obviously true. Most nutrition and general-purpose health advice is statistically derived, but we don't actually know enough to make decisions based on our individual genetics, so it's the best we can do.
CPython isn't a JIT because its goals as a portable reference implementation would be much harder to achieve with a JIT.

To put it another way, there's a reason PyPy trails CPython language features on the scale of literal years. This is not explained by the affordances of the language they're written in! They're just projects with very different requirements which, on some platforms, happen to run a lot of similar-looking code.
> Are we even allowed to assume 'gal's 'use she/her pronouns' though?

Fortunately we don't have to, because what she wrote was "One gal's quest to optimise her life."
Every bad leader had good policies. I was surprised to hear a member of a tribe in New Mexico telling me great things about Nixon.
Here's an article about how NSArray on MacOS does something similar:

https://ridiculousfish.com/blog/posts/array.html

In the sense of swapping the underlying implementation as the number of items in the collection increases.
What I think should be made illegal is that Google (and others) is essentially collecting another toll even when users enter in the brand name of the target business in the first place. That is:

1. User types CompanyFoo (whose real URL is www.companyfoo.com) into their address bar, which lands them on Google (because Google owns Chrome and pays billions for the privilege on other browsers).

2. Since Google will sell this keywords to others, many businesses always bid on their own brand name to ensure it comes up first.

3. Thus, an ad for CompanyFoo shows up first, even though www.companyfoo.com is the first search result, so when user clicks on the CompanyFoo ad Google takes its cut. Again, this is also because Google has done as much as possible to make ads as visually similar to SEO results as possible - just the teeny 'ad' banner, compare to the big yellow box of early Google.

I don't have as much objection for other companies buying branded keywords, but the way Google has set up things up they are taking their cut from everyone even when they are giving very little value.
> No one can actually prove it has any ROI at all. No one is willing to run the experiments necessary.

This is entirely false. I work in adtech, and almost all companies run experiments in order to optimize their ad spend (everything from Ad A vs Ad B, to Ad vs No Ad, to Channel A vs Channel B, and more).

This isn't to say that advertising always produces ROI. Quite often, experiments will be run that will show a certain strategy isn't performing well, and the company will adjust accordingly. It's incredibly naïve to think that companies are flushing half a trillion dollars a year down the toilet on advertising without any attempt to validate their investments.
I do find it odd that Bitcoiners who tend to be incredibly, incredibly outspoken about Ending the Fed, and QE money printing, call any criticism of Tether as FUD in a cult manner, or shrug it off as non-issue. It was/is effectively a fractional reserve, where they admitted in court in the past that Tether wasn't completely backed by cash. It does seem a little convenient that they aren't ideologically consistent, and against Tether because it just so happens to help prop up the price of Bitcoin.
Ask HN: Does your mood affect your behavior on social media? How?
Many of us enjoy staying connected on social media. I'm just curious how does social media affect you?
So much this. The productivity craze is dumb and your definition is much better. Prioritize what is important to you. If you are able to, that's productive! Screw other people's definition of productivity.

Dying of cancer? Enjoying a walk out with friends - who knows how many times you'll be able to until you are bed ridden and in pain constantly despite meds? You're "productive"! Ask me how I know... (no don't....)
You act like it hasn't been barely 3 years since the last massive crash. You need it to happen every other year?
Medium hellscape. They now require an account to read.
Many (most?) of the gladiators were free men, looking to increase their wealth and status by being a successful gladiator.

Gladiators rarely fought to the death.
Kinda depends on what you mean by scarce. Expensive? Subdivision doesn't help. Illiquid? satoshis help there.
Spending time reading horror stories on HN can lead to a form of paralysis.

While it’s true bad decisions can be made at any level and anytime early on it is much more important to get something (anything) up and running - even if you scrap it later.
> Vehicles last however long people keep fixing them and people keep fixing them as long as they expect them to last.

That doesn't explain why American cars have way more faults already in the first five years compared to Japanese cars though.
Early? Current internet has bum fights, killings, maimings, decapitations, prostitutes pissing on produce in grocery stores or masturbating with beer bottles from the shelf, people in India committing suicide by high voltage line (no ide a why, but very popular there), moped drivers falling into oncoming truck and getting popped like an ant, etc etc. Its all available now in greatest number to date, some of it you can even pay someone to make you tailor made snuff movie. theync is a real life 8mm (1999) times 100 every single day.
What you said is true, but that doesn't take away the fact Europe still has larger economies of scale. Not every product needs to be translated.

> Americans are much more culturally alike to one another than they are willing to admit

I'd argue that French are about as different from Germans as Alabama is from New York.
You can definitely measure 'lift' - though it's far easier with online only sales.

For sure it's harder for say Gucci to measure incremental cross-platform lift but any good large brand spends big money trying to parse it out

One example way to get some value measurement would be Facebook's powerful tools. Beyond a basic 1:1 audience 50/50 exposure test, Facebook also lets you upload offline sales (or use their pretty effective pixel for real time online sales) and then feed into their system. Using the data your purchase data FB matches to ads delivered and you (with PII but also purchase value and frequency). Then the advertiser can define lookback/conversion definitions to get a measure of incremental lift. E.g. those who clicked ad bought __ right away, those who viewed ad within 1, 7 or 28 days bought __.

For what it's worth the adtech forums I participate on view Uber as incompetent idiots on this issue (which has been reported on like last year) - all they had to do was measure beyond the initial install for say did these installs actually pay to ride...

Install fraud from SSPs and resellers is huge, doing this basic measurement and quality control is the reason Facebook and Apple have huge and growing app install business. Though TBD on Apple fucking over Facebook and keeping the attribution for themselves alone with their new privacy features
You need two alpha particles hitting the same rank of memory for failure to happen. Although super rare, even then it is still correctable. You need three before it is silent data corruption. Silent corruption is what you get with non ECC with even a single flip.
Great travelogue!
an effective vaccine would have been delayed by maybe 3-6 months, which isn't too bad.

You realize such a delay would mean many more people would die not to mention the overall damage to society from lockdowns? I can’t understand how that would possibly be not “too bad.”
“Attempted”, meaning this wasn’t successful?
If you have a while-loop wrapping a switch statement, will most modern compilers put dispatch code at the end of every case, to help the branch predictor (actually, branch target buffer)? Even if modern branch target buffer entries were dependent upon the target of the previous indirect branch (in the switch statement), if any of your bytecodes go off and do some C++ virtual dispatches, it will quickly swamp any extra context the BTB logic may have.
>SQL is a REPL-only language. The complexity you can achieve there without some interaction is very small.

ha ha.

unless it's giant sql with 5 sub queries and poorly formated for bonus points

good luck
but how do you know if you're one of the "lucky ones" ?
And they are neighbors of Holland the country raised from the sea by engineers.
Anyone know of graphing software on the computer that can graph arbitrary inequalities and logical expressions like the HP Prime's advanced graphing can? [0] For example, if you say x^2 = y it will draw a sideways parabola, top and bottom (yes, it's not a function). Or if you say 10 = x^2 + y^2 it will draw a circle without any gaps. Or if you say

sin((1+sin(x+y))*asin(.5*(sin(x)+sin(y)))+(1+sin(x-y))*asin(.5*(cos(x)+cos(y))))=0

it draws something like a chain link fence. [1] It works well on a battery operated calculator, so a desktop computer should have no trouble with it, but does the software exist?

[0]: https://www.youtube.com/watch?v=GAVqjBxFyXA
[1]: https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2F...
It is useful to look at history. Women have always worked (other than a particular subset of rich women and then, in the US and western Europe in the 1900s, a slightly broader subset of well-off women). It's just that much of that work was done in or near the home, and for most of human history men worked in or near the home as well. For almost all of human history, the effort made to produce money or food was co-located with "living". So women have for centuries taken in washing, been wet nurses, done piecework, sewing, knitting, fulling, felting, spinning, soapmaking, etc etc in a non-factory setting. This did not mean that you played with your children or really paid that much attention to them; it meant that when they were very young you kept them in a pen or tied to the bed so they wouldn't burn themselves, but could respond to their needs when they expressed them. After about age four you put them to work. Of course extended family/neighbors also were involved, but they also all needed to put food on the table.

Another reason we didn't have daycare was child labor. The history of child labor in, say, Britain is quite fascinating. Children were employed as domestic servants, coal miners, sales-kids, prostitutes, and more. In 1802, 1803 some regulations were passed; eventually children under age 9 were forbidden to work in factories and kids aged 9-16 were limited to 12 hours a day (60 hrs a week -- the Cotton Mills Acts).

It is quite fascinating to me to look at modern attitudes toward productivity and childhood. For almost all of human history the vast majority of children worked, from shepherding or scaring the birds away from the crops (which certainly could be more playful) to dirty and dangerous jobs. And now we talk about daycare or look nostalgically at a false past in which moms spent hours a day playing with kids. Time surveys indicate that even working parents now spend at least twice as much time with their children now as in 1965 [1]. Part of this is "productivity" -- we view spending time with our children as an important and productive thing to do, and in fact an economic investment. The kid is not earning us money now -- we need to invest time and effort into ensuring a return in the future. It's intriguing the stories we tell ourselves and how they affect our behavior.

[1] https://www.economist.com/graphic-detail/2017/11/27/parents-...
A number of years ago I trialled a reverse look-up using this method (for both mobile numbers and email) as a grey hat project for a data aggregator I contracted to validate existing email / phone pairings (bad email and numbers gets you banned quickly by dispatch partners).

It worked because the returned "is this you" image at the time returned a filename that was a base64 encoding of the users ID for the graph interface, which at the time pulled back a surprising amount of info if you query the key directly (obtaining the key generally required you to be a friend-of-friend or closer).

I got hit rates of about 70% for a sample of ~100,000 email/mobile pairs (that were already suspected to be valid).

Sounds like the trick to get the key has been resolved (I was too early in my career to feel comfortable disclosing my research) but I am surprised a similar vector exists almost a decade on - especially after the whole Cambridge Analytica fiasco.
It was a pre-existing broad advertising trend that reached perfection in that meme.
> ($0 if you lose, I presume).

The critical assumption...

And reading about how most of these outdoor reality shows are "really" made, it's mostly forced drama long enough for the shot, then surrounded by medics and outdoors experts the minute they need help.
Big fan of Obsidian, I love that it's completely usable on it's own (without a cloud) and you can bring your own syncing technology to it, whether that's syncthing or Dropbox.
Maybe cookie stuffing for incentive payments? e.g. why those coupon sites make a ton of money even though they have zero to do with purchase intent (someone searching for a coupon is already in their cart about to buy).
According to the forums, there will be a mobile app eventually.

In the mean time, there are other apps that can work with your markdown files when you're away from your computer:

https://forum.obsidian.md/t/how-do-i-work-with-obsidian-on-m...
> First, that his show aired on RT

I'm done with this bad faith nonsense, i've addressed the multiple people trying to shift the conversation away from what I said towards RT.

Assange, the guy that promised us all he would "open governments" takes his orders from a murderous KGB thug.

And he has no end of people still willing to make excuses for him (that's you).
Misleading title. C++ is still faster
I'm a bad man, and I have sinful [ooo] thoughts, but...

Is-a inheritance is extremely useful for creating extensible components. "It may
be wrong, but it's much too strong."

In rust, how can you make a component that is just like another component, but ever so slightly tweaked without copying the entire external API of that other component? I understand I can wrapper with has-a relationship, intercept the correct API, and then pass through the rest of the entire interface, but how can I avoid copying the entire interface of the object when I only want to tweak something tiny?

With a car, I can swap out the engine with another, I just have to make sure the external interface is the same.

It may be a "bad thing", but it is extremely useful for the scenario where I say, "I want a Chevy smallblock, but I want to only tweak metal alloy on the interior piston."

class MyBlock(ChevySmallBlock):
def get_interior_alloy(self):
return metals.Unobtanium

Bam. I have same item; slightly tweaked. I've used this type of pattern to great effect and I find that style of inheritance manipulation invaluable in python.

How can you do this with rust? I know that is-a inheritance is sinful, but show me the better way! I truly want to know it, and I've been trying to find a pattern for this.
This is fascinating because it never mentions the role of publishing in the field of science. There is a huge pressure to "publish or perish" which seems at odds with much of the advice given here.
Yes! It also happens when I am not logged in, or use a VPN (though that is understandable).

But simply disabling javascript and clicking next a few times is usually enough to set off their blockages. Even when not using a VPN. It happens less if you only ever look at the first page.
I mean you can't technically guarantee the scarcity of bitcoin. Even though it is the source code that there should be 21 million, you can just fork the repo and start again from scratch and call the first bitcoins mined epoch-1 and subsequent coins as bitcoin epoch-n. The public will come to understand any coins mined using the bitcoin protocol as bitcoins if this comes to pass.
>Legos were expensive, hard to get and treasured when I was a kid so result was much undesired.

By the time I had children of my own, they were cheap enough to be used as caltrops.
A guy called Brian had his personal contact information (including phone number) plastered all over Facebook's promotional pages.

https://gimletmedia.com/shows/reply-all/76hdrj

I don't think Facebook ever actually apologised for doing this.
If anything, FB ads were worse than useless for my business, all they attracted was 90% fraud.

Looking at what business Ozonetel is in (i.e. sales are directed towards business owners), I'm not suprised FB ads were also worthless for you. I get the sense FB ads are really only good for things a consumer might impulse buy (e.g. clothing, games, small gifts, etc.) but anything where the user is probably going to do some more in-depth thinking about the purchase, they're beyond useless. Which pretty much makes sense - even if you've drilled down your targeting well for business decision makers who may sign up for Ozonetel, it's highly unlikely that decision maker is going to really want to know more about Ozonetel while they're looking at cat vids and fighting with crazy uncles about politics.
That's great, thanks for your experience, but can't comment on the argument provided?

Isn't it possible that these experiments you talk about are fatally flawed? I have serious doubts that a company can run and do well designed statistical experiments when academic experts are plagued by p-hacking and other foot guns.
You are asking for the actual nuts and bolts? Everything is accomplished over telegram in the crypto space, including OTC trades. Circle had entities throughout the world and offshore bank accounts with those entities. You would ping Tether on telegram and say you want to swap USD for USDT or vice versa and wire transfer details would happen. It isn’t rocket science. I don’t know the exact amount but we had pretty transparent internal disclosure of the business and what each unit made in profit / loss, and what he said rang true for me. Circle Trade did something like $25 billion in OTC trades in 2018.
100% this on my rMBP 2015. Almost every time too. I notice my PC will give a similar 'system interrupts' reaction with Task Manager, however.
I had a hunch and looked at MDN's list of web extension APIs.

https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/Web...

It seems like you could implement your described behavior as a cross-browser extension, for everything except Safari (and Android Firefox -_-). Easier than forking Chrome! :)
That's a great interview on HIBT and you bring up a great question, as it's possible the way they explained it makes it sound like that's an 'expected' freemium user-to-paid percentage across the board.

It really depends on the product/service, company size/funding and the marketplace(s) that your customers find your product.

I operate a few SaaS services with a freemium plan and we're very, very far north of 3-5% of paying customers from our customer base.

But one of the many differences is I'm operating small software services. Dropbox is very different in that regard and there's just no apples to apples comparison between those two business models.

But 3-5% is not something you should believe is set in stone as 'normal' for all businesses in all marketplaces. It, as many things do, comes down to "it depends..."

It's possible to have a much, much higher percentage of your customers paying even when offering a freemium model.
This sounds like a feature that could be exploited in creative ways in either a product or some fun side project. I don't know what it is exactly but there's something aout never editing edit logs (possible not being obvious to the user as a factor) plus some graphical UI representation or UX flow (besides undo).
I would be shocked if those two programs performed the same. C and Rust are using the same compiler backend, better aliasing information probably isn't going to make that big of a difference.

Are you sure the rust performance data isn't for one of the other implementations that use the same crufty tricks as the C version?

e.g.: https://benchmarksgame-team.pages.debian.net/benchmarksgame/..., https://benchmarksgame-team.pages.debian.net/benchmarksgame/...
I think Adam Tornhill has a nice take on this. He recommends tech debt not be quantified as such, but encourages focusing on areas with high complexity and large churn

GOTO 2019 • Prioritizing Technical Debt as if Time and Money Matters • Adam Tornhill
https://www.youtube.com/watch?v=fl4aZ2KXBsQ
I've looked into this before, personally a Xeon E 2288g is probably the most "consumer" cpu intel offers that has ECC, 8 cores and QuickSync support. Trying to get ECC + Quicksync is a real pain.
Sounds like a Brazil or dealer problem to me. My new Toyota landed at my dealer on the 31/12-2020. With JIT production (I didn't buy a pre-produced model but picked parts and colours I wanted) and transport by land - sea - land it took way less than that. The Honda you bought was either pre-produced or you tried to buy a Toyota that was a brand new model and you wanted a specific setup.
In many languages, creating a pull-based iterator for a tree-shaped data-structure can be tricky. It might require turning the recursion inside out to use an explicit stack... Do you know how well Rust can handle this? I'm not familiar with the details.

In any case, while an iterator might help in the "ast_iterator" example, in the "ast_mapper" example I am not sure if there is a way around it.
You seem to be describing threaded code, but using a linked list instead of an array. Why go through the extra pointer chasing to use a linked list of code entry points instead of iterating over an array of code entry points?

[jonesforth.s] is a great search term for a well-documented Forth implementation explaining how threaded code works.

I'm actually surprised I've never seen a system that uses tiny JIT stubs to implement the interpreter portion of a modern hybrid interpreter and JIT system. The class loader would initially "JIT" each method as a function call to the interpreter function followed immediately by a return, with a pointer to a memory-mapped buffer of the bytecode after the return instruction. The interpreter function would look at its return address (which points to the JIT stub's return instruction) and add a constant offset to find the pointer to the bytecode to interpret. This avoids the need for an extra pointer indirection or conditional branch in your hot path method dispatch. Granted, in your really hot paths, you hope your JIT inlines everything.
Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS
Welcome to Project Lightspeed. This is a project that allows anyone to easily deploy their own sub-second latency live-streaming server. In its current state you can stream from OBS [1] and watch that stream back from any desktop browser.

This has been a super fun project which has taught me more than any other project I have done. It uses Rust, Go and React and can be deployed fairly easily on a very lightweight server. For example, I have been doing my test streams on a $5 Digital Ocean droplet and the CPU usage is at around 20%. Granted not a lot of people are watching however it is more lightweight than a solution such as Janus.

The point of this project is twofold. First I wanted to learn more about WebRTC and real-time communication in general. Second, I wanted to provide a platform where people can setup their own little live-stream environment. Maybe you just want a place where you and some friends can hang out or you are sick of the main-stream platforms.

Anyhow as of writing this post it is v0.1.0 and considered an MVP release. In the coming months I (and hopefully some of you :)) will be adding more features and trying to flesh this out into as much of a full featured platform as possible. Feel free to take a look at the repo and let me know what you all think :)

[1] Open Broadcast Software (OBS): https://obsproject.com/