skysight-inc/HackerNews huggingface dataset:
Consider a hash table. Access is basically random, so if 25% fits in memory and 75% is paged-out at any given time, then 75% of the lookups will be a page fault and require a page-in. Very costly.

Compare that to a Grace HashJoin (https://en.m.wikipedia.org/wiki/Hash_join) which partitions both sides (lookup side and hash table side) into matching partition pairs. The partitioning step and reading the partitions from disk are both sequential access. Then, pick up and process one pair of partitions at a time, which will only require a small hash table in memory.

Note that this is still way more efficient even when on an SSD, because an SSD is still block-oriented, and paging entire blocks in/out for a single lookup is still inefficient.

It even helps when the data fits into memory sometimes, because you can size the partitions small enough to fit in cache, which will make lookups even faster.

You can say "don't use hash tables", but that's not a great amswer for a low-level high-performance language like Rust.
Thanks a lot for the support! Yup, the news took us off guard we aren't happy at all :/ we just need to keep working hard and try to solve it
> Not really. The kinds of changes they're taking about get tested. A site will collect data, make changes and observe the impact on the data. A good way to go is present different users a randomly selected version of a site and track which version does better. With tests like that we can rule out people simply adapting over time.

I've always wondered if the reverse study is done; keep the old versions of the UX around for months/years as an experiment to make sure the improvements are still there, or if there's a regression to the mean. This sounds much harder to do because most development is roll-forward with new features and such.

Also; practically how does attribution play into conversion measurements? In theory it should be easier now to tell whether it was landing-page+UX or view-through/click-through that made the bigger difference.
There will be a who's hiring post tomorrow, as is the case for every fist Monday of the month. Your friend can look for opportunities there. Theres also a seeking freelancers thread at the same time.
I don't agree that everything is abstraction. You can't argue with starvation.

The comparison of class struggle to physics is astonishing. Physicists predicted the existence of black holes and then found them later in nature. Meanwhile, Marx thought the revolution was going to happen in his lifetime.

> Any attempted adjustment is always categorized as blind ideology and, by implication, chaos. For the erudite it's called "abstract ideology", for the less so it's simply labeled "communism". The effect is the same: portray reform as destruction and create comfort for the beneficiaries of society in the status quo.

Who said anything about "any attempted adjustment"? There are infinite ways you can "make adjustments" to attempt to make people's lives better in a given situation. We do it the time.

> Conversly, both laissez faire-ism and Ayn Rand's thesis are both very much ideologies but they are not called that by those who approve of them. I know of no possible definition of "ideology" that does not also apply to the both the American and French revolution as well as the motivation of every soldier in every army and indeed to the ethics driving every action that is not self absorbed.

My opinion is that, in a given situation, Ayn Rand may be right. In another situation, Marx may be right. What I don't understand is the claim that either of them is always right.

If I had to choose a policy "to reduce suffering," I'd go with Henry George today but I'll probably change my mind later. Mainly I'm just glad it's not up to me because I'm probably wrong. I'm a bit horrified by people who are sure they're right about "how to end suffering" or "how to rationally order society".
Meh, I was still using DOS (w/ 4DOS) back then because I vastly preferred it (BBS and cli apps in general) over Windows 3.x. My use of GUI didn't really start until Windows 95 and was solidified with Winamp.
If you would have a SaaS product idea then you could invest in a product that will bring stable income. That is the way back to sanity so instead of going into that madness of chasing bigger contracts you invest time of employees that are on bench into building your own SaaS.

Then you keep one of employees, later maybe more, on that SaaS and slowly change your revenue mix. Then you still might get some additional projects but you always have something to spend your FTE time on. In the end you change the company profile where you chase different things than just having butts in the seats.

But that might mean you are not getting any salary for months because you have to reinvest in your SaaS idea. Of course having a viable product idea is another very important point.

Upside on the other hand is that selling viable SaaS business will be easier than selling dev shop, because dev shop only has developers. When developers quit dev shop value goes immediately to 0, with SaaS you still might have IP and paying customers.
> It should be noted dafny and Verdi are better here.

The problem is that the scale and complexity of systems that are verifiable by Dafny and Verdi, or dozens of not hundreds of other code-level tools, is drastically smaller than those specifiable by TLA+. You are very limited in the scale of the systems you write and verify, and so those tools are much more limited in applicability. It is true that if your program is very small and/or the properties you wish to prove are simple or very specific, then there are tools that can handle them at the code level, and that might be more convenient than TLA+ in those very specific circumstances. Also, Verdi and Dafny are research tools; TLA+ is used in the field by ordinary engineers at Amazon, Microsoft, Oracle, MongoDB and a growing number of other companies to help write software you use quite a lot (most AWS services, for example).

> However there appears to be a philosophical difference: tla+ finds counter examples to the spec. Absence up to the number of states checked shows the code is bug free. Dafny, Verdi seem to proceed by showing the spec is proved through various proof checking (semi) automation. As such they don't explore state.

That's not the philosophical difference, just a difference in available tooling. Both TLA+ and Dafny are just languages. Both have proof tools that employ SMT solvers for deductive proofs. TLA+ also has a model checker, and perhaps so could Dafny. The philosophical difference is that Dafny is a code-level tool, and so gives you "full cover" but only in limited circumstances, while TLA+ gives you a more partial cover but in a much wider range of use-cases.

> But if you tell the same team we'll be using formal methods there's a lot of complaining because FM can't check everything ... Not down to the real final code ... So why bother? I find this dichotomy disingenuous by programmers.

I don't know if I'd use the word disingenuous. I think it's just unfamiliarity. The goal of FM tools aimed at "ordinary" software is not to produce perfect software but to eliminate more bugs more cheaply than with tests alone. They shouldn't be compared to a hypothetical perfection, but to what developers use now.
The radical left in Spain (including even the Anarchists who were a significant poltical force at the time) supported the Republican government. The purges that took place on the left, were the purge of the POUM (Trotskyist, the group Orwell fought with) and then the CNT-FAI (anarchist) by the Communist party (Stalin/USSR). Both purged groups were considered to be to the Left of Stalin by all sides in the conflict, the purged groups certainly were definitely less authoritarian.
Ctrl+Shift+V (or Cmd+Shift+V on Mac) usually does the trick.
FlashCode: VS Code extension for code-centric flash cards
'Hard' is not quite the right word for it. reCAPTCHA frequently rejects objectively correct responses when they fail to fingerprint you.
You, probably like myself, took way too long to discover them because they have a fairly niche usage and are probably Postgres' least appropriately documented feature. It makes it hard to imagine the ways that it can be used. We should probably do something about that.
I know a fairly well-known children's author that continues to write using a typewriter out in an outbuilding on his farm. I imagine it's a very effective way to focus (for me, I'd have to make sure I didn't have my phone).
So involve the military? Not seeing the problem here.
How would anyone know if you don’t take on the responsibility of downvoting with the requisite explanation? And how would you yourself know you aren’t off base if your reasoning is not put to the same test of being downvoted itself?
Remember OllyDbg? Well, this is its distant cousin edb.

https://github.com/eteran/edb-debugger

You will like it.

Try Ghidra, too.
I come from Norway and in general, it seems to me that the requirements for low beam are different in the US than in Europe. My impression is that the low beam is higher in the US. Which is really unpleasant when driving at night.
I've started doing this as well too. I don't want to be someone's hosting provider or CSP. Too many headaches and building the thing is a lot more fun than watching it run and making sure you've in compliance with the 1000 governance documents the company has regarding production environments. There are a lot of good companies that already provide purely that service and, to your point, many companies have those teams already.
Toxicity, very off-topic, ad hominem, bad jokes, trolls, me-toos, and low-effort comments are things I downvote.

I do not downvote opinions I don't agree with. I often see a well-crafted comment that is being downvoted, and upvote it although I do not agree with it. I think it's nice to have opposing views, and it's a tragedy when one viewpoint is silenced. Especially on a tech-focused forum.

If I were downvoting people who disagreed with me, I wouldn't always feel compelled to defend myself with a comment. I think those comment threads are almost always quite boring and so I try to avoid them. Being several "generations" deep is often indicative of this.
Mostly agreed. I think it's an interesting technology with a lot of potential. We're still learning a lot. One of the things we've learned is that people seem to like the way that the conventional banking system has a lot of people in the loop to fix mistakes and reverse fraud. Yes, they're also imperfect and sometimes make their own mistakes, but it seems to be better on the whole than the digital crypto systems where simple rules are strictly applied, and no appeals or exceptions are possible.
We don't need a hypothetical. There are high profile Iranians who have been executed, after the confessed to a crime they didn't commit after being tortured, for speaking out against their government. Navid Afkari being the most recent example. For the record, China executes more people than any other country with Iran coming in behind them.
Giving something a name doesn't automatically make it bad. Internet discussions (HN included) seem to mostly just be people who have no idea what they are talking about speculating wildly, and treating their speculations as unimpeachable. We would benefit a lot from a greater focus on providing sources and evidence.

The description of it as "harassment" is incomprehensible to me. Why post on a discussion board if you aren't willing to handle disagreement, and defend your claims?

TBH, if you want to convince me that someone who is disagreeing with you politely is acting in bad faith, you have an uphill battle.
this but with memes and any social media based jokes/things. Sorry I got off social media for a reason, so if you want to infect my life with endless inside social media jokes you are going to have to explain them to me. I will not research a meme.
> C++ templates are „untyped“ or very „weakly“ typed at the kindest, while Rust generics are „strongly“ typed.

Can you provide your definition of strongly typed?

According to my understanding, C++ templates are evaluated at compile time, and the resulting instance has to qualify all the static type checks of standard C++. The deduced types is always checked, and if there is no substitution fullfill the type check is found, it raises a compile error.

The errors are super ugly, as there are no type constraints for template parameters, but funnily enough the template errors in C++ reminded me of playing around with Haskell without using function declarations. I would find it odd to call Haskell though untyped or weakly typed because of that.
Perhaps I wasn't clear enough. Abolishing timezones would be more practical now than at any point in the past, but it's also less beneficial.

It's more practical because you can almost instantly learn what hours the sun is up anywhere in the world, which lets you make an educated guess about whether people are awake or in the office (and this would work without timezones). It's less beneficial because you can almost instantly learn what time it is anywhere in the world (with timezones).
Ask HN: How to market Shopify app and find merchant contacts?
I have developed a new shopify app which I want to market to merchants. Besides listing in Shopify app store, how do I find contact Shopify merchants? It does not look like there is one single data source with merchant contact info.

Any leads or suggestions?
The incumbents always look more authoritarian than the revolutionaries, who are by definition trying to overthrow some of the institutions that the first guys control.

I think you're correct that with the right interpretation of history, either side could be made to look like the authoritarians.
> just using mathematical reasoning as you derive your program text makes it considerably easier to build systems that satisfy the specification.

And I am saying that since this has never been achieved in practice for systems of considerable scale, this is a rather hypothetical use of the word "easier." Is it possible that one day this will actually be easier? Sure. Is this the case now? I don't think so.

> The human act of writing the program is exactly the same as deriving a proof.

The human act of painting your ceiling is exactly the same as painting the Sistine Chapel and the human act done by a first-year student taking a calculus exam is exactly the same as a Field medalist writing a proof in a paper. Look at how, say, a verified quicksort is written in Idris [1] and compare that to how it's written in Java/Python (one could write Quicksort in Idris as in Java, but then the program will not serve as proof of its correctness). I think that the claim that with what we know how to do today producing the former is as easy as the latter, let alone easier, requires some empirical evidence.

[1]: https://github.com/bmsherman/blog/wiki/Quicksort-in-Idris
It would take an actual eradication strategy to eradicate it entirely. The first lock down was all about lowering the curve, which i think now is plainly a mistake.

I also don't believe europe would be capable of implementing an eradication strategy. The required social capital has already been burned, and at no point has europe demonstrated it's ability to work together on this. Now we can only wait for the technocrats to deliver us salvation in the form of a vaccine.
What do the F11 and F12 keys do for you on a modern PC? I don't know of their uses offhand.
The triumph of modern GUIs lies with the discoverability that the mouse/trackpad/touchscreen bring to the table. This is absolutely critical for onboarding beginners. In the modern day, computers are so ubiquitous that the vast majority of users are either beginners or dabblers (basically an eternal beginner).

Text-based interfaces have always been way faster at what they do (anything non-graphical). You simply cannot beat the efficiency of a power user who knows all of the keyboard shortcuts for their favourite text editor. I don't think that's an indictment of the GUI, however. The GUI ushered in ubiquitous computing akin to the personal automobile. Text-based interfaces remain a powerful, highly specialized tool for those who have the time and the need to learn them.
Don't forget stuff like Chernobyl that drained the budget.
You are quite the douchebag, aren't you?
Exception epilogues also make optimization harder/impossible for compilers if I remember correctly. Rust suffers from this too though because panics use the same mechanism.
Once Discord gets threading it will be unstoppable.
the politification of science has happenend in the past aswell.With disasterous results[0][1][2]

0: https://en.wikipedia.org/wiki/Lysenkoism
1: https://en.wikipedia.org/wiki/Politicization_of_science
2: https://en.wikipedia.org/wiki/Eugenics
Twitter is a time sink at best, and behavior modification at worst.

Not having a Twitter account has added tremendous value to my life.
That seems unlikely, given the bike (stock VFR exhaust are very modest, quite suitable for touring, your suggestion is ignorant and frankly insulting to the poster).

Many places the rules specifically state that OEM exhausts are legal regardless of how they test. I've always presumed that's the case because Ducati and Lamborghini owners are sufficiently cashed up to ensure legislation is written to accommodate them.
I agree it is a balancing act, I reviewed the key takeaways with a few disagreements:

> Right to Verify: Society has the freedom to inspect the source of all software used, and can run it as they wish, for any purpose (Software Freedom).

This is an age old question raised by proponents of Richard Stallman's vision of what software distribution should be like. I strongly oppose this view, and here is why:

- Software that is critical to security, such as cryptographic libraries and protocols should be open source. At some point, trust needs to be placed on someone. These open source libs can be modified by Apple and we wouldn't know. Ok, then, the argument should be that Apple should open source iOS. Oh...but Apple can do things at kernel level. Ok, force Apple to open source the kernel. Oh...but Apple can trick us with microcode level code. Ok, force Apple to open source that too ~~! This chain can go on to the point where you can just say - I am building the phone myself from scratch. Then, you may ask, why should I trust Pine64's hardware? You can't just arbitrarily stop at some point in this chain of trust!

- Software that makes the Clock app tick and the Weather app give weather information has no business in the Right to Verification. A game that keeps you engaged and Photos app that edits your photos - with everything opensource, the world would be worse off. Innovation would cease. Free low-quality stuff everywhere.

- Users should own the data in an ideal world. I would hold the keys to my own data but then I realize how misinformed, incompetent and careless the general public is with their own keys. Most people can defend their household and their belongings, but when it comes to technology and abstract concepts - it would be a total chaos if every user had to keep their own key safe. I would pay for someone to keep it secure for me (sounds insane, I know but don't we hire security guards?). If that's true, then I might as well pay Apple to keep my stuff secure. When you buy a door lock, you're already placing trust in the vendor who manufactured the lock.
WP had excellent documentation. It came with a “workbook” for step-by-step learning and with a separate full reference manual.

MS Office’s documentation is a travesty. Most appalling is how MS has given up on having help files. It used to come with good “online help” - back when that meant that it was on your system, not on the Internet. They’ve since just removed all help so that when you ask for help, the first thing you get is “searching Office Online.”

I had a pretty decent idea how Word worked 20 years ago. Now I just thrash about in there and click stuff and Google for random webpages for help.
> (...) NSA would not betray the trust (...)

German BND did nothing to verify any selectors asked by the NSA and just ran them without any safeguards. During the investigation into those practices it turned out the NSA used that trust to run over forty thousand selectors that are in violation of german interests. From what can be cobbled together from media reports that includes german industry, german government, other european governments, the EU itself, multiple european defense industries, every single foreign embassy in Berlin, delegates to the UN, NGOs like Human Rights Watch, and multiple Universities, among others. More then two thirds of all targets were friendlies within EU or NATO.

We joke that "german secret service" is the service that tells the usa about german secrets.
It is kind of impossible to know for sure without seeing your contract so listen to your lawyer is my best advice.
Wow that's a lot of interviews and letters. Cheers
> "it’s charming in a way that only academic software can be."

I remember experiencing this as an undergraduate CS student with a bioinformatics research position. At the time I felt like I was too stupid to understand the code.

After I struggled with that, the professor reassigned me to making their software available for web use and wanted me to take over some PHP shell_exec rollercoaster for handling job submissions.

Your NSF funds hard at work.
I have found this to be the hardest thing to teach at work. I think a lot of times more junior folks thing more senior folks know things, when actually they just spend a lot of time researching things. But I've found it hard to describe how to do that. It's much easier for me to describe how some technique / algorithm / API works than to describe how figure that out from first principles. But it's much more important to learn how to figure things out than it is to learn any specific thing.
At this point I'm confused. I don't think that private companies censored other conpanies at all, even today, hence there is no need for the government to intervene. Further, government intervention in the media does end badly, so should be avoided.

If your asking if a news group has ever refused to run a story due to dubious sources, yes. That happens all the time and has happened as long as there has been journalism.
I'll look for it...

This might be it (not sure): https://news.ycombinator.com/item?id=23976449
I'm Spanish.
"If you accept the premise that liberalism has failed and that re-establishing it is impossible ... Either you do accept the socialization of your property, and live the life of an ordinary person, which is morally by far the best thing to do"

Life is seldom made of binary choices like you imply.
And what you think is "morally by far the best thing to do" really does not have to match others morals.

My morals are, I do not judge absolute morals, like you. I judge only concrete situations.

And since so far a egalitarian society is only a theory that failed multiple times in reality, I do not believe in supporting such a theory with all my energy and posession. Which would be "accept the socialization of your property, and live the life of an ordinary person, which is morally by far the best thing to do".

In other words, if I would have to take the choice between fascism and socialism I would rather try to gather what I have and go away.
I read your post wrong. You are running the wheel already.

Sell puts, get assigned, sell calls.
That's sort of my feeling on this whole deal.

You could design a word processor with all the features people loved in WP 5.1, that runs on modern software and hardware.