skysight-inc/HackerNews huggingface dataset:
That link explains other security measures, but doesn't actually say that they need your bank/credit card login details though?!? (unless I missed it somewhere).

"Please note: Due to the rise of credit card fraud and for your security all credit card orders will be subject to detailed security checks requiring further documentation; that may include Driver Licence, CreditCard or bank statements. If your order does not meet our security check requirements, you will be contacted and further credit card security procedures will be implemented.

As part of our verification process we will utilise various procedures to ensure ultimate protection to the Credit Card holder. These processes may include but not limited to charging a small amount randomly under $2 requiring confirmation prior to approval; verbal verification via phone or a request for written Authorization, photo identification including valid Driver Licence, Utilities bill or the copy of the credit card or a request for your bank statement displaying the debit entry.

Mwave may also use a verification service powered by BankStatements.com.au, the Australian leader in automated bank statement data retrieval. Since 2013 BankStatements.com.au has provided secure, automated data retrieval services to over a quarter of a million Australians as part of their credit applications. "
Some time ago, Facebook was all about FarmVille. A fictional cow was sad and you had to help. Over and over again... in your profile, in your news feed, everywhere.

Facebook fixed that problem by moving all game activity to a specialized area.

So that's the solution. Facebook needs to split links from user photos and updates. And move the trending pane to that area as well.
I tend to look for efficiency in algorithms. The company I work for commonly issues a coding challenge to applicants which is reviewed by multiple coders before any actual interviews. The coding challenge is typically a topological sorting problem. I'm much more likely to pass an applicant to the next stage if their solution is efficient vs not. Example specific to that problem is multiple for loops vs recursion.

Any developer that's been around for more than a year can probably with time solve almost any problem, the key for me is how they solve it and how fast they solve it. Obviously there are more aspects to hiring than can be laid out in a comment, but efficiency is a big one for me.

Btw, my job title is 'Software Craftsman'
>as an example of a country where no killings with other weapons than guns happen?

Again with the straw man.

Did I say no other killings than with guns? Of course not.

You insist on putting words into my mouth so that you can attack an argument other than that which I'm making.
In my opinion, the Kessler Syndrome, or a Carrington Event, are the two most underrated yet likely causes of TEOTWAWKI.
"things like modals, toasts, or things that just don't fit into a neat little area of the screen in a sibling child parent relationship"

That's actually where React is very strong compared to other functional-style UI frameworks (eg: Elm's). Portals in React are really elegant and makes dealing with modals and toasts (or anything that doesn't fit in this model) quite nice.

I was working today with someone who was making a browser extension to inject stuff in host pages (think something like LastPass or those rulers for designers).

We made a set of components that create arbitrary elements at arbitrary locations, or highjack existing ones, and from there you get to manipulate things like you would any other functional-style UI. It's quite lovely (all thanks to the lifecycle hooks and React's ability to render subtrees anywhere on the screen). Very few tools do it as well as React does, otherwise I'd be writing Elm all day instead of JavaScript.
EU Commission reveals plans for 'travel tax' on British citizens after Brexit
http://themonkeycage.org/2009/12/three_myths_about_political...
Previously:

"PoisonTap, a $5 tool that invades password-protected computers"

https://news.ycombinator.com/item?id=12966673
I've worked at MSFT since 2011, on developer tools and Azure. (My opinions are my own, of course).

When I first joined Microsoft, it was prior to the launch of Win8, and I saw a lot of complacency throughout many parts of the company. I found it frustrating, because I came from an open-source background on the Java stack, and I wanted to see more innovation.

In just a few years, things have changed dramatically, and that is because the market has changed. As others have said on this thread, Windows is no longer the key to Microsoft's business success, it is the ecosystem of products that Microsoft sells.

That is why there have been all of these cultural changes, because the industry has shifted, and there are some really smart leaders at Microsoft (e.g. Scott Guthrie) who realize that we have to change to stay viable.

