skysight-inc/HackerNews huggingface dataset:
My dislike of BTC is if it prevents an anonymous cryptocurrency from being deployed -- either by displacing it (like craigslist displaces better alternatives), or by collapsing and scaring everyone away.

If it's just a proof of concept of cryptocurrency in general, it's cool. It might remain a decent currency for certain uses in addition to other more transactional currencies, though.
>Ignoring for a moment the distraction about weev's likableness and/or character, where's the outrage against AT&T for their part?

There's the rub though. AT&T isn't a human, so who do you punish? You can fine AT&T the company, but that's not punishing the people who left the site like that, it's punishing the stockholders. Stockholders really don't like to be liable for the actions of fairly low level subordinates like that, and they have the political influence to make sure that doesn't happen. You could try to go after the specific admins who set up the site insecurely, but they're not unsympathetic people. The ones who do things like this are mostly people who are overworked or poorly trained through no fault of their own. The people who are really at fault, then, are the ones who hired admins without proper training or experience or put so much workload on them that they couldn't adequately do their jobs, but now you're talking about corporate executives who (like stockholders) don't like to be personally liable for the actions of subordinates and who have the political influence to make sure that doesn't happen.

So we're left with a situation where there is no one good to punish, but we have to punish someone, don't we? Something bad has happened! So we kill the messenger. The messenger doesn't have any lobbyists on staff.

What's missing from all this is that we really don't have to punish anyone. Just let the vulnerabilities be published. Companies don't want to hear that because it very publicly makes them look as dumb as they are, but if they can't stop it by threatening anyone with prison then the only way they can do it is by maintaining secure systems. Which means they will, or they'll face the penalties of the court of public opinion.

Where in this dynamic is there a need for intervention by the federal prison system?
Simpler explanations.

If I give you a motherboard and ask what you see, if you say "desktop"... do you realize how close-minded you are?

If I ask you what space aliens might look-like. If you say, "two eyes, two arms, two legs, a nose with a mouth under it."

Have you no shame? God, I marvel at how stupid you are.
>Better advice: Use a long password rather than a random password.

facepalm. You can't use both? I do. This is horrible advice if taken on face value. To be fair, the author mentions things like KeePass. Use that. Make very long, random passwords.

>See, when it comes to a brute force attack, entropy makes no difference at all, because a brute force attack is a sequential attempt at every possible password, starting with the shortest first.

I think this is the biggest misconception regarding passwords. If we're using the phrase "brute force" literally, then yes. But if I were to write a cracker, I wouldn't be limited to that. The first thing it would do is grab the low hanging fruit. Examples:

1. Regarding the post, check all variations of a single digit repeating (say up to 100 times) in 1000 attempts. That's faster than I could check all variations of 2 character alphabetic passwords.

2. Check the same thing, but with all common keys on a keyboard layout (e.g. $$$$$$): < 10,000 attempts

3. Check common words in english dictionary: ~100,000 attempts

4. Check 10,000 most commonly used passwords: 10,000 attempts

Let me stop here and say that I can check ALL of the above in less time than it would take to check all variations of 3 characters using alpha, numeric, and common special characters. To put it another way, I could grab all that low hanging fruit in a billionth the time it would take to grab all the passwords in the "weak" format (8 random characters) given by the author.

