skysight-inc/HackerNews huggingface dataset:
The first time I read about Prolog, I thought to myself, "Man, this is what computing was supposed to do for us! Look at it answering questions, doing planning...holy cow."

And in the last 40 years? Maybe Erlang (a Prolog descendant), Ruby (maybe the best successor to Lisp/Smalltalk), or Elixir (an Erlang descendant looks like Ruby) is as impressive. The rest is either hacky (C++, Javascript, Perl), attempts to clean up hackiness (Java, D, Go, Rust, Clojure), unoriginal (Python, C#), or just plain wanky (OCaml, Haskell)--and that's not counting ones that are beneath mention (PHP).

Don't get me wrong...there are some languages that are actually quite beautiful in their implementation or use (Lua, Clojure, a few others), but the "holy shit this is the future!" feeling I get from looking at Prolog, Erlang, or Ruby is something I haven't had in a while.

Instead, the future of practical programming languages is probably going to be yet another tepid iteration on Algol, with closures and memory safety and incorrectly-handled numerical safety and some lame concurrency story. Pattern matching if history is slightly kind to us, probably still no mandatory tail-call optimization. Sigh.

Go is the future, I guess?
Excerpts from the piece:

"But the suggestion that violence by self-proclaimed Jihadists is the only threat to liberty in Western societies [...]"

"[H]ow easy it is in Western societies to focus on radical Islamism as the real, or the only, enemy."

Who has suggested that radical, "Jihadist" Islam is the "only" threat or enemy of Western society? I'm sorry, but this piece is a bit of propaganda. Do a little googling. The writer was raised in Nigeria, and, as he's said, "half [his] family is Muslim." There is nothing wrong with these things, per se, but taken together with his lousy reasoning and outright straw man arguments, I'm accusing him of having an axe to grind.

Personally, I think "satire" of the type that appears in Charlie Hebdo is obscene and puerile. I don't like it -- and I don't subscribe to any religion. But terrorist attacks are worse by a couple of orders of magnitude. There is no comparison.

This piece is trash.
I've been hoping we return to dencentralization for awhile http://timepedia.blogspot.com/2008/05/decentralizing-web.htm... but it seems the economics, bandwidth, and technology currently doesn't favor it.

Consider what it would take to do decentralized search with a reasonable latency. Everyone would have to have a copy of Google's index, or at atleast a reasonable chunk of it, or proximity to some mesh node with a reasonable chunk of it.

But mobile devices and mobile bandwidth are not really efficient as nodes to have complete copies, or partial copies. They're low on memory, and it's not really power efficient or network efficient for them to do the work.

But what's worse is the problem is updating the index. If everyone ran a distributed crawler, there'd have to be some way to coordinate who crawls what and make sure there is not too much duplication of effort (else we waste network bandwidth and have a tragedy of the commons) You also run into problems of people trying to (and economically incentivized to) poison the index, and so you'd need an overhead of duplicate just to avoid that.

It's not impossible to arrange a distributed crawl/map/reduce over millions of clients, the Folding@Home and other crowdsourced computation platforms show it can be done. But they don't have to manage replication and updating of petabyte scale databases, the problems they coordinate are easily sliced up and the results to be transmitted back aren't large.

I think this tends to drive the network back towards super-nodes, as the leaf nodes aren't efficient, and the cost associated with doing the work can be pushed onto others (free rider problem). Eventually, the people running the super-nodes tend to become relied upon by everyone, and those become subject to the same kinds of problems we see today -- government attacks, hackers, privacy invasion, etc.

It's not like SMTP/USENET weren't once relatively decentralized networks. But as millions and then billions of people came on line, the cost to run SMTP or USENET nodes was too high in complexity for most people to run their own. Small and medium dialup ISPs arose to handle that need. But since these were commodities, and little differentiation other than price, the prices were quickly driven to the marginal cost, and there isn't much money in running an email server for a few hundred people, you need scale. That eventually drove consolidation, and that's why today, you either get your email from Gmail, Yahoo, AOL, iCloud, Hotmail, or one of the other larger players.

It may very well be that for some types of problems, there is inherent efficiency in centralization. We should look at perhaps how to change the way the services work to favor cost effectiveness of decentralization, so that rather than it being favored for ideological or aesthetic reasons, it is favored by an economic gradient.
I can't find any empirical evidence that adding features in the next version dooms the language. The opposite is true. All successful languages started small.
I really don't understand the point of spending so much energy on something you dislike, rather than just using something you do and moving on with your life. Some people like Angular, some don't. If you don't, your opinion really doesn't matter to the people who do, and you're wasting your time trying to convince them they're doing some disservice to the world by using a framework which they actually like.
Great!

When this idea fails to market you can pivot quite easily into the explosive nun-chuck market, but everyone knows that that's the easy way out.
Did you actually try to send him an e-mail ? He usually answers in a timely fashion. Or are you just doing this because you need some attention ?
This is written for developers who are trying to get their feet wet with crypto and are frustrated by all of the industry experts saying "don't roll your own, use a trusted library."

It's okay to write your own, but not okay to rely on your own.
Timothy Dexter's Wikipedia article is probably my favorite page on the entire site (I keep a list of my favorite weird finds, such as "List of Sexually Active Popes").

I have shown this story to dozens of friends, and every one finds it incredibly entertaining. This man's life should be a movie, and Steve Martin should play the lead.
I don't know. The problem as I see it is that there are disparate crowds of elitists all expecting HN to cater to their needs, and the first page (which is what most people probably only bother to check)only has so much space. Some people want to see startup news. Some people like politics. Some people consider any story not obviously related to programming or not obviously new to be a clear sign that the Visigoths of Reddit have broken through the gates and trampled down the garden.

I think it might be possible to add some more fine-grained discovery to the site without compromising its simplicty, perhaps, by putting it into user accounts. Something as simple as being able to store filters in a text field and being able to call them whenever. Bear in mind, that 'show' hadn't been up for six hours before people were complaining that it was destroying HN. If Facebook and Google (and Livejournal) have taught anyone anything, is that if you shove UI changes at people hard enough, eventually they'll tolerate them. They'll complain, but they won't leave.
You should turn this into a daily digest email. be great to get this in my email box.
> Also, 'patio11 is one of HN's most valued contributors...

I'm guessing "kalzumeus.com" and/or "zeeshanm" is "'patio11", but I'm not plugged into the community enough to recognize this august citizen. The article reads like a sleazy, low-grade sales pitch, so I don't see why it deserves any particular respect.
Anyone interested in "smart drugs" must read HN's own gwern on the topic:

http://www.gwern.net/Nootropics
> Imagine you make a tool and someone proposes making a change to that tool that would be potentially useful to slavers, people who enslave other people. This makes you hesitate.

No, it really doesn't. "Bad people might use it to do something I don't approve of" is a terrible rationale for not creating something, mostly because it's almost always true. Strong crypto is great for terrorists. Psychology research is wonderful for propagandists in dictatorships. Unlocked cell phones are very useful for drug trafficking rings.

If we, as a species, refused to innovate when we weren't sure of the consequences, we would still be arguing about whether fire was a good idea.
This idea is useless. You could just use keepassx or any other password manager. Easy to use, and copy paste friendly.
An idea may be worth less than the potential of the founders, but a well thought-out idea reveals a lot about the founders themselves, in my opinion.
CES 2015 BMW Audi Laser Headlights
The mind reels at the thought that anyone could have led such a charmed life that they would characterise this as "such hostility"
The point is that what constitutes a "system" is not well defined and/or there are multiple conflicting definitions. I was sad to see rust billing itself as a systems language so prominently, given that it doesn't really mean anything.
The Importance of Celebration
You can use "hand-crafted" SSE2 instructions and libraries with the same in Rust. Servo heavily relies on Skia, for example…
What do you think of Awelon?

https://github.com/dmbarbour/awelon/blob/master/AwelonProjec...

"My goal is to unify programmer experience (PX) with the user experience (UX).

This is an elusive goal. It has been pursued for many years, with many different hypotheses for what such a unification might entail and how it might be achieved. Related projects include Squeak Smalltalk, ToonTalk, LambdaMOO, Morphic, Croquet, Emacs, and HyperCard. A relatively successful effort to unify PX and UX was the Unix command line, where users would build short programs of process pipelines. But that has been marginalized by the development of GUI.

To me, the unification of PX and UX means that programming becomes a casual effort, such that users make it part of their normal workflow and don't even think about it as programming."
New visualization idea: simultaneously scrolling score in sync with music
We didn't do the full procedure, just a subset of the questions. We were not forming intimate relationships, just developing a sense of closeness in a short amount of time and learning about what that involves (e.g. reciprocal personal self-disclosure). So I don't think it was harmful or unethical.
> ignoring them

I couldn't agree more. I really hope this rampant science denialism that is getting traction in American society is just profoundly ignored by those in power.
As I read this - I felt like I've read it before.

Then I realised it is just a duplicate of https://training.kalzumeus.com/newsletters/archive/lifecycle....

Its almost the exact same content - just a slightly newer version with 2-3 small typo changes, and is a couple of years old
I hated angular too, so I built this instead:

http://intercoolerjs.org/
And I wonder about quinoa too, which is a complete protein, grows well in dry climates, and is also C4. And quinoa could probably substitute for rice in many recipes. The price is slightly high right now, but that's because supply has not kept with demand (due in part to the fact that it's gluten free).
It's a simple term that, in Rust's case, encompasses all of "bare metal; zero-cost abstractions; no runtime; all language primitives map to simple hardware instructions". I don't see any better word for it. Do you?
Yes, a primary stated goal of Rust is "memory safety without garbage collection." I'm not aware of any other language for which this is a top priority.
> You haven't chosen to be the middle ground here. RMS has chosen to make you the middle ground, because that's where he wanted it to be, so he hiked all the way over there to plant his flag in order to move the middle.

