skysight-inc/HackerNews huggingface dataset:
> legacy compatibility features [...] those CPUs won't be as efficient, cheap, reliable or secure as they otherwise could be [...] we can't rely on increasing transistor density to bail us out.

Legacy features shouldn't have a large impact on transistor usage, and they should have almost no impact on efficiency (although that may involve design choices). Almost all of the transistors are going to be used to implement the cache, routing between the high level blocks (external IO, cores, shared cache), and routing between the various microarchitecture units.

Using Broadwell as an example, the CPU cores[1] only use a relatively small amount of amount of area. However, even that is misleading, because most of the acre within each core is dedicated to the microarchitecture, which implements a far smaller set of micro-ops. Inside each core[2], the only place affected by legacy instructions is the decode stage (mostly in the "4-Way Decode" block in [2], probably less in the "PreDecode" block"), and a larger MicoCode ROM.

The legacy instructions might not be as efficient as they used to be in older CPUs; as low-priority instructions they may be implemented with less-convenient micro-ops that were designed for other, faster instructions. The software that uses those instructions was probably designed for a far slower CPU anyway, so it's probably no important if those instructions are a "slow" when the CPU overall is much faster.

I agree that the interactions between instructions might increase the difficulty of security, concurrency, or other higher-level concerns, but that will depend on the specific instruction. I'm not sure how large these concerns might be, unfortunately, so I cannot say if it's a serious issue.

> so their complexity ends up being "dead weight"

This sounds suspiciously like the unfortunate recent practice of labeling "old" things as "bad" or "holding back progress" and thus must be removed. In most cases backwards compatibility is a very important feature that adds very little cost. The low cost is possible because you can usually implement older features in terms of the newer features. This is true in CPU microcode, just like it's true in software.

[1] http://i59.tinypic.com/2mrxso9.jpg

[2] https://en.wikichip.org/w/images/thumb/a/a1/broadwell_block_...
Ah! Central regulations brought us inefficient telco monopolies and cartels.

Surely some more central regulations will remedy the situation! "To each according to his needs." What could possibly go wrong?
A Falconer Enters the World of Video Games
I found a $10 two years ago in a field.

It was really ragged, so much so that the bank wouldn't take it. So I still have it.
If you don't like tabs, converting them to spaces is trivial. You could even add git hooks to do it automatically.
Smoothest ticks and tips to better your photography skills
They were there to fix "Duplicate identifier" errors caused by multiple dependencies fetching their own copies of type definitions.

But you are right: typescript or those dependencies have improved and they are no longer necessary. I removed them and everything still works.
Police abuse happens everywhere. I said that somewhere above. I'm not as easily convinced that Japan's high conviction rate is due to coercion. I'm more afraid of kangaroo courts in places like Indonesia or the Middle East or small-town America than I am of being squeezed for something I didn't do in Japan. I'm 100% confident that no one can coerce a false confession from me in 23 days without physical torture. 100 percent.
Kepler Star KIC 8462852 Amateur Photometry Monitoring Project
I don't mean to be a philistine but just use an excel sheet, if you are super anal use onenote/evernote.
Microcontrollers? Absolutely.
Hard Questions
> Don't think you make hiring decisions based on tabs vs spaces?

I actually ask candidates "spaces or tabs?" in every single interview. I don't really care what the response is in regard to the holy war, and it doesn't mean anything on its own, but having SOME thought out response can be a GREAT indicator of how well versed someone is in general.

e.g. I'm going to think way more highly of someone that says "tabs, because then people can set the indentation render size to whatever they prefer in a way that doesn't affect other users" way more than someone who says "whatever my editor sets it to".

Also, fuck spaces. Long live tabs.
Software makers have escaped security liability for decades–if that changes
I'm confused. Do you mean that we're allowed to create posts on Hacker News that are not sarcastic? I thought there was a rule, with a powerful AI enforcing it, stating that all posts had to be sarcastic. (Warning, this post is sarcastic and not meant to be taken literally.)
Golang uses tabs for indentation and Go developer jobs have good salaries but then again this might be an outlier.
There wasn't a good, reasonable way to buy cheap roaming-data, at least not with my German contract. 150MB of roaming in the EU was 5€ with the purchase process (via SMS) being bugged and failing 50% of the time, sometimes charging my credit card instantly while delivering the "You can use your roaming data now" message days later when I was back home, customer support could not help because they "do not suggest that the data is available instantly". n=1, obviously.
I think many commenters here are viewing this only in terms of die cost. But the blog post is not about that: it's about the other costs that this complexity introduces! Each new feature interacts with all the others in complex ways, and each new feature requires significant new engineering efforts by anyone who has to interact directly with x86 assembly (I sketched a few of these use cases below [1]).

The same author has also written [2] about Intel's CET (their attempt to add control flow integrity (CFI) support at the CPU level):

> The tail end of Intel's document is rather terrifying; it tries to enumerate the interactions of their CFI feature with all the various execution modes that Intel currently supports, and leaves me with the impression that they're generally heading over the complexity event horizon.

[1] https://news.ycombinator.com/item?id=14560267

[2] http://robert.ocallahan.org/2016/06/is-control-flow-integrit...
Lol: actually that is part of the motivation - create a new family of games which could be harder than Go. Whether humans will be better though is a whole other question!
It IS promises ;) labeling a function as async makes it return a promise. await is sugar for avoiding having to roll your own promise tree.
How Does Audio Compression Work?
I wonder what's better : decentralized burning of oil in heat engine cars or centralized burning of whatever to produce electricity for electric cars...
I go quite a bit out of my way to avoid any interactions with banks.