What I have come up with above is my armchair ramblings. For some people, it is THEIR JOB to break your password. Please don't think you're going to create a good password by being clever. And please stop dismissing the issue by repeating the words "brute force"
Yes. Prior art was actually expanded with the new Act.
Most of the mechanical keyboards I see are advertised as "gaming keyboards". If I bought a keyboard it would primarily be used for writing code or english text (don't see how a mechanical keyboard would improve gaming that much unless you are a 300APM starcraft fiend).

What sort of keyboard should I look for for code typing?
Debian Project Leader Election 2013 Results
So, flat is the new black on HN hunh?
With Puppet, and with AWS, presumably it's possible to flip a switch, and 5 minutes later have a replica which is around for the 30m you want to test it for, at 1/250th of the monthly cost
Castaway on the Moon is great, and insightful.
I guess I just see a dictionary attack as a subset of brute force in that it's still a pretty naive attack, but it's not raw brute force.

OTOH I don't see why anyone would bother using a raw brute force attack against a password rather than just grabbing a dictionary of the most common passwords and exhausting those first.

In reality you are likely to run out of guesses before you hit the end of a common password list anyway.
Pretty comprehensive (including plenty of things I haven't had time to look at into more details yet). Bonus points for using applicative style, which makes it a lot easier (and clearer) to apply function to value inside monads.
Here's something else that needs to change. Phones should ring TWICE AS LONG as they do before rolling to voicemail. There are so many times that I miss calls because the time required to detect the ring, locate the phone, get a handle on it and answer the call is MUCH LONGER than it was in the old days! I use Google Voice and an unholy alliance of other devices and services and do not have the ability to solve this problem!
I'm a mathematics professor. I'll tell you how it is in math. You can probably extrapolate to CS, although work experience might count for more there, depending on your field of study.

In math, rec letters are the most important, and whether rightly or wrongly, math professors don't give a damn about the word of anyone other than other math professors.

Figure out how you will be spending your first two years, and the coursework in particular. At good programs it will be killer hard. Are you prepared for this? Your rec letters need to come from people who thoroughly understand how difficult graduate work is, and who can credibly assert that you will succeed in it. This needs to be based on your past success, presumably in your coursework.

In particular, top programs look for not only talent but also thorough preparation. Have you gone far beyond your university's requirements, and absolutely excelled?

If you want to get a Ph.D., and don't get into top schools, you can probably go to a mid-tier place, and if you are really thriving, file transfer applications your second year. Or just finish at the mid-tier place. I went to a non-top-ten university for my Ph.D. and am doing very well now.

Good luck to you!
The Game Theory of Google Reader
FYI: "Yesterday Wired published an article by Klint Finley, Mathematicians Predict the Future With Data From the Past. Apart from a couple of minor details Klint does a good job explaining the goals and the methods of Cliodynamics. However, he (or his editor; it is almost always editors who come up with titles) couldn’t resist injecting a bit of sensationalism by implying that Cliodynamics can predict the future. I don’t blame him – it’s part of the business they are in. But here, in my blog, where I have no editors over me and nothing to sell, I want to make it absolutely clear that CLIODYNAMICS IS NOT ABOUT PREDICTING THE FUTURE! [...]" http://socialevolutionforum.com/2013/04/12/scientific-predic...
Being 2-10x faster and using a lot less memory isn't impressive? I'm sure the Go optimizer still needs a lot of work. It's going to get much better. The V8 optimizer is great but we're probably closer to the limit of how much more can be done than with Go.
Monochrome icons have been trendy for a while now. It just so happens that flat design is also then 'in' thing and that monochrome icons are essentially flat.
Exactly. If I have that much capabilities I would buy the airline. It seems neater.
For coding, you're gonna be fine with literally any keyboard, including some $20 logitech piece.

Mechanical keyboards can be fun if you enjoy their feel, or if as a gamer, you're needing to be able to hit a key 5+ times per second and have it pick up each and every one. But honestly, for coding, you can get it done on just about anything, as speed isn't the necessity, planning is.
An all time classic for reading.

I have just started using a mechanical keyboard a year ago or so. I had already used a few but very little and did not pay attention to the issue they were mechanical until a pro-gamer said he was playing better with mechanical keyboards than normal keyboards.

My Keyboard is one black keyswitches from SteelSeries.
Why Google just hired the Behavio Team
I have Cherry-G80's at home and at work.

MX Blue switches on an incredibly plain, dull matt plastic chassis that ages incredibly well.

They are one of the cheapest none-gaming mechanical keyboard (and the actual chassis is only fair to good) but the action is superb, completely ruined me for anything else.

http://www.cherry.de/pictures/produkt/gal_2000_G8x-3000_2_US...

I also really like the no-nonsense aesthetics.
To be fair, the comment was downvoted, which I accept, but if you disagree with something it's perfectly valid to voice that disagreement. If Karma is a measure of the validity of an opinion, HN becomes a meritocracy.
model M for about 20 years.

You quickly learn the difference between a PS/2 to USB CONVERTER which converts PS/2 to USB signals for about $25 and a PS/2 to USB ADAPTER which allows a modern keyboard which can "speak" either USB or PS/2 to physically plug into a PS/2 and costs $1.50. A genuine original model M requires a converter not an adapter.

Another genuine model M aspect not often discussed is you can pop the keycaps off the key with a bent paperclip and engrave emacs annotations on them and/or sharpie letter them and then 15 years later you'll still have to look at emacs keymappings even if you're a mostly VIM guy now. Its kinda like getting a tattoo although there's no convenient laser removal, so don't do it unless you're really sure. Every couple years I pop all my keycaps and put them in a tupperware with some dish soap and give them a shakey bath and they come out clean and the keyboard looks brand new.

For people who've never used/heard a model M, don't freak out about the noise. Its probably 20 dB down from office banter "my ball team is better than your ball team" or whatever. I mean if you're packed in so close than keyboard noise is a big deal, you're probably packed in so tight that there's a hundred other tightly packed issues so one more is no big deal. When your boss won't let you use a model M from home because its "too big" because you've gotta fit seven programmers into a 6x6 cube, the real problem isn't the size of the keyboard. Its not like a jackhammer. Your typical laserprinter is louder and more obnoxious.
Ashray, do the new middle class(programmers for example, people who came from poverty) behave any differently ? Is there a growing new middle class ?
I think these 3 slides really stand out, they show with how little code one can write serious software in Haskell...

1.
ACID (acid-compliant persistance on Haskell data types, with indexes)

http://dev.stephendiehl.com/hask/#(27)

2.
Pipes (program on streams of data)

http://dev.stephendiehl.com/hask/#(30)

3.
Scotty (micro web-framework, a la Sinatra or Flask, on top of the super fast Warp server)
http://dev.stephendiehl.com/hask/#(32)
For UK people I heartily recommend http://www.keyboardco.com/

I picked up a Filco Cherry MX Brown switch keyboard a few years ago and it's still going great: http://www.keyboardco.com/keyboard_details.asp?PRODUCT=646

It's the right balance between tactile feedback and just a little less noise than the blue switches.

I actually need another for my workplace (the one I already have is at home), and this time around I'm going for the ninja variant when they get it back in stock: http://www.keyboardco.com/keyboard_details.asp?PRODUCT=932
Yes,thank you. Exactly what I was thinking. Anything you can think of as an algorithm, someone else can think of too, and then they can test that instead of going through billions of combinations.

There's only two good pieces of password advice:

Use long, randomly generated passwords (16+ characters).
Don't use the same password on more than one site.

This can be accomplished with KeePass, LastPass, and there such utilities.
Are people ironically upvoting this because it's absolutely ridiculous to speak of "flat" icons? (what's next, "flat fonts"?)

Or is this one of those "HN is going to hell" moments I hear about?
> If Karma is a measure of the validity of an opinion, HN becomes a meritocracy.

Karma is a measure of time expended.
Soon HN will resemble the front page of reddit
As a developer, this bears repeating:

“Free” does not mean a single thing
from a legal licensing perspective.

You have to include an explicit license with your “free” work, otherwise developers wouldn’t—or at least shouldn’t—touch it with a ten-foot pole.

I have agonized over this when trying to find icons I could use for my open-source GitHub project, and it wasn’t easy. When I was looking into it, I compiled a short list of great icon sets and their respective licenses to wrap my head around whether I could use them in my project at all: http://pygm.us/QRelV0PW.

As a developer, I know how hard it is to figure out how to license your work, but licensing is one of those things we really, really need to understand and come to grips with.

And don’t get me started on contributor license agreements ...
I thought we left the ironic hipster stuff to DesignerNews these days ;)
That requires that you do something stupid to get a key logger installed on your machine. And yes, in that case you're screwed. However, you're far less likely to have that happen than some random site you're on getting hacked. You are one target, the site is thousands or millions.
City of God is amazing.
I can't be the only one here to have lost some.