So, the terrible practices you once saw just don't even make sense anymore. Microsoft is being challenged in every market it operates in, which means that we're forced to innovate. This turns out to be better for everyone, including employees like me. (I came from an academic research background, and I'd never want to work somewhere that was happy with the status quo.)

And yes, the Visual Studio 2015 uninstall takes a really long time. Some installs also take forever. They've made a ton of improvements in the new preview VS 2017.

The reason this wasn't done previously was not that a few engineers couldn't change things (though sometimes that is true), but rather that it was a hard engineering problem. It's easy to think that a big company has infinite resources, but the reality is that you can't build a product with too big of a team (see: Mythical Man Month), so you have to choose what you focus on. If you were to ask most customers, they'd rather have new features than have a better installation experience. That is, until the install experience got in people's way.

I don't work on anything related to the Windows client, so I can't speak to the telemetry, but what you're describing does sound pretty annoying. It is all anonymized (I know this because I'm familiar with the privacy reviews that all code has to go through), but I can see the case for wanting to opt out completely.

Obviously, one post is not going to change your mind (and I'm not looking to do so), but I'd suggest you look at leadership and philosophy changes, not just individuals.
I don't think there is reason to any longer. Most banks now have a trust relationship with feed providers like Yodlee etc. We use Xero, and I believe they use Yodlee to pull bank and credit card transactions in. IIRC we had to authorise the transfer with Yodlee, and not with Xero directly (i.e. Xero doesn't get to see or capture our bank login details).
I wouldn't say it is common - I've never seen it.
Journalists are a Legacy Technology
>>So. Apparently "fake news" is OK [1] if your camp is doing it.

I think a lot of people develop acceptance of fake news from their camp because they just assume the other camp is doing it as well and see it as leveling the playing field.
I don't see the connection to Uber's model, unless you mean Franchise, but I doubt people already have the satellite-wifi transponder like drivers already had cars.
And that's why I visit hackernews more than facebook.
Connkt
Look up. I'm for pop vote. I'm just saying to libs thinking the pop vote would have changed things... Maybe. Maybe Not.
Early exploration and tests amount to a lot of code, and the language needs to make those parts pleasant to write as well. I think .unwraps() are especially common there.

I imagine `println!()` is another thing whose design is influenced by meeting the needs of early exploration implementations (and it's another example of a library function that handles errors with panics, for example, but it's not just the thing that makes me think so).
> This way of thinking is incredibly toxic and prevents human flourishing. To blame other people for your faults is to deny yourself the opportunity for betterment.

This is a non-sequitur. Someone taking a stance against gambling doesn't mean they are problem gamblers.

> Bad at school? It's a mental disorder.

It goes without saying that not everyone who is bad at school has a mental disorder, but having a mental disorder can obviously have an adverse effect on performance at school.

If you google for "Correlation between mental disorders and school marks" you can find some studies that seem to indicate that there is a correlation[0].

> Gambling addiction? It's a bug in the brain. Everybody else is responsible for one's woes

What else would you call it? It has a negative expected value yet I've meet otherwise very smart people who gamble far more than they can afford desperate to make money. Doesn't remove responsibility, but why should we as a society be expected to accommodate businesses that hurt individuals?

[0] http://www.sciencedirect.com/science/article/pii/S1877042814...
While the examples I use come from early rounds, the message applies to just about any round.
Gaming regulators prohibit many on-the-fly changes to machines while on the floor. Online casinos certainly could and probably are doing some variation of this though, and all those manufacturers sell "at home" software versions of their machines and would be smart to be doing split testing of player behavior in that software.
I feel like the Ember learning curve is a lie these days. The documentation is so good that you really shouldn't have trouble with _Ember_. But, SPA's have a learning curve that you might not realize if you just create one React component.
Seriously, props to his parents. None to grandpops, though - seriously, if your kid is an undergrad at Stanford and dreamed of working at a company, and then comes and tells you that the entire thing might be a sham? It would take a lot of evidence to sway someone's mind like that.
I wouldn't think there are any legally enforceable penalties except maybe through contract law. PCI-DSS is not law, it's an agreement between companies.
Which one is it and link?
>I've been long-enamoured with the Canadian Engineering 'Iron Ring' ceremony.

