skysight-inc/HackerNews huggingface dataset:
In Haskell you usually don't want to modify stuff in memory. That's a manual optimization which is beneath the level of abstraction for typical use. Instead, you write high level code describing how to generate new arrays (or vectors or matrices or what have you) from inputs and let the underlying implementation of the library and compiler deal with optimization.

For example, the Haskell vector package [0], implements a ton of optimizations for looping, including stream fusion. Instead of manually trying to loop over an array the way you would in C, Haskell encourages you to use a library like vector to hide those low-level details and let you focus on only the task you want to accomplish.

This method is extremely powerful because the underlying implementation has been completely hidden. This lets you swap out the underlying implementation often with a single line change to an import statement.

[0] http://hackage.haskell.org/package/vector
Livening Up Facebook: The Next Generation
Sixth Episode “Dissecting Reinforcement Learning” Applications
this is cool but i had to leave part way through the main video. it gives me anxiety thinking about getting all those parts back together without loosing a screw or messing something up.
>> I see lots of false equivalence arguments and (possibly fair, possibly not) criticisms of political violence from left-leaning groups

> If they are fair then it's just equivalence, not false equivalence.

I think you are misparsing my statement. The "and" separates two sub-statements:

1) I see lots of false equivalence arguments,

and, additionally

2) I see lots of (possibly fair, possibly not) criticisms of political violence from left-leaning groups
Show HN: The simplest thing you can share
That's probably what people thought when they joined. (I certainly would joined if I was in the same position.) Continually appeasing someone irrational isn't going to fix the underlying problems specific to Trump.
"... if James Damore deserves to be fired from Google, for treating evolutionary psychology as potentially relevant to social issues, then Steven Pinker deserves to be fired from Harvard for the same offense. Yes, I realize that a employee of a private company is different from a tenured professor. But I don’t see why it’s relevant here."

Its relevant because Damore is employed to develop products to benefit Google's sharesholders, wheras Pinker is employed by Harvard to do science and publicly communicate ideas. Pinker's tenure gives him licence to pursue controversial ideas if that is where the evidence takes him. Damore gets to write code on an at-will basis.
I was thinking about this the other day actually. You can’t get enough power from panels on a regular car roof to do anything useful.

A 100W solar panel typically generates about 400 Wh per day, and has an area of 0.7 m², weighs about 8 kg, and costs about $100.

Using the range and battery data for the Tesla S:

A 200 km daily commute (i.e. an hour each way) you would require ~35 kWh, and require 90 100W panels, or 60 m², weigh 700 kg, and cost $9000. Possible, but only as a fixed install, not on the car’s roof!

For touring, you could do 500 km per night (about maximum range for the 100 kWh Tesla S) and charge during the day, but would require 250 panels / 175 m² / 2000 kg / $25,000. You would require a trailer to carry them, and the set up & tear down each day would be laborious, but it would be possible and you could then travel indefinitely. A bit like what Mark Watney does in The Martian. If you were willing to spend multiple days charging for each 500 km leg, or only travel a couple of hours per day it would be even easier.

Edit: I just looked up The Martian and Watney had 18 kWh of batteries for his rover, 28 m² of panels (with longer days but less power), travelling a max of 90 km per day for over a month. So yeah.
Communication app for Makers
tldr; when creating something you think the ruling party won't like, try to find a hosting provider that doesn't keep logs indefinitely..
I don't know why, but I always worry when I see huge donations that poor management will see most of the money end up devious hands. But I imagine with that much money, there's a ridiculous amount of attention as to where it's going, and plenty of good people willing to manage it. But I assume everything is The Big Short and House of Cards out there.
Nothing changed for me but the caffeine. I did go through about a weeklong withdrawal where I could barely get out of my bed though.. it was tough I did feel I was half dead for a good week, but after that your body adjusts, and dare I say I'm more productive and focused now than when I was on caffeine.
Multiple language targets
It's not a discount. It's a fine for not doing it.
I like it and it doesn't seem to cause cancer, so it has those two things going for it.
Very interesting insight. Thanks.
I've been meaning to play the hilarious-looking "My Summer Car" (http://www.amistech.com/msc/) recently as I have been hankering to learn about engines... perhaps it's wise to do the video course first!
Nice work Cameron! Is there a way to sign up and attach an ethereum address later?
> And I think you're ignoring a lot of things the left has been up to. The IRS scandal was a big deal, for example.

