skysight-inc/HackerNews huggingface dataset:
Because our privacy policies state that we won't disclose personally identifiable information about users, and IP addresses can be personally identifiable.

Unfortunately security incidents happen, but we won't violate the commitments we have made to our users; in this case, if we revealed the IP addresses we would have another, deliberate information leak on our hands.
Many Congressional bodies in history would have charged those responsible with espionage and treason, and moved immediately to impeach the president, if they found that the Executive branch was illegally wiretapping an internal Congressional committee charged with investigating the executive branch's conspiracy to secretly torture and kill enemies of the executive branch.

It is abhorrent to our democracy and a direct, domestic threat to the legitimacy of our elected government and the survival of the rights guaranteed to us by our Constitution.

Unfortunately, when you cry 'wolf' / 'impeach' / 'Benghazi' every five minutes after it becomes clear a black man is going to live in the White House, that kind of neutralizes the ability to express outrage and be heard on legitimate issues. If the center-left Constitutional Law professor can get away with this sort of shit, I cringe at where we're going.
That's not been my experience: I use cards for every single purchase, which adds up to hundreds* per year, and have never been asked for ID. In any case, it's true that they're not allowed to require it. The link I gave above suggests the following as recourse:

"If you're a Visa cardholder and a merchant presses you for an ID, Visa says you should notify your card issuer. In the case of Amex, notify American Express directly. MasterCard customers should report the violation by visiting the company's merchant violation web page."

*Edit: hundreds of transactions per year
Not on hand, those decisions were made years ago, and done in email discussions and in person meetings.

That said, the password length requirements were driven by the cost of performing effective brute force attacks against properly hashed and salted values at the time we set that length.

Privileged passwords was basically a stop gap measure to ensure that users were refreshing passwords regularly. The correct solution is to deploy multi-factor authentication.
I think if this is really not noticeable, then people are setting their AC to run far more than necessary to maintain the right temperature...

But to let them control the temperature of your house, that seems rather Orweillian.
That's a pretty broad and idealistic claim to be making.

"Correctness" itself isn't an absolute. While something either does or does not conform to whatever has been defined as "correct", it's perfectly fine for the defined "correct" behavior in a given situation to be a crash.

In some cases a crash is the best that can be hoped for. Continuing on, even in an attempt to handle the failure more gracefully, can potentially be more harmful than just crashing.
Systems of great value based on requiring voluntary restraint will always fail. If there's a particularly dumb mechanism that can easily break a system, then the entire system should fail, the sooner the better.
Not at all, the decision was made to release the information necessary to help people decide if action was needed. As you can see from this thread, we are happy to provide relevant details, and like most of our other tools, Kuma, the platform that MDN uses is open source, and on github.
If I were designing secure SCADA protocols, the first thing I'd think of is the ways in which we communicate with submarines. Are any of those protocols public?
Part of me hopes you're right, but I'll be honest: Speaking as an American, I don't think the US or Europe have the gumption to face Putin head on with his domestic policies, no matter what ills he may bring about on the Russian people. Worse, I think some of our domestic problems will preoccupy us substantially in the coming years, although with an election coming up this year it's plausible stronger talk might supplant previous timidity. I know of a few politicians who have been reluctant to take a stance on Ukraine simply on the merit that they're afraid they might be accused of attempting to reignite the Cold War.

Although, I think I see what you're getting at: Multiple forces, political, economic, and domestic could force his hand--I just have very little faith in my government doing the Right Thing in light of recent revelations (NSA, et al) and it's unlikely we'll be of any help.

In a way, I was rather hoping the downing of MH17 might've triggered sufficient outrage to dampen the conflict in Ukraine and perhaps prevent Putin from continuing down the road of stripping away citizens' rights, but I guess that's premature? (Sadly, few here in the US even care--I'm not even sure how many people are aware of the downing.)

Thanks for taking the time to answer my question. Much appreciated.
When I am debugging a complex program, I need the "real history" to find subtle bugs as quickly as possible. Similarly, if the project is shared with others and they need to debug my code efficiently, they will need access to the actual history, warts and all, not a "history for public dissemination" produced by the project's Ministry of Truth.

Version control systems were developed to enable developers to quickly and efficiently find the specific change that caused a bug or other problem discovered later. Rewriting history, for example squashing numerous changes into a single commit using Git's interactive rebase, defeats this main purpose of version control.

It is difficult to see a good reason for a "history for public dissemination." This is the sort of thing Orwell decried in Animal Farm and 1984 as well as his factual writing. Instead of highly subjective code reviews that introduce politics and personal prejudice, focus on objective tests of the performance of the software.

The more sensible approach is to share the project's actual development history for developers and tag production releases and release candidates in some way. Obviously only developers need to worry about non-production versions of the code.