They have it in the US too:

https://en.wikipedia.org/wiki/Order_of_the_Engineer
What is reporting the errors? In a standalone environment, in which you're left with the core language, anything that reports errors is something you can define, and you can define that component to use error codes, just as we would in C. It feels odd to want exact control over the error handling abstraction but want to use Rust's convenient IO abstraction. Performance either matters or it doesn't.

> debate unto itself without a clear answer, but you pretend as if it's a solved problem and that your view couldn't possibly be wrong

This debate was settled: we started out with error codes. We saw a generation of languages with exceptions --- Java, C++, CL with its condition system, Python, etc. arise in reaction to the problems with error codes.

The current movement away from exceptions, which I think started with Go, feels like backsliding, especially because most of the justifications for error code primacy that I see either ignore the actual (instead of mythologized) costs of exceptions or claim that exceptional code is a hardship inconsistent with my experience.

Now, it's possible that we should think of exceptions as just a failed experiment, but that view isn't consistent with the extreme utility I've seen in exception systems. Exceptions are so useful that people build them out of longjmp!

Anyway, it's frustrating that because Rust tried to solve simultaneously for ergonomics, exception freedom, and a rich standard library, it ended up in a position of having to abort on OOM. (I realize that there are more options these days.)

Still, exceptions in stdlib with an option for an exception free standalone system feels like the more appropriate trade-off.

I understand that there are trade-offs everywhere, but this observation doesn't mean that I have to excuse what I see as very bad trade-offs.
Another fine exploit by Samy [1]. At the risk of sounding like a killjoy, once the attacker has physical access to a machine, let alone plugs in their own device, you can usually abandon all security hope [2]. But that entirely notwithstanding, the techniques presented in this exploit are actually quite clever, and they conspire to make for a nasty set of scenarios. Kudos to him for raising awareness once again!

[1] https://en.wikipedia.org/wiki/Samy_Kamkar [2] https://hn.algolia.com/?query=tptacek%20"physical%20access"&...
> References are one of the unsafe C++ elements that SaferCPlusPlus is intended to be used to replace [1].

OK, so you can't use references. Then, as I said before, your pointer replacements have a runtime performance cost worse than GC write barriers.

> Yes, that series of operations is safe. A related example from the "msetl_example.cpp" file:

I don't think you understood me. I mean the this pointer. "this" is hardwired into C++ to be an unsafe pointer.

> I agree with the gist though. This kind of thing should be prevented at compile time. Rust has an excellent static analyzer/enforcer built into its compiler. Arguably, it would be a service to the community to unbundle it from the Rust compiler and make it available for application to C++ code as well. Arguably.

Not possible. It's totally incompatible with existing C++ designs.

> Um, yeah, modern code should try to avoid the use of general pointers (and generally does). Most modern languages don't provide general pointers.

I think you're getting lost in the weeds of what a "general pointer" is and is not. It doesn't matter.

The point is that if your references track their owners at runtime, then you are just creating a GC. If the overhead of doing that is worse than a traditional GC (which, if you are doing that much bookkeeping, it will be), then there's little purpose to it.
Rise in Global Carbon Emissions Slows
Google is terrifyingly good at finding relevant developer documentation. I'm convinced it will be writing software for us in a couple years.
> Well, like I said in the other comment, you guys could fix that by unbundling the static checker in the Rust compiler and making it applicable to (a subset of) C++ code as well :)

No, we can't do that. It is incompatible with C++.

> Rather than disallow code that can't be verified to be (memory) safe, the compiler could instead inject runtime checks that would be optimized out using the same analysis that the static checker uses.