Somewhere in my house, or perhaps at my old workplace, there is a USB stick with approx 250 bitcoins on it, the gains from early mining and experimenting. I'd backed them up before I rebuilt my main machine, and then didn't restore them immediately (mining was approaching diminishing returns and I gave up).

I'm pretty sure I haven't over-written them, but I also have no idea where they are. A few weeks ago I looked again, fruitlessly. I'm sure they'll turn up some day.
They were able to get attention from the governement because the french gov is trying to show that it can somehow control the economy. A lot of french are expecting the gov to protect them against the big. This is good PR for the gov at the right time.
Samsung Galaxy Note 3 to Feature New Design and Build Quality
Gun shop in France http://cryptogasm.com/webcams/webcam.php?id=4432
HN is a bit of a meritocracy. Since you get down-voting power when you hit 500 points (or was it 600)?
They forgot Batch.

http://adamwhitcroft.com/batch/
You need a way to roll the tech out. We've got tons of unknown tech if you search the marketplace hard enough. For example a couple people suggest the Truly Ergonomic website. But that's never going to sell me, because I have no idea how it actually feels compared to my "current" early 90s model M.

What we need is a middleman, maybe MLM, who will do keyboard "tupperware parties" or maybe a stealth middleman under the cover of business RSI prevention consulting. In the old days I could go to compusa and try keyboards, err... and looks like best buy is failing too now... so if you want to actually try a keyboard you're pretty much limited to walmart and the apple store and they've only got one POS to try.

