skysight-inc/HackerNews huggingface dataset:
The drawing is basically a list of strokes, and a stroke is a list of points - that is, (x, y) coordinates. So the database is mostly a huge table of (x,y) coordinates.

Uploading the entire canvas would far too inefficient - I simply upload the points.

The transfer between two clients uses a technique called 'long polling'. That is, the client sends an HTTP request to the server, and the server doesn't respond until it has received a message (ie. stroke) from another client.
Is his handicap of 3.3 impressive or disappointing?
Apple Patents a Way for Your iPhone to Remember Where You Parked Your Car
Structure and Interpretation of Computer Programs by Abelson and Sussman, for the uninitiated.

It's one of the best introductions to basic and advanced (and then even more advanced) programming there is. This book, along with a series of "The Little Schemer", "The Seasoned Schemer" and "How to design programs" use Scheme as a language, and Racket makes it particularly easy to follow them by providing special environments (#langs) crafted for them.
Just like Christopher McCandless, he searched for some privacy and isolation in the remote corners of America.
Many of the reasons you wrote are the same that got me attracted to Elixir. That and of course erlang interop and OTP.
Won't say that I "read" it, but would check the new products by its chrome extension
Herbert wrote the first book as multiple novellas, serialized for publication by Analog. His later novels are much looser, and clearly didn't benefit from the attention he put into making sure the originals would be accepted by the leading science fiction publisher of the time.
Hide your hyper-links to boost your readership
You can thank iOS' autocorrect for that one, "wide" would be the correct word that's supposed to be in there :)
Can not resist...

This article is fairly misguided. I find it painful that everybody who writes about a Lisp offshoot (Scheme, Clojure, ...) ends up misrepresenting Common Lisp.

To sum up "Why Lisp?" from a CL perspective: CL has pretty much every feature of every programming language around, only that its better designed, implemented and generally more powerful. It's just a poweruser language. Its not just macros, sexps and lambdas. Its also number types, arrays, OOP, symbols, strings, structs, dynamic/lexical variables, lambda lists, multiple return values, on-line disassemble, exceptions, restarts, MOP, metacircular definition, great implementations, great libraries...... the list goes on and on... I surely forgot a ton of great stuff. TL;DR: CL got everything. And this "everything" is designed so well that its extensible and no CL programmer ever needs to doubt that any new feature can be implemented easily in CL.

To correct a few of the wrong statements of OP:

> “Wait—I love state and data mu­ta­tion. Why would you take them away?” Be­cause they’re false friends.

CL is NOT particularily functional. Just because we know how to write good side-effect free code, doesn't mean its a functional language. (We jave SETF after all, failed to mention that aove).

> a syn­tax trans­for­ma­tion in Racket can be far more so­phis­ti­cated than the usual Com­mon Lisp macro.

Outright wrong. The only reason Scheme has weird macro systems is because its a Lisp 1. CL is designed well (thus being a Lisp 2), and thats why its simple but ultimately more powerful macro system can work.

> A macro in Com­mon Lisp is a func­tion that runs at com­pile-time, ac­cept­ing sym­bols as in­put and in­ject­ing them into a tem­plate to pro­duce new code.

This is so wrong I had to write this comment. A macro in Common Lisp is a COMPILER, it accepts arguments and returns an SEXP. It is infinitely powerful, it can do EVERYTHING.
Fucking paywall!
>centralized governance with a capable medium term planning

Most people underestimate just how powerful a tool competent, forward-thinking government is, especially in the US, where it's thought government can do no right in many circles.

