skysight-inc/HackerNews huggingface dataset:
I think you're conflating the public/private divide with the college/university differences. I went to a public college, which avoids the issues inherent in enormous universities without the skyrocketing costs.
Sure there are things pointing to NK; but I believe this is intentional. Using an IP in NK, or one "associated with NK actors" doesn't prove it is NK. Consider all the discussion for piracy. IP doesn't prove anything.

I don't think the action was directed clearly by high level NK officials.

Consider; what if the hackers had said "We are NK, war on USA" from the very start. Would that change anything? Nope. Just because something appears to be something doesn't mean it is.

Also; why is the evidence classified? The public already has the leaked data in immense amounts... many groups already have the malware itself that was used... How about they actually show the evidence instead of just pointing fingers.

Anyone can go "yeah it's NK; they do this sort of thing".
"I continue to be blown away by Hacker News' collective refusal to believe that NK is likely behind this hack."

Skepticism is healthy and encourages discussion. I am not observing a "collective refusal" as you put it, but instead a strong skepticism from the tech community (a community who has a good basis to interpret this story with).

"Do you all also doubt that they were behind the other hacks mentioned by the FBI (e.g. on South Korean banks and media outlets)? Is it 'incredibly dangerous' to accuse them of that as well?"

The discussion is around a specific cybersecurity attack, not North Korea's capabilities, so that's a bit of a straw man argument.

"I understand the post-Iraq mentality of demanding evidence before going to war with a country, but that's not what's going on here."

No rational person is making a case for war over this, but the fact that you mention going to war over this demonstrates why it is incredibly dangerous to make these assumptions about North Korea without looking at all the available evidence.

"Also, given how mouthy North Korea is, nobody finds it telling that other than a single denial on December 7th, they've been quiet?"

Quite the opposite. I think it would fit the profile if North Korea was being mouthy at this point in time. Their silence would suggest this is a delicate situation for them politically and they don't know how to respond to it.
This. Thermal expansion is the show-stopper. Unless and until they solve this problem (and I don't see any practical solution) everything else is moot.
The "nearly all of them have day jobs" seems to clearly refer to the 100 engineers mentioned earlier in the paragraph. I think trose's description of them as working professionals is probably correct.

The 25 students would not be considered engineers -- in fact, it doesn't even sound like they're studying to be engineers.
Original author here.

I don't think we really disagree there. I might not have made it clear enough, but I mentioned that there are obvious things that need more consideration, like Kissmetric's or Skylight's data aggregation and massaging.

That said, for many (most?) that culprit is not easy to identify in the early stages and many apps are still basically glorified CRUD apps where that is a non-issue to begin with.

For example, a few years back we ran a much publicized vote for an unidentified social network with more than a billion users. It ran on a run-off-the-mill Monorails[1] app and MySQL, without any hitches. If anything, we vastly overestimated the number of app servers needed (a couple dozen IIRC).

Of course it was a fairly simple use case, just an example that high load by itself doesn't mean much.

[1] A term commonly used for a web app that is a single Rails application, as opposed to a more SOA-style app split in smaller pieces.
exec.Command() is a more elegant approach, I've written about this back in June, my write-up was specific to an HTTP server: http://grisha.org/blog/2014/06/03/graceful-restart-in-golang...

I think the article also misses an important step - you need to let the new process to initialize itself (e.g. read its config files, connect to db, etc), and then signal the parent that it is ready to accept connections, only at which point the parent stops accepting. The important point here is that the child may fail to init, in which case the parent should carry on as if nothing happened.
It is indeed an interesting example of information asymmetry. An economic historian at LSE who I know actually traces the origins of modern advertising to the rise of "brand-name" medicines. Back in the late 17th century, early newspapers started running early ads for proprietary drug recipes that cured things like plague and gout. These were the earliest products to be sold via mass media and to be "branded" using the name of the preparer. I.e. in a world where a consumer would simply go to "Shoe Street" to buy shoes, these early apothecaries pioneered the idea of using mass media to persuade consumers not to buy a generic gout cure, but instead to go specifically to, say, Mr. Merck's shop to buy "Merck's gout elixir" (I use that example because the Merck corporation actually does trace its origins to a late 17th century apothecary).
> But that does not preclude them from eventually releasing a 2.0 which does break compatibility with 1.0.

Which lets us relive the fun times of eg. Dlang 2.0 release or Py3k
Keeping Pattern Libraries in Sync
I use colemak and I love it but I do agree with him about the he bigram in colemak. At this point though, I don't think his improvements would make it worthwhile for me to learn Workman.

Switching to Colemak was very good for me but it also was a big time investment since the loss of productivity when learning a new keyboard layout is not negligible. I had wrist problems which stopped after switching to Colemak so I really had an extra incentive to slog through the tranaition.
Thanks for the Close.io (http://close.io/) shoutouts Patrick!

If anyone needs help doing similar Close.io API integrations, feel free to reach out at phil@close.io - would be happy to help.
I 95% agree with this article, but think that 5% is an important disagreement.

Background: I spent most of the last decade writing, maintaining, and managing a large enterprise app that had to evolve from its .NET 1.1 foundations to the present day. Our code base looked almost precisely like the one talked about in that article, and with the very real problems mentioned there.

But...

1. Sometimes the productivity wins of a new approach are serious enough that it's worth taking the consistency hit. I'd argue that ORMs, for instance, really are worth it compared to the quasi-code-gen ADO.NET layer. Switching to those midway through the project introduced inconsistency, but all future development done with the ORM was much faster (and more reliable) than the stuff done with the old approach.

(And yes, this is a dangerous argument, because it's easy to convince yourself that it's true all the time, if you want an excuse to use a new technology. But if applied skeptically, it really is true sometimes.)

2. Developer morale is a thing. "You can only use technology invented in 2003, none of this fancy .NET 2.0 stuff, and haha LINQ, are you kidding me?" is going to crush people's spirits, whereas "sure, let's try this new module out using ASP.NET MVC" will introduce an inconsistency into the codebase, but will keep developers more engaged and learning new things (and who knows, maybe this experiment will prove to be one of those ones that gives you a big productivity win).

You have to be careful with that, because you can't literally try out every crazy new thing, but you also can't ignore everything new in the name of consistency and expect anyone to want to work on the project.
>The time learning those languages involuntarily is obviously not spent doing anything else. Is that not negative enough for you?

No, it is not enough for me. The same could be said of any other school subject you don't have an interest in, a sort of grown up version of "When am I ever going to use trigonometry?" complaint you hear out of school kids. But since I'm a firm believer in "historical justice and other bullshit," I think we're at an impasse here.
Well, we are trying to counter all the pharma ads!

But really, we hear from users all the time that they get confused in the cold and flu section of the pharmacy. We hope to help address this problem.
They're getting rid of trying to do their own CPU dispatching. (Some people call this "lightweight threads" or "green threads"; Go's "goroutines" work that way.) That simplifies things considerably.

There's a compile-time optimization which does many of the things people want to do with such threads. If you have two tasks communicating over a channel or queue, only one task writes to the queue, only one task reads from the queue, and the maximum length of the queue is 1, the code can be compiled as a coroutine. Go may get that optimization at some point; it's been discussed.

(Things that have been learned about Go goroutines: 1) the above case is moderately common, 2) for "select", the most common case is N=1 alternatives, followed by N=2. N>2 is rare. Go has special case code for N=1, and the case for N>1 is very general and does a lot of dynamic allocation. A special case for N=2, which in practice is usually read-or-timeout/abort, would be useful.)
Can't believe it was not in HN yet
And describing something you try to avoid as "retarded" is not exactly "polite".
I guess symbols should not need shift in any case for a programmer. Like {} [] <> #%^ etc
> Maybe I'm not getting the point of this, but wouldn't it be easier and better to fork Firefox or Chrome and strip them down.

Not for the goals of this project, no. All existing browsers, including Firefox and Chrome, are large C++ codebases with histories going back to the 90's. This project wants to use a safer language, in this case Java - which would avoid the large amount of vulnerabilities we see in C++ codebases that are not possible in Java. The Servo project is writing a new browser in Rust for similar reasons.

It's true that running in private mode, disabling services and features, etc., can get you a lot of security in one sense. But there is another sense of security in which C++ is imperfect.
Hey, I'm an MD at Iodine. Basically, zinc works. A Cochrane meta-analysis from 2013 showed that zinc lozenges reduce the severity and duration of common cold symptoms. It’s the closest thing we have yet to a cure for the common cold. Get the lozenges in particular (other forms don’t seem to work as well), and take ‘em on a full stomach or you can get really nauseated.

http://summaries.cochrane.org/CD001364/ARI_zinc-for-the-comm...
How to Send Email Like a Startup: Chapter 1
The Greatest Landscape Photos of All Time
Ask HN: What have you accomplished in 2014?
How System Calls Work on Linux
Sure, not a problem:

"A keep-alive is a small piece of data transmitted between a client and a server to ensure that the connection is still open or to keep the connection open. Many protocols implement this as a way of cleaning up dead connections to the server. If a client does not respond, the connection is closed.

SSH does not enable this by default. There are pros and cons to this. A major pro is that under a lot of conditions if you disconnect from the Internet, your connection will be usable when you reconnect. For those who drop out of WiFi a lot, this is a major plus when you discover you don't need to login again."

Source: http://www.symkat.com/ssh-tips-and-tricks-you-need

There's probably better sources out there, that was just one of the top results in Google as, if I'm honest, I'm not an expert on this either.
Sure. I've used Dvorak about 99% of the time since about 2001-2002. Except on my phone; I use QWERTY there, because it's a completely separate skill and the different layouts don't make any difference when you're typing one-fingered (Android's Gesture typing). I actually just tried switching and typing a few sentences, and I keep defaulting to QWERTY gestures.

I can still type QWERTY if I need to, even though I have barely used it in the past 13 years or so, but it takes me a few minutes to adjust and get up to speed. This happens if I need to use someone else's machine, which doesn't happen a lot. They wonder why I'm suddenly typing like an orangutan. But it goes away after maybe 10 minutes, then I'm up to maybe 70% of my Dvorak speed which is good enough for most short-term purposes. It still feels awkward to type QWERTY, so I try not to do it for more than a couple minutes.

(Interestingly, most of the problem when switching comes from punctuation, the muscle memory for typing punctuation seems to be separate in the brain. I noticed this when I was first learning Dvorak. I'd type 'v' instead of periods all the time, even when I was reasonably fluent with typing letters. Now the same thing happens in reverse, where I'll type 'e' or 'w' instead of periods or commas if I'm typing QWERTY.)

Overall, the fact that I'm using a different keyboard layout isn't something that I think about much. I'd be surprised if I'd even thought about it more than twice in the last six months.
Experiment 21: A New Take on 2048/Threes
You can't imagine how many times that crossed my mind before and while writing the article. FWIW, much of it is not Rails-specific by any means, and we'll always have a new crop of developers asking these questions.
Ha - Coolermaster brought out a CM Storm with Cherry MX Green keys. They're like blue, but the springs are thicker, requiring more force. I found it on Amazon.

I'm crazy about that keyboard, love it very much. Usually I switch between that one, and my TypeMatrix 2030 USB. Cause they're both so nice. :-)
I think the real racket is that people are taking medications to suppress cold symptoms in the first place. A healthy adult should be out no more than a week from a strong cold/flu. That wouldn't be a big deal except people get so little time off from work they don't want to waste it on a cold.

Wether they spend $10 on symptom suppressors or $50 is besides the point. Taking medications for what your body should be capable of handling with proper nutrition and rest cannot be healthy.
But branding does have an impact on the effectiveness of some over-the-counter medicines (because of the placebo effect):

>The effect of branding--that is, the labelling and marketing--of a well-known proprietary analgesic used to treat headaches was studied in a sample of women given a branded or unbranded form with either an inert or an active formulation....The findings showed that branded tablets were overall significantly more effective than unbranded tablets in relieving headaches.

http://www.ncbi.nlm.nih.gov/pmc/articles/PMC1505530/
Kepler Spacecraft Finds New ‘Super-Earth’ 180 Light-Years Away
The US gains literally nothing pointing the finger at North Korea.

It also loses nothing, which might be the case if Russia or China were behind the attacks.
Or perhaps something without such stark, binary conclusions:

The NSA has much competence, but not omniscience. There's indirect evidence of overlap with NK hacking activities.

Maybe the evidence means NK was the prime mover. Or maybe it means NK got invited in later, during the many months of likely compromise. Or maybe it means NK was intentionally implicated ("framed") by others. Or maybe it's a coincidence of many teams working the same tools/pathways/compromised servers.

Certain agencies and people gain politically – in budget or prestige or minimization-of-embarrassment – by leaning towards the "finger NK" call. There's enough murky evidence it's defensible, whether true or not, and in any case hand-waving about confidential "sources and methods" makes the call low-risk. Who else are people going to believe?

So the NK call goes out, and no one's competence or veracity is really on the line.
Counter to what? One of the main points of the article was exactly what you wrote in your second sentence.
There's definitely the stereotypical "hacker"/techie person you mention in San Francisco and Silicon Valley but there's also every other type of person you can imagine. Generally we have a "live and let live" mentality so people are free to be who they want, even if it's offensive to you.

Regarding some specific comments:

Hipsterish - Yeah, we are hipsterish because we think of ourselves as trendy. We also are more laid back than New York so t-shirts, jeans, sweatpants, sandals, are all a-ok with us.

Yoga - What's wrong with liking yoga? Stretching and meditation have been shown to help clear the mind and improve your mental wellness.

Organic Food - We are the pioneers of the organic food movement and have some of the best food in the world. It's just silly to hate organic food on the basis that it's pesticide free. People are passionate about their causes here so they take it to extremes.

Feminists - Okay, not touching this one with a ten-foot pole.

Spirit Animals - I'm not sure where this stereotype came from but I have to admit I have had multiple conversations at different parties about what everyone's spirit animal is.

Roam around the Bay Area, it's a big place, and you'll find people you are interested in hanging out with. You'll find more diversity in Oakland if that's what you're looking for (although there's probably more feminists and activists as well). Stay away from Berkeley because Yoga + Organic Food.

Enjoy your stay.
The message board that you posted this to. Written in Arc which is a dialect of lisp.
A Picture Captures Planets Waiting to Be Born
A couple links I have stashed:
http://coderstv.com/
http://confreaks.com/
http://www.dotconferences.eu/
http://brikis98.blogspot.com/2014/05/must-see-tech-talks-for...
all that, plus, re the question at the end of the article about chooseBest:

chooseBest ch ws = maximumBy (compare `on` (\w -> M.findWithDefault 0 w ws))
(S.toList ch)

this is closer to what's in Norvig's article - a single pass over the elements of 'ch', taking the one whose entry in the 'ws' set has the highest count - treating words not in the set as having a count of 0. No sort required. (maximumBy is from Data.List, on is from Data.Function)
Hackers demand Sony remove all signs The Interview existed, “or else..”
Short-term it may look like there's less freedom since it's harder to use M:N threading (and 1:1 threading and M:N threading don't necessarily work perfectly together), but remember that the choice there is 1:1 threading with overhead and M:N threading with overhead.

Long term, we can have libraries that provide M:N threading with minimal overhead; and also libraries that provide 1:1 & M:N together like the old std (with the associated overhead).

That is, the programmer is getting more flexibility, just not right now (especially with Cargo, which makes it particularly easy to use external libraries). The team is trying to take a longer term view focusing std on safe interfaces to the OS primitives, which can then be used to build fancier/more abstract libraries more easily.
This thread is filled with them, but here is one:

https://news.ycombinator.com/item?id=8773230
My problem with buying the store brand generics is I don't know how well they are tested and regulated. If it says it is 200mg, how can I trust it?
If i not mistaken, you implement the project in the Chisel hardware language. How large a productivity benefit has it given you versus standard HDL's ?
"Ahlborn says, and Musk's cost estimate of $6-10 billion for a 400-mile stretch of Hyperloop is on point, based on the team's work."

Obviously this is a fluff piece, and he has incentive to not play up any problems with the budget, but it's stated there openly. You've stated the opposite, since I don't have evidence from either of you, why exactly should I consider your opinion more worthy than a group of many competent engineers?
So would a better solution be to use something like:

public static doSomething(Database db){
db.write("did something"
}
I'm surprised at all the negativity. Advocating C++/Java instead of Meteor/Node.js makes about as much sense in my opinion as comparing 18-wheeler trucks to Smart cars, and I wonder if the people who do so have really worked with the latter or are just dismissing it out of hand. The right tool for the job and all that, and you want your toolbox to be comprehensive, right? No serious craftsman ever said "Wrenches? Oh, we're a strictly pliers-only shop".

At my company, we have critical API services with SLA's that will cost us $$$ if broken. We develop on the JVM with Scala, the number of currently open bugs can be counted on one hand, with millions of daily users. But some of the dashboards for monitoring the service are Node.js. Want a new fancy gauge on that board that measures X by interacting with API Y? There's probably a NPM module for that, so give me 30 minutes, OK? I see that the web frontend serving is increasingly being done in Node as well, because it's a good fit for that environment.

Don't get married to your platform! Try many things, and figure out where on the spectrum the tools fit and use them where appropriate. I've done many years of C++ server and embedded development, but working with Meteor just gives me the biggest dumb grin. It's fun!

Node is the fastest growing ecosystem today, and it's not because everyone using it are idiots. Meteor takes that energy and kicks the out-of-box productivity up to 11. Java/Scala/Go/C++ are and will continue to be the workhorses of the Internet when performance and stability are of the utmost importance. So, no matter where on the platform spectrum you're currently on, go check out what's happening at the other end!
Yes, these are also serious problems, but I'm not sure what the relevance is here.
LiveCode Open-Sources Its Natural Language Mobile App Coding Platform
The portable version (for Linux and other OSes) is unmaintained and the last release is from 2006. I don't use it on that basis alone.

Also, the last release of non-portable openntpd is from 2009.