skysight-inc/HackerNews huggingface dataset:
I still believe it's a bad idea to roll your own crypto, interesting as an exercise, but I would never use it in a production environment.
Coming from Europe, I can tell you that secondary Canadian education is laughable at best.
There has never been a country as cultural influential as the United States. The US is the only country with a military presence the spans the globe. In tech, you could combine the rest of the world and the US would still be ahead. Europe had to create a union to create a market big enough to compete with the US.

I don't think you understand the scale at which the US has to absolutely continuously fail over the next century to lose its lead.
Well, the problem is that this means exchanges need to actually implement support for every chain. If I tomorrow go muck around with my bitcoin node and make it fork, why shouldn't they be required to issue you IOUs for that altcoin as well, after all? What if they didn't know that a fork happened, went and rotated all their cold storage keys, destroyed the old private keys, and later you ask for your coins on the secret chain?

You have to draw the line somewhere, and, as a practical concern, determining that a fork meets this line retroactively adds a great deal of complexity and risk to the process. Further, as we've seen here, even a short delay in executing the split raises a great deal of ire and threats of lawsuits.

So, as I see it, the only consistent positions to take would be to either:

1. Not require split tracking at all. People who want to enjoy the benefits of such a split can simply move their bitcoins to a wallet under their direct control, or to an exchange who has agreed to track the split. [what happened here - a market-driven solution, essentially]

2. To legally mandate split tracking if proponents of the split agree to make a market - that is, agree to buy at a particular price for a particular period of time - thus ensuring that the coins have value [unlikely to ever come into play due to the enormous cost of such a venture]

3. To legally mandate split tracking for absolutely every altcoin, no matter how awkward or technically difficult it may be to do so.

Keep in mind that implementing 3 means the exchange might need to run software created by the altcoin's promoters - because keeping up with your own software for every altcoin would take too much development resources - and would be exposed to the exchange's private keys in order to perform hot wallet transactions that the altcoin's network will accept. Thus, if exchanges are forced to run software from any random Joe's fork, this would present a real security risk that backdoored software might be slipped in - this means that they would be forced to switch to split wallets by customer so a single customer using JoeCoin won't compromise funds held by other customers, but having this split out makes maintaining cold wallets impractical.
Activists need a labour distribution- a spokesman and a brain, seperated by a TOR Layer.
That is only true if the market is unable to recognize it and price coins accordingly. Maybe the market is purely irrational, but it's certainly not a given.

I won't claim to know any more than you, mostly because ~80% of bitcoin use is in Asia and i know little about it. All of China and Japan and 2/3 of korean exchanges offer withdrawals or trading of BCH.
Yeah, agreed, they're called WOTC's (Work Opportunity Tax Credits) and they are significant tax benefits. Some municipalities will also kick in money towards initial salaries, so there's compelling reasons to hire this population.
Aviation, medical devices, civil engineering.
And yet, with things like bitcoin and ethereum and the like, some of "us" became rich very quickly. A common trope, and I'll just repeat it, is "I wish I had bought / mined bitcoin / eth in <year>". For ETH that would've been last year.
They were sitting there because of a bomb threat at another airport and that was the only storage space. Did you read the article?
Yes, I know. But it's analogous to the GPS system the parents are discussing.
Most of the VCs and probably the majority of founders involved is above 30, I would think.
Yeah, that's pretty bad. Not always easy to say why that happened. Could be a blacklisted server but could also be the individual (learnt) behaviour of your Gmail account.
ThoughtWorks Singapore | Senior/Lead Software Developer | Full-Time | Onsite | Visa Sponsorship available. We’re looking for full stack software engineers, who’re very passionate about technology. Imagine a work environment that values technological innovation, integrity and enthusiasm. Where you get a chance to do great work, alongside some of the brightest people and industry luminaries that you have ever met, like Martin Fowler, Jim Highsmith, Pramod Sadalage and many more. Do you want to make a difference while doing the kind of work you love? At ThoughtWorks you can. To apply and for more details - https://www.thoughtworks.com/jobs/466063
If you were a cook you wouldn't really be qualified to build a stove or make your own knives, but you'd know what kind of stove and knives you'd want.
That's certainly the argument, but it's not clear at all that the argument is sound. For instance, there's compelling circumstantial evidence that Internet pornography leads to a decline in rape. (https://www.psychologytoday.com/blog/all-about-sex/201601/ev...) Maybe prohibitions on child porn lead to more sexual abuse of children?
> HFT is just optimizing for profit