Bit by Git
1717 Play Satirizing Isaac Newton and Alchemy
en.wikipedia.org/wiki/Three_Hours_After_Marriage

A scene was recreated for Dr. Jacob Bronowski’s beautiful 1973 documentary series The Ascent of Man:

www.dailymotion.com/video/x1zzkos_bbc-ascent-of-man-06-the-majestic-clockwork_school&start=1383
You lose information when an image is not in focus - and you can't recover that information. You can only guess what the "real" image might have been, with some (hard-coded) heuristics and statistical methods of inference. Then again, this is already done by your brain.
> SCM is a matter of choice; there is no right or wrong answer

That really sums it up. The right answer comes from seeing what you need and using whatever tool fits the job.
I just read at the top of Stellar's forum a note from Joyce Kim, CEO of Stellar:

>We expect that as a price for stellar becomes more established, we'll have to continually adjust the total amount of the giveaway to make sure it keeps making sense.

So they're already dialing back their distribution promise. This is exactly what happened with Ripple. When Ripple first started, there were assurances that all but 20% of Ripples would be distributed "as quickly as possible".

That didn't happen.

Several years later now, Ripple has decided to basically keep as many ripples as they can, which is supposedly part of what led to the split between Jed and the Ripple leadership/owners.

All this is a funny commentary on human nature. As an outsider, it's as clear as day to me that in order to succeed, Ripple needed to rapidly distribute as many XRP as possible. After all, 5% of a lot of money is worth much more than 50% of nothing. The only other missing ingredient for Ripple was community engagement.

And with Stellar I fear we'll see the same thing (at least with respect to a rapidly decreasing distribution rate).

These issues are exactly why Bitcoiners are so scornful of "pre-mined" coins. All things considered, proof-of-work and proof-of-burn are still by far the fairest and most successful currency bootstrapping methods. Stellar uses neither.

Bootstrapping a currency is the ultimate Zen undertaking: in order to make money as a crypto-bootstrapper, you must find ways to distribute it, either by giving it away or (preferably) by fostering entrepreneurship and spending it on those merchants who take a chance on accepting it.

A lesson much of the Bitcoin community still hasn't taken to heart, which is likely the only reason why interest in the coin is failing to pass on from the early adopter to the early majority.
The most prominent application of this can be summed up in one acronym: DRM.
They're probably learning that MLAG should be avoided unless absolutely necessary. But providing common L2 domains across cabinets is probably something they "need."

There's much less to go wrong with ECMP at L3. Stateful networking components frighten me.
I wonder whether we'll see more of a hybrid model where companies either use something like Red Hat's RHEL / Fedora level of support split or a time-delayed OSS release so they can have some period of proprietary advantage while allowing customers access and allowing some chance for major outside contributions or tangents. Arguably Apple is doing something not entirely unlike that but they haven't hit the right balance yet.
welcome to the club

Yep.

I would bet that's related to the development of the "sense of self". Young kids don't have as strong of a concept of identity, so it's easier for them to connect with others.

I think, beyond that, that there may be an underlying, motivating sense of the 'impending judgement' of one's actions by society. Whereas, a child in a lucky case may be essentially carefree, an adult is always subconsciously on the lookout for "person x in situation y may judge me z if i do that". Autistic people are often free of that: social comprehension, hardly unique to us as a species, is at once a freedom and a curse.

Growing up, a very close friend of one of my parents had a son who was autistic and slightly younger than me. They lived in the country, and we would visit them approximately annually. When it became apparent that he had autism, all of his behavior became explained through the lens of autism. He would run through fields, climb trees, chase animals, play with model tractors, make loud noises, inquisitively inspect minutiae of nature. One of his parents was an unrelated medical practitioner, and the pair of them dedicated immense time and energy to attending all possible events and reading all possible books to understand the nature of their son's condition. Because they could afford it, the father wound up spending all his time every day with the son, attempting to use various techniques to influence his behavior. Through the stop-motion perspective of our occasional visitations, it was apparent that slowly, he was achieving success. The son began to talk, and was exceptionally skilled with language, song, performance, drama and all of those qualities that are inherently social... precisely the elements that were perceived as missing from his life before-hand, but present in everyone else's "normal" experience of the world.

I made up my mind then and there that autism was not a bad thing, it was possibly a good thing... a rare situation in which children may be shielded from the tremendously judgmental, often vindictive and horrible, backward and limited perspective of society at large and its collected habits and wisdom, and instead allowed to develop freely through raw curiosity and thought. It is as if they are locked within their own Eden... and at least some of those who do eventually escape are far wealthier for it.
Playing the violin is also a trade skill. I don't think the job market implications of programming need to be a deterrent. Programming can simply be taught as a creative activity. I learned programming because it was interesting and fun.