Its interesting how a pretty core part of the clothing retailing business model is built around try before buy, but keyboards don't allow that. If I have 14 business shirts I'll try on the 15th before buying it to "make sure" even though if I totally screw up I still only have to wear it 1/15th of the time even if it doesn't fit perfectly. Yet the keyboard that I have to use every day for hours, eh, just order the cheapest, online, sight unseen, who cares if the employee's hands rot and fall off we'll just hire another...
I loved this quote from http://pipeline.corante.com/archives/2011/11/11/things_i_won...

Synthesizing polynitro compounds is no chocolate fondue party, either: if you picture a bunch of guys wheeling around drums of fuming nitric acid while singing the Anvil Chorus from Il Trovatore, you're not that far off the mark. You really have to beat the crap out of a molecule to get that many nitro groups on it, which means prolonged heating of things that you'd really rather not heat up at all.
Out of curiosity, would a key logger be able to capture of the contents of a cut and paste? I currently use 13 character randomly generated passwords and, usually, I don't type them in manually.
I didn't mention C :)

I wouldn't drop down to C ever at application level. There is virtually no need to do this these days without introducing more risks from a security and memory perspective and the inevitable situation of "integration hell". I'd rather throw it in a JVM than drop to C. Then again if I started with a JVM I wouldn't have the problem to start with as it solves both ends of the problem. The CLR is equally applicable here. Go hits the mark too.

From my experience here dealing with a massive 100kloc python project. Python maintenance:

a) Horrible to refactor. I mean really horrible. You don't get everything right the first time and when it comes to fixing that it's hell.

b) no type safety or contracts which is hell when working with other developers.

c) indentation issues which are totally horrible at merge time as it introduces a shit ton more work to do.

Reliability:

a) Some algorithms don't scale the same way as they do in other languages due to the points the article raises. It gets to the point that for something in Java is O(N), it can approach O(N^2) due to all the dict fudging and copying which is not good.

b) It's slow anyway - I mean really slow. If something feels slow, it is slow. PyPy may fix this but (c) below causes an issue as well.

c) Optimisations aren't consistent across python versions (consider how crappy IO was in the first py3k drop).

I wouldn't use Python for a new project now. The only utility I see is quick disposable bits of glue.
"Most garbage collected languages can't handle all the memory available on modern systems."

I don't think that has anything to do with the languages. I think that has everything to do with the quality of the memory manager implementation, and there is at least one memory manager that does deliver in this respect, namely C4.
He's got some good stuff on his website (didn't get much from the slides as I've only dabbled in Haskell a couple times).

http://www.stephendiehl.com/posts/essential_haskell.html

http://www.stephendiehl.com/posts/types.html
Have you considered making it clear that it's not maintained anymore? Add [not maintained] to the repo description or something.
Perhaps my point wasn't quite described as well as it could have been. What I meant to say was:

What distinguishes your product is not how it stores or presents the data but what value it derives or extracts from that data.

Most CRUD apps are just a form of lock in which provide no value past storing your stuff in one place. That covers pretty much the entire enterprise software space and most trendy startups these days.
Both the submission and the target of the submission dismiss dynamic typing as a source of slowdowns (in the unfortunately haughty, completely unsupported manner that is too common in the industry. It is, in effect, the head-in-the-sand approach: If you don't want something to be true, simply keep saying it isn't and somehow that will become reality), yet I guess we need to define what "slow" is then, using as an example an empirical test (ASM.JS) that certainly serves better than some people waving their hands about innovations in JIT compilers.

The primary optimization that ASM.JS brings is its static type system. With that, and the obvious benefits to the code path, intensive activities can be run at 1/2 native speed, versus the 1/12th of so native speed available with dynamic typing.

Is 1/12th native speed "slow"? In most cases -- where the code is the duct-tape that glues together native code (which is the case on web servers, admin scripts, etc), no, it isn't slow at all. But from a basic optimization perspective, asm.js sure seems to indict dynamic typing if you really care about squeezing every cycle's maximal output.
Where Will the Next Prozac Come From?
Would be interesting to know if there's any research on the number of site compromises vs desktop compromises.

There are still plenty of computers out there that are probably running vulnerable versions of Flash/Java etc. I imagine one of the biggest incentives to hack some random blog is to infest it with drive -by malware and compromise a bunch of machines if it has high traffic.

Also if you have a keylogger on a machine you can look for things that might be site admin passwords. So it wouldn't surprise me if there was a relatively symbiotic relationship.
This.

Integration is hell. This is a universal fact.

I'd rather pick a tool which doesn't add integration requirements!
Self-93, the language that pioneered this approach for dynamic native compilation, celebrates it 20th birthday this year.
A hardware keylogger, sitting between keyboard and machine? No.

A software trojan, that can capture keystrokes, mouse movements, selected text, screenshots... Most certainly yes. :(
That's fairly common in New Scientist headlines - see http://en.wikipedia.org/wiki/New_Scientist - in particular section 1.2.
Interesting article but a bizarre conclusion. We may not encounter another population bomb but we are in the process of living through one right now. "The longest period of exponential population growth for any organism… ever. " If that doesn't describe a population bomb, nothing does.
I find it would be nice to be able to tab , backspace and arrow key a bit faster. Not sure how much a mechanical keyboard would help there though.

While I agree in principle with planning, I often find that it's easier for me to write and refactor a bunch of times rather than try and get it perfect first time. So being able to type faster would give me slightly less friction per refactor.
Buy the gamer keyboard. The marketing ideal is gamers buy input devices and video cards (and games, obviously) so your finest input devices, which obviously cost the most, will be marketed as the gamer devices.

The marketing for code writers is usually focused on ... well they're pretty much off the marketing radar.

The marketing for english text writers is focused with laser like intensity on apple hardware. Turing completeness is not allowed in marketing, rather the outlook of how can you do desktop publishing without a mac laptop, there's special assembly language opcodes in the CPU that make macs the only way to do creative stuff. Also there's a fixation on location based marketing like you can only write english text worth reading in a coffee house on a laptop so an external keyboard is a no go.
subvim? :O awesome idea (although I wouldn't use it since I'm so used to my vim setup, but I could see lots of people using it)

I'm linking it here so people can find it:
https://github.com/fatih/subvim