I'm sorry: that's a good strategy, but I have known RMS since the late '70s (since back when he still had short hair!) and that is not has strategy. He is earnest, even when it is to his detriment.

Funny anecdote in this regard: I had never really met anyone quite so dogmatic, passionate, principled and resolute as RMS (you can say that whether you agree with him or not -- though roughly, I of course do agree with him). I used to consider him to be a uniquely polarizing figure. Anyway, in the 80s I had a girlfriend who wasn't in computing and had never heard of him. He came out to visit me in California. When she met him, she just commented, "oh, one of those guys."

WTF? Turned out the two of them had grown up in the same neighborhood in the Bronx. She said the 'hood was "full of guys just like him" (although presumably they were obcessed about some other topics). Sadly her family had since moved elsewhere so I never collected empirical confirmation.
If you have ever successfully done internet (and in particular, email) marketing, you would know that this is not BS.

Targeted emailing works. Your potential customers are engaging with you for a reason, they often need some kind of activation energy (that speaks to their situation) in order to enter their credit card information.
FYI: searching for Haraka on duckduckgo links to the page with a description text of "This is the meta description of your form. You can use it for SEO purposes.". Whoever runs the website should probably clean up the meta-tags.
> [RMS is] fully aware of the context and way in which he is perceived. RMS's objective is to be the most extreme person, and to drag that position so far over that no other free software effort can be ridiculed or ignored in this fashion.