In fact, teaching programming to kids as a trade skill is likely to turn them off.
Thanks. But as skeptical as I am of the extortion claims, I don't see how this study debunks anything. All it does is show that there's no evidence of a systematic bias in the filter, but it doesn't disprove at all that Yelp manually tweaked results in isolated cases, which is what they were accused of.
Traditionally, replication hasn't been done in psychology because the experiments have to be set up in really clever complicated ways in order to tease out effects. Even the most dedicated replicator can't ever fully replicate a psychology experiment. You'd have to ship the actors used as confederates across the country to do that and of course nobody does that.

Now wait a second. When a psychology study comes out, it claims "This experiment shows stereotype thread reduces performance of Honduran men on a Math test." Such studies rarely claim "This experiment shows stereotype threat reduces the performance of Honduran men on a Math test when Jill the skinny experimenter repeats the code words."

If using different experimenters yields a different result, it means the effect being described is probably not as robust as the experimenters claim. The cause might be Jill's shifty eyes rather than stereotype threat.

That's a replication failure, in the sense that it shows the claimed effect is far weaker (or causally different) than the original study claimed.
Linux is overrated.

Other problems include:

o Complex, confusing terminology including multiple non-obvious names for various components.

o Huge number, about 2000, of commands with many sub-commands that often do non-obvious, even unrelated things.

o There are numerous commands to do similar, overlapping but nonetheless different tasks.

o A supposed virtue of Linux is that it makes it extremely easy to create "mounts." This often leads to a proliferation of mounts, making locating files extremely difficult.

o Cryptic "paths" for identifying files instead of sequential numbers for individual files as well as snapshots of the entire project.

o These many flaws in Linux and its command line interface have resulted in a proliferation of third-party add-on tools like GNOME, KDE, many of which fail to fully wrap the complexity of Linux forcing users to both master the wrapper tool and the Linux command line especially on more complex projects. Some of these GUI/wrapper tools like GNOME seem to have serious bugs as well.

o Lack of backward compatibility with real mode-style version control systems like DOS. Instead of building on 20+ years of success and experience with DOS-style operating systems, but extending them sensibly for distributed projects, Linux took a "reinvent the wheel badly" approach.

o A fanatical, cult-like following apparently mesmerized by Linus Torvalds that is unable to recognize or acknowledge the many obvious problems with Linux.

Yours truly,

Inspire satire
Wow, the solar panel story was fun. Been to Willits a few times to ride the skunk train (which is fun) but the solar story is neat. More: http://en.wikipedia.org/wiki/Real_Goods#History_of_Real_Good...
If anyone ever pulled crap like that on me during a conversation, I would be done with that person forever. I wouldn't care who he or she was.

If somebody is disrespectful enough to engage in behavior as pathetic as that, then I want nothing to do with that person. Maybe "hipsters" would be fine with such shabby treatment, but I'm sure I'm not alone in thinking it's an extremely distasteful thing to do to somebody you're conversing with.
> You probably mean amending an existing commit, not rebasing.

Hmm yes correct.

I have never used Gerrit so I don't know what that whole fuzz is about. I am more into what he meant by rebase is bad.

> But this is just begging the question. Why is it necessary to do a code review before a merge, instead of after?

By merging I am talking about merging with the master repo, or upstream in Git's world.

You work on your local repo, preferably a new branch so you can work on multiple stories (I use branch as patch). Before I want to merge into the upstream for real professional project, I want to do a proper code review. If I work with people using Mercurial, I prefer people use patch queue. I don't like history to be ugly. I want each history has its own meaning. Why? Because when I blame I want to narrow down quickly (yes there are ways to do that really fast, but let's stick to just browsing on Github). If you edit the same line twenty lines just to fix a small typo, wow, that's not cool. I've dealt with projects and some people like this:

fix typo

fix typo2

fix as suggested in comment 2

fix as suggested in comment 5

This is particularly painful in Mercurial if you don't use patch. Rebase in mercurial is pretty tough for me, at least my experience. So I apply the same logic to git: branch, rebase and submit PR, bug found, back to branch, fix, rebase, repeat. In the end what I care about is the commit links to the issue # and a good commit message.

Would you rather read the commits above or "Fixed #1913 XXXXXXXXXXX"? I try to make sure every commit follows something like "Fixed #" in my professional repo. Sometimes I fail to do that, but I try my best. It's my workflow and I think it's reasonable.

--EDIT--

I just want to make sure we are clear about professional vs personal.

In a professional OSS project, there are many users and so rebasing on a master repo is not acceptable because someone might already working on the older version. The only time I will ever rebase the master commit is if I need to remove "sensitive data" leak (yes, at that point I am screwed because someone might have checked out the original commit). In a professional setting, a typo found in master commit should be filed as a new bug and fixed as a new commit.

In a personal project it's up to me to decide. I can be lazy like committing hundreds of "fix this fix that." But I usually don't.
> you spend more effort upfront, but save in the long run.