From https://en.wikipedia.org/wiki/IRS_targeting_controversy

> The Republican majority on the House Oversight Committee issued a report, which concluded that although some liberal groups were selected for additional review, the scrutiny that these groups received did not amount to targeting when compared to the greater scrutiny received by conservative groups. The report was criticized by the committee's Democratic minority, which said that the report ignored evidence that the IRS used keywords to identify both liberal and conservative groups.

> In January 2014, the FBI told Fox News that its investigation had found no evidence so far warranting the filing of federal criminal charges in connection with the controversy, as it had not found any evidence of "enemy hunting", and that the investigation continued. On October 23, 2015, the Justice Department declared that no criminal charges would be filed.

Meanwhile: http://thehill.com/policy/cybersecurity/346544-dreamhost-cla...

Classic misguided whataboutism. Fox News did it again.
CVE20177781/10176 Elliptic curve add in mixed Jacobian-affine coord. in FF/Java
Why video games are obsessed with the apocalypse
Considering that he lives in the town with the state's land grant university, I don't think that the neighbors are short of options. Nor his is the only such tree in the neighborhood. There are four or six within a short walk.
I've moved from "he's a total idiot who is unwilling to distance himself from the most backwards views of some of his supporters" to "he's a total idiot who's actually causing even deeper polarization since people on the Left aren't able to acknowledge that there are moderates that see him or the 'context' differently to them without implicating themselves as Nazis, and nobody on the Right wants to admit that he's creating an even more unhealthy political situation which is going to hurt everybody".

> [...] then you're part of the problem. [...]
> If you want 'healthy dialogue' you're going to have
> to come to terms with inherent biases first.

I honestly do not think you are having a healthy dialogue or coming to terms with your own inherent biases yourself.

You just said that somebody was 'purposefully skewing' as if they did not really believe what they said. This is textbook bad faith arguing. You could do with reading what everybody is saying and imagining that they actually honestly believe these things and then go from there.

My own two-cents are that left-wing violence and anger is partly to blame for both his rise and the deeper polarisation we are now seeing since it enabled the alt-right to play the victim and fight a war of optics [0]. However, it's not the only cause: a large component of what we're seeing is that Trump coming to power has emboldened the worst of the Right [1].

[0] Look at how they manage their image with propaganda, and their attempts to use the Left against itself: https://mobile.twitter.com/sebinsua/status/89716402244070195...

[1] https://mobile.twitter.com/bswud/status/747790921190744064
Lets say that in this case you are right. Who decides where to draw the line between talking about Google fiber and "crowing over the death of someone"? If we were in Italy in 1610 writing that the Sun was the center of the solar system would be hate speech. If we were in Germany in the 1930s the government would tell us that writing that Germans are not the master race is hate speech. If we were in the US in the 1950s saying that Communism is good would be hate speech. If we were in current China saying that the Tibet is not part of China could be considered hate speech. Maybe in a little while the current US administration will say that writing that climate change is caused by humans is hate speech.

But more importantly, Google made the decision not due to laws that were created by the elected officials but rather based on how they felt. Imagine if a Catholic hospital refused service to anyone who suggested that people should read books from the banned book list. After all, the reason that they are on the banned book list is because someone decided that those books were hateful.