And low-frequency trading isn't?
Russia Says Donald Trump Sanctions Amount to 'Trade War' – Time.com
Additionally, try to find an average person and do it again. Most people are really, really bad at typing.
Snapchat is trying to buy drone maker Zero Zero Robotics
But then if you're listening to multiple events, won't you have to try to disambiguate after the fact in handleEvent()?
Another great suggestion. We have begun working with parole/probation offices who frequently are incredibly passionate professionals committed to making a difference. At some point we'll offer a white label platform for them to track employment opportunities, employers, etc. Many still operate off of an excel spread sheet.
Thanks for your suggestion! Since Sendy is using Amazon SES, it would be more of a test of the Amazon mail servers. Good idea nonetheless!
Why wouldn't it make sense? If you buy a stock don't you expect to get dividends? You may have bought it from a short seller. Or you may have loaned it to a short seller (brokers often do that without your knowledge, but with your permission). Everything balances out because the company will pay to Z and X will pay to Y. What doesn't make sense is for both Y and Z to vote, for example.
Out of curiosity, is this just for comments/submissions referring to other HN users or does it cover comments/submissions that refer to anyone whether they're a HN user or not?
"Gender differences in personality tend to be larger in gender-egalitarian societies than in gender-inegalitarian societies"

http://onlinelibrary.wiley.com/doi/10.1111/j.1751-9004.2010....

"Most importantly and contra predictions, we showed that economically developed and more gender equal countries have a lower overall level of mathematics anxiety, and yet a larger national sex difference in mathematics anxiety relative to less developed countries."

http://journals.plos.org/plosone/article?id=10.1371/journal....

"Previous research suggested that sex differences in personality traits are larger in prosperous, healthy, and egalitarian cultures in which women have more opportunities equal with those of men. In this article, the authors report cross-cultural findings in which this unintuitive result was replicated across samples from 55 nations (N = 17,637)."

https://www.ncbi.nlm.nih.gov/pubmed/18179326

"What might be surprising to most people, as we shall see, is the specific pattern of cross-national variation in the gender gap in authority. To cite just one example, in the United States, the probability of a man in the labor force occupying an "upper" or "top" management position is 1.8 times greater than the probability of a woman occupying such a position, whereas in Sweden, the probability for men is 4.2 times greater than for women."

https://www.ssc.wisc.edu/~wright/Published%20writing/CC-C9.p...

Your move.
reefer?
> baseless claims on exponential acceleration of paradigm shifts

I'm not a fan of Kurzweil, but isn't this really one of his claims with the most data behind it? His presentations on exponential trends is always accompanied with endless citations of data points that went into it. He has (or had prior to Google?) a research team whose job was to find this data.
It's irrelevant why they were there, it's a taxi way, it's fine, indeed expected, for planes to hang out there. The important bit was why the AC tried to land there and the crew confirming their approach on ILS would have prevented that.
Huh, why are you singling out France out of the blue?

I'd say that the fact that France is better than OECD average with relatively low teacher pay (though higher than the average salary in the country) seems to indicate that salary isn't everything, on the contrary.

The differences regarding immigration to Canada and France might be a far more important factor though.
hah I thought the same thing. I think that's possible in the future but doubt anyone's attacking it now.

Plus, who would fund it, a rogue state? Not so interested in being treasonous myself. Interesting problem though. Getting any level of accuracy above repeating "the" would be impressive.
So, a Google Synthesizer in the works? A self-composing one with a singularity LFO button?
I absolutely agree.

As a related side rant, the `new` keyword, or equivalent, makes great sense in a manual-memory-management language like C, and it's an offense to sanity in a language like Java or Javascript. Factory functions should be the default everywhere. So any JS coding style that encourages `new` is a wildly bad fit to the rest of the language.

But it is important to admit the caveat, as you do, which is "when you create tons of objects".

Such situations are unequivocally in the minority (compared to line-of-business stuff where RAM and CPU more than sufficient to the task), but not the vanishing minority. So we do still need a good solution for those.

Rendering, simulation, sampling/signal-processing, parsing... the list goes on. This isn't truly systems-level code, but it's easy to generate a billion objects per second. So we do need patterns for doing this kind of programming.
I'm still looking for help ^^ if you're interested please join:
https://join.slack.com/t/go-johnny-go-go/shared_invite/MjIxN...