Not storing data in a database and not having a inside comment system is not what I call saving in the long run.

> and I had to be constantly installing security updates

Why use Dotclear or Wordpress then? If you can do what you said you do with Pelican and cronjobs/pulls on the github to automate the task. You should be able to code the blog yourself.

> making sure the backups were being correctly made.

It's really not that hard to automate backups.

> Backups on Pelican come for free, since it's all on git

You're relying on github for backups where I rely on my server for backups.

And as you said somewhere else, if you want something as practical as a dynamic blog you need to be able to add new post through other devices. Since things have to be (re)generated everytime you post you need a server to watch the changes on your github.

The more I think about it the more I feel like it's complicating things for no upsides at all.
Where did you get lost?
Daring Fireball is kind of like this, every post can be accessed through a markdown file. The real posts are just generated thanks to those .md files.

http://daringfireball.net/
I do know how to download apps and I am genuinely curious. The beauty of for instance the wordpress app, is how integrated it is with the phone. Can insert pictures and videos from the camera easily. How would this work from the ssh and ftp apps? Without having tried it out I can't really see how this is anything but cumbersome.
The main argument against not having a separate commit is that with large projects the history becomes useless when every commit is type fixing.

In the case of fixing typos or making tiny changes that don't really deserve their own commit, the person making the tiny changes should also be the person who made the last big changes too.

---

> Why is it necessary to do a code review before a merge, instead of after?

Because most of the time you want master to be working, and working as well as possible. In a team environment, you shouldn't all just be throwing everything on master, that leads to unnecessarily crazy history.

You review it before to say "alright, this is good, we all like this, this could be placed in production now if we wanted".
Form validation with AngularJS and Rails
That's definitely nowhere near the truth.

From graphics cards, to ram, to ssd's, to processors, desktops have gotten dramatically better, and cheaper by probably 50% for the same model range.

A $300 i7 from Intel is ~25 times faster than a comparable Pentium 4 processor from 2004 (and that's probably being generous to 2004 by only comparing the passmark straight up).

$200 high quality SSD's alone invalidate the notion that desktops haven't improved.
The Linux kernel has ~15 million lines-of-code with 1100+ contributors. I think you would agree they have to deal with complex and subtle bugs as well. They also extensively use rebase. Dealing with a thousand commits that say "fixed spelling error in code comment" to satisfy your idea of "pure unchanged history" would be maddening.

In any case, it's a matter of perspective I guess.

In Git workflow,

the "real history" --> git reflog.

the "idealized history" is output of --> git rebase.

If I interpreted you correctly, what you want is:

"real history" --> git log

"idealized history" --> git tag -l

It's understandable you feel that way but I'm glad Git chose the first way. It fits better with the philosophy of the "D" in DVCS.
I've never seen any app that dealt with sorting pictures satisfyingly. I just want to be able to sort by dates, albums, types (videos, phone pictures, camera pictures...). And I want to be able to sort those things myself really quickly, drag & drop is not an option for that kind of things.
You and many others may very well be morally consistent on this point, and yet I suspect that more than half of the people outraged by this will eat meat this week without even thinking about it.
The new "plumber" mechanism is useful for things like flushing buffers, doing clean disconnects from network services, committing or rolling-back transactions, and releasing kernel resources.

For example, you might be using a buffered TCP/IP connection to a message broker. Registering a plumber flush callback would let you automatically flush and close the connection before the process exits.

Similarly, the PortAudio library [1] requires you to call Pa_Terminate on pain of possible kernel resource leaks. The plumber mechanism can be used to ensure Pa_Terminate is called before process exit.

[1] http://www.portaudio.com/
> Where did I say that the focus should purely be on programming?

If you'd be okay with teaching a CS course without programming, we might be talking past one another.

> I do not understand, and there are four statements, not two.

I'm confused. Maybe you posted the wrong link?

Here are the two comments from the linked post:

> If you cannot code, you cannot check that your ideas work out on a computer.

This is only true when it just reduces to "if you cannot code, you cannot code".

Taken literally, the statement is just blatantly false. You could use a computer to figure out properties of your algorithm or for designing an algorithm without actually implementing and running the algorithm; e.g. for getting closed forms of sums, or for finding/verifying the convergent behavior of a series which the algorithm relies on.

So the statement really is only true if it's a tautology.

> I don't see how that relates to my comment, I specifically referred to 'writing' an algorithm, as in implementing the algorithm in code, not devising the algorithm in the first place.

'writing' an algorithm = implement the algorithm in code

So, substituting into your original statement:

"I fail to see how you could implement the algorithm in code if you don't know how to code."

which is a tautology.
+1 for having a "use our API and solve a problem" question on your application. I love encountering those [when the API in question is well documented, which yours is]!
oh, yeah true, Visa Electron and friends.
Note that the prizes are only for students.