First Recorded Usage of "Hacker" (2008) - <AUTHOR> https://manybutfinite.com/post/first-recorded-usage-of-hacker/ <comment><AUTHOR> Some of the links have since rotted. Here's Fred Shapiro's email reporting the discovery:

[https://web.archive.org/web/20051023131548/http://listserv.l...](https://web.archive.org/web/20051023131548/http://listserv.linguistlist.org/cgi- bin/wa?A2=ind0306B&L=ads-l&P=R5831&m=24290)

And here's the (unrelated) "paper with a most hilarious and offensive name":

[https://web.archive.org/web/20080903094328/http://findarticl...](https://web.archive.org/web/20080903094328/http://findarticles.com/p/articles/mi_go2573/is_200209/ai_n7467296)

There are also the Tech Model Railroad Club dictionaries of 1959 and 1960, which include "hacker":

[http://www.gricer.com/tmrc/tmrc-dictionary- intro.html](http://www.gricer.com/tmrc/tmrc-dictionary-intro.html)

Why does this not count as an earlier recorded usage? Is it because those dates have not been independently verified?

<comment><AUTHOR> I emailed Fred Shapiro, the editor of the authoritative Yale Book of Quotations, to ask him about the TMRC dictionaries. He replied:

" _I am familiar with the 1959 occurrence of "hacker," which has been confirmed. The problem with it is not that it is unconfirmed, but rather that it is a general usage not a computer usage. For that matter, the 1963 usage that I discovered is also not specific to computers, although I believe that phone-hacking is pretty much the same phenomenon as computer-hacking. The earliest usage I am aware of that is specific to computers is dated 1968._

 _But the real issue here is whether "hacker" originally had malicious or benign connotations. Since the general usage of "hacker" in MIT culture is clearly the ancestor of the computer usage, as soon as the 1959 citation was discovered I conceded that I was probably wrong about "hacker" originally having malicious connotations._

 _Fred Shapiro, MIT Class of 1974_ "

</comment></comment><comment><USER3> In the late 1960's, in Johannesburg, my friends and I discovered a "hack" for payphones. In those days and at that place, people paid per-phone-call, so finding a way to call for free was great for a bunch of crazy teen-agers. What we discovered was that you could use a grounded wire to fool the phone company into thinking a coin was dropped into the coin slot. When the recording said "please deposit ..." we would scratch the wire to a metal part of the mouth piece. (There was a small hole in the plastic of the mic for some reason - that is what we used). The "ground" was the metal cage on the overhead light. For some reason, the scratch produced simulated the signal of a coin drop. Many silly school-boy prank calls ensued. I hang my head in shame.

</comment><comment><USER4> As dang points out in this thread, The Tech Model Railroad Club was formed in 1946[1]. The TMRC dictionary was first written in 1959.

[http://www.gricer.com/tmrc/dictionary1959.html](http://www.gricer.com/tmrc/dictionary1959.html)

The TMRC, which is generally cited as one of the origin points of MIT hacking culture, defines the following terms:

      HACK:
      1) something done without constructive end;
      2) a project under-taken on bad self-advice;
      3) an entropy booster;
      4) to produce, or attempt to produce, a hack.

      HACKER: one who hacks, or makes them.

This predates the news article by 4 years.

Also, you can't be a 'so-called hacker' unless people are already using the term.