NOTE: this invite link will expire in 7 days (from 8/3/2017)
Yes, it is. I can't say anything about being "more readable" but English is presumably "more readable" than isiXhosa for you. Reading is a skill that has to be learnt and practised. You were not born with the ability to read English or infix notation, you just got used to them.
Main lesson not learned: instead of testing, prove correctness in high assurance code like this. Rigorously and formally.
Preferably even refine the proof to executable code.

(Yes, it would take somewhere on the order of 10k LOC to prove correctness of this 1k.)
Not really. Rust has an idea of "borrowing" references to things, which could be seen as increasing the reference count, but it's not a particularly good analogy because borrows actually have no effect on the original lifetime.

So, if you borrow something and try to store it somewhere with a lifetime the compiler thinks is going to outlive the lifetime of the thing you borrowed, that's a compiler error, whereas in a reference counted language or a GCed language the original entity just keeps existing for as long as required.

This is usually because said entity is on the heap - Rust puts everything on the stack by default.

You can of course put things on the heap, and there is a selection of types available in the standard library which are I guess a bit like C++ smart pointers that let you have heap allocation, reference-counted semantics etc. if you want it.
I may have Alzheimer's but .. uh... at least I don't have Alzheimer's.

It's an old joke, but fitting for the title.
pov of sysadmin:

- reverse proxy to backend webserver

- run checks on each request on the reverse proxy

- close all ports except what needs to be open

- only allow access to what needs to be seen

- perform frequent security updates (script it, automate it, run it hourly)

- never install more software then strictly required

- never allow SSH directly to your public address

- for ssh, use custom ports, cert (4096b) with passwords

- install logwatch or something else that will inform you about logs (elk stack)

- automate checks in logs for tell-tale signs of scriptkiddies (attempted access to /wp-admin or phpmyadmin for example) => automate adding source IP's to firewalls

- frequently check for malicious code (clamav, rkhunter, ...)

- only use stable and tested software

- only use stable and tested OS (Centos/redhat. DO NOT run production on anything else, especially ubuntu.)

- do not use ubuntu for production. it is not suited.

- install failtoban

from dev pov:

- implement measures to prevent sql injection

- don't require production to install dev libraries

- don't require production to install packages only available on ubuntu

- log strange behaviour to a file, make sure actions can be automated (iptable drop)

I'm no dev, but those are things I'd like dev's to do with their software.
Or it's simply that people that invest in overrated value will get burned someday, instead of randomly anybody due to natural fluctuation being amplified by bots.

For exemple just look at the shape of AAPL in the long run, instead of a steady curve associated with profit growth, you have an unstable mess for no reason. And people that place selling stop (that brokers recommand because they it's "safer") happens to sell/buy at worst possible moment. And this is where profit from HFT actually comes... Not thin air random people getting burned.

If investing in a company mean more thinking because you could effectively bein burned by investing in bad stock I call that the normal state. Because currently the mindset of trader is more that even if it's non-sensical to invest in Unicorn-ass-corp, it still worth supporting it because they can make profits with options anyway as long as there is movement.
Free tools for designers and developers. July 2017
Please expound...
Yup-I had that in my brief stint at the Yazoo City Maximum I was in. It had all the fun trappings of Dante's Inferno: armed guard towers, electrified fences, not a bird within miles. And that stainless steel toilet/sink right next to a thin mattress on the floor.
breakfast at 4:30 am, as I recall.
> Although your dog’s mass is significantly smaller than that of the earth’s it is greater than the mass of the fleas living in his fur. Thus, the fleas can live quite happily on his back without floating off because they are drawn to your dog’s fur by his gravity.

I don't know much about physics but I really don't think this is true..
well if you have enough people especially working with crypto, than why not?
It's not like that the existing solutions came out of nowhere. some people actually wrote them.
I mean libsodium is actually really simple to use. however before libsodium it was probably easier and mostly more correct to roll your own. there are so many things you can do wrong with other libraries that the chance to do it wrong is as high as in your own implementation.
How?

Look twenty years out and it appears vertical. But 10 years from now it will look much flatter, and what's then 20 years out (30 years from today) will look vertical.

The grass is always greener 20 years in the future.
"You go to places like San Francisco and you can see America’s approach to mental health problems on the streets, and it’s heartbreaking. What chance do people have when they can’t get insurance, never mind being able to afford the treatment outright?"

That's like seeing people with poor dietary habits and concluding, "America's approach to agriculture is heartbreaking."

There are lots of resources that people on the street don't pursue, whether by choice or ignorance. Healthy SF has free services. Low-income people can get full ACA policies for little or nothing (even if here illegally). There are also student-therapist services providing excellent care on a sliding scale.

And none of these makes you wait 8 months.
It was a fun read, except when all the C bugs were listed. It's getting tiresome to hear about folks writing nominally
Important software in a language where it is extraordinarily difficult to get things absolutely correct, with paltry excuses such as "it needs to be fast" or "it needs to be portable [0] to a VAX-11/750." It doesn't give me confidence that these completely usual bugs popped up early on, and it will not surprise me when more show themselves.

The author's lack of practical familiarity with the memory hierarchy, caching, and pipelining—evidenced by his surprise by the speed gained by fetching more than a byte at a time—also makes me suspicious of his understanding of the semantics of his program. (I understand that this is a form of ad hominem as it relates to arguing the correctness of software, but it's a consideration worth noting in a broader context of trust.)