I don't understand how this is whataboutism.
Perhaps he wants to see, if his money is spent wisely before donating more bucks?
Side question. Why do you guys play baseball with gloves? I'm from a Commonwealth country, so we don't really have baseball, only cricket. Growing up we never used any gloves (although typically we were poor and played only with old tennis balls).

Usually in cricket only the keeper will use gloves. Is it just a surface area thing?
It is true that the withdrawal was a unilateral British decision and the French wanted to continue fighting. It is also true that most of the rearguard were French and were, presumably, ordered to destroy any heavy weaponry.

Anyone who believes that the French needed the British to tell them to fight or make them obey orders at gunpoint clearly has a very poor, and highly inaccurate, view of French soldiery.

> ... shot at by the BEF ... 123,000 were French and 198,000 were British

Maybe the British weren't very good shots? More seriously, this might be alluding to the fact that the British were originally given priority for embarkation from the French admiralty. This was changed part way through the evacuation but did mean that the rearguard was almost exclusively French troops.

Again, though, whoever came up with the suggestion that French troops needed to be shot at to follow orders is a fairly nasty Francophobe masquerading as a Britophobe (probably not a word).

It's hard to comment on the RAF bit. I mean, where else were they meant to fly to?

It's a weird analysis, the BEF lost ~70k soldiers attempting to help in the defence of France and Belgium. It seems to suggest that did it to spite the French or something. Very odd.
Let's not forget that what's even more profitable than 'pricing insurance according to actual activity' (which is a nicely sounding PR cover up) is 'dropping people with early symptoms of a disease before it gets found by their doctor'. Which is unethical, but legal (right?) and extremely, extremely profitable.

Keep all premiums, drop people with cancer before they find out about it. And yes, if it's possible to infer pregnancy from shopping bills, then inferring a early health problem from a detailed 24/7 tracker data will be much easier.

And if you want to opt out of this? 'Here are our rates without a fitness tracker discount, they cost 5 times more, ok?'
So what is his net worth made up of if he's donated all but 1.5% of his MSFT stock? His remaining MSFT stock is worth about $8B. What's the rest of his $82B made up of?

- Edit- Nevermind, found it on here: https://en.wikipedia.org/wiki/Cascade_Investment
GnuPG 2.1 +ECC
Regardless of whether the proof is legit, the author should be able to explain that. It's undergrad CS after all.
Yup. Most of the goalpost-moving happens to make "decentralization" the goal in the first place, so elaborate solutions can be devised to eliminate the need to trust partners not to falsify their record of the contract, despite the fact that in many real world situations if they can't trust their partners that far, there's no way they should be giving them access to property, resources or cash in the first place.
I think your hostility towards the military is getting in the way of discussing these ideas as they would apply outside the military. Just because the failure mode of a military leader isn't the same as a civilian leader, doesn't mean that advice for actually-beneficial leadership in the military doesn't apply to civilian life.
Nobody mentions OMeta? Not the best performance but fast for playing.
His investment manager is Michael Larson at Cascade Investments

https://en.wikipedia.org/wiki/Michael_Larson_(businessman)
I'm bracing for the onslaught of "well if concerned citizens can out public nazis, then the government should have infinite power to crush opposition"
> How old are you?

45

> On my short experiment quitting coffee (30 days IIRC), nothing really changed

What has changed for me is that I no longer feel shackled to a pernicious habit. The caffeine addicted mind is very persuasive: "it's healthy, don't stop", "it's normal, everyone drinks coffee", "but the withdrawl symptoms", "I won't be as productive", etc.
Yeah ... I've turned the parse tree output from Baron (https://github.com/PyCQA/baron) into HTML -- using span elements to represent the subtrees in the Baron AST. It was quite trivial (less than 200 lines including comments). I am now trying to see how I can add different representations to the rendered html output. I would like to show the abstract syntax tree, the data dependency graph, the control flow graph; the output of git blame; perhaps deltas over time; test coverage and various bits of requirements and test results traceability information alongside the code somehow. Lots of stuff. :-)
I think people are leaving because the position has no political influence, and the cost of taking PR shrapnel from a disastrous Trump presidency is too high. These business leaders can be assumed to be in it for self-aggrandizing reasons, so if their profiles as business leaders don't increase from this council, and if Trump is toxic to any of their future political designs, there's no better choice than to leave.