What China has accomplished in such a short period of time is truly amazing, I agree. And they aren't the only case: South Korea and Singapore are also good examples.
WW2 COMSUBPAC Torpedo Scandal
http://whiteboardfox.com/972-7551-8980
Nonsense. We've figured out how to do type systems. We can even fully infer types if you're willing to accept some quite reasonable restrictions on how polymorphic your code is. We have a bunch of reasonable approaches to effect tracking, which Lisp folk used to have to do by hand (that story about the T garbage collector sounds like the most unmaintainable piece of code I've ever heard of). We know how to solve the expression problem.

Modern "pragmatic"-oriented languages have little that wasn't in Lisp - or in Algol. Which is fine! The innovation is about the wider ecosystem (a lisp programmer from the '90s would be amazed by CPAN, never mind maven), or about making common tasks easy (a lisp programmer might eventually put together a collection of idiosyncratic macros with much of the functionality of Rails, but that wouldn't be a project you could hire someone else to maintain). OTOH modern "researchey" languages, like Coq or even Haskell, are far far ahead of Lisp.
> The NIMH has abandoned the DSM as a basis for psychological research (conducted by research psychologists), because it failed to incorporate the scientific evidence collected since the last DSM.

Absolutely false. There is no useful science that could have been incorporated into the DSM to save it, and had this been so, Insel and the other critics of DSM-5 surely would have mentioned it. None did.

> Recovered memory therapy was debunked by psychologists who showed in laboratory experiments that false memories could be "recovered".

Recovered memory therapy was debunked by courts of law, not in psychological laboratories (those mental health professionals who doubted its efficacy were obliged to testify in courts, not in conferences), and it is still offered by clinical psychologists to anyone foolish enough to want it.

> That does NOT mean that these aren't real conditions that have a real physiological basis.

Yes, but that is an opinion, not a scientific finding. Remember that recovered memories, assisted communication, homosexuality, Asperger Syndrome, and dozens of other conditions, were also "real conditions" until they fell out of fashion or failed to agree with changing public tastes. None of them was ever proven to be real, or proven to be false -- ever. They just evaporated over time.

> And I hope you'll consider that psychological research and the practice of psychology are different things.

Yes. However, medical research, and medical practice, are not "different things". The reason is that medical research produces results of immediate and practical use to clinicians. The reason for that, in turn, is that medical research is an empirical science, a science that unites the field, produces a common ground for experimenters and clinicians, a common ground that does not exist in psychology.
Duplicate of https://news.ycombinator.com/item?id=8206504
Wow, I thought it was a pet theory of Fomenko [1] only.

[1] http://en.wikipedia.org/wiki/New_Chronology_(Fomenko)
I tried opening "my" whiteboard in a second tab in Firefox (on Windows). The second tab's view is distorted, it reminds me of having a badly programmed modulo register on the Amiga.

Which doesn't say much to most, I guess... It looks as if the scan lines are mis-aligned, i.e. as if some pixels in each line is missing from each, causing the resulting image to be slanted and distorted.
I played around with this project a few months ago, and it was cool, but with some limitations. The microphone I had to use didn't work from very far away (that was my fault for sourcing a crap microphone), and the voice recognition was finicky (even after getting close enough to the mic). I know the voice recognition is just another piece of software that they integrated, but since the project relies on it so much I think it would be well served if there was an easy way to train the voice model to understand me.

Simple plugins are easy to write for things like checking sports scores, or anything with an easily accessible API, and this is a huge plus.
Google's fact-checking bots build vast knowledge bank
This. It is my guilty pleasure. There's no other place in the web where I've wasted as much time time and, at the same time, learned so much.
Read all the Dune books through Mentats of Dune by Brian Herbert and Kevin J. Anderson. Loved them all! Favorite series ever-- love, politics, philosophy, technology, fantasy. Brilliant.
Hmmm - send me a screenshot. I'll take a look.
Yeah, I think that most programming language developments since the '70s have involved putting some ideas from C and Lisp in a blender for a few minutes.

The main advances IMO have come in the areas of IDEs, build systems, and language ecosystems.

I'm a mediocre programmer at best who's done a bunch of Lisp in the past. I loved using it, but these days I rely on Ruby for getting things done because it gives me what I need from Lisp backed up with a package system that just works. I'd rather work in Lisp, but I can make more progress in Ruby.
This is interesting, and I certainly hope to see updates in the future. For me, for now however, I found wit.ai to be so simple to get up and running that I can't see myself moving to something like this - even though I can see significant advantages (local data only, for one).
A URL shortener service in 45 lines of Scala
The best part about Dune is that it's really one of those books that reveals different things every time you read it. It should be part of every serious literature course.
I don't think it's unfair to impose these rules on developing nations. We have to learn from our mistakes. The industrial revolution may be the only template we have for a developed nation, but there are other routes. I can imagine a world where comparable levels of investment in Education can deliver deliver on the promises of industrialisation without as many of the "bad bits".
Reading this chart[0], it puts him solidly in the top 10% of male golfers, perhaps in the top 5%.

[0] http://www.golfdigest.com/magazine/2014-04/comparing-your-ha...
This assumes that some people deserve being "taken down a notch" which is a pretty fundamental flaw in leftist ethics if you ask me.

Ideas are bad. People are just a product of their environment like any other animal.
Cupola (ISS module)
> ... in reference to a comment that classifies psychology as just the poorly-done parts of psychiatry?

In sciences, because of the unifying nature of theory, there are no poorly done parts. Both cosmology and particle physics would be independently weak were it not for the other, and what unites them is ... scientific theory.

Psychiatrists don't listen to psychologists, who don't listen to clinical psychologists, who don't listed to social psychologists. They're independent entities. If psychology were a science, that would all change, as physics is changed, as biology is changed -- all by tested, falsifiable, scientific theories.
China signed the Montreal Protocol.
Try Digital Ocean with Free Credit ($10)
FWIW, I have a high IQ and I didn't get very far either. Debugging code I've never seen before in less than 60 seconds isn't a skill I've needed to acquire.
Twitter, terror and free speech; Are videos of Islamic violence propaganda?
GEORGE BUSH MURDERERD ON VIDEO SCREAMS
I've been using Org Mode with emacs for writing literate programs. You could write a simple front to Org Mode to decrease the clutter...but the hierarchical nature of the Org Mode files tends to reduce the issue of clutter already, so it may not be worthwhile.

http://orgmode.org/manual/Working-With-Source-Code.html#Work...
The White House Gives Up on Making Coders Dress Like Adults
It sounds, from his comment history, as if he moved to Valve Software. Gabe Newell (founder of Valve Software) is a former Microsoft producer.
My quick attempt: http://jsfiddle.net/41s1wqhs/

Only tested on OSX.
> There are (a small percentage of) businesses where speed does matter and caching everything is not an option. Think exchanges, ticket sales, real-time analytics off the top of my head.

True. But even in those cases, there are likely parts of the system where speed of execution is less important than speed of iteration. So you could (if it made sense for you) use a Ruby app for the user-facing app, backed by a service written in something else.

Point being, just because you need a critical processing bit to be written in screaming-fast C doesn't mean you need to write your own HTTP router in C.
I agree. It's missing a learning experience here.
I actually find that God Emperor of Dune was my favorite, not Dune itself. I don't recall whether it was Chapterhouse or Heretics, but the scene with the Bene Gesserit in the cave has stood out in my mind for years.

Really, the writing style is the same, and there's a lot of "idea" content in the sequels, especially God Emperor. I really don't feel the Dune universe is any different - but the events of Dune did change the (known) universe, and thousands of years have passed by the time of Chapterhouse.

I would agree that nobody should touch the Brian Herbert books, though.
"Municipalities can update their laws to be more relevant"

Or... people could comply with the current municipal laws and not run commercial enterprises in non-commercially-zoned areas, or even just respect whatever HOA or landlord agreements they are party to.
A Starship Worth Fighting For
Or Bill Gates. Or Steve Jobs perhaps.
Why a Six-Figure Salary No Longer Means You’re Rich
A general rule of thumb for an acute complaint: Go to a hospital affiliated with a medical university. That's where the next generation of doctors are trained by (hopefully) some of the best of the current generation. As workhorses, they also tend to see a lot of cases in a working day (an indeed, some of the most unusual), leading to a lot of practical experience.
An Agnostic Voice from the Deep South
And why no "Sign-in with Github" ?
> Have you come up with a solution (I'm interested to know how, if you succeeded)?

Nope. Naive approach is: for every byte of the modified file, compare against every position in the source file and find the longest match. If less than the cost of encoding the pointer+length pair, then add it to a queue of raw bytes to write. Flush the queue whenever you find a long enough match. That is of course O(n×m), which is easier to just say O(n^2).

Tried exploring string-search algorithms like Knuth-Morris-Pratt and Boyer-Moore; tried keeping a tree list of 16-bit matches (which in fully randomized data reduces search overhead to O(n×m/{between log2(65536) and 65536}) ... but in a file of nothing but null bytes slightly hurts performance), tried skipping by S bytes per compare and then backtracking when long enough matches are found (hurts patch size efficiency as N goes up, but reduces overhead by O(n×m/S), and so on.

I can get up to around a 64MB diff, before memory constraints and the inevitability of quadratic growth start to ruin me. Have tried to analyze what Xdelta/VCDIFF were doing, but the code is just too difficult to follow at my skill level.

> Why don't you take lessons in your favourite instrument, then?

I've tried, I just don't have the raw talent for it. Have no rhythm, have very poor note deduction ability, my mind trips all over itself when trying to use each hand to play a different part of a piano song, etc.

Not a huge deal, just something I'd like to do. But even if I could do all these things; a jack of all trades is a master of none.
Have to agree, Dune is an amazing book and stands well on it's own. One of my favourite ever. Even the film/TV interpretations are pretty good :)
Please accept my apolgies - I was mistaken. I was thinking of dnscurve.cz and extrapolated this to conclude that nic.cz was dnscurve-friendly. But we now know this is not the case. They do not view it as being worthy of adoption as a "standard". Sad.
Hopefully there is some consideration (somehow) for not monitoring the many passwords and passphrases that flow through clipboards. I took a quick look, but couldn't find acknowledgment.

Maybe we need a secure clipboard that guarantees (again, somehow) purging 1) immediately after a paste, and 2) after a specified time period such as 30 seconds.
New algorithm lets drones monitor their health during long delivery missions
A captcha solver in Ruby
I believe he is referring to x86. ARM has the advantage in mobile because of power efficiency, but it does not have the compatibility with the commodity consumer hardware necessary for the desktop/laptop experience. I would like to see evidence of ARM being able to match the performance of x86 in difficult desktop computing tasks, and then I might consider that being an option.

All popular tasks done using Windows applications need to be accessible to users. Some ways I see this happening:

1) An alternative application for everything is provided (many companies are working on this, including Google...)

2) Provide seamless interfaces to Windows applications on the same platform, utilizing hardware virtualization

3) Provide seamless, high performance abstraction at application/process layer that can run Windows apps (JVM, WINE)

Options 1 and 3 would liberate the operating system from x86, but major improvements to the hardware and/or the software stack are needed to drive options 2 and 3. I am not confident ARM will be efficient/fast/compatible enough to knock x86 out of the box for typical desktop computing tasks even if option 1 is achieved. Though there is certainly potential for improvement/development of ARM in all of the aspects where I'm suspicious it is lacking compared to x86, I think that would take longer than it would to achieve option 1. There is also the possibility of creating a new architecture that is either compatible with or has features equivalent to x86, or performs so well that it can accomplish option 3 seamlessly, but that will also take a long time to pan out.
> The actual thing you want to be able to do is quickly iterate on your product and constantly have it evolve.

This also helps you "fail fast". If you have a 1-year runway, it's much better to be able to build 3-4 apps for market validation than build one performant one that nobody wants.

If one succeeds and performance is a problem, you now have good reason to optimize, possibly even to switch languages.
Best WordPress membership plugins compared in 5 minutes [video]
I love it - works perfectly... but immediately the feature creeper in me has kicked in. Killer features

1. Be able to type in text (any font will do)

2. Drag-and-drop an image to be be able to annotate it over the top (would be excellent design task, e.g. using screenshots of some work-in-progress).

3. Movable objects?
Very nice, but you just made me remember how hard it's to draw with a mouse.
This is what I was originally looking for when I found the Phantom Hypothesis instead.

Thanks for the link.
Sure but that can be said of half a dozen languages in the 70s. Unix taking over the world ended up convincing two generations that C was state of the art.
Tesla to Pay Hackers to Break into Their Model S
The Island Nation That Planned to Relocate an Entire Population
Thanks for the clarification. Is it worth considering others besides Racket and Clojure as a first Lisp? Are there Lisp equivalents of Vim and Atom as well?
Straight forward is way way off the track. When doing business in China it's more like hunting in the jungle. There are some people better suited for the jungle than for the well structured city life, though. And because these are only a few, they have a relatively easy life in China. Don't take that as a hint that everybody can go there and buy factories like Pokemon trading cards. Even big, successful companies are constantly failing in China.
The relatively unknown megafauna tragedy and its relevance today
Show HN: Discrete news tracking
Great work! My feature request: similar to the "insert pic", create an insert slide. You upload a .PPT and select which slide you want to use.

If teachersare going to use this, many of them will already have a powerpoint to use.

Adding to this, an easy way to navegate betweens different whiteboards of the same author (so it is easy to go to the next slide).

Just my opinion about what might work.
Franco Varriano of Guides.co: Growth Hacker Is Just a New “Buzzword”
Scrubly groups all compatible duplicate contacts together to be safely merged.

http://www.scrubly.com/
How about just make it work?
Me too, but this is not the SourceForge of 2000 anymore.
Building an API with Rails: Parsing Data
The Wacko in the Morning Show 08/21 by the Wacko Network
the legends of dune trilogy were the only good dune books. the reset were drivel in my opinion. that said, i did read them all, so they can't have been that bad, but i did spend most of the time waiting for the robots to come back. which they don't do :(
It's good to see a social network come out of Canada. Privacy-conscious folks should be comforted that Trestup needs to comply with CASL[1] and PIPEDA[2] which sets a higher bar than US regulations with regards to gaining consent from users for marketing purposes and provides greater control for the user over their own data.

[1] http://laws-lois.justice.gc.ca/eng/annualstatutes/2010_23/Fu...

[2] http://www.priv.gc.ca/leg_c/leg_c_p_e.asp
Not one mention of The Seven Pillars of Wisdom by TE Lawrence? I'm actually reading that book right now; so many parallels. It's a shame Herbert didn't mention Lawrence in this essay.
A Message to ISIS
Open Science, but not during submission
It may be worth adding a section to your readme with the dependencies you use / how it works.

I had a look at the code because I was curious about how Javascript could interact with the clipboard. I can see that you use "clipboard-watcher" which in turn uses "NodObjC" - which also explains why this is OSX only.
Could you also start the timer after the player has acknowledged they've read the problem? At the moment you're unfairly disqualifying players who have reading difficulties (English isn't their first language, reading difficulties like dyslexia, or even those with partial eyesight so also read slower).

Timing the person's ability to read English doesn't prove their ability to write Javascript et al.
Not when we are outsourcing our intelligence collection to government.

Its the Government's responsibility to spy on our enemies, is it not?
> I don't think we "know" anything of the sort.

I think this is rather easy to check - just have a look at per capita GDP.

> Efficiency, for one, is an empty term.

How did you reach this conclusion?

> Efficiency with regards to what and towards what?

With regard to how much effort you need to spend in order to achieve some outcome.

> And why "force a larger population" to strive for it?

Because it means we all waste less time/effort (on inefficiencies).

> I know millions who have devoted themselves to various external causes

I wasn't talking about specific individuals, but humans in general. Virtually every society will have some bad apples amongst it, and even those that don't will at least have incompetent ones.

I don't mean this in any derogatory way - in the end it's just genetics, random mutations and all that stuff. It's not exactly a process we can reasonably influence or even just comprehend.

> We might not have had Walmart 24/7 superstores or all kinds of BS foods and "indulgences" but it's not like they were missed much, if any.

I'd like to see a credible source for this claim. I for one would certainly miss some of those things.
Seriously. I just get a blank Google+ popup after authenticating. When I close the dialog it says it couldn't authenticate. Oh well. Looked like a cool idea.
Text is also a feature I'd like to see. Sometimes its easier to just type something than gesture each letter
The original is an absolute classic, but the first sequel, Dune Messiah is probably also worth reading - without it, you don't really get a good picture of what Herbert has to say about the hero's journey.
Serendipity – When 2 people listen to the same song at the same time