It would be great if this was written in another language.

[0] Most "portable" code written in C is not portable. Look at any mature C project and see the layers and layers of macros and hacks to make things portable.
We can save time by listing the worthwhile features of JavaScript.

The OR operator (||) is nice syntactic sugar for returning the first non-null value. Just like SQL's COALESCE.

let a = null
let b = 123
let result = a || b

result now equals 123.

Dang it. Now I can't remember the other thing I like about JavaScript.

Oh, I do like using the shebang preamble for running nodejs scripts from the bash command line.
How will cryptography libraries ever develop if someone doesn't roll their own?
> The OECD, trying to understand Canada's success in education, described the role of the federal government as "limited and sometimes non-existent".

Actually, the federal government did make one critical mandate[1]. It effectively ensures that we are all exposed to two languages in school, and creates a much more rigorous French immersion stream in the school system.

That immersion into another culture and language, at a very early age, has paid huge dividends in my ability to travel, to assemble and work in multinational teams, and to form constructive, even loving, relationships with people who are at first very alien to me. I believe that it is also to be credited for enabling several of us, all from the French immersion stream, to begin playing with algebra somewhere around Grade 3, by deeply reinforcing our awareness of multiple representations for single concepts or entities. This then segued into my first programming language, QBasic, a year later.

If you have kids, then based on my own experience and observation of my cohorts, I strongly recommend that you find a way to ensure that they learn a second language, while they are still learning their first. Throw them in the deep end, you can always pull them out.

[1] https://en.wikipedia.org/wiki/Section_23_of_the_Canadian_Cha...
You're right, of course, except that the entire design of `this` in Javascript is carefully tuned to make #2 easier and more frequent than #1. And we all gleefully exploit it when writing `[].slice.call(arguments)`.

I think it's an open question whether it was actually a horrifyingly bad design decision, or if it's rather that we're all too dumb to get it.
Interestingly it looks like there was a bug in every Argon2 implementation specifically because everyone just used the reference implementation.

Personally, I think the intention of the phrase "don't roll your own crypto" was lost over time. It was advice to companies to use standard cryptographic algorithms rather than everyone coming up with their own thing for no good reason. It doesn't mean that only some blessed individuals should be allowed to write cryptographic software. I think OpenSSL has taught us that not rolling your own crypto results in a monoculture of self-professed experts that didn't follow that advice.
Swift on Android: The Future of Cross-Platform Programming?
It doesn't. You may ask how then do they do raises? Largely, they don't. The only way they manage to attract and keep people for at least a short period (average tenure is short) is through the ever increasing value of the stock options. Those are only awarded when you first join however so for those who do manage to hold on for 4 years until they fully vest there is zero incentive to stay longer. This is a major fintech company.
And if you came to the US and saw our public schools here, you'd probably die of laughter.
2. If you don't whitelist your deps, then your dep chain can change with any update. Signing keys prove only that the publisher held the keys, not that they aren't malicious, or that the keys aren't stolen.

3. Fat fingering your pom is no different, this argument is as wasteful as 0 and 1 and you know it.
One of our most prolific runners put it best: "if it's not on Strava, it didn't happen".
Thanks for the good advice. I'm learning fast. But I have found some truly righteous people here, so I remain hopeful.
Agreed. Flagging this post seems fair because the article comes across as a propaganda hit-piece.