That is not possible. It would require massive bookkeeping, much like your library does. That would eliminate most of the benefits of Rust.
Go is more verbose because it lacks a type system that allows generic programming, that seems like a very different kind of verbosity, than explicit error handling IMO.

Correct me if I'm wrong, but I don't believe Go's type system enforces you check and handle errors either, so it's not really enforcing verbosity where it counts.
If climate scientists shot down every mistaken claim people make about their field, they wouldn't have any time left over for climate science.

The science is no more "tarnished" by people's misunderstanding of it than quantum mechanics is by people using it as a justification for pseudoscience.
Ask HN: How to build a company as a foreign founder
Hello HN, I want to learn how people in tech in US build their company without citizenship or Green Card. I am on F1 Student visa right now, and talked to lawyer, they talked about E2 visa which gives 5 years of visa to be able to work for your own company. But during these 5 years, it is hard to apply for green card. The definite solution seems like getting H1B and get a Green Card in the long run. But they also say, you cannot apply H1B via your own company. Is there anyone having experiences with these issues? Thank you.
I think legally-enforceable penalties in a regulatory sense vary depending on where you and your customer are. But the contracts between you and your credit processing merchants are civilly enforceable and in my experience they don't mess around. They will fine you and raise your transaction costs when out of compliance and will ultimately cut you off if necessary. They also know their competitors will do the same thing because they bear the brunt of the costs incurred by fraud.
Apple dissolves Mac automation management post, Sal Soghoian to leave company
If you are interesting in learning more about some of the art of creating addiciting products, I'd recommend Hooked: How to Build Habit-Forming Products[0]. Great book that lays out some of the foundations in an easy to understand way. It is specifically designed for the tech scene and has lots of relevent examples of how most of the programs we use daily either intentionally (or unintentionally) designed to be addictive.

[0] https://www.amazon.ca/Hooked-How-Build-Habit-Forming-Product...
Thanks for answering the first question I had after digging through their site. A rendering layer would be fantastic. There are so many cool things that could be easily added to increase immersion or tell a story.
Adam Smith favored progressive taxation.

The subjects of every state ought to contribute towards
the support of the government, as nearly as possible,
in proportion to their respective abilities; that is,
in proportion to the revenue which they respectively
enjoy under the protection of the state.

Adam Smith, Wealth of Nations

https://www.adamsmith.org/blog/tax-spending/adam-smith-and-p...
Credit card transaction fees are regulated at a much lower level in Europe.
I don't know how concerned these companies are about industrial espionage. I would definitely buy that they were wary of funding a competitor.
I wasn't aware of the enhancement in VS2015. I'll definitely look at that functionality.

VS2015 has made up a lot of ground for what R# lacked but the static analysis still isn't there. You have to learn what errors/notes mean and how to interpret the results because they are very meaningful. Point blank - writing code with Resharper will lead to higher quality code.

And yeah, some part of my Resharper love is just an old habit. I've been using R# since VS2005 when the IDE lacked a lot of critical features that R# plugged. Now a lot of it is just habits and keyboard shortcuts and it's only a few hundred dollars for a license which still pays for itself throughout the course of the year.
> "for a useful lifetime of five to seven years"

Isn't that a relatively low lifetime for so many satellites? Doesn't that mean they'll need to make a lot of launches just to keep the fleet operational?
I am using a standard line "It's fake. In general you should consider anything you see on Facebook, Twitter, Whatsapp or the Internet to be false by default."

Engaging in refuting online garbage constantly is a painful waste of time, and keeping silent or blocking it just allows it to fester.