I don't think people choose to leave these councils particularly because of an ideological red line. If the spoils were good they'd find a way to rationalize it. Such is all of business and politics.
You can get most of the social benefits without throwing away the notion of privacy.

In the West, all sorts of data are already available to those with legitimate interests. Traffic data is used to optimise city planning; police can track your phone, with a warrant; power networks read your smart meter and so on. The key difference to the situation described in the OP is that there are controls around it.

In terms of reaping the benefits of AI, a willingness to discard privacy isn't as important as building the capability in data collection, warehousing, analytics, and so on. A lackadaisical attitude to privacy such as handing everything over to the private sector will just make it easier to commit all sorts of crimes: identity theft, blackmail, stalking, etc. Rather than a structural advantage to the Chinese system, it sounds more like technical (legal?) debt that may take years to pay back once it's acknowledged that privacy controls actually have a legitimate purpose.
I think you have to embrace it to appreciate it; Haskell's advantages wouldn't be there without its disadvantages. (Indeed I suspect I'd never have been able to appreciate Haskell if I hadn't learned Scala first, because Scala gave me a path from traditional imperative/OO code to Haskell-like code that doesn't exist in Haskell itself - but now I find myself wishing for a Scala without those things that I at one point needed). Stop worrying about the runtime performance, stop trying to write [previous programming language] in Haskell. Write expressions for the values that you want, then see if the performance is good enough for your use cases (and if not, have a quick go at profiling for common pitfalls rather than immediately jumping to writing it the imperative way); you might be pleasantly surprised (or you might find Haskell is genuinely unsuitable for your use case, though that's pretty rare IME).
All in the back-end --- I just want it as standalone single-file HTML w/ no server infrastructure required.
People who believe this view people as things that can be replaced when they become less efficient than other things, and the idea that we all go into oblivion (nice euphemism, please use die off or go extinct instead.) because some crappy AI can mindlessly do chess, go, or make a facebook clone better than person is ludicrous at the minimum, psychotic at the maximum.
No mention of what project s the funds are going towards.

There have been some good words from the foundation regarding the (health, primarily I believe) programs in Tanzania. I wonder if this is towards scaling those projects.

Anyone have the scoop?
that is fascinating. I can only wonder what sort of facial expression he had during the questioning.
What I learnt in half a year of mentoring
It's a shame you feel that way. Modifying an element of an array in Haskell is easy and the blog post gives almost exactly correct code, but for some reason places it under the title "we run into trouble when we realize there’s no built-in mutating assignment". But we don't run into trouble! Mutable arrays are provided in Haskell! Haskell has mutation! Here's the code

import Data.Array.MArray
import Data.Array.IO

size = 10

(!) = readArray

main :: IO ()
main = do
-- 1. Declare the array
arr <- newArray ((1,1), (size,size)) undefined
let _ = arr :: IOArray (Int,Int) Integer

-- 2. Initialize the array to 0
sequence_ $ do
i <- [1..size]
j <- [1..size]
return $ writeArray arr (i, j) 0

-- 3. Set the diagonal to 1
sequence_ $ do
i <- [1..size]
return $ writeArray arr (i, i) 1

-- 4. Print the array
sequence_ $ do
i <- [1..size]
j <- [1..size]
return $ do
arr_i_j <- arr ! (i,j)

putChar $ if arr_i_j == 0
then '0'
else '1'
if j == size
then putChar '\n'
else return ()

> main
1000000000
0100000000
0010000000
0001000000
0000100000
0000010000
0000001000
0000000100
0000000010
0000000001