This is an intriguing theory. But I find it difficult to believe that RMS is playing such a deep game when so much of his communication unrelated to free software principals -- e.g. his contract rider [1] -- comes across to so many people as tone-deaf.

[1] https://groups.google.com/a/mysociety.org/forum/#!msg/mysoci...
It's because it's an extremely delicate balance (considering reference counting a form of GC, which it is): you have to carefully design the entire language around it in order to get the safe expressiveness that Rust provides. It'd be very hard to retrofit onto an existing design and match Rust's expressiveness.
Ask HN: How would you rebuild Facebook?
If you had to rebuild Facebook from scratch right now what would you do differently (from a software architecture perspective)? What technologies would you use, and how would you make it more scalable from ground up?

More generally: what concepts and technologies are key in making a highly scalable web application similar to Facebook?
Cracking the passport chip. (2006)
first: making money matters more for me and i can make work whatever i have at hands

second: not always you have option to pick stuff

third: just like some advocate for, some can advocate against

fourth: this is kinda joke :)
It is becoming more and more established that human cells are not really alive. They just are a cooperative of things that are alive. Mitochondria, for instance, are alive. Our cells cannot survive without mitochondria, yet mitochondria can live an thrive without human cells. In a way eukaryot cells are like companies, as opposed to individuals : they're a collection of cooperative agreements between various parties. If you're pedantic eukaryot cells are fictional, like companies : there are no cells/companies, there are only cooperating smaller components that (in theory) could decide to dissolve at any time. But when walking around in the world you could easily be forgiven for thinking they do exist, as they are present, you can interact with them, they often look like they have coherent reactions (even though they don't), there's a wall around them, ...

The article specifies how they deal with mitochondrial damage : the same way a company would deal with a "defective" employee : have security escort them out of the building. Well a cell does what I often think companies would like to do : kill them first, then escort them out of the building, then find a new one (usually by asking an existing one to reproduce, but it seems there are other ways). It's even more similar than you'd think. A eukaryot cell doesn't kill the mitochondria "itself", it asks the golgi apparatus to do it for it (form a lysosome around it).

This research is groundbreaking because it shows our cells behave like companies do in another way : every now and again, they try to replace even perfectly functional employees with better ones.
I do not believe you can claim that Stallman does not understand the real world impacts of license decisions in complex software ecosystems: the LGPL is an example, which is designed to be used when entering a realm with existing high-quality commercial competition, and in the case of Ogg Vorbis Stallman actually recommended the use of a BSD license as it made more sense as the real battle was against MP3, not between implementations of Vorbis.

http://lwn.net/2001/0301/a/rms-ov-license.php3
It's fine you don't have to. The responses to my question were phenomenal.
Technically Fortran does compete. For computational applications it is faster than C and hence why it's so popular in supercomputing.
Blindsight, a brilliant first-contact sci-fi written by a Marine Biologist that explores the Chinese Room Paradox, "Intelligence" vs "Artificial Intelligence" with brilliant characters, writing and dialogue.

Comes with a front-cover quote by Charles Stross, a popular post-singularity author (you may have read his work).

http://en.wikipedia.org/wiki/Chinese_room
http://www.amazon.com/Blindsight-Peter-Watts/dp/0765319640%3...
Obviously the longer the maximum available length the better but it does assume the host computer always has the password manager installed. I'd shudder to think how such a long password would be entered otherwise.
Bitmessage is abhorrent for sending offline messages with, the rebroadcast system does not scale well.

You need a good DHT solution like I2P Bote to get a decent, decentralised offline messaging system.
Why post this 2011 (and arguably totally false) editorial now, in 2015? Because it's filled with odd things like:

In “Free Ride,” a book that should change the debate about the future of culture...

Did "Free Ride" change the debate? Not that I can tell. MPAA, RIAA and a lot of other folks want to strengthen copyright, a lot. Instead of an incentive to produce, copyright becomes ownership of ideas, a culture-crippling idea if there ever was one.

...the 1998 law [DMCA] was supposed to balance the interests of tech companies with those of artists and media companies. He now expresses regret that it has had the unintended consequence of making the fortunes of tech companies while devastating artists and media companies.

Let's see, a quick search (http://boxofficemojo.com/yearly/) shows us that even with "Hollywood Accounting", yearly box office revenue appears constant over the last 3 years. There's also a general upward trend. Too bad we don't really have accurate numbers on this.

Again, why post this? To mock the article's bizarre assertions because of our 20/20 hindsight in 2015? To try to get the editorial's falsehoods out in public again, to maintain the Big Lie? Or for some other reason, because I'm scratching my head.
Wow, this runs at a smooth 60fps in iOS8!
Rust has a different notion of memory safety than the Java or Go memory models. In fact, compared to Rust's memory model, both Java and Go are memory unsafe (in the Rust sense of safety, not the traditional sense)

Namely, Rust's notion of memory safety prevents data races in concurrent programs. This is because Rust's region typing / lifetime system rejects racy programs as invalid.

Go provides something more like a built-in concurrency framework than truly baking this sort of safety into the language. It's just as possible to write racy concurrent programs in Go as it in in Java, C++, or C.

Go provides idioms that can help you avoid writing racy programs, but they're just that: ideas about how to structure your program, not guarantees that will keep you from shooting yourself in the foot.

Go provides a data race detector so if you do write racy programs, you can retroactively detect the problem. Unfortunately data races have this nasty tendency to pop up under unusual circumstances like high load or unusual combinations of events.

That the author of this post chose concurrency as the thing to harp on about Go's superiority shows how little experience that person has with Rust, IMO. Rust shares the same basic concurrency concepts as Go (communicating sequential processes), but features a compiler whose type system prevents you from writing racy concurrent programs.
Ask HN: Any WordPress Developers here that can help me?
Hey there.

I'm trying to find out what cookies wordpress sets automatically for all users?

I'm creating a page count function (as I dont want to use yet another plugin) and at the moment it is counting everytime I press f5. I just want to be able to do it only once.

Thanks for your time. I would have usually put this on stackoverflow but the community isnt to fond of broadish questions nor ones without code / specific problems.
East of Palo Alto’s Eden
If so, Modafinil probably shouldn't be your first choice, but that's just me. I would recommend Piracetam or something similar.

/r/nootropics has a lot of useful information in their wiki [1] and the community is pretty friendly and helpful to newcomers.

[1] http://www.reddit.com/r/nootropics/wiki/beginners
Same approach here. Except that I use the ace editor (http://ace.c9.io/) as the backend. This has the nice advantage that you get full code editing capabilities in 3D.
Math/Crypto allows for distributed authentication. Think bitcoin block chain, miners verify each transaction and but it doesn't rely on any single miner.
The problem of Prolog is basically the history of AI: curated logic has mostly failed to live up to expectations and given away to various machine learning techniques. The Prolog approach was blamed for the second AI winter; Japan bet big on it in their 5G computing project (and lost big on it also) [1].

However, the paradigm lives on and is quite successful in various rule-based business logic systems; it just isn't very appropriate for general computation.

Plenty of languages try to invent the future, but they are quite research projects in the spirit of the original prolog (which wasn't even implemented until it went into someones dissertation). The languages that actually hit production are quite conservative in comparison, since they kind of have to be. Anything more radical, you might just write off as even more wankier than OCaml and Haskell.

Go is the present, perhaps, not really the future.

[1] http://en.wikipedia.org/wiki/Fifth_generation_computer
What does "wanky" mean in this context?
That video is breathtaking. I goofed off with N-body systems like probably most people and the size and performance of the systems shown there are light years ahead in comparison.
There are a fair number of interesting PostgreSQL forks that are completely proprietary. Those guys DO care about their source code. That's the exact case GPL is designed to protect against, there are developers that contributes to PostgreSQL and cannot use that code.

There does seem to be an overall shift and source code isn't seen as it once was but there is no shortage of companies that would gladly keep "their secret sauce" secret. How many web services use tons of opensource and short of reading their obfuscated javascript from their web pages, do they make the source available? And realistically, it's data and the service that is their edge. Take github for example.

RMS comes across as a bit extreme at times but we are where we are in part because of him.
I’m building http://sublevel.net using Django. I’m making sure everything is as simple as possible from code to UI to API.