I'm hoping that this makes a difference, and I've used a trivial and non-threatening example of fakery (fake supermoon pics) to plant the idea that nothing online can be trusted, within my social circles.
Wanting to limit immigration doesn't make you racist, though. I take it as saying, essentially, if such a significant percentage of jobs in a top industry in this country are held by immigrants, are we maybe not doing enough to help our own residents in need of good paying jobs to be able to acquire these positions?
The End Of The World As We Know It. (I had to google. Interestingly, my Mac’s dictionary has TEOTWAWKI as an alias for “Survivalism”.)
Sounds like they were particularly after information private to businesses, since that is a large part of American interests.
That's ridiculous. Why not just use redirects/posts the way SAML and OAuth does?
Because society has taught people that if they want a higher quality of life they should be ashamed of themselves. So they invent politically correct ways of saying it.
I'm aware, but most gambling regulations are heavily influenced by lobbyists. If the industry realized how much more money they could make from this, they would get it approved.
I've worked on 2 production Ember apps. The first was a nightmare because there were 2 way bindings and the team that built it didn't know how to use the router.

The second was a dream because we built it after a couple of years dealign with the fallout from a bad ember app (plus "data down - actions up" was now the prescription).

Ember can be really nice if you follow the happy path.
For the uninitiated (incld. myelf...), "The end of the world as we know it."
Need add scylladb to the benchmark list

(When it stops crashing)
Well, what's true is that these particular sentences were often not only used out of the context but even particularly modified to the significantly different "I know that I know nothing."

https://en.wikipedia.org/wiki/I_know_that_I_know_nothing

"Evidence that Socrates does not actually claim to know nothing can be found at Apology 29b-c, where he claims twice to know something. See also Apology 29d, where Socrates indicates that he is so confident in his claim to knowledge at 29b-c that he is willing to die for it."

So he was what we'd today call "a scientist" being ready to admit the changing but the finite limits of the knowledge while acquiring the new knowledge, not "an ignorant."

But it's also not surprising that not everybody even understood what was that about.
So has Theranos fully collapsed yet? Is it still a thing? I keep hearing how it's this big house of cards that has collapsed but then... it's still going on?
Lighthearted comment: another -gate ism. ):
Having a Facebook news feed and following news/politics are two different things. OP can quit Facebook and still go read the Washington Post.
Pride gets in the way of many things, especially progress and innovation, in Microsoft's case, it's holding on to the Window's O.S. If I were the new man at Microsoft, I would immediately set course to release two versions of Windows, and let people make the decision: One with the standard Window's filesystem and one built on the Unix/Linux kernel, like Apple has done. And above all lead with design. The possibilities of what they can do at that point would be endless. But you gotta let go of that pride first!!!
>> Not true, soft and hard realtime garbage collectors exist. Your runtime simply needs to bound the amount of reclamation work done at any given time.

That doesn't change anything! You're just choosing a garbage collector with a default deterministic pathological case, which is a guarantee you can make about almost any GC by carefully tailoring your memory usage to your scenario and choice of algorithm. That's all realtiem embedded software development is all about: writing code that has predictable timing given your expected inputs and environment. If all you need to do is flip a bit once every 10 minutes with a precision of 1 second while reading 1 bps from a sensor even a full blown Linux distribution on a modern Intel i7 running a Python or Ruby daemon can be considered "realtime". The language doesn't matter as long as you can predict how long everything is going to take in the worst case and your micro[controller/processor] is fast enough to react.

>> For instance, the cascading free behaviour Rust is currently susceptible to can be broken up into a bounded series of free operations interleaved with ordinary program execution. Rust would then be realtime without truly changing its observable behaviour, except its timing in some programs.

You know that's what the Drop trait is for, right? All you have to do is add whatever memory management code you'd have (in your C program) into the trait implementation and your memory deallocation will behave exactly as it would in any other low level language. These low level facilities have been part of the Rust design from the start, they just don't require you to manually call free() by default. That doesn't mean anything in Rust is stopping you from doing so and if you want to, you can opt out of that behavior entirely by providing a blank Drop implementation. After that, literally anything you can do in C you can also do in a Rust unsafe block.