I've no idea why the blog post is written in such long winded style. Mutation in Haskell is not difficult!
Windows 7 is still the most popular OS, but the adoption of 64-bit OSs is nowadays at around 78%.

https://hardware.metrics.mozilla.com/#goto-os-and-architectu...
Teaching an AI to play a simple game using Q-learning
So things that seem rather moderate to a European (nationalising some industry) is a brand new thing in the American context.

When was the last time an entire industry was nationalized in Europe? I can't even think of a post-WWII example off the top of my head. (I'm sure there are examples, considering the success of Communist parties in some West European countries in the decade after 1945.)

It's true that there are more state-owned corporations in Europe... But some of the largest American corporations are so intricately tied to government deals and lobbying that there's no practical difference. I'm thinking of Lockheed, etc.

Compare Airbus and Boeing. One started as a multinational state-owned consortium created by European governments; the other has always been a private company. But they've ended up in basically the same position -- public corporations propped up by deep government subsidies in various disguises.

American and European capitalism isn't very different at all. Individual liberties are essentially the same with some tweaks. We're much closer than many think.
Real-time 3D visualization of geospatial data with Blender
This reads like a Tesla ad and a warning to anyone thinking of becoming self-sufficient. Wouldn't want too many people being able to generate their own electricity otherwise how would you control them?
This is excellent. Any journalistic interest as yet? I answered a few questions.
Flying Water Taxis: Coming Soon to a River Near You?
Why execute, when you need a stream of desperate people as super low cost factory or military slaves.
No one can make them feel inferior without their consent. They are just projecting their own insecurities.
It's a tricky question, and I've spent years of my life trying to answer it. Hey, I am a security person and a developer and I don't always trust myself to do the right thing. No matter how much time I spend educating myself, there's _always_ something I still need to learn.

At the operating system level, the bare minimum is run only the services you need, have a firewall that refuses unwanted traffic, and to patch regularly. If you can, automatically apply security patches.

In terms of application security, in the ideal case you will have a budget that allows you to hire professionals to take a look at your systems, both from the inside and the outside. Simplifying, internal reviews usually try to answer the question "is this correctly built", whereas external reviews usually focus on "can we get in".

If you don't have a budget (as many small operations don't), I'd recommend the following approach:

1) Make sure you fully understand XSS and SQL injection vulnerabilities. These two are usually responsible for the majority of security issues in applications. The latter can easily lead to full data loss. Understanding them is not easy, but it's manageable. Once you know enough, make sure your applications are not vulnerable. CSRF is something that you should look into, also.

2) Security is not something developers can ignore, so allocate some time every week to learn something new. Even though this is a never-ending task, after a couple of months (and years) you will be much better off.

3) Continuously run entry-level scans against your application, for example using OWASP ZAP https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Proje... This should help you avoid the obvious problems. They have a Docker image and something they call a "passive scan", which addresses low-hanging fruit.

4) Harden your application, applying all modern security standards that make sense. I've decided that this is where people should focus their efforts first. An application that utilises a good number of standards is robust and can resist exploitation even when vulnerable. (Anecdote: the number of vulnerability reports dropped dramatically after Mozilla deployed CSP.) This step can be tricky, too, because there are so many standards and many ways to misconfigure them. My earlier work (SSL Labs, https://www.ssllabs.com) focused on encryption and certificates. My current project (Hardenize, https://www.hardenize.com) focuses on a wide range of security standards, starting from DNS (and DNSSEC/DANE/CAA, etc), over email, TLS, and to application security (e.g., CSP, cookies, mixed content, SRI, etc). The idea with Hardenize is especially to help people who don't have the budget but nevertheless want to stay informed and do as best as they can, security-wise.
The nazis had the demonstration permit (not that one should be needed). BOTH sides were the problem, because BOTH sides were engaging in violence. That's exactly what Trump said. This country isn't a safe space; seems many want it like that.