I keep most of my savings in cash and never take out loans. The result: a blank credit report (which HR at most companies seems to like when I'm getting hired) and few late penalties, and never being told I can't have access to my money because of "XYZ." Not to mention, avoiding all the crappy online banking web GUIs.
Android Instant Apps, step-by-step: how Vimeo went about it
That's why most people stopped inserting the extra spaces themselves, instead allowing the layout engine/word processor etc to do it for them.
Incentives Can Impede Productivity for Creative Tasks
I've heard this called imperative programming with classes.
Your time would be better spent implementing ':set list' on classic whiteboards.

That's where your issue lies; subconscious prejudice is happening during the hiring process, you just can't see it.
When you're working in a large company with many developers spaces make more sense. Large companies generally pay more.

In a perfect world you'd use tabs for semantic indentation and spaces for stylistic indentation but this is too hard to implement in 100+ person teams and also can't be automated via an IDE style sheet.
This! It makes me really suspicious about the data.

Are there any highly-paid Go programmers who refuse to use gofmt? That's a serious amount of effort to go to in order to make your code non-standard. Your projects will be criticised and you'll get PR's to correct them for just that reason alone.

If there are no highly-paid Go programmers who use spaces, and it seems utterly reasonable to assume that there are not since the language itself enforces tabs, then who exactly are they talking about in the data?
Woooosh...
http://www.kylheku.com/cgit/c-snippets/tree/autotab.c

With this, I instantly conform to how the file is formatted. Is it 3 space indentation, made with a mixture of 8-tabs and spaces? Autotab will figure it out, spit out the Vim params, and you're modifying away without causing spurious diffs in version control.

You have to learn to use Ctrl-T for indent and Ctrl-D for deindent in Vim; those obey the shiftwidth and generate indentation according to the shiftwidth, tabsize and expandtab setting.
It's a lot easier though. "I made it camming, here are the tx records". Or "they're donations to my project X". Or "people bought in to my last ICO". Sure you will need a bit more work than that, but Bitcoin makes it far easier to setup a ton of transactions coming to you.
I see it’s time to once again present the once-and-for-all solution to this tabs/spaces mess: Elastic Tabstops!

http://nickgravgaard.com/elastic-tabstops/
netcat -z -w 2 $ipaddress 22;echo $?

How hard is that?
We are suffering from space exhaustion. Experienced older programmers known earning more were able to gobble up spaces way back while they were still cheap and are now enjoying spreading them around. Younger coders on a budget have to be stingy with spaces and are forced to use the poor tab substitute. This leaves the less experience professionals at the mercy of tab expansion by greybeard hackers. Sad.
they controlled for language too, and didn't cite Go as an outlier
Ricetta nizzarda con il pollo
Quantum Operating Systems [pdf]
"What does a bank have to do before the government says "enough" and starts locking people up?"

They protect themselves by hiring politicians and people from regulating agencies for a lot of money. If they stopped doing that they would be in trouble.
Warning, the parent post is sarcastic and should be chuckled at.
Amazon's been a prudent steward of its cash and shareholder value. I'd be really surprised if it spent this sum over Slack & encourage Bezos to go get his head checked. Messaging platforms come and go. Many better ways to spend $9B for Amazon.
> This may just be my general observation but I feel like Silicon Valley hegemony has a grudge against crypto currencies and I'm not sure why. For an industry that has constantly tried new things...

There seems to be a pretty strong trend in Silicon Valley away from decentralization and towards centralized and controlled platforms. You can see this with IoT (e.g. your alarm clock bricks when the company's proprietary server is shut down), Social Networks, and "the Cloud" in general.
My brother used to state this- and to be honest i did not believe him. The conclusion is- cars should run much longer to wear off there energy debt. A mindset is needed that runs directly contrary to the colour and form frenzy that is capitalism, which is unlikely to change. A compromise would be a car - consisting of a near everlasting baseframe, and a decoration shell, that can be exchanged as often as the heart desires for monetary value.

That and software could continu with constant change, while the hardware remains relatively stagnant.
Palapa money
I'm dubious, because after nearly a decade, Chrome has exactly zero mouse gesture addons that I consider remotely usable. None of them work consistently. Not a single one is comparable to FireGestures.

But thanks for the link to Foxy Gestures-- I'll give it a shot!

Edit: Tried out Foxy Gestures. Not usable. First, no support for mouse button chording. Second, every single gesture pops up the right-click menu. Third, gestures don't work maybe 75% of the time-- difficult to tell if that's due to the right click menu popping up or if it's just plain broken.

Seems like it's this bug at fault. Mouse gesture Webextensions are broken on MacOS and Linux.

https://bugzilla.mozilla.org/show_bug.cgi?id=1360278
Father had two cancer surgeries. Would be no big deal for me
Er, no. The best solution is to use the circle (select) tool, convert the selection to path, then stroke the path.

I don't think it's that far from how one goes about drawing bezier paths in PS (although it is a little more convoluted).

https://graphicdesign.stackexchange.com/questions/28344/how-...
I agree with you completely. I think it's good that they aren't sitting behind a desk doing nothing, but I'm glad these stories come out so we can have the proper conversations and keep privacy-security tradeoffs at a comfortable level for society.
A simple explanation that occours to me:

Many of those who answered tabs are actually using an IDE which inserts spaces when they push tab. They believe they are using tabs, because they've never realized that this is going on. People under that misapprehrension are likely to be less skilled.

Additionally, if a coder, is in fact, deliberately choosing the use tabs, they are going against the majority opion of coders and almost all style guides. That attitude might be correlated with lesser income.
> Cool, our government really cares

Government == Individuals that work in public positions and do not think as one.
The tweet he was replying to said: "I've heard various reports from people I trust that Signal is compromised. Any comments/thoughts/reliable rumors?"

With his reply, Durov is implicitly claiming that Signal must be compromised because it received some funding that can be traced back to the US government. This is the same kind of FUD that has often been used to smear Tor in the past (and indeed, the piece he cites describes Tor as "a federal weapons contractor" and "a foreign policy weapon, a soft power cyber weapon").
We're are in an Orwellian decade.
Ahh. Finally a realistic chance of cleanly adding "Tea. Earl Grey. Hot." to my benchtop drink dispenser project.

The future is so cool. 1990's childhood me approves greatly.
Aren't the largest criminals best at laundering money?

And doesn't the war on drugs create violent criminals?

Doesn't an illegal market in drugs allow terrorists to profit from said market?

It seems to me Joe Schmo takes the brunt of these laws. All the while a bunch of cheap suits get to justify their jobs.
"Edited: It's interesting to see how comment which states facts, can get upvoted and downvoted this much."

I downvoted you because you talked about your downvotes.

Write your comment and live with the results - don't interrupt the discussion to complain about your score.
Ah, I see what you mean. I've never seen an editor work this way, normally they just swap spaces with tabs, leaving however many spaces can't be swapped. Which is probably why I've never seen tabbed code in the real world that doesn't look like utter garbage.
Too late to buy, Slack is such old news now and their market is super saturated. This could have been a decent decision several years ago, but not now.
Inside a Porn-Pimping Spam Botnet
In UK best developers work as contractors and make on par with US peers. This is not accounted for in most data as they look at permanent job salaries in UK which are very low.
Is Slack actually unsustainable? They take in more than $150m in revenue a year at this point.
I generally prefer tabs, but I don't use them when writing Python (which is most of my job these days). I'm also not all that hung up about it, so I started with "slightly".
Show HN: Datacol is now open source under Apache2
Anything altruistic is going to make them money indirectly through PR. That doesn't mean they shouldn't try to be altruistic.

> Which is not to say it's impossible Facebook could come up with a useful feature that would be helpful to people during a disaster; but "Safety Check" is not that.

The top post on this thread is literally someone saying that this feature is the only reason they have kept their account.

Can it be improved? Absolutely. But to say it's not useful in its current form is absurd.
Surely the big problem with this (and the wider site concept, much as I generally favour it) is that the donating users who say they also want GIMP to be as good as Photoshop don't all have the same idea about what constitutes better UX. So you get a high proportion of dropouts from the funding subscription, as well as disagreements with GIMP's existing user base and team about whether they forget their original roadmap in favour of merging your patch, assuming you can still afford to finish it.

(Key difference with Kickstarter etc is that people are pledging for a specific solution rather that for people to solve a problem, and the cash is paid up front rather than a promised monthly commitment. And still there are issues with execution of many projects, particularly once third parties with different goals are involved. "I also need GIMP to be as Photoshop" on the other hand, is basically asking for a "nice unicorn" and hoping both that unicorns can exist and that everybody else involved - especially the unicorn-breeder - shares your definition of "nice" ones)
This comment is pure whataboutism.

For the record, the USSR under Stalin targeted Jews in purges and forced deportation to Sibera: http://www.tabletmag.com/jewish-news-and-politics/125203/sur...

The Holodomor is frequently cited as a genocide: https://en.wikipedia.org/wiki/Holodomor_genocide_question

They also targeted 'kulaks' for deportation and/or extermination: https://en.wikipedia.org/wiki/Dekulakization
Easily use Goo.gl with Rebrandly
But that just contributes to the gap, the kind of place that devotes time to things like shared editor configs is the kind of place with enough money (and interest) to contribute to development quality, and places like that probably pay more.

The average "sweatshop/devshop" developer probably doesn't even know/care about tabs vs spaces.
> much better :p

Can you please elaborate on this?
Nowadays CS, SS, DS, and ES are enforced to be 0 in 64 bit mode, leaving just FS and GS which are used for e.g. thread local storage
I've grown so tired of sarcasm. Online and in real life people are often saying the exact opposite of what they mean. We have to pick up the sarcasam to truly understand.
EU mostly regulates inter-state commerce, not internal markets in countries, that's the job for the local regulators.
"Apple’s created 2 million jobs in the United States. A million and a half of those are app developers."

Does anyone know if there are 1.5 million full time app developers?
'King of Snapchat' DJ Khaled explains how to succeed on social media
Just thinking, but it could be cool to add a comment feature, in order to discuss publicly about implementation details, constraints and quick solutions.
Nice! If that's indeed napkin code, it's very impressive.

Just a small note, randomness in quicksort can't be hidden in unsafePerformSomething, because it does lead to impurity. For example, sorting [(0,1),(0,2)] on fst will give different results depending on randomness. But that's not to detract from your main point.
Even TOR was originally a government funded project
BigData and ML Example and Toolset Weekly Roundup – June 15, 2017
OK - now that's out of the way.

Let's move on to ASCII vs Unicode ....
Exactly, the government is extremely large and not all the NSA. Sometimes the left hand doesn't know what all the thousands of right hands are doing and can't possibly care.
On a very large codebase, developed over decades, not months or years, by thousands of individual teams, using multiple versions of multiple IDE's, some of which didn't exist when the project started, across different languages, also some of which didn't exist when the project started, this is not so simple.

Unless the project's settings are to use spaces.
Aren't there ASICs with APIs?
You'd have to find collisions that are of an identical length and still be useful (i.e. able to do something evil rather than just being a bunch of random data). The current techniques for creating collisions in SHA1 don't make it possible to find identical length collisions. So your statement that nobody has bothered to spend the money to create the collisions is not correct.

Now if you want to say that nobody has spent the time to find a technique to produce identically sized collisions, that would be correct. But that's far from trivial and we don't know that such a technique is guaranteed to exist.
Just a reminder when talking about this with people: Money laundering is not an actual crime that harms anyone. It's a made-up thing to make prosecutors lives easier by lowering the bar on what they can go after people for. We need to undo the marketing that governments push out and media plays along with. It's sad that not telling the government your every financial move is seen as wrong in any remotely free society.
Could well be. I know that Google for sure requires spaces, and some cursory Googling leads me to the believe that Facebook does as well. Does anyone have information on Amazon, Microsoft, Apple, etc.?

Of course, if all of the top companies are requiring spaces, then there's probably a reason for that, and its impact on salary data is thus meaningful, not just a spurious correlation.
Product managers don't know the world beyond current users
PukkaTeam, this is your life (and launch) – Story of remote team tool launch
Remember, this is an interview situation, I can't give you a realistic 500000 line program with a slow hot spot and ask you to fix: we only have a few minutes (maybe an hour). I have simplified the problem to a single function that is a bottleneck, I want you to analyze this function so I can see how well you can analyze things.

Refusing to do something because it hasn't been profiled is not analysis, it is refusing to do analysis. You have been given a problem and been asked to analyze it. That refusal makes you not a team player.

Once again, this is an interview. Noting that this scenario (a single function that is known to be too slow for reasons that can be fixed in 10 minutes) never happens in the real world is good - it shows you understand that real world analysis includes elements not included here. Stating you won't do this because you don't have profile data is not being a team player.
Without doing too much investigation: That would be resolved if (1) participants were allowed to select more than one language and (2) Google is over-represented as an employer of participants who selected Go.
Docker isn't included in this release (thought supposedly will be coming in something like 11.1). The GUI is stable in 11, there's just an _option_ to use the redesigned, beta UI.
> There was no terrorism prior to [1974]

Simply false.
Sounds interesting -- do you have any resources handy that cover what you allude to (spec. comparing async calls to promises, and favoring the latter?) I use both in my ui code and they seem to have their niche for me. I prefer promise based calls when I want to separate out fetching data from the state-mutating callback, or when I may want to "cancel" something (ex: fetch a list of items for a list component, then unmount the component before the list returns -- no need to handle the response data anymore).
Supporting Cryptocat only makes sense if they don't do due diligence or if they're trying to subvert security.
Oh, well, you're right about that, I just took as an assumption the title was humbug.
Signal is not owned by Twitter. Moxie works there, but that doesn't mean his code is owned by Twitter.
Coinbase – Service Unavailable
There are many cases when you don't know the IP you will be connecting from. The only way around that I know of would be a VPN, but SSH's auth and crypto strength is at least as good.