skysight-inc/HackerNews huggingface dataset:
Culturally, politically, racially, or religious sensitive names such as:

god
allah
mohammed
jesus
evil
satan
666
13
taliban
terrorist
terrorists
jahar
hitler
nazi
georgezimmerman
arielcastro
etc

Cofounders' names and their variations.
True, but then neither did governments have the capacity to record all telephone and/or telegraph communications either. The sword cuts both ways.
Android ROM for Geeksphone Peak
It's a great option for low budget projects. I could see it working well for hobby or MVP projects.
Free email address validation API for web forms
We like the extremes, from clojure's metaproggraming, haskell's hipsterness, go's performance and lack of classes.

Scala isn't sexy, it's like coffeescript for java.
Or only serve it to 10% of requests, making it a heisenbug for the site owner attempting to track it down. :D
The Small, Often Imperceptible Reasons Some Neighborhoods Feel Safer Than Others
google analytics is a definitive no-no. permabanned here and one of the reasons I run noscript and its kind in my browsers.

Not that I mind webmasters running analytics tools, but I'm concerned with google having access to too much personal data/metadata, those privacy issues are bad.

Just use piwik or something.
"There were lots of customers and they made enough in a few days to travel for a few weeks. Now though..."

Man, rough life. I really feel for those guys...
According to free market principles, this will free the street kids and hippies to pursue other, more productive work, and therefore increase wealth.
The Authentication Platform of the Future is From the Past
This is a good thing.

One of the main reasons that cannabis has failed to be fully legalized in California is because greedy dealers want the industry to stay small and contained. I remember seeing tons of "Vote No" signs in Mendocino and Sonoma counties regarding legalization (which are huge cultivation areas,) and have known many growers and distributors who were vehemently against legalizing it.
Great to see things like this in my hometown. I wished I had been able to make it.
I don't want this to sound like an anti-corporation rant, but I think that most automated workers have a hard time moving across fields and that the money "saved" is often not benefiting the company but the owners of the said company. While paying people to fool around is certainly not right either, automation of the working class widens the income disparity gap
Donate to Replicant and support free software on mobile devices
only as a function of the observer
> To save face, they get an expensive lawyer to sue you. Next thing you know, you're a registered sex offender.

Please learn the difference between civil and criminal law.
This is proving a point that a lot of pro legalization people have been saying for years.
Summer vacation is evil
Do you use the module feature that much? If you break your code down into small enough pieces it's less of a problem. Also the terseness of coffeescript functions makes anonymous functions less painful.
I feel like the topics Priceonomics covers have been getting less interesting over time. I suppose that's natural for a content engine, but this piece left me feeling sort of disenchanted.

I'm used to graphs and visualizations on Priceonomics, and there was a distinct lack of hard data from this piece. It felt much more subjective than what I'm used to.

In short, I don't doubt the conclusion, but this doesn't feel like a normal priceonomics piece. Just my $.02.
How the hell does the AI work? It can't be included in that 1 kb, surely!
Ask HN: Solo Founder SaaS or App Success Stories?
I've seen these threads before[1], but I haven't seen anything recent. Things along the lines of patio11 and BCC or AR. Solo founder with profitable SaaS app replacing old income or more.

[1] old thread from ~ 2 years ago - https://news.ycombinator.com/item?id=3029771
It's sad that the U.S. has sunken to a point where this kind of guarantee is necessary.
Funny; I actually built a demo that did this for the homepage, but decided it was too complex and scrapped it for later.
The 5% cut is a big problem. It's inherently not fair.

They aren't making a market (like an App store), promoting my files, creating my content, or otherwise providing value that scales with the growth of the success of my product. Why are they entitled to $5 on my $100 or $10 on my $200 if that's the price I choose? Charging a fixed price per sale is more fair + any %fees you might incur from payment processing.

Clearly many businesses are based on the same % transaction fee, but it's not really fair if you look closely.
Halliburton shares up despite destroying evidence
If I'm supposed to care, I'm failing.

It is always a rough transition when government changes its policy to one of more morality and fairness. Protected business interests who have shaped their business model around shitty laws now are at a disadvantage to businesses that can spring up around new rules. That doesn't mean our laws shouldn't change for the better.
Isn't there cases where the court would appointing a neutral party to do the search ? I understand that the plaintiff wants to get access to all these information but it seems unwise to allow them since they already are in a conflictual situation. It gives them power to discover other things unrelated to the case.
It's a pretty natural want though. I'll go to a coffee shop owned by my brother before I go to a random other coffee shop. Especially if products are more or less interchangeable. What's wrong with wanting to give your business to someone you know well, and whose product/work has a direct influence on your life? Do what you want, obviously, but I don't think it's a weird moral problem whether you want to support those closer to you.
Unemployed and Older, and Facing a Jobless Future
ChessBoard supports drag-and-drop pieces: http://chessboardjs.com/examples#2006
Some other discussions:
https://news.ycombinator.com/item?id=2567487
https://news.ycombinator.com/item?id=1772199
https://news.ycombinator.com/item?id=1764682
Go back and read (and watch the video of his talk -- it's engaging): http://steve-yegge.blogspot.com/2008/06/rhinos-and-tigers.ht...
Indeed. It's rather tasteless and crass to revert to snark and conspiracies on this thread.
With Big Data, Companies Can Predict Employee Success Success Before They Start
One thing that a friend in management (on the technical side) said that he felt least secure in that position as it meant that he would most likely be fired first if something happened at the company.

Also: Because he was a manager for a few years, that means that his technical skills were almost zero. So he wouldn't be able to be as agile in finding another position as he was as a developer.
Calca - a new Markdown text editor/calculator
That's...the state monad. The compiler tells you when you try to access it in a way that is not allowed.

But the price for that is that I always have to access it in a cumbersome way, even when being so explicit makes no useful difference to the correctness of my code.

You have to be explicit with sharing.

I don’t want to be explicit with sharing.

I want to be explicit with sharing when it matters, and otherwise not to worry about it, safe in the knowledge that the language will warn me if I try to do something later that invalidates any assumptions I’m making now.
(serious question) How?
I agree, but there's a qualitative difference here, in that the hippies that are the subject of this story don't tend to kill or even beat up people. I've never sold any weed, but I've known enough hippies to recognize that they're basically benign black market traders rather than organized criminals, and the fact that they are sidelined in a new market is a problem for them.

Lots of people (who were not hippies) were interested in buying weed, while hippies were happy to supply the willingness to take a moderate legal risk. However, non-hippies aren't all that interested in other things that hippies like, such as hemp weaving or handicrafts - at least, not to the extent of providing hippies with any sort of livable income. So the choice is to either supply other, more risky markets - in other states, or with 'harder' and potentially more dangerous drugs - or find some other kind of employment. But other kinds of employment aren't really compatible with being a hippie, and while I don't think that's a fantastic thing to aspire to I respect that some people would rather live simpler, non-materialistic lives, or part of their their lives, and this is increasingly hard to do in a society that fetishizes private property.
Thanks for the pointer. But I don't see such a plan offered? The VPS plans all have bandwidth limits between 300 GB and 1000 GB.

But they do list shared hosting for $2 or $4 per month, which says unlimited bandwidth. Wonder if that's really unlimited at that price, or just "until you start using too much", got any ideas there?
I felt they handled the security incident fairly well. Definitely better than the majority of companies.
Imagine for a moment if meth were legalized -- production would move beyond shady basements with lax safety measures, distribution would move beyond inner-city gangs and other unpleasant cartels, consumption would move beyond lonely apartments and back-alleys, and storage would move beyond dirty needles and shoddy pipes (it could even be refined into pills).

Now realize that the entire pharmaceuticals industry is born from this desire for safe production, distribution, consumption, and storage of drugs -- and the hypocrisy of selective drug prohibition.
It is apparent from the comments here that many don`t realize that the author is being sarcastic. I wonder what it is about the delivery that this fact isn't obvious enough? Because I think that there has to be something with the article if so many interpret the tone of it incorrectly.
That's a good point. 'X days ago' becomes meaningless once the page is stale.
> We think, as long as there isn't a charismatic Hitler/Lenin figure agitating for revolution and preaching a radical ideology, that we're safe.

It's a good thing the US doesn't have a widely-beloved charismatic leader sending us running down the slippery slope, then.

Oh, wait.
What would be interesting would be a) ability to sell entire folders and b) ability to automatically generate sell links for files. Combined, you could create an instataneous online storefront automatically.

I am a currently planning a project that might be able to make good use of Sellbox. :) we'll see how that works.
How Gay Marriage Became Legitimate
Way too many.

I work as an engineer in a small ISP compaly, and for some time had very closely contacted with phone support (sometimes helping them) and heard many conversations with clients.

I'd say there are quite a few people who can't distinguish between Internet, browser and VKontakte (Russian analog for Facebook). Didn't counted them or did any real statistics, though.
13 hours from the time this was posted and it's still being hotlinked.
Now that you mention it, if any aircraft in the history of mankind deserves the name "Bat Wing", this is it.
I've used them for selling a couple of Mac apps[1] (along with Gumroad, for credit card buyers), and it's turned out just fine.

I'm not too worried about the 5% fee because the apps were ~$5, and it's nice to get an instant deposit into my PayPal account. I could pretty easily build my own system for payments to eliminate their fee, but it isn't worth it to me for lower volume stuff, which this is targeted towards.

That being said, I still prefer Gumroad. It's all about the user experience, and Sellbox's isn't very good at all. The dashboard kind of sucks (though, it's usable).

[1] http://analytics.wizardapps.net/
> I would say that the difference is that the Web is almost entirely about I/O

That's true in the trivial sense, in the same way that "the desktop" is about i/o, or "the command line" is, in that all of those specify an i/o channel.

But web apps or services aren't all about i/o any more than any other applications/services, they just differ in that the main user-facing i/o channel is HTTP.

> Haskell's ideal of minimal I/O isolated in a ghetto so the "real" work of the program can remain unpolluted doesn't seem an ideal match for the case where the real work is almost entirely about routing I/O streams.

Monads aren't ghettos isolated from the real work of the program. Monads are tools for doing the real work of the program -- whether its i/o, or dealing with mutable state in a transactional, concurrency-safe manner, or, well, lots of other things.
It reminds me of gumroad.com
I don't think it was an assumption; I think Steve was speaking from experience. As someone working extensively in C and doing a fair bit of Haskell, I'm finding my C to be more verbose and less safe. The C runs faster, in my application; sometimes I write it faster and other times slower, depending on a bunch of factors.
Dedicated servers at Kimsufi (UK). £2.99/month for 500gb
Velvet coffin.
That’s fine. I’m just saying that my experience differs, and trying to demonstrate why.
I actually built almost exactly this on top of dotcloud a while back:

http://chessjs-anirishduck.dotcloud.com/new

I initially based it off a wild idea my coworker and I had about a chess variant where any piece that captures another piece has the option of becoming that piece. I then expanded it with several other chess rule variants, including vanilla chess.

One thing worth mentioning is that the rules for chess are deceptively complex. Especially when it comes to valid moves avoiding check and moving out of check. See:

https://github.com/AnIrishDuck/chess.js/blob/master/chessjs/...
I think he means the numbers on the pricing are weird and he finds it distracting when trying to choose a plan, not that the prices are too high. The first plan is £6, the next is £5 more, the next £10 more, the next £20 more, and the last £38 more. Where are £6 and £38 coming from? I believe he's suggesting just making it 5/10/20/40/80 or something like that.
“The hippy kids used to be able to sell their weed real easy at high prices,” he tells us. “There were lots of customers and they made enough in a few days to travel for a few weeks. Now though...”

"Many are homeless by choice: Some are the transient underemployed or unemployed that hop railcars across the country."

http://24.media.tumblr.com/f57b0d94ce4e855c44891a68b21abe20/...
Yes, I use it! Facebook has removed links to some basic views, such as "my videos." Graph search lets me get to those sorts of queries however I want! :)
ChessBoard was built because the author of lichess.org contacted me about re-using some code from another project of mine.

I had always wanted to build the board as a separate component.
It'd be fascinating (or scary?) to see some data from Google. They've been data mining employees to make some form of performance calculations for awhile now.
I've long felt this way as well, but increasingly I'm becoming convinced that the narcos would just refocus on coke, meth, heroin, slavery, etc. It's not as if startups are the only entities that can 'pivot'...
Don't be an idiot Listen to your customers.
Perhaps this is totally beside the point, but:

* Usability nitpick 1: The course names are JS hyperlinks which happen to be tab-unfriendly (when non-mobile)

* Usability nitpick 2: There's no real search, and the two select's have to be executed serially -- seems like a step backwards to me.

* Nothing against the schools that -are- on the list, but "Take great courses from the world's best colleges and universities" seems inflated, if you think about the schools -not- on the list. And given that there -are- great schools on the list, that slogan is trying too hard (to me, anyway).
That assumes you can go directly from any spot to any other spot, which you can't. Given a grid that looks like this:

123
456
789

you can't go directly from 1 to 3 unless 2 has been selected. I also don't think you can immediately backtrack, as in 213; you have to go 2513, for instance.

With that in mind, I wrote a quick search:

Adjacent only (can't go from 1 to 6 or 8)
1 9
2 40
3 160
4 496
5 1208
6 2240
7 2984
8 2384
9 784
total: 10305
total with length >= 4: 10096

Non-adjacent (knight-moves) allowed (can go from 1 to 6 or 8)
1 9
2 56
3 304
4 1400
5 5328
6 16032
7 35328
8 49536
9 32256
total: 140249
total with length >= 4: 139880

Pass through previous spots, no immediate backtracking (2513 but not 213)
1 9
2 56
3 304
4 1464
5 6136
6 21344
7 57184
8 105376
9 100928
total: 292801
total with length >= 4: 292432

Pass through previous spots, with immediate backtracking allowed (213)
1 9
2 56
3 320
4 1624
5 7152
6 26016
7 72912
8 140704
9 140704
total: 389497
total with length >= 4: 389112

So, I believe the correct number is 292432. For comparison, that's less secure than a 6-digit PIN, or a 4-lowercase-letter password.

More importantly, though, if you're using an unlock pattern, you can't be using disk encryption, so anyone who has physical possession of your phone need not bother brute-forcing the unlock pattern.
Why use a SQL database when all you really want is a key-value store?
ChessBoard is designed to be "just a board" and integrate easily with chess engines, etc.

https://github.com/oakmac/chessboardjs/blob/master/README.md

I have an issue to build an example that demonstrates integration with chess.js and only allows legal moves (https://github.com/oakmac/chessboardjs/issues/19)
It may be 12 pages but it's really straightforward. Just read it myself.
There's a cool and important feature to this setup that makes RabbitMQ specifically a great choice: queuing one message sends the notification to all devices at once.

In RabbitMQ, messages are published to exchanges and based on the type of the exchange, messages will be routed to specific queues, which is where the messages are consumed.

There are three types of exchanges you can publish to: Direct, Fanout, and Topic. In a Direct exchange (which is the default), a queue subscribes to the exchange with a routing key and any messages delivered to the exchange with that routing key is delivered to that queue to be consumed. So in a sense it's 1-1: exchange -> key -> queue.

However, in a fanout exchange, every queue subscribed to an exchange gets a copy of the message. This means that when you deliver a message to a fanout exchange, that exchange will give a copy of that message to every queue that is listening.

So you can send the "New Item" message to the "notify" fanout exchange, and every queue bound to that exchange will get the "New Item" message; i.e. the phone notification service, the web client notification service, etc, will all get the "New Item" message and can react accordingly. What makes this even better, is that if you add a new service (e.g. a new iPhone app), all you have to do to tap into your notification system to receive new item alerts is to tell a queue to listen to the notify exchange! You hear me right: you don't have to change any existing code.

Now, Andrei Marcu's aamnotifs is written in Python and he uses pika as his Rabbitmq module. Pika is a little more relaxed about the exchange types: any queues subscribed to an exchange with the same routing key will be treated as if they are attached to a fanout exchange, and will all receive copies of each message sent to the exchange with that routing key.

I say all of this just to point out the important point that Andrei left out: to add a second, third, or nth listener to your notification queue which receives a copy of the updates, you just have to add another

n.receive("routing_name", print_notification)

line and change print_notification to whatever method you want the message to go to. For example:

import notifs

def print_notification(title, message):
print "Notification received: {0}: {1}".format(title, message)

def web_app_notify(title, message):
print "Webapp notification received: {0}: {1}".format(title, message)

def iphone_app_notify(title, message):
print "iPhone App notification received: {0}: {1}".format(title, message)

def android_app_notify(title, message):
print "Android App notification received: {0}: {1}".format(title, message)

try:
n = notifs.Notifs("amqps://user:password@domain.tld:5673/%2F")
n.receive("routing_name", print_notification)
n.receive("routing_name", web_app_notify)
n.receive("routing_name", iphone_app_notify)
n.receive("routing_name", android_app_notifify)

except KeyboardInterrupt:
break

gist here: https://gist.github.com/rickhanlonii/6091542
I had a similar experience with the callback spaghetti at first. It felt kind of off and awkward. Once I got the hang of it (day or two), I started really enjoying all the callbacks and passing functions everywhere. Maybe all this Javascript coding finally got to me and now I'm crazy :)
Legal Beer is Hurting Boise Hipsters

News at 11. Sorry, I couldn't resist. Since Idaho is so behind the times on the legalization front, hippies are most welcome here. So if any hippies are reading this, there are many markets opening in the gateway states that lie between the cool states. Another way to look at this is, marijuana legalization will lead to the liberalization of the states that are behind the times, which is probably why fogies are fighting against it so vehemently.
Since it is the federal government prosecuting Snowden, those statements might be legally binding. Certainly the federalism argument doesn't make the assertions non-binding since it's not a state government.
thanks for sharing.
i hope in the next version, castling the king is added.
Being able to configure stuff that is listed as features is a natural requirement. And it is supported: process listeners, process destroyers, stream handlers - all are behind interfaces, you can supply your own implementation. Some things maybe aren't that flexible (ProcessBuilder, I'm looking at you), but if you find a need to extend their behavior, create an issue, we will be happy to change that.

Default settings are sensible and fit the use case of: start process, consume and return its output/error streams, check error code. Common use-cases like killing process when parent JVM exits are supported with one-liner calls, etc. It was aimed to be friendly.

Finally, the comparison with other frameworks. You can find a couple of examples in the [readme file](https://github.com/zeroturnaround/zt-exec/blob/master/README...) on github. Also tests somewhat reveal the feel of the api.

My favorite feature is that it supports futures. When you want to run your process async mode commons-exec tutorial suggests:

executor.execute(cmdLine, resultHandler);
// some time later the result handler callback was invoked so we
// can safely request the exit value
int exitValue = resultHandler.waitFor();

zt-exec has:

Future<ProcessResult> future = new ProcessExecutor()
.command("java", "-version")
.start();
// do some stuff
future.get(60, TimeUnit.SECONDS);

You get a process library that works well with java's default async framework.

Hope it gives some insight. If you have any more questions, I'll be happy to help to the best of my abilities.

disclaimer: I'm working for ZeroTurnaround, but I haven't been directly involved in creating or making zt-exec publicly available.
You're making it seem inevitable that valuable people will be held back in stale roles. Things don't have to be this way, although I have heard of places where they are.

In other firms, new tasks come along and they need good people to lead them. People who have developed a smaller system that is now in maintenance mode are a perfect candidate. And that is how you advance.
"Known many"?
This looks very useful. The Android permission system is pretty good from a technical point of view, but since a lot of apps just require all permissions regardless, and people are trained to disregard this when installing, it's almost moot.

I wonder if Google is using requested permissions in Play rankings. The apps which require _all_ permissions should definitely be ranked lower.