[1] [https://en.wikipedia.org/wiki/Tech_Model_Railroad_Club](https://en.wikipedia.org/wiki/Tech_Model_Railroad_Club)

<comment><AUTHOR> No doubt that's what 'so-called hacker' was meant to convey, but the issue in later decades has been to look for _recorded_ usages.

Since Shapiro now agrees, it seems like the TMRC non-malicious usage of "hacker" has won.

</comment></comment><comment><USER5> Within the realm of blackhat or malicious hacking, many people may also make a distinction between cheating a corporation out of small amounts of money (phone phreaking, cable boxes) and doing things that directly hurt private individuals for the sake of profit. So even if the earliest uses of "hacking" referred to something illegal, it might not really refer to the same thing as blackhat hacking today.

</comment><comment><USER6> In Boston's late 50s slang, a "hacker" was someone that tuned muscle cars/hot rods. It's no surprise that the earliest written occurrence of "hacker", in the modern sense, comes from Cambridge.

<comment><USER7> A Google Books search for "hacker" pre-1963 ( [https://www.google.com/search?q=hacker&source=lnt&tbs=cdr%3A...](https://www.google.com/search?q=hacker&source=lnt&tbs=cdr%3A1%2Ccd_min%3A1950%2Ccd_max%3A1963&tbm=bks) ) shows that it was also used for taxi cab drivers, eg, [https://books.google.com/books?id=puENBZpcOmoC&q=hacker&dq=h...](https://books.google.com/books?id=puENBZpcOmoC&q=hacker&dq=hacker) .

<comment><USER8> Woah, I knew illegal cab driving in Baltimore was called "hacking" but never considered the term had old roots. Turns out it all comes from the use of Hackney horses in the 19th century. [https://en.wikipedia.org/wiki/Illegal_taxicab_operation](https://en.wikipedia.org/wiki/Illegal_taxicab_operation)

</comment></comment></comment><comment><USER9> I think we're going to see this pushed backward. An example of deep roots, 'bus' as in data bus, goes back to bus-bars which is electrical engineering from the pre-WWII date. There were no data busses in the 1930s but bus-bar was well understood.

For analogous reasons I therefore believe we'll see "hacker" roots going back a lot further.

<comment><USER10> Well, there are _hacksaws_.

> The journal quotes George N. Clemson as follows:

"In 1884 we built a sawing machine for testing hack saws, in which we discovered that the blades we produced would cut twelve pieces of one-inch iron before re-sharpening was necessary. During the year 1886 we experimented with fifty-two kinds of hack saws."

And hack is an old German/Dutch word.

Maybe it's a stretch. But hacksaws are one of my favorite tools.

<comment><USER11> Totally off-topic, but hacksaws are also a favorite tool of mine. There is something totally fascinating to me about cutting through metal - <USER2> because metal is typically strong and difficult to break. I have very fond memories of hacking things in my grandfather's shed when I was young, and to this day I really enjoy hacking through a drywall nail when doing home improvement tasks.

<comment><USER12> >fond memories of hacking things //

I think the phrase you're looking for is "sawing things". If you talk about using a chain saw you don't "chain a tree", you still "saw a tree". Your usage seems contrived.

<comment><USER11> Hmm. I see your point, that it does seem like I was contriving to use the term "hack" in a situation that might lend it to a (non-nefarious) precursor of the "hacking" term in the topic at hand. But in this case it was actually unintentional, and what I had in my head was more of "hacking things to pieces" as a boy who's found his way into his grandfather's shed is likely to do.

</comment></comment></comment></comment></comment><comment><USER13> Both meanings can be expressed using a phrasal verb. To "hack into" something has the blackhat meaning, whereas to "hack at" or "hack up" something has the whitehat meaning. But to "hack" something, without the particle, only sounds right in the blackhat sense, e.g. "the hack the NSA" or "the hack a website". So I guess the noun "hacker" has the default sense someone who hacks into things/places.

</comment><comment><USER14> In 80s California, the word _hacker_ was very often "solving problems that are technically hard, doing it fast or otherwise in an exceptional way, and no concerns about legality" .. please recall that obvious crime like thieving, is only one end of lots of other possibilities, such as disregarding egregious and/or exaggerated legal claims by profit-oriented entities, copy protection, right to alter a consumer product, right to discuss publicly, etc

<comment><USER15> Yes, I very much agree with your assessment of the word Hacker in that place, around that time, I was there from '64-'92.

Previous to the negative connotations of the now common usage regarding Hacking computers, I took my first High School electronics class in 1969 in Sunnyvale, the word Hacker was already in use then.

Upon reflection though, it may be the word was used in the Ham Radio Community first, because my instructor, Robert Thorson, was also a Ham Radio Operator, and quite a cool cat.

As an arcane aside, my great Uncle, who like many of his generation (B. 1895), was a Maker, and built things in his home workshop (yes, he had a ubiquitous Shop Smith Multi-Tool and unlike most, he used the crap out of it).

When I was a child, about 1959 or '60, I asked him where he got a pull toy that he let me play with, and he told me it was "just something I hacked together out of scrap".

So he then had to explain to me what that meant, and he said it had to do with making things out of other things, and it often involved a hacksaw.

I was so excited about learning that word (hacksaws are cool to 6 years olds!) that I ran inside my Aunts house and told my parents.

It influenced me for life, and I've been hacking things together for decades now, just not computer code.

I was saddened that the "popular press" poisoned the word, it was very descriptive for what it was.</comment></comment>


Ask HN: Cloud Content Scheduling Software - <AUTHOR>

I am in dire need of some sort of scheduling software to keep track of what clients we need to post what piece of content for.
For instance Jacks Tshirt Co. needs 1 blog post 2x per week. Janes Jeans needs minimum of 1 blog post every day. Hope I explained that correctly.
We are a web dev. agency but do some blogging management. Right now we are using a paper calendar but it just isn't working obviously because we need to see the calendar from multiple locations.
The other problem is I don't know exactly what I need. I also figured there were a ton of Show HN products that came close to this. Willing to pay for software.
Please help! <comment><USER2> The product you are looking for is "editorial calendar" or "content calendar."

If you aren't truly a marketing agency, then it may be better to augment your existing project management solution (like basecamp) to track this with calendars/projects for each customer with recurring tasks. This will provide great visibility and alerting.

<comment><AUTHOR> Thank you for this, knowing what to search for will definitely help. Editorial calendar has opened up a ton of more options so I appreciate that nudge in the right direction.

</comment></comment><comment><USER3> Our product Camayak ([http://www.camayak.com](http://www.camayak.com)) is a content production management system. We have a number of Content Production agencies as customers.

Camayak provides assignment creation with submission and publishing deadlines, and tracks the assignment through your custom editorial workflow.

We provide an editorial calendar which shows assignments by their deadlines, current status, etc.

There are pitches, comments, activity feeds, various notification streams, multiple content desks per account, customizable workflows, and a ton of other features.

Camayak can publish directly to WordPress, and any other delivery CMS or service through our content API. We support multiple delivery platforms per account and a single assignment can publish to multiple platforms at the same time.

Feel free to shoot me an email at email@example.com if you have any questions!

<comment><AUTHOR> thank you for this, this looks like an excellent option. It might be a tad too much for what we need, we are looking for something really simple. Either a list or a calendar, something like that.

</comment></comment><comment><USER4> Not saying it is the ideal solution, but even as an interim solution until you find the right software, you could use a shared Google Calendar and setup pre scheduled reminders for you and your team. That way 2 days ahead each month for each client (or whatever) you get your reminder.

Outside of that, you could try Basecamp to manage your projects and use the To-Do list as a reminder system to send your team the reminder to do the blog post etc, and then they can mark the task complete in Basecamp once it is done.

Just some ideas as I am not sure of any specific software built for your need.

<comment><AUTHOR> This is actually and probably the best idea, Google Calendar which I totally forgot about. As long as we are able to share that, it might work for sure. The reminder thing might be hard because we have so many clients so it might get unruly.

</comment></comment><comment><USER5> We @ iKnode support scheduling. Not sure if it fits your needs completely, but write me at firstname.lastname@example.com and I'll help you through it.

[http://iknode.com](http://iknode.com)

<comment><AUTHOR> Thank you - ultimately this might be a great solution. This would involve us developing something from the ground up, no?

<comment><USER5> Not really from the ground up, but you would have to build the logic you need to execute by the scheduler.

Integration wise we have built code to integrate with WordPress, Twitter and Facebook. I can send you the code so you can use it in iKnode.

We created a tool that we use to push news to social media outlets so we have done this before.</comment></comment></comment>


Most of the time, innovators don't move fast and break things - <AUTHOR> https://aeon.co/essays/most-of-the-time-innovators-don-t-move-fast-and-break-things <comment><USER2> Good article.

I liked the example of the standardized bolt at the hardware store, that the standard itself should be counted as a type of technology. It gets more interesting when you consider the markets that must have existed when the standard was being made. Some push for the standard (often the weaker players). Many of the stronger might actively fight it, making specifically non-compliant parts as a means of sabotage.</comment>


Obama: 'Nobody is listening to your telephone calls' - <AUTHOR> http://usnews.nbcnews.com/_news/2013/06/07/18824941-obama-nobody-is-listening-to-your-telephone-calls

<comment><AUTHOR> You can watch more from his talk in San Jose at: [http://online.wsj.com/article/SB1000142412788732384480457853...](http://online.wsj.com/article/SB10001424127887323844804578531343379996824.html)

</comment><comment><USER2> Still bullshitting. Was probably advised make sure to use phrase "nobody is listening" there is a technical reason for that to be correct as computers are technically not a person.

</comment><comment><USER3> Yes, and according to James Clapper (Director of National Intelligence) and Keith Alexander (NSA Director) the NSA was not collecting data on U.S. citizens, either.

</comment><comment><USER4> He is right, for now they are just recording them.

</comment><comment><USER5> The program disclosed recently collected phone metadata, not call contents.</comment>


Ask HN: More types of flagging?  - <AUTHOR> Right now to flag something is to recommend that it be killed. I'm thinking of adding additional types of flags that are more specific, and less draconian.  The goal is to create things between a flag and a downvote, or maybe even to replace downvotes in some cases.  The two most obvious options are to allow
comments to be flagged as uncivil, and frivolous.  The numbers of these flags (but not who issued them) would be displayed to
whoever posted the comment in question.  So this would be a
way to tell someone to stop being a jerk, or posting dumb stuff, without having to write a comment to say so.<p>Any opinions about the types of flags there should be, and how they should work? <comment><USER2> The only oddity for a feature like that is that it's a bit like "judging" their comment.

I don't know how to explain it, but I'd almost rather the flag options be worded as "Sorry, this comment seems: uncivil" or "Sorry, this comment seems: off-topic" to lighten it a bit. If they were a friend in real life, I'd take them aside and say "hey man, that comment was great, but you might want to soften the tone. It kind of came across as rude."

Downvotes end up being seen as judgments of your ideas, and I would love to be able to provide better feedback. This would be great if this could somehow give the user a nudge that they wouldn't feel defensive about.

It may seem like a minor point, but I feel a little guidance would go a long way in helping users get the sort of social cues they already get in a real- life conversation.

Edit: Instead of calling it out as flagging, I'd be okay with a downvote system that simply/optionally let you specify a reason to provide (with 3-4 common nicely-worded options). I don't care about upvote reasons at all.

<comment><AUTHOR> What if the incivility flag actually included a message, so you could literally say what you're suggesting? What if it was, in effect, an anonymous comment that had no reply link and was only visible to the submitter of the parent comment?

<comment><USER3> I don't mind having the option to click one of a small number of specific tiny phrases describing my downvote: "spam", "offtopic", "bad title", "dupe". But free-form responses? I want to subtly (or unsubtly) correct people, not start up a relationship with them. Indeed, given that a lot of bad posts are made by trolls, a relationship longer than one mouse click is the one thing you _don't_ want to start.

I don't want to waste valuable time figuring out exactly how sure I am that a particular title is bad, or how polite I should be, or whether or not I should take advantage of this high-bandwidth feedback mechanism to start some kind of conversation.

Learn the design lesson of Twitter: More degrees of freedom doesn't necessarily help.

<comment><USER4> I think free-form response might be a bad idea as well. One of the main problems is people being mean-spirited - now we're going to give these same people the option to anonymously write whatever they want to someone, without even the (modest) fear of being down-voted for their comment?

I think this is a GREAT idea if it uses pre-selected phrases to convey specific / useful info to the author.

</comment></comment></comment></comment><comment><USER5> Replacing downvotes with a flagging system or similar might be a good idea: I've been noticing that people tend to downvote other users not because their comments are "uncivil" or "frivolous", but because they express an opinion different from theirs.

I've seen many perfectly-civilized comments being downvoted, presumably, because they are controversial, though I have seen others that deserve downvotes because of their nature.

The way I see it, replacing downvotes with a comment flagging system would probably reduce the amount rude comments because they'd probably be killed soon enough. However, it eliminates the penalty of being rude (a drop in karma), and some visible way of penalization must be put in place for it to be effective in deterring users from being rude. A work around might be that for every killed comment (due to numerous flags) a user gets -5 or -10 karma.

Things would behave differently with posts, but these are just my first thoughts (when it comes to commenting).

<comment><USER6> _I've been noticing that people tend to downvote other users not because their comments are "uncivil" or "frivolous", but because they express an opinion different from theirs._

I bookmarked this HN comment

<http://news.ycombinator.com/item?id=117171>

a while ago, because it expressed the view of pg in an earlier era of HN that "it's ok to use the up and down arrows to express agreement. Obviously the uparrows aren't only for applauding politeness, so it seems reasonable that the downarrows aren't only for booing rudeness."

But it's interesting to see pg opening up today's discussion of new, more nuanced, flags, and that would change the core meaning of a downvote. I'm all for learning a new system of flagging and voting if that helps encourage a thoughtful community.

<comment><AUTHOR> I sometimes downvote things that seem mistaken. I think most users do. This didn't use to be a problem when there were only a couple thousand users who often knew one another personally. The problem is voting to agree/disagree combined with a larger and probably less thoughtful audience. That's when it starts to feel like a mob.

<comment><USER5> Using downvotes as a way of expressing disagreement is, I believe, unfair to a commenter if he/she is courteously stating his/her point of view or idea, mainly because downvoting inflicts a penalty on the user's karma - which many users, I surmise, care about.

I don't think users should be penalized for siding with one aspect of an discussion just because other users disagree and proceed to downvote based on their own personal opinion. It's not even the best way of determining majority (which I believe is, partly, the purpose of the system), since not every user makes use of the feature.

Some sort of hybrid might be the most comprehensive solution. Probably something along the lines of upvotes raise karma (compensating good input), downvotes don't affect karma (their purpose becomes, then, to provide insight on the general opinion of a subject), and flags affect karma negatively for rude or uncivilized comments.

<comment><AUTHOR> Strictly speaking a vote does affect someone's karma. But it doesn't cause their karma to be net decreased as a result of posting a comment unless you downvote the comment below 1, which most people don't do lightly. I think of the up and downvoting as a collaboration to determine how much _additional_ karma someone should get for posting a new comment.

<comment><USER7> _which most people don't do lightly_

Perhaps this is no longer true?

Regardless, the fact the downvoting is just as easy as upvoting (and has no undo) strikes me as odd.

I suggest downvoting cost the voter something, not just the votee. 1:1 seems simple enough. It would also give greater pause to newer users than veterans. However, an undo (perhaps timed like comment editing) would be more desirable in this case.

<comment><USER8> I agree, it should cost the voter 1:1 to downvote a comment, but only one that's already below 0.

</comment></comment></comment></comment></comment></comment></comment><comment><USER9> How about having tags, and then letting the community dynamically decide which ones are standard? I think this would work because the community is fairly observant of the rules. Plus you could shape behavior by suggesting certain tags when the user wants to add a new tag to a submission. On top of covering the use cases you detail, it would:

1) Help with search if it is ever implemented

2) Allow users to quickly disseminate the subject of articles on the front page without ever opening them (especially helpful for ambiguous titles)

3) Maybe in the future allow users to subscribe/unsubscribe to certain tags if the front page starts getting too busy

<comment><AUTHOR> Hmm, interesting. The problem though is that these tags are supposed to be private, so there would be no force to make customs converge.

<comment><USER10> Have good tags (common, not blacklisted, thresholded) not be private and pre- seed list of tags. Have a karma threshold to see tags? Would talking about an article's tag be verboten in the article's comment, or just deserve a 'meta' tag? I could see an article's comments being a force for custom convergence.

</comment></comment></comment><comment><USER11> The number one kind of alternate flag I'd like is 'review headline' rather than 'kill'. There are many stories that would be OK, _if_ they didn't have a misleading headline.

<comment><USER12> Or "review link" for that matter. It isn't all that uncommon to have an interesting story that links to a page that is just repeating content from a better and more complete source.

<comment><USER13> The solution is just to flag these and post the better link since you can't change the link after the fact which makes sense. I'm sometimes guilty of this though sometimes I do think there is editorial content which adds to the original story.

<comment><USER11> Moderators can update the headline and link; fixing in place can be better than another submission on the same topic, because it aggregates upvotes and conversation in a single place.

<comment><USER13> Given how rarely it happens (though it does happen) and the volume of links, I suspect there just aren't enough moderators. It might therefore be more ideal to give the community the tools to enforce.

<comment><USER14> Okay, so why not have something that submits "better link and headline" and that can be voted up? Pass a threshold and the original headline and link get swapped out.

</comment></comment></comment></comment></comment></comment><comment><USER15> I think you should add this as an option, and only for the karmarific users. This way, less than 10% of the site would actually use this, and since these are likely to be the oldest and community invested users, the flagging would always lag behind the movement of the site userbase, leading to a stabilizing force in community feel.

<comment><USER16> This concept needs more exploration. The delay/lag seems very promising on cursorary inspection.

</comment></comment><comment><USER17> How about letting those with big karma attach tags to their downvote? Others could agree by downvoting the tag. This allows a slightly more organic approach where the best tags emerge over time. Maybe anyone over (lower) karma can propose a tag but the tag only applies if a few agree on it.

</comment><comment><USER18> I prefer to use my brain for absorbing news here, not for mastering popularity games. With more ranking options, HN would start to look like work.

</comment><comment><USER11> For handling individual comments, I think the better system would be to have two-dimensional comment rating. One dimension, upvote/downvote, is "valuable contribution/not-valuable contribution". A second dimension, agree/disagree, allows expressing support or dissent without the connotation of reward/censure that upvote/downvote has.

Agree/disagree would only be tallied inline at the comment for reference -- there's no persistent reward for simply saying things many people agree with, nor penalty for saying unpopular things.

Then, it's OK for downvotes to serve the role this "more flags" idea does. Downvotes then unambiguously mean: uncivil; frivolous; factually wrong; repetitive; unwanted. (And, moderators could focus on highly-downvoted comments as much as 'flags'.)

(Previous comment, with more backlinks, on this idea: <http://news.ycombinator.com/item?id=721853> )

Another related idea: never show a comment at 'maximum negative' score to a person who hasn't yet voted. Show it as '-3' instead (no matter how many net downvotes it's received). Then, there's always a motivation for adding your own independent judgement. (Once they vote, the true-but-truncated-to-range score can be shown.)

The poster could see the 'true' score, so they know if they've really touched a nerve.

<comment><USER19> I dislike agree/disagree voting overall. We all dislike groupthink, and we all appreciate constructive informative posts, and we all like differing viewpoints. So why have a moderation system that records or values agreement/disagreement at all?

I think gojomo is 100% right that people should be rewarded for constructive informative civil contributions, rather than because the moderator happens to agree with you.

An agree/disagree arrow could be left simply as a honeypot, so that people don't use the other descriptive ratings as a substitute for agreement/disagreement.

<comment><USER11> My theory is that a separate agree/disagree fights groupthink because it moves popularity/agreement _out_ of the reward/penalty dimension.

People want to register their opinion -- and sometimes that opinion is just yes/no. It's good for a site to offer a low-effort, low-visual-pollution way to capture that -- single click votes/favorites/likes work well for that. (It's better than lots of 'me too' or 'I disagree' or 'my thoughts exactly' micro-comments.)

But, if those signals are mixed with a sense of righteousness/transgression -- which is inevitable with leaderboards and display rules whereby 'high-rated' comments move up, and 'low-rated' comments fade from view -- then people may withhold unpopular but important viewpoints, or be tempted to race to be the first to post a banal but crowd-pleasing viewpoint.

My theory could be wrong. Some people might care so much about agreement that they obsess over that score, and knowing exactly how many people agree/disagree would then cause even more synchronization-of-publicly- expressed-views. But I think this crowd is sophisticated enough to draw (and make use of) the distinction between a _bad_ comment and a _controversial minority viewpoint_.

And I would like to be in a place where someone who advances a _controversial minority viewpoint_ , but does so in an articulate, thought-provoking, civil manner, could be on the leaderboard even if every individual post of theirs has more net disagreement than agreement.

(Which brings up a related point: it would be interesting to report an agree/disagree axis as two totals, not just the net difference. '101 agree, 100 disagree' is more meaningful than a net score of '+1'. A sparkline bar graph or tick-series could work really well for this, though it might not need to appear on every comment, or appear until requested.)

<comment><USER19> Ranking +101/-100 comments higher than +1/-0 comments is something that they implemented at reddit a couple months ago. They use an algorithm called a "Wilson Score confidence interval for a Bernoulli parameter."

Here are some relevant links:

[http://blog.reddit.com/2009/10/reddits-new-comment- sorting-s...](http://blog.reddit.com/2009/10/reddits-new-comment-sorting- system.html)

[http://www.evanmiller.org/how-not-to-sort-by-average- rating....](http://www.evanmiller.org/how-not-to-sort-by-average-rating.html)

[http://blog.linkibol.com/post/How-to-Build-a-Popularity- Algo...](http://blog.linkibol.com/post/How-to-Build-a-Popularity-Algorithm- You-can-be-Proud-of.aspx)

Digg also has a way to rank comments by "controversy", so the comments that are most contested by up and down votes are placed at the top: <http://about.digg.com/blog/new-comments-system-released>

</comment></comment></comment></comment><comment><USER20> If you're going to have flagging options on comments for uncivil or frivolous comments, you should probably raise the moderation floor to -1 or 0, because it doesn't seem fair to let people be downvoted below that point for disagreement alone.

<comment><AUTHOR> Yes, that is a related problem. The floor used to be -8, but as the number of users increased (and maybe the median user got meaner) there started to be lots of comparatively earnest posts that got downvoted to -8. So I raised the cutoff to -4, but that still seems unsatisfactory. Voting still feels like it's being done by a mob.

I tried not displaying points on comments a while ago, in order to solve this problem, but users complained that this made HN harder to read because they couldn't pick out the good comments. I only gave it two days' trial though. Maybe I should have given it more time. Or maybe there is some other solution.

Anyone have any ideas?

<comment><USER21> The feedback of the voting system is still essential, it's just that you can't really trust the voters anymore. It's gotten ridiculous to watch the votes swing from extreme to extreme on one comment based on the follow-up discussion where people openly advocate for more or less points for the OP.

The only way to fix this I can see is either some form of meta-moderation where you hold people accountable for their votes (ala slashdot), or the system I'd personally rather see, where rather than a full-democracy the users pick whose votes they see on comments. I'd have my pool of 20-30 users whom I trust and I could see their scores vs the throng's.

Just as you hand-picked some users as moderators who you feel represent what you want HN to be, let us pick who we want to serve as our content filters.

<comment><AUTHOR> I agree with you about the voting swings. I think that, more than the extreme numbers, may be why voting is starting to seem such a mob thing lately.

It's a very interesting idea to have users see only the votes of other users they choose. One problem though is that it could easily lead to leaking who voted for what, which would make a lot of users (including me) uncomfortable. E.g. your pool is your 7 coworkers, and user x. One day you know all your coworkers are on a plane, and that you're therefore seeing user x's votes. Another problem is that it could be a lot more expensive to generate pages.

<comment><USER22> You could fix the deanonymization problem this way: when you pick a trusted user, you can see not only his votes, but all his trusted users' votes, too. Maybe weigh the votes differently depending on how "distant" they are from you.

<comment><USER21> This is a great idea.

My original thinking was to suggest a combination of enforcing a minimum number of trusted users and then reporting a weighted average of your trusted users + the mass' rating but your solution is conceptually nicer since it adds the same noise to the vote but while extending the idea of valuing a particular user's judgement.

The big technical issue will be computing these "trusted ratings" for every comment. The trust graph could be done asynchronously so that wouldn't be an issue.

</comment></comment></comment></comment></comment></comment><comment><USER23> The comment flags is a great idea - there's a good chance that it would cut down on "why am I being downvoted" types of posts, which would in turn reduce noise.

Are you thinking of adding more flags to stories too?

<comment><AUTHOR> I should probably add a way to flag a story specifically as a dupe, and maybe also for having had the title reworded too egregiously. Those are common problems people currently have to use comments for now. Can anyone think of others?

<comment><USER24> Flag as meta? A lot of people don't care for the meta-discussion.

<comment><USER25> I would really like to see this. I'm inclined say it shouldn't have any relation to karma or killing, because there's nothing _inherently_ wrong with meta-discussion, but the front page would be infinitely more pleasant to me if I could see "100 comments (90 meta)", instead of guessing if there were _really_ 100 things to say about the article or if after the only 10 someone just hit a nerve with a downvote or a pointless "this isn't HN" snark and started something big and ugly.

I'd go so far as including a "meta" checkbox next to the reply button, defaulting to the parent's value, which it would be considered polite to set truthfully, but maybe that's just me.

</comment></comment></comment></comment><comment><USER26> I think this is a good idea and long overdue.

Ideally the system will train new users. It has been difficult in the past for me to figure out exactly what downvotes meant.

Over the last few months I'm seeing a rise in ad-hominem attacks. No matter what the subject of the article, technology, startups, history, whatever -- it seems like within minutes somebody has called the author's reputation or the news source into question. Sometimes the information is pertinent, but most always it's just an effort to look superior and/or take easy shots at people. If I remember correctly, we've even had posts about "check out my startup" where the founders were trashed, not to mention the nastiness with Dennis a while back.

I don't think downvoting is sinking in with the people who are doing this. As much as most people don't understand ad-hominem attacks, it'd still be good to have that flag, because it's the same old discussion every time.

EDIT: I meant Dustin, not Dennis. Sorry about that Dustin.

<comment><AUTHOR> Yeah, I've noticed a decline in the tone of comments too. The site seems to be getting nastier. I occasionally find myself thinking lately that I just don't want to be here anymore. But I am determined not to let HN go down without a fight.

If anyone has any more general suggestions for solving the nastiness problem, besides these new types of flag, I'm all ears.

<comment><USER27> _I occasionally find myself thinking lately that I just don't want to be here anymore._

I had no idea. AFAIC, this is the best site on the internet. It is the home many of us have been seeking for years. I talk about things here that I have no one to talk to in person and I imagine there are many others like me.

I have also noticed that things run in cycles and we seem to be in a bit of a trough lately. My usual response has been either to submit lots of stuff I really like, or just quit and come back the next day. That often works wonders.

Whether we like it or not, it is the nature of this site for people to show others how smart they are. That's just the way we are and this is the perfect place to "show off" (for a lot of us, it may be the only place). Many of us never really fit in, didn't play sports, weren't "cool", and didn't get noticed by the ladies as much as we would have liked. But we had passion for other things, exactly the things discussed here at hn.

So the nerdosterone runs heavy at times. Accompanied unfortunately by occasional meanness.

 _But I am determined not to let HN go down without a fight._

You won't need a fight. Just a little of what we do best: some good old fashioned problem solving.

A couple of ideas:

\- Stop the meanness before it hits the data base with a front end "meanness" filter. When you click "reply", scan the text for cuss words and frequent phrases and give a warning, "Your comment has triggered the meanness filter because of the phrase "xxx". Please take this opportunity to reword it. Say what you want, but please be civil." They could modify it or submit the original anyway, but have to wait a "cooloff" x seconds or minutes. This could easily be gamed, but that's not the point. It would actively establish the expected tone, especially for new people.

\- Weigh votes by karma. The top 100 get 3 points per vote. The next 1000 get 2 points per votes. Everyone else gets the usual one point per vote. The idea is that those who have the most invested in the community would be more able to slow down out-of-control group think.

<comment><AUTHOR> Unfortunately I'm pretty sure mean spiritedness is too semantic to catch with a filter. Dumb jerks are not the problem. The type who curse a lot get downmodded into oblivion and eventually banned. The problem is smart jerks. And unfortunately these are not uncommon in our world.

<comment><USER28> Maybe a 'jerk' flag? Something that wouldn't effect individual comments, but would aggregate. A user with a high number of jerk flags could be called into scrutiny and possibly be dealt with if he was abusing the site.

Another thought... What if we could filter out users who's comment we didn't want to read or we felt were offensive or a waste of time? This would reduce the noise for indivudual users without anything so draconian or subjective as flagging plus moderation.

Another less-pleasent thought is more aggressive banning policies. I remember being part of older BB-esque forums that managed to maintain strong communities by enlisting members as moderators and enforcing strict and clearly promulgated discussion policies. It worked because it was transparent and because the enforcers were active members of the community. They had reputations _and_ interest in keeping the quality of discussions high and are bound by the same rules that apply to everyone else. If need be, their rullings could be appealed if they were abusing their authority. I always felt that that system worked.

</comment></comment></comment></comment></comment><comment><USER29> I hadn't noticed the site getting nastier (and since everyone seems to agree that it has, I'm now regretting a recent nasty comment!)

Regarding flags on comments (not stories), I suspect it might have more of an impact to add just one new type rather than several at once. That would send a clear message about what we're all being asked to focus on. Along those lines, I'd say "uncivil" is more important than "frivolous". In my observation, over the last few months, HN users have gotten pretty good at using downvotes to regulate the merely frivolous.

If someone's comment has been flagged as uncivil it might be helpful to inform them of this with a call to action such as "Please be more polite" and a link to a fuller explanation of what they are being asked to do. I'm quite sure that many (though not all) people just don't realize how their comment might come across.

Perhaps comments flagged as uncivil could remain editable for a longer period. It's true that this would distort the history of conversations a bit, but maybe in a good way. If I find out that I made a comment that people found rude, I'd like the option (after my two editable hours have expired) of editing my comment for civility and having it marked as such. After all, if one is found "guilty" by a jury of one's peers, it's good to have a way to make amends in addition to the negative feedback. Besides, if people started noticing comments that had been "edited for civility", social proof might nudge their own behavior in that direction.

</comment><comment><USER30> > Yeah, I've noticed a decline in the tone of comments too. The site seems to > be getting nastier. I occasionally find myself thinking lately that I just > don't want to be here anymore.

Could the community help monitor the general tone of the site? It seems like keeping things civil is a hard task for you and the top users.

Could there be an automatic survey sent out each week or month to a random sample set of users to measure their overall satisfaction with the site and tone? It could even be just one question ("How would you rate the discourse on HN lately? Highly Civil, Civil, or Uncivil").

That way there would be a good objective gauge to see trends in tone and to monitor the impact of any changes like flags.

As the site continues to grow it gets more challenging to preserve the level of discussion. Having some long term measure of that might be helpful and make it easier to know when a new feature needs to be implemented.

</comment><comment><USER31> For the love of everything that is good, please either block techcrunch (very unlikely to happen) or put a hard cap on how many stories can be submitted within 24 hours from one domain (I suggest 2).

Sometimes reading HN feels like reading TC rss feed. If I want to read every single story from TC I would have subscribed to their RSS feed.

<comment><USER23> TC is extremely relevant to start-ups. Blocking it would be pretty ... silly.

<comment><USER31> I am not saying all of TC is irrelevant. We have our share of irrelevant stuff from other sites too. But on average we get 3-4 stories from TC posted here on HN, stuff like twitter going down (every freaking time, how often does it happen?), facebook going down for 5 minutes, rackspace going down (in itself is relevant news, but from TC the news is the internet went down because TC is hosted on rackspace).

If this much crap was posted from any other website, they would have been blocked without any debate whatsoever. There is a reason people subscribe to rss feed, why would I come to HN to see one blog hogging the whole site?

Which is why I suggest either a hard cap on number of subs per domain per day or give users the option to block out certain domain so that they don't see it in their HN.

I don't think it is an unreasonable or very difficult request to implement.

</comment></comment></comment><comment><USER32> This idea didn't work for Slashdot at all.

<comment><AUTHOR> What went wrong for them?

<comment><USER33> I think what went wrong was that they publicly displayed the score for whichever axis was most significant. Here, the only score that is displayed to all is the only positive one we have: "this comment adds to the discussion."

The reason I think this is what went wrong for them was that they had flags like "funny", for things that obviously don't add to the discussion, and too many choices for the other positive votes. IMHO, having one meaning for upvote and a handful of negative flags would be ideal if the flags were only visible to the submitter (to educate noobs/reprimand those who should know better) and whatever process is responsible for threshing the chaff.

<comment><USER32> This is a good point. "Uncivil" is more valuable than "Offtopic" and "Troll".

<comment><USER34> The Uncivil tag should prove a fun exercise in reading tone and sarcasm from text. Someone needs to invent Tone Markup Language--and not just emoticons.

</comment></comment></comment></comment></comment><comment><USER35> I somehow get the sense that the quality of the discussion has correlates with how long an article lives on the front page. A year or two ago, articles could hang on the front page for a day or two. Now, the volume of new articles pushes interesting discussions like this one off the front page within hours. I pretty rarely visit page 2.

I used to spend 30-35 minutes writing and editing a comment. It doesn't seem worth it any more when the article is going to drop off the front page in 8 - 12 hours. When I thought people might read it for a day or to, it felt like it was worth the investment.

It seems like the current speed of article churn has increased the pace of HN, and has inadvertently encouraged shorter, shoot from the hip type comments rather than encourage slower more thoughtful discussion.

</comment><comment><USER36> One bug I did notice (slightly off topic but this seems an appropriate place) is that people can work around the cool off delay for replying by clicking the "link" button on a comment. This has given me a textbox and let me reply to the comment way before the cool off.

</comment><comment><USER37> I would favor the addition of a rude/inappropriate/trollish vote that would be anonymous in addition to the current upvote/downvote. Perhaps those are three buttons that are downvotes in that category.

This would add a useful dimension to the feedback.

I find myself using the up/down arrow largely for "contributes to the discussion". There is an element of "I agree", but I frequently click up on a comment that I disagree with because it is well-reasoned or brings up a thoughtful angle that is new.

To avoid the mob clicking of these new buttons, they could be shown only to the author of the comment, or very high karma individuals.

</comment><comment><USER38> I'm likely to be of the lowest caste here but I think a single flag works for me. I tried to think of others and the only two logical ones I could think of were "Spam" and "Duplicate" for posts. I support you could flag comments but again I see two options: "Spam" or "Offensive".

In any case - that is to say regardless of the reason it was flagged - I think it should be killed. Therefore one "flag" link and that's it.

</comment><comment><USER39> How about allowing the primary post to have extra settings that affects what can/can't happen: Example: Min karma to post: 1000, Min Civility to post: -100 points.

This way if the community sees a mob problem, the community can tweak the settings accordingly. I'm sure you can come up a good algorithm to maintain a moving set of defaults.

Also, maybe allow readers to filter posts based upon their threshold settings.

<comment><USER38> I'm downmodding now because I think this is a bad contribution but rather because, since this isn't a poll per se, I think that upmodding/downmodding is sort of how we are voting. So don't take it the wrong way :)

<comment><USER39> No worries. I'm partial on it myself. I don't like the idea of excluding people, however I was trying to think of a way to have people care about the quality of their contributions. ie. give the community incentive to be nice :) It's certainly not that easy.

</comment></comment></comment><comment><USER40> Maybe this is the place to ask why, relatively frequently, there are comments which seem perfectly reasonable and inoffensive, that are dead.

<comment><USER41> If it looks like noise, it deserves to go. In other words, if, after reading a comment, I feel that my time was wasted, I should downvote the comment.

</comment></comment><comment><USER42> Should down voting some one also negatively affect the down voter's karma? It will help restrict the number of down votes anyone will give..

<comment><USER6> Aren't many downvotes efforts to improve the community, and thus worthy of a karma INCREASE, if anything?

</comment></comment><comment><USER43> I would like to be able flag a story as not a primary source/not the best source and give an alternative. Not sure if this will help the dicussions, but I think that a discussion tends to only get as good relative to the story. Often times the most helpful comments are ones which give alternative sources, so it might be good to think about supporting that.

</comment><comment><USER44> If public meta-commenting is the issue, and assuming the comment isn't an outright troll, it'd be nice to know who took issue with it, and be able to ask why privately. Hence, civil discourse as though we're face-to-face. Anonymous one-word stamps are no more sensitive than unexplained downvotes, and will give rise to the exact same questions.

</comment><comment><USER45> Have you considered downvotes for submissions? Maybe with a Karma threshold, so that it'll only be used to get irrelevant submissions off the front page.

<comment><AUTHOR> Flagging seems better for that, because if they're really offtopic they should be killed, not just have fewer points.

<comment><USER23> I guess the trade-off there is between a purely binary action (kill / don't kill) which depends on a moderator's opinion, versus a softer, more gradual action of slowly pushing a story down and letting more worthy stories rise to the top...

</comment></comment></comment><comment><USER46> Gamedev.net has one of the most civil and informative forums on the internet. At some point they had a pretty mean spirited community too, and the owners pulled the site into one of the best sites on the internet. I spent a lot of time on these forums, and I think there are three main things that contribute to very high quality.

\- _Non-threaded comments_. I know this has been discussed to death, but I think the downside of threaded comments (fragmentation of the discussion and incentive for witty one-liners) far outweighs the benefit (having separate unrelated conversations). A non-threaded approach gives huge incentive to bring the community together into a single coherent conversation, gives the reader a great sense of a timeline (which gives further incentive to maintain an intelligent discussion), and discourages fragmentation of the discussion to a point where it isn't interesting to anyone anymore. I know this is a big change, but I would strongly encourage at least giving it a serious consideration - it _can_ make a huge difference if done right.

\- _Active topics_ \- on sites like Hacker News and Reddit it's very easy to lose track of interesting discussions that are going on because top threads are tightly coupled with the top articles. We can have interesting discussions long after the article has left the front page, and an active topics page would go far towards encouraging intelligent interaction. Basically, every time an article is commented on, this article goes to the top of the list. This way I can see all active discussions at glance (including the ones I participated in), and continue interesting discussions, even though they're not on the front page.

\- _User rating system (not article/comment system)_ \- in real life, if I am usually a very interesting, intelligent person, and one day I suddenly act as a jerk, it can very seriously ruin my reputation. On gamedev people rate _users_ , not comments and articles. So, I can give a user a rating - extremely helpful, helpful, not helpful, jerk. The karma is a combination of ratings for a given user, and the strength of a user's vote is proportional to his karma. So, if someone is a jerk one day, it can affect his karma far more significantly than simply downvoting his comment. In addition, jerks have less affect on the system overall. Rating people's comments never made sense to me - it always ends up signaling agreement or disagreement vs. usefulness. If people rate users instead of comments, this problem goes away always entirely, plus very strongly discourages aggressive behavior.

I think these three things would help immensely to scale the community. These are big changes, but I think they're worth seriously thinking about.

</comment><comment><USER47> How about giving more people moderation access for a short time period, and then aggressively flagging/deleting a whole bunch of articles/comments.</comment>


A Guide to HTTP/2 Server Push - <AUTHOR> https://www.smashingmagazine.com/2017/04/guide-http2-server-push/ <comment><USER2> _> As of now, Nginx doesn't support HTTP/2 server push, and nothing so far in the software's changelog has indicated that support for it has been added. This may change as Nginx's HTTP/2 implementation matures._

Forget Apache or Nginx. Use the H20 server instead: [https://h2o.examp1e.net](https://h2o.examp1e.net)

I've been using it on a production server with a Django app for about a year now, with HTTP/2 push support, and it's been great. It includes advanced feature that knows if a web browser already has pushed content in its cache, so it doesn't resend it. It's architecture seems to offer the best of Nginx's multiprocessing capabilities as well. Configuration is as simple as Nginx as well. (I went from Apache -> Nginx -> H2O)

<comment><USER3> H2O also allows an HTTP/1.1 backend to push by sending links [1] with rel=preload — these links are automatically converted to pushes by H2O. This can be further sped up with early hints [2].

[1] [https://tools.ietf.org/html/rfc5988](https://tools.ietf.org/html/rfc5988) [2] [https://tools.ietf.org/html/draft-ietf-httpbis-early- hints](https://tools.ietf.org/html/draft-ietf-httpbis-early-hints)

</comment></comment><comment><USER4> Couple gripes with HTTP2 ...

1) HTTP2 Server Push is a hobbled protocol. It was designed for serving static assets to desktop browsers for pre-caching. Most of the internet traffic now is moving to mobile apps or rich browser clients. Developers would greatly benefit from a true bi-directional API that could be fully leveraged by event- based or reactive frameworks. The community could even build it's own APIs if the browsers just exposed the DataFrame primitives of HTTP2. But they don't.

2) Open-source proxy servers like NGINX, HAProxy and many key IaaS providers like Cloudflare, Google Cloud do not support full duplex HTTP2 connections (one-side only at best, translated to HTTP1 on the backend). This is 1 year after RFC 7540 was officially released and 5 years after SPDY. Why even bother baking considerations for HTTP2 into your application layer when your edge infrastructure won't let you leverage it anyway.

<comment><USER5> The lack of HTTP/2 on the backend to origin connections is a big sad mystery.

If anything it would greatly increase performance, especially for smaller servers and longer distances, with the multiplexing and stream priority settings alone. Required TLS would also increase security.

<comment><USER6> >The lack of HTTP/2 on the backend to origin connections is a big sad mystery.

Sad, sure, but its not a mystery. As of HTTP/1.1 these proxies already pools TCP/IP connections between the proxy and its origin (the backend server), so it doesn't gain the same connection multiplexing/windowing/cardinality benefits that HTTP/2 to end client gets. This means for many proxy code bases H2 to origin is just a nice to have. Obviously, by prioritizing like that you miss other nice to haves like push.

<comment><USER5> HTTP/1 connections are limited to one request on the connection at a time and head-of-line blocking. HTTP/2 connections will also be pooled but are able to sustain many more concurrent requests because of multiplexing, while also setting certain requests as higher priority. It's a major improvement for high volume services.

The performance and features are why Google's gRPC uses it as the foundation for microservice communications at scale and low-latency.

<comment><USER6> >HTTP/1 connections are limited to one request on the connection at a time and head-of-line blocking.

This is true, however this limitation just increases the size of the connection tool needed for the same concurrency. I'm not saying HTTP/2 isn't better, I'm saying its less better for middleware than end user connection optimization.

<comment><USER7> If you have 100k people who've opened e.g. websocket connections to your backend, I doubt you're going to structure things as a 100k-socket connection pool open to your backend. You've probably either:

A. got that scaled across at least 100 backend servers, even if those servers' CPUs are almost entirely idle; or

B. have chosen a completely different, extremely roundabout architecture involving client async requests with HTTP 202 responses + client polling of a "status of server-side promises" endpoint; or

C. are effectively manually doing what HTTP2 does automatically, by having a "stateful-connection load-balancer server" (e.g. SocksJS) that mediates between long-lived client connections, and short-lived RPC requests with async responses from your backend.

Whereas, with HTTP2, that could very easily be one machine, taking in those 100k nearly-idle connections, and passing them over _one_ TCP socket to _one_ backend.

</comment></comment></comment></comment></comment></comment><comment><USER8> Using `Link: rel=preload` is interesting, but it misses the real opportunity to get the critical resources before the html and window to grow the congestion window early. At best you are in a race condition on the browser's preloader/speculative parser. At worse, you are competing with the html base request with your pushed resources.

The better solution is to push these resources _before_ the HTTP headers and status code from the application framework. The real opportunity is to get the content downloaded early, grow the congestion window ahead of receiving the html, then yielding the socket to the html, and then continue pushing content until the browser starts making it's own http requests. As all things - mileage will vary. Some times this is a large opportunity (eg: User in Australia requesting content from NY; or DR failover). Other times, push opportunity might be negligible (eg: cached html page) On high RTT networks, this does save you the full round trip for the request.

For more details on this check out my talk at Velocity Amsterdam: [https://youtu.be/GjWD1pOkxUk?t=1534](https://youtu.be/GjWD1pOkxUk?t=1534) [https://speakerdeck.com/colinbendell/promise-of- push](https://speakerdeck.com/colinbendell/promise-of-push)

I also built a tool (on top of webpagetest.org) that helps you evaluate the potential for push here: [https://shouldipush.com](https://shouldipush.com)

</comment><comment><USER9> So wait, if the server pushes assets before the client request it, does that mean the server pushes them regardless of the cache status on the client?

If so that should really be limited to small assets to be beneficial

<comment><USER10> As I understand it, the client has an opportunity to proactively cancel pushes of assets it already has cached.

The server will send a "push promise" which basically says "I'm going to send this file to you", and then the client can come back and say "don't bother, I already have it". And this all happens in parallel with the download of other assets (like the main page), so it doesn't really slow anything down.

Here's an article I read which goes into how server push works in a lot more detail: [https://hpbn.co/http2/#server-push](https://hpbn.co/http2/#server- push)

<comment><USER11> Doesn't that require more round trips than just having the client ask for it?

<comment><USER10> No, even in the worst case it's exactly the same number of round trips.

Without server push:

1\. Client requests main page ->

2\. Client receives main page <-

3\. Client requests subresources ->

4\. Client receives subresources <-

With server push:

1\. Client requests main page ->

2\. Client receives push promises and main page <-

3\. Client cancels promises it doesn't need ->

4\. Client receives subresources <-

The only difference is that with server push, steps 2, 3 and 4 happen in parallel, and step 3 can be omitted entirely in the event that the client doesn't need to cancel any pushes.

<comment><USER11> Or, what may be a more common case, depending on caching method:

Without server push:

1\. Client requests main page ->

2\. Client receives main page <-

With server push:

1\. Client requests main page ->

2\. Client receives push promises and main page <-

3\. Client cancels promises it doesn't need ->

<comment><USER10> Ah, fair point. Now I see what you were trying to say.

Assuming the server has no way of determining which assets the client has cached (which depending on implementation may not be the case) you're of course correct. However, after step 2 the page has already fully loaded in both cases, so step 3 doesn't really slow anything down.

</comment></comment></comment></comment></comment></comment><comment><USER12> I was surprised when I read that Server Push wasn't intended for event sourcing. Anyone know why?

These days people use Server Sent Events and WebSockets for this: The client requests data from the server (possibly through a "subscription" type of request), and the server keeps sending messages (e.g. chat messages) until the client cancels the request or closes the connection.

Not having looked deeply into Server Push, it sounds ideal for this sort of thing, and then we could do away with both SSE and WebSockets, neither of which are very HTTP-y.

<comment><USER13> SSE is just a long-running connection, so it fits with HTTP/2 pretty well (and HTTP/1 for that matter).

H2 push needs to be linked to an initial response, and I don't think it's acceptable to push resources once the initial response is complete. Also, H2 push is pretty much a request/response pair, so it can be cached, so it doesn't really fit the SSE model.

You're right about websockets though. At some point they'll be replaced with something more H2-like, but it won't be push-based.

<comment><USER14> If the next protocol iteration is something like QUIC, then the WS could just be implemented over QUIC UDP packets.

</comment></comment></comment><comment><USER15> It's true that the _mechanics_ of triggering HTTP/2 Push are done with the Link rel=preload directive (defined by the W3C [1]), the advice to hardcode HTTP headers on outgoing responses that point to file references is simplistic at best -- which shows that this whole thing ( _still_ ) isn't yet thought out too well.

Most of the content of my earlier post on this topic [2] still stands; since then, Caddy has implemented rule-based ways of specifying what to push [3][4] (although not via Google's push manifest [5], despite being asked to). It'd be far more productive if the community coalesced around one clear declarative way of specifying what to push -- Google's push manifest does this well enough -- which could be ingested by server software and applied as needed.

If this were done, the problem space is moved to somehow generating that manifest, which can be done by hand, or scraping resources, or as an output of a more complex tool [6] that knows more about the info-space of the resources.

And of course, keep in mind the advice that Google has prepared as part of the research they've done on deployments of HTTP/2 Push [7].

[1] [https://www.w3.org/TR/preload/#server-push- http-2](https://www.w3.org/TR/preload/#server-push-http-2) [2] [https://news.ycombinator.com/item?id=12722383](https://news.ycombinator.com/item?id=12722383) [3] [https://github.com/mholt/caddy/issues/816](https://github.com/mholt/caddy/issues/816) [4] [https://github.com/mholt/caddy/pull/1215](https://github.com/mholt/caddy/pull/1215) [5] [https://github.com/GoogleChrome/http2-push- manifest](https://github.com/GoogleChrome/http2-push-manifest) [6] [https://github.com/webpack/webpack/issues/1223#issuecomment-...](https://github.com/webpack/webpack/issues/1223#issuecomment-232311846) [7] [https://docs.google.com/document/d/1K0NykTXBbbbTlv60t5MyJvXj...](https://docs.google.com/document/d/1K0NykTXBbbbTlv60t5MyJvXjqKGsCVNYHyLEXIxYMv0)

</comment><comment><USER16> What I'd love in the HTTP protocol is some way to control IPs used by client - eg fail over to different IP if first is unresponsive. Such a small client side change would make back ends much simpler.

<comment><USER17> There's already a system to do so: it's called DNS.

You can check for timeouts using XHR already and if a server doesn't respond then having it send a new IP wouldn't work anyway.

The problem with using DNS that way is the usual 30 second time out. On the other hand lower values than 30 seconds can cause problems for many users with slow or mobile connections.

Honestly I can't think of a reason why the HTTP specifications should contain anything about IP addresses.

</comment></comment><comment><USER18> Looking at the graphs, all of the variations come in at 2-4 seconds, in most cases 10-25% average difference. So it's all slow, but not unbearable; it seems like a bit of a wash.

</comment><comment><USER19> Flashback to the mid-nineties and push media.

[http://www.javaworld.com/article/2077287/marimba-software-- p...](http://www.javaworld.com/article/2077287/marimba-software--pushes-- information-over-internet.html)

<comment><USER20> Literally, nothing like that.</comment></comment>


The Anatomy of Hell: new books on the Nazi concentration camps - <AUTHOR> http://www.nybooks.com/articles/archives/2015/jul/09/concentration-camps-anatomy-hell/

<comment><USER2> I'm always impressed how successful re-branding from "German" to "Nazi" was.

First shift the historical responsibility to some rather abstract "Nazis" and ignore the fact that most of the Jews were Polish citizens, then start encouraging usage of misleading terms ([https://en.wikipedia.org/wiki/%22Polish_death_camp%22_contro...](https://en.wikipedia.org/wiki/%22Polish_death_camp%22_controversy)). Give it one century and people will think the victims were aggressors, and vice versa.

<comment><USER3> As someone who's not familiar with this controversy—I can understand why "Polish death camp" is an undesireable term, but that doesn't seem to be the one that's used here. Are you saying that "Nazi death camp" is an evasive term to which "German death camp" would be preferable? It seems to me (based on knowing some Germans, not any personal experience) that an appreciation of their rôle in, and guilt regarding, the Holocaust is a prominent part of German children's historical education; would replacing 'Nazi' by 'German' really accomplish anything? In addition, I can't help thinking that it might go the other way, encouraging people of other countries (like the US) to think "that was a _German_ action, it could never happen here."

<comment><USER2> Children in Germany can be educated about their own history, but public in most of the world is not.

For whole world "Polish death camp" sounds like it's Polish responsibility. "Nazi crimes" etc. sounds like it's some abstract Nazis, not democratically elected German government with huge public support. Ignorant public all around the world can think "Who were these Nazis? Maybe they were Polish?" Then things like Jedwabne: [http://www.ppu.org.uk/genocide/case4.html](http://www.ppu.org.uk/genocide/case4.html) gets blew up out of proportions ignoring that there is a plenty of doubt on what actually happen. Rather mediocre movie Ida: [https://en.wikipedia.org/wiki/Ida_%28film%29](https://en.wikipedia.org/wiki/Ida_%28film%29) gets Oscar award, (speculation) because it's main story is about Jedwabne and portraits Polish citizens as Jew-murderers. I see it as slow and continuous process of shifting blame using PR methods, for political and material gain.

All of this in the background of a big controversies and political struggle about Jewish organization claims for retribution money and property.

It's sad that a nation directly most affected by WWII, than struggling with Soviet occupation that was a WWII consequence, now is under PR fire to manipulate world public into blame it for the horror of it.

> encouraging people of other countries (like the US) to think "that was a > German action, it could never happen here."

"That was <<Nazi>> action, it could never happen here.</comment></comment></comment>


Build Up a High Availability Distributed Key-Value Store - <AUTHOR> https://medium.com/@siddontang/build-up-a-high-availability-distributed-key-value-store-b4e02bc46e9e

<comment><USER2> What advantage would this have over something like cassandra?</comment>


The Economic Power of American Arts and Culture - <AUTHOR> https://www.citylab.com/life/2019/03/american-culture-arts-economic-impact-employment-data-gdp/585733/ <comment><USER2> Entertainment or pop culture was well-known for their power of economy. This article just re-claims this fact with substituting "Entertainment" by "Art and Culture".</comment>


Show HN: Intelligent music playlist composed from your guests´ interests - <AUTHOR> https://crowdify.veniversum.me/ <comment><AUTHOR> Hi! One of the developers here!

Three friends and I made this for hackcambridge hackathon in less than 24 hours and thought it was really useful for organizing events, from small friend meetings, parties or big events.

It's super simple to use:

1- Log in as an organizer

2- Create an event

3- Share the link

4- Whenever you want the playlist to update its content, go to the events tab, click on the event and press Generate playlist.

You'll find the playlist on your Spotify account (as organizer).

We don't store any user's information, so don't worry about privacy.

We would love to here your thought! Thank you very much :)

(Also you can check the source code on [https://github.com/veniversum/crowdify](https://github.com/veniversum/crowdify) )</comment>


Snapping pictures of your hotel room could help stop sex trafficking - <AUTHOR> http://fox2now.com/2016/06/22/snapping-a-picture-of-your-hotel-room-could-help-stop-human-trafficking/ <comment><USER2> Warning - auto-starting video with audio. Bloody annoying.

Having said that - brilliant idea if the privacy of those participating can be guaranteed. On the other hand, why not get every hotel owner to send in photos of their own rooms?

Still, great idea, hope it succeeds.</comment>


Facebook Is Partnering With Stripe to Power "Buy" Button - <AUTHOR> http://recode.net/2014/09/25/facebook-is-partnering-with-stripe-to-power-buy-button/ <comment><USER2> Perfect timing? I just wrote a post on why Stripe is becoming the transaction layer of the internet.

[http://blog.thinkful.com/post/98406708378/why-stripe-is- beco...](http://blog.thinkful.com/post/98406708378/why-stripe-is-becoming-the- transaction-layer-of-the)

Some highlights:

\- Agility in adopting new technologies

Whether it's Bitcoin, Stellar, or 139 other currencies, Stripe is able to rapidly roll out developer kits and support for new forms of payment and protocols. To give context around this speed, the company announced support for Stellar, a decentralized protocol for sending and receiving money in any pair of currencies, just hours after its announcement. While this was obviously behind a curtain, it speaks volumes about Stripe being regarded as the first choice for these types of adoptions.

\- Landing key deals

Within the span of 4 months, Stripe announced partnerships with Alipay, Twitter, Apple, and most recently Facebook. For a company of 160 employees, and just under five years in age, these are huge wins to add to their gallery.

\- Developer support and evangelism

The company extensively blogs, holds office hours and maintains an active IRC channel to help companies integrate with their services. For a startup looking to gain market share, this is crucial. However, the real challenge lies in their ability to sustain this level of support as the company grows. Another area still largely untapped by Stripe is hackathons. By having mentors on-site and getting their client libraries in the hands of as many budding developers as possible, they can solidify their name as the go-to tool for online payments.

<comment><USER3> I was at a Stripe Hackathon as far back as 2012, and afaik they let many OSS projects use their office space for meetups. Unless they've slowed down on the hackathon front (in which case I imagine for good reasons), I don't think hackathons are an unexplored area for them.

Out of curiosity, what do they cover in their office hours? Basically any questions developers may have with their API and platform?

</comment></comment><comment><USER4> If anyone from Stripe is watching the thread: any chance of this supporting subscriptions?

<comment><USER5> Good question; lemme check...

<comment><USER5> Looks like the answer is "not currently". Sorry :(.

<comment><USER6> Pity. :(

</comment></comment></comment></comment><comment><USER7> Stripe is really killing it this year with getting Apple and now Facebook on board with their service

<comment><USER8> Have you tried using the PayPal API? It's no wonder, Stripe is heaven in comparison.

<comment><USER9> And PayPal's API is heaven compared to what the banks provide. Here in Canada, Moneris, PSIGate, Beanstream, etc., are so freaking terrible and developer- unfriendly - and customer unfriendly! - it's incredible.

I'm selling a fairly small e-comm web project to a new company that will be doing "adventure tours" right now. They'd been told by their bank to use Moneris (probably Canada's biggest POS company), but of course, they were experiencing all sorts of hurdles getting approved because they were told "travel companies are risky", etc. They couldn't process any payments before their website went live, because Moneris insists on inspecting everything. Etc.

I told them to use Stripe. Like really strongly advised it. And they kept coming back with stuff like, "Okay, so, would you advise that we apply with Stripe now so that they can approve us due to the apparently more risky nature of our business?" And so on. My responses were always, "I don't think that's going to even be a thing you have to think about."

And it hasn't been.

Another Moneris story: I had a customer all set up with integrated payment processing through their gateway. Then we were informed that they needed to a security scan on the server. They outsource this to some other company.

So they run this scan, and it fails - and why? Because the server is equipped with all kinds of countermeasures (firewall stuff, port scan blocking, whatever - that's not my area of expertise). So they tell us that in order for their scan to pass, we need to disable all of the security measures that are currently protecting the server.

You really can't make this shit up. After that experience I swore I would always, always try to talk my customers out of using the banks and to use Stripe instead. And it's working.

<comment><USER10>
        So they tell us that in order for their scan to pass,
        we need to disable all of the security measures that
        are currently protecting the server.

Ha, what could they possibly be scanning for, malware? The sad thing is that I'm sure companies are doing that.

<comment><USER11> It's probably a PCI compliance scan. They check for a lot of things like (basic) XSS, CSRF, insecure versions of PHP/Apache, unprotected folders named "admin/", backup files which could leak source code, and so on. It's mostly just for show, but can catch some stupid mistakes. Typically you'll have to whitelist their servers so that they don't trip your firewall/IDS/whatever.

<comment><USER12> > backup files which could leak source code

Would an open source app not be PCI compliant?

<comment><USER11> Nah, that would be fine. It's not a problem with the source being available, more the fact that the file could contain sensitive information like passwords (like say in a config.php file).

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> Am I the only one who's interested in seeing how this plays out because I'm sceptic about people buying not even 0.1% of the time they "like" something?

<comment><USER14> People are not going to buy what they "like". They are going to buy what they truly like in real life. Something they think is very cool, perhaps haven't seen it anywhere else.

It would be exactly the same thing like with fb ads and fb pages. Some people just complain and complain about everything, other are just quietly crushing it.

<comment><USER13> I'd love to have a list of people or companies who are crushing it with FB content marketing (not FB ads, which is different). Could you please help me with that?

Because the people who were crushing it with Twitter, you know, it turned out to be just bullshit (the revolution in Iran, Dell, Zappos, for example). Thanks.

<comment><USER14> Fuck it. I'll play along.

Buzzfeed and the other a hundred or so copycats. Searchengineland.com, sejorunal.com, smashingmagazine, ColledgeHumor, NatGeo, Scientific american, goodhousekeeping.com to name just a very FEW. I've written for some of those and have seen the actual traffic numbers. There are thousands of pages which promote something and do very well. Those are the ones I saw in 2 minutes browsing my feed.

I can go in a lot more detail, but this is just not the place. The reality is that marketing and PR is fucking hard. It's like me saying "I tried to build a spaceship, but Boeing's parts just suck big time, so I couldn't".

I just don't get why people think they can just wake up one day and be rockstar PR specialists. Just because you can click a few buttons on a web page doesn't mean people want to read your shit.

<comment><USER13> I'm talking about companies _selling_ products (or services), not about companies giving out content for free.

Facebook is a feed-reader (and many other things rolled into one). Not a good place to sell, that's my point.

<comment><USER14> Some of those sell products and services. Some do lead generation for b2b services and products. Selling on facebook is a terrible idea. Creating content and using facebook as distribution channel is a great idea. If you can execute it of course.

</comment></comment></comment></comment></comment></comment><comment><USER15> Sincere questions: So what was FB doing with Paypal before? And hasn't FB already had a buy button which wasn't popular?

</comment><comment><USER16> I wonder what this means for Soldsie, the service that allows users to buy within the comments section. Seems like the best UX should ultimately win and that puts Facebook at a big advantage.

<comment><USER17> Unfortunately that's always a risk when you develop for FB or any platform. If it is bad for users (like most of the Zynga notifications were) or something they want to pursue themselves (like birthday gifting), then bad luck. You get the advantage of their distribution at the cost of platform risk.</comment></comment>


Lxss – Fun with the Windows Subsystem for Linux (WSL/LXSS) - <AUTHOR> https://github.com/ionescu007/lxss <comment><USER2> This project takes things even further:

 _Experiments with hidden COM interface and LxBus IPC mechanism in WSL. Heavily inspired by kernel guru Alex Ionescu 's project lxss._ [https://github.com/Biswa96/WslReverse](https://github.com/Biswa96/WslReverse)

</comment><comment><AUTHOR> this just adds to the fun i hope the hole is plugged :-/ [https://white- hackers.blogspot.com/](https://white-hackers.blogspot.com/)

Microsoft has already taken steps that should assist the security vendors to deal with the new security considerations presented by WSL, including a Pico APIsthat can be used by AV companies in order to monitor these types of processes.

[https://blogs.msdn.microsoft.com/wsl/2016/11/01/wsl- antiviru...](https://blogs.msdn.microsoft.com/wsl/2016/11/01/wsl-antivirus- and-firewall-compatibility/)

</comment><comment><USER3> Will WSL2 kill off LXSS?

<comment><AUTHOR> lxss basically is part of what WSL/WSL2 is. from what ive gathered so far LXSS is the process management, and another piece, LXCORE is the system call translator. what this does apparently is put the linux instance in contact with the windows kernel

<comment><USER3> The linux instance will be separated by Hyper-V before it touches windows kernel. I guess syscalls will passthrough the hypervisor basically the same.</comment></comment></comment>


Android app let's you estimate your toilet paper stock - <AUTHOR> https://play.google.com/store/apps/details?id=com.toiletpapercalculator&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1 <comment><USER2> lets not write like this</comment>


Misguided web accessibility: access keys - <AUTHOR> http://webdragon.com.au/2954

<comment><USER2> Most companies that try to do something about accessibility seem eager just to find a checklist they can go through. If access keys somehow turned up there, then they go into the website!</comment>


Why I Still Get Shunned by Taxi Drivers - <AUTHOR> http://www.theatlantic.com/politics/archive/2015/10/why-i-still-get-shunned-by-taxi-drivers/411583/?single_page=true <comment><USER2> > It's worth noting that in my experience, the drivers who most blatantly > refused me service have never been white. [...] 84 percent of New York City > cab drivers are immigrants (the vast majority are "of colour")

This doesn't come as a surprise to me. Eastern countries in general have stronger group-identities, and as such one group being less tolerant, or ignoring, if not downright hostile of the other group is prevalent.

I think it would be far more productive if people looked at these issues as group-based conflicts (instead or race-based ones). Then you have a wide range of group based identification to be aware of, to the point of successfully mitigating it.

For clarity, here are some groups that we identify with (leading to all sorts of conflicts):

\- as 'employee'/'employer', 'worker'/'pensioner', 'junior/'senior' and so on.

\- as 'English', 'American', 'Australian' and etcetera.

\- as 'white', 'black', 'brown' or whatever.

\- as a 'Hindu', a 'Muslim', a 'Christian', a 'Buddhist' ad infinitum.

\- as a 'Capitalist', a 'Communist', a 'Monarchist', a 'Fascist' and etcetera.

\- as a 'Democrat', a 'Tory', a 'Republican', a 'Liberal' and all the rest.

\- as 'son'/'daughter', 'brother'/'sister', 'father'/'mother' and the whole raft of relatives.

\- as 'boy'/'girl', 'man'/'woman'.

<comment><USER3> I only see one "group" on that list that's ever caused one of my friends to be blatantly delayed/denied service in the public square in the way the article describes. No bonus points for guessing which one.

<comment><USER4> Ok. I don't know which one though.

<comment><USER3> Really?

The OP sought to put all those various forms of discrimination on an equal footing for whatever completely bizarre reason (does anyone really believe cabbies are quizzing people on their political affiliation before giving them a ride or serving them a meal?) but the color of one's skin is the only one that commonly causes quick and blatant discrimination in these situations today in the United States.

We've got a legacy of racism here, but also: you might have a whole raft of nasty prejudices but there aren't a lot of ways to discriminate against someone you don't know in a first contact situation. Physical appearance is the big one.

<comment><USER4> ... Somehow I "forgot" that it had to be one that was visually distinguishable I guess?

Oh, wait, now I remember.

Some religions mandate things about clothing which are visually distinguishable. I think that was something that I thought also could have been it.

It's not hard to imagine someone who is not familiar with the practice being unwilling to allow a Sikh to bring their kirpan in the taxi. (Hoping that I'm not misunderstanding something about that)

Now, from the context, I suppose I should have concluded which one they meant.

But people can be discriminated against based on things which are visibly apparent, and are mandated by a religion.

<comment><USER3> I think that's hypothetically a legitimate point. I have friends who wear a yarmulke and I've never heard of anything happening, but I can see how there might be cities where that sort of thing goes on. Blatant discrimination against Jews happened in the American south in my father's youth, but not so much anymore. ("soft" discrimination is a different matter)

Doubly so for Muslims in these times, or Sikhs, and so on. I'm sure bad things happen.

I've got to tell you, though, withholding service is a pretty extreme thing and it's only been described as a common experience to me by one group of people. (and I should say, I've also witnessed it) It's the same dull, discriminatory bullshit we've been dealing with in America forever and I strongly suspect we aren't going to destroy it by taking a "we must also think of the Tories who are suffering from discrimination!" approach. That's very silly, and what it implies is dishonest.

</comment></comment></comment></comment></comment></comment><comment><USER5> Since it appears that the ATS process is a fairly standard complaint process. Why doesn't somebody make an app for that, get the taxi number and time then allow somebody to enter the rest of the details (or video/photo) and submit.

Feels like worth doing to make the world a better place.

<comment><USER6> It seems like the app for these situations is Uber.

</comment></comment><comment><USER7> This sort of discrimination is not limited to Taxi Drivers, Speaking from experience, Uber drivers can and will reject a customer if they don't like the neighborhood you're traveling to.

<comment><USER8> How does an Uber driver reject a fare they've already accepted? Since they don't know the destination until they pick you up, are they kicking you out of the car after they pick you up? I've heard that Uber tracks the number of "driver canceled after accepting a fare" incidents and warns drivers if they do it too frequently.

<comment><USER9> Users can enter the destination before being picked up. I've had drivers cancel before arriving, so I usually wait to enter the destination until my seat belt is buckled.

<comment><USER10> Drivers dont see the destination until they pick you up, quite deliberately.

<comment><USER11> While this is true, it's pretty easy to infer from gps. If there's a 10 minute ETA and you just went over the proverbial train tracks into the bad side of town, or you're familiar with the surrounding towns, it's not difficult.

</comment></comment></comment></comment></comment><comment><USER12> When something like this happens, take out your phone and record. People shape up real quick.

<comment><USER13> Unfortunately a band-aid solution for a deep-rooted problem (not saying that one shouldn't do it).

<comment><USER14> We have a solution that works, right now:

\- Potential passengers register with their name and personal credit card.

\- Drivers are paired in a way that conceals destination and ensures equal distribution of bad ones.

\- Passengers and drivers rate each other and bad ones are removed from the system.

\- No tipping (or priced in a way that doesn't depend on it).

This reassures both parties that there are consequences to failing to do your part (criminally or otherwise).

It's just that the same people who were supposed to have solved this problem, also scream bloody murder at the Ubers and Lyfts who implement the above solution.

<comment><USER15> >Passengers and drivers rate each other and bad ones are removed from the system.

Never used Uber/Lyft, so maybe the answer would be obvious if I had, but...

What stops drivers from giving bad ratings based on race or destination? Likewise, what stops passengers from giving drivers bad ratings based on race or some other prejudice?

<comment><USER10> Nothing, but giving a bad rating for race would be weird and rare.

Additionally you always see the driver's photo, and optionally see the riders photo before the ride starts, so the deeply racist probably cancel before the ride anyway.

<comment><AUTHOR> It's not necessarily race. How about a bad rating for getting a ride to an undesirable part of town? Or one where the driver can't find another rider?

At least in 2014, it sounds like Uber has no way to verify racism isn't happening: [http://www.theguardian.com/technology/2014/jul/28/are- ubers-...](http://www.theguardian.com/technology/2014/jul/28/are-ubers- passenger-ratings-big-data)

</comment></comment></comment></comment></comment></comment><comment><USER16> It's going to be interesting to see which parts of these various cities suddenly have taxi coverage, when self-driving cars eat these taxi drivers' jobs.</comment>


CLH Pipeline System - <AUTHOR> https://en.wikipedia.org/wiki/CLH_Pipeline_System <comment><AUTHOR> The UK has a number of underground fuel pipes for petrol and jet fuel.</comment>


Mites, spiders and crustaceans visualized using focused-ion-beam microscope - <AUTHOR> http://www.micronaut.ch/product-category/mite-and-crustacea-and-spider-sem/ <comment><AUTHOR> [https://en.wikipedia.org/wiki/Focused_ion_beam](https://en.wikipedia.org/wiki/Focused_ion_beam)

[https://www.nationalgeographic.com/contributors/o/photograph...](https://www.nationalgeographic.com/contributors/o/photographer- martin-oeggerli/)</comment>


Show HN: The most seamless password manager - <AUTHOR>

Please give www.keyless.io a try. Let us know what you think. Thank you <comment><USER2> > Keyless in the first password manager to provide complete hacking > protection.

Uh-Huh. Pretty strong words there. Lets for a moment ignore the fact that this claim is ridiculous and companies or individuals making it should never be trusted, I can't find anything on your webpage that goes beyond marketing copy and "it's Magic!" rhetoric.

Seriously, not one technical statement?

To stand any chance in that market I'd strongly advise you to include more detailed descriptions of how your "magic" works. And you can't use full-page photographs in it.

<comment><AUTHOR> Thanks _cbdev for your input. We are currently in beta, hoping to get more input/suggestions to make our website better and to check the appetite/needs of technical and non-technical people. As you advised, we will include more technical description on our site. Thank you again!

</comment></comment><comment><USER3> So I tried this and it works great - would like to know how the tool will remain compatible with all websites though - seems like a big claim and not really sure how it achieves this

<comment><AUTHOR> Thank you for your feedback. Happy to hear that you are happy with it. We will keep you updated with our tech and website improvements.

</comment></comment><comment><USER4> > "Trust us. You want us involved. The other computers in the chain between > you and your facebook account aren't so trustworthy."

I'm sorry but I have to agree with some of the others, without technical data behind the magic this just looks like a scam to me. Telling people 'don't trust them, trust us' doesn't give you any credibility.

<comment><AUTHOR> thanks for your input. as said we will work on the changes on the website

</comment></comment><comment><USER5> Though the website needs a lot of work, the product works great: installed the iphone and windows app and it work's like a charm. Only testing it with dummy accounts; keen to hear more about the "magic" behind the code and the security.

<comment><AUTHOR> Thanks Damien. Please share your ongoing experience with us

</comment></comment><comment><USER6> I'm having a hard time reading the copy on my iPhone (white copy, light background). Also the site does not render properly. Copy is cut off etc. Overall not a trustworthy first impression. Might check back later, but you lost me at that point.

<comment><AUTHOR> Thanks Chris for the feedback. We will have the mobile site re-done ASAP. I am hoping to get more feedback from the community regards the changes on our website and also the product so we can impress all of you once we go public.

</comment></comment><comment><USER7> From what I'm guessing, it looks like a one-time token printed in the web site on a QR code, which the phone reads. It would mean it can only be used on the web sites that adopt it. Or it needs a lot more explanations on how it works.

<comment><AUTHOR> Keyless only requires to scan the QR code once. After it will work on all the sites you will visit. We will work on the website content in more detail to provide you all a better understanding. Thank you!

</comment></comment><comment><USER8> Does it really work without plug-ins? How is this possible? Why is the accelerator required if you do not need plugins?

<comment><AUTHOR> To answer your question: yes keyless works without the accelerator as well, but it is still under development; will be available for the official public launch.

Lets differentiate the accelerator from a plugin or API that has to be installed on the website you wish to visit as a user/visitor: The accelerator is installed on the users/visitors side and it is not and API/plugin to be integrated in let's say on each wordpress sites.

I would suggest to actually trial the product and see how it works.

</comment></comment><comment><USER9> Is this similar technology to [https://getclef.com/](https://getclef.com/) ?

<comment><AUTHOR> similar when it comes to scanning a "code" for the login process. The main difference is that clef relies on API, or plugin integration. For clef to work on a website it has to be installed by website owner, hence their growth depends on website owners adoption rate. With keyless you identicate once, at its compatible with most site's out of the box: no code for the website owners to change/add.

<comment><USER9> "no code for the website owners to change/add"

How do they get the barcode on their site?

<comment><AUTHOR> You only need to scan the code once on the keyless.io site. No need to scan again for each visited websites.

</comment></comment></comment></comment><comment><USER10> Sounds great! looking forward to use it :)

<comment><AUTHOR> great to hear!</comment></comment>