skysight-inc/HackerNews huggingface dataset:
A real keyboard for programmers is a keyboard that is programmable.

ha! no. seriously, you can change any key you want on the keyboard to suit your preference coding/language style
If Windows was open-sourced, it would end up even more of a mess for the average person. OEM's would customise and skin every last bit of it. It would become a monster.
Without the threat of someone more extreme, I don't believe someone like MLK can be terribly effective. I also don't think someone like MLK can work in a repressive regime which isn't generally subject to public will, or when trying to enforce human rights which are constitutionally protected, strongly wanted by a small affected population, but meaningless to the greater population.

I can't see 50-80 year old non-technical voters caring about key escrow or mandatory data retention, even though it's an infringement of 1A/2A/4A/5A/6A/14A/+.

(It's not violence per se, it's extremism. RMS is a copyright extremist, and that makes things easier for people like Lessig I think. Gilmore is a fly-without-papers extremist, etc.)
Not only that, but su rather than sudo. My guess is that they'll need another $10B to plug this hacker backdoor.
> In words, deeds and dollars, intelligence agencies remain fixed on terrorism as the gravest threat to national security, which is listed first among five “mission objectives.”

Why?

I understand the tragedy of 9/11. With that in mind, it is a mistake is to treat terrorism as an existential threat to the state. Perhaps someone with a more formal background in history can speak to this, but I do not think there is an example of a nation falling because of terrorism.

Point: there is a widespread purported belief in western democracies, particularly the United States and Great Britain, that one or more terrorist attacks could cause institutional collapse. This is ridiculous, however well-intentioned it might have started out as being.
My English textbook in high school had the text of the speech, and on MLK day we watched a portion of the video.
No, we've always been at war with Eastasia.
Spinning the story so if fits the "Snowden is a traitor" agenda.

>> "You hire smart people. Brilliant people get you in trouble.”

What does that even mean?
All the time, along with the arrow keys and numeric keypad. i hurt my shoulder once and had to type one-handed for a week. During that week the much hated caps lock key was a savior.
Pretty sure we read this in my senior english class in high school. (Under the general topic of persuasion/argument/rhetoric.)
The use of the word "impersonated" stinks to high heaven. There is a big difference between an admin logging in as someone else and someone "impersonating" someone on TV or over the phone.

That would be like having secret documents in a drawer marked "John Smith," then saying that someone who opened that drawer and took some documents was "impersonating" John Smith.

Then there's the bit about "hiring brilliant people." What's so brilliant about someone with root access having access to everything? Nothing. That's what root access enables. It's not a case of Snowden's brilliance. It's a case of the NSA's administrative incompetence: there should be auditing in place.

EDIT: So there was RBAC in place. Evidently, the implementation was botched. Amounts to the same thing: "security theater." This actually bolsters Snowden's case that whistleblowing was justified.
Thanks, I'll take you up on that. I assume that the e-mail in you HN profile is valid?
Fwiw I use the Windows key all the time, on Linux no less. It's either bound to a launcher (Synapse, Gnome-Do), or used in hotkey sequences like Linux control commands ([Win]-[l] = screen lock, etc).
All of this points directly to the US Government's continued rivalry with the Chinese Government, especially the emphasis on secrecy and authoritarianism.

One has to wonder if this is the same strategy used to bring down the Soviets, namely a war of attrition where one tries to out-spend an opponent through consistent escalation -- until the opponent runs out of resources to maintain the escalation. We know how that ended.
The fact that a private key is used doesn't mean HTTPS and code signing are the same.

HTTPS says, "The communications you send to the server cannot be intercepted and changed between the client and server, and the identity of the server you're connecting to has been verified by one of your trusted certificate authorities."

HTTPS promises that your communications cannot be snooped on, and the person you're talking to is verified by a mutually agreed upon third-party.

Code signing does something entirely different. Code signing says, "The code you're about to run was written by the developer specified in the signing certificate, and has not been modified since it was signed. The identity of the developer has been verified by one of your trusted certificate authorities."

So the practical difference is this:

Say your browser requests https://domain.com/random.js. HTTP ensures that you're connecting to domain.com, and that your communications won't be changed or observed in transit. However, it does not guarantee that some malicious third-party didn't overwrite random.js on the server. With code signing, you can accomplish that. An author can "sign" a code package so that any alterations to the code itself would cause a certificate invalidation.
It's definitely a lot easier to use those when I mouse left-handed (as I sometimes do due to pain in my right shoulder).
I think it might be a little more complex than that, but in essence, yes. In these types of environments you will have certificates (browser based or otherwise), he could have fabricated digital keys or stolen these from some type of key store, and then used them on his behalf.

> NSA Director Keith Alexander told the House Permanent Select Committee on Intelligence that Snowden fabricated digital keys that gave him access to areas way above his clearance as a low-level contractor and systems administrator. [1]

[1] http://www.businessinsider.com/edward-snowden-copied-a-lot-o...
Bringing Customers to Sprint Planning Sessions
Throughout my college years, I had a poster with his entire speech on one of my walls. Unfortunately, tape is not good to posters so I don't have it anymore. I also had John Lennon's Imagine as poster.
The same reason a secretary would have the keys to unlock her boss' secret file drawer. Convenience.
Forget the Weatherman. Armed with Smartphones, We Will Become the Weathercrowd
Yeah, I've been using a Kinesis for more than a decade. I've never gotten around to doing the full remap, however.
"I think there should be a 100% remappable keyboard."

You have one. It's the one you typed that post on. A keyboard just emits numbers, it's up to the computer OS to determine what to do with it.

Exactly how to customize your keyboard is OS-specific, but it can be done in all the major ones, as far as I know. (Can't commit to Windows 8. Windows 7 did require some unpleasant registry hacking for changing caps lock.)

If you want control over what your keyboard does, take it.

Incidentally, the big key to trying things out is that if you remap a new function onto Caps Lock and you want to see if it works for you, be sure to demap the other copy of the key. If you make Caps Lock a new Backspace, you'll never use it. If you make Caps Lock a new Backspace, and then demap the current one, you'll literally be adjusted in a matter of minutes, and if you decide you don't like it, returning is also a matter of minutes.

Once you work out what you need to do for your OS, keyboard layout experimentation is far more rapid than people realize, I think.
FBI response to MLK "I Have a Dream" speech was massive surveillance operation
Speaking from experience, detailed auditing is covered by even the most basic Windows Server admin course. It's not a question of brilliance.
I'm highly skeptical of the reporting. He may have impersonated other accounts to cover his tracks but if he had physical access to a system or the user database of a system then he was "authorized" to see all of the data on that system. Or they are doing IT security worse in that office than it is usually done.
No. I just googled now, but there seems to be a lot of stuff named Z-code and I'm not sure what exacly am I looking for.

Can you give me some URL?
There are two types of productivity:

1) Are you doing the right things?

2) Are you doing things right?

They can be imprecisely measured, but every metric has problems and can be gamed. Combining the measurements is extremely difficult.

Let's start with 1 - doing the right things. Someone who chooses to have their team work on 3 high value tasks, and stops their early on 6 low value tasks is by one definition more productive than someone who forces their team to do all 9 things. Or at the very least they are more effective. This is what Fowler is getting at.

On point 2... Let's assume that the appropriateness of what you are doing is immaterial. How fast are you doing it? This can be somewhat approximated. You can say "Speed versus function points" or "Speed versus budget" or "Speed versus other teams achieving the same output" and then bake in rework into the speed. All of these metrics are doable. Lines of code isn't a good base though.

The real question is, "What are you going to do with all of this productivity data?" If the answer is systemic improvement, you're on the right track. If you try to turn it into personal performance (or salary) then people wind up gaming the metrics.
Yeah, I didn't mean to say it was the sole reason or even a primary reason, but it's a contributing factor. The risk-averse culture (investment and employees), and lack of exemplars of successful entrepreneurs (vs. going into banking, government, etc.) is probably the biggest problem.

I get the general perception top tier Sand Hill VCs are now willing to invest in Series B or later (and some Series A) in Europe. Costs have dropped, even in Europe, so you can get pretty far on $50-100k in savings for a seed round. So the big problem in the long term is probably risk-aversion in hiring, vs. raising money.
Exactly. That's why I'm advocating for a signed JavaScript/HTML/webapp standard of some sort.
Actually, one of my motivations to build this stems from Sails.js. Its ORM, Waterline, currently doesn't support associations between resources, so I built a persistence layer that does that myself. This is crucial because in order to fully support the concept of HATEOAS, resources need to be able to link to each other.

In the future, I might actually cut out Express from this framework, but still accept Connect middleware. The reason for that is because I don't want the user to be concerned about routing or having to manually set routes, so a thinner router might be in order.
Your last sentence is exactly right. There are significant benefits to building a profession that is predictable and well-defined. Ensuring a reasonable lower bound reduces the risk of failure significantly.

The open questions are 1) whether it's possible to do that, and 2) whether it's possible to do that without inadvertently imposing an upper bound. Common wisdom among software developers is that it is not possible and even if it was it would impose a very tight upper bound. But as far as I know, that common wisdom is just guess work. No one has found a good solution yet, but there's also no proof that there is not one. That's why so many people continue to try.
Pedantry never hurt anybody. He's a Firefox developer, the clarifications are interesting.
That is not true if you're using code signing. If someone compromises the server, they can overwrite the files, but they cannot forge code signing without additional access to code signing private keys.

Security is achieved through layers. No single layer can protect you from everything, but we lay down the gauntlet in the hopes that an attacker will encounter a road block that they cannot pass.
I don't know what specific language GP had in mind, but I would guess it's probably one of OCaml, F# or Scala. Or Rust - did Rust development start before 2010? Or one of the Lisps, where Clojure has a bit "worse" (or better, depending on who you ask:)) imperative story than Racket (the latter has mutable lists and hashes, although they are discouraged and not the default), but both are on the way to popularity (I still believe in this) and have mixed, imperative, generic, OO (Racket) and functional features. Of course Common Lisp, which is similarly a mix of paradigms, has a chance to make a great comeback too. There's also JavaScript, especially with improvements it's going to get in the future, but this damned thing already is 9th according to TIOBE[1].

Honestly, I wouldn't be very disappointed if it proved to be like this. All these languages are interesting and in 7 years time could become true "languages of the future". However, despite hoping so, I don't believe it will come true.

Most probably some languages will just move slightly higher with others moving a bit lower. Java will remain in the first 3, at the very least. Maybe Objective-C will swap places with C++ and Python or Ruby (or both) will come close to PHP. That's all I think will change, although it would be nice to see Rust instead of C++ for example or Clojure in place of (Visual) Basic.

Also, all the currently most popular languages are this young because there was a major paradigm shift from imperative to OO in the '80. Without similar shift happening sometime soon we will be stuck with Java not just to 2020, but to 2040 at least :)

[1] http://www.tiobe.com/index.php/content/paperinfo/tpci/index....
Terrorism is vague enough that you can define it as "anything that opposes the advancement of the state," which is why it appeals so much to policy-makers, war hawks, and anybody invested in ever-expanding government budgets.

It's also why it frightens and disturbs libertarians so much in that "terrorism" can be used to justify any and all expenditures, including the curtailment of individual rights and freedoms. The USG will be undergoing modernization of national infrastructure over the next 3.5 years and they will be quite forceful about capturing control over critical infrastructure (regardless of whether it's privately owned or not).
All the keys in the lower left corner get the pinky, unless the pinky is already holding the shift or ctrl (in which case, hey! I hit it with my thumb! Who knew...) The ones in the lower right can go their entire lives unpressed.
We're all brown moties [1] Keyboards are fundamentally a personal preference, and perhaps like instruments are a function of both the 'action' (key movement) and the layout.

I abhor the location of capslock/control because when I was first learning to program I only used terminals where control was the key where caps lock is. When I was forced to used keyboards that had control down at the lower left I went from using EMACS to using vi because of the annoyance.

That said, folks can adapt and much of what you do is muscle memory anyway. On your brackets idea I actually like that brackets are matched both unshifted and shifted on my keyboard. so {} and [] are both easy to type. Since I rarely type ctrl-] or ctrl-[ having those keys map to ( and ) might be useful but I don't look at my keyboard when I type so I really can't say.

For me it is all about reliably hitting the key I mean to hit. If I can do that I can adapt to most things.

[1] See "The Mote in God's Eye" by Pournelle.
I don't think USB precludes NKRO, see this:

http://geekhack.org/index.php?topic=17458.0
Jeff Bezos on the Founding of Amazon (1998)
You could have said the same about Amazon before they launched Kindle
I believe both fields have formalized codes of eithics, tho. you can be disbasrred or struck off the list of licesed practitioners for 'lying'. That being said, their is a continuum on considerations, even professionally. Physicians need to maintain a diplomatic bedside manner; counsel needs to advocate adversarially the strongest position, etc. In these examples, the notion of black and white is best not clung too strenuously. Perjury, negligence, and fruadulen billing, etc of course are at the othe end of the spectrum.
History tells us that these agencies routinely redefine mundane concepts, so your point depends entirely on what they mean by "digital key."
This article reads like something out of Asimov's The Foundation series.

The author seems to suggest that secrets will be impossible in the future because no one will have any loyalty to one organization.

Oh, and we can blame the Economy, the Internet, and Facebook for that.
Completely respect where you're coming from, but totally disagree. I made a few abortive switches to Vim that didn't last a week because my productivity was too hampered and the environment too extreme & foreign.

To a newcomer like me, Vim's built-in help was less than worthless, since you pretty much need to know the Vim term for what you're looking up to find it. Googling around wasn't much more effective (there's a lot of garbage in the Wikia for Vim that comes up at the top of many searches).

In the end, I needed to read these two "gentle" introductions to Vim to even understand what it was all about:

http://stevelosh.com/blog/2010/09/coming-home-to-vim/

http://yehudakatz.com/2010/07/29/everyone-who-tried-to-convi...

…and then I needed a mostly-well-documented distro like Janus (https://github.com/carlhuda/janus) to ensure that my productivity wouldn't take a huge hit those first few weeks.

Some folks can probably go all-in cold turkey, but I needed the training wheels.
I think too light, but I don't think I've ever got the concept straight in my head. I thought it was a mapper from a URL parameter to a function - the first two code examples in http://web.archive.org/web/20130402141837/http://edorian.pos... are what I understood it to be.

TL;DR: I think Silex has changed a lot since I looked at it. I can't give you a good answer.
... I want this integrated into the shell on my ubuntu machine. Give me a big freaking sidebar panel with this thing on it.
> * There are people who use their thumbs to press Alt (or cmd on a mac). That would never have occurred to me (either to do, or that anybody had ever done so).*

What finger do you use for your left alt key? The thumb has always felt very natural to me, since the use of any other finger would require a significantly longer (and more awkward) travel distance, given the other 4 fingers are somewhere near the home row.
Read the history of copyright -- the Star Chamber, the Stationer's company, and how publishers lobbied for copyrights (using authors as a convenient excuse). Seriously, you should look at the actual history of copyright law. It was not created for the sake of artists. It was not created for moral reasons. It was invented for purely political and business-motivated reasons, nothing more.

"The majority of artists feel protected by copyright law"

So what? The point of copyrights is not to protect artists. The point of copyrights, at least in the United States, is to promote the progress of science and useful arts. The question is not about what artists feel, but about whether the majority of people feel that copyrights are working in the best interests of society. I suspect that most people would not care one way or the other about copyright if you were to ask, because most people ignore copyrights.

I also have my doubts about the majority of artists feeling protected by copyright law. Most musicians, authors, actors, painters, etc. are not even paid enough to live on and have to take second jobs. Either they have truly mastered doublethink or copyright is not really providing those creative workers with as much protection as we are expected to believe. This is under the current copyright system, which features the longest terms in the history of American copyrights and some of the most expansive copyright law ever seen.
To be honest, having used Django since 1.3, there are things needed to be done to port to 1.4, 1.5 etc, but they aren't hugely serious.
Honestly, I agree. How is any of this news for any Vim user? It's the same old plugin everyone's been using for a long time now.
I know I'll get downvoted for this. Please be a contributing community member of HN and state why.

Have any of the NSA leaks told us anything we don't know? Haven't the majority of the leaks told our foreign enemies how to avoid being tracked more than anything? I have yet to see any serious abuse of the NSA's power. The fact that they know that low level employees were spying on potential love interests means that they have a system in place to track such abuses. Leaking those kind of emails can be spun to state the opposite, when those emails are direct evidence that such abuses are tracked and presumably punished.

I've seen articles that have said "what if they use this power to subvert political dissidents" Well, what if they actually have checks built into this system as they have claimed and this new information proves? Such rumor spinning gets us nowhere as a society. Wouldn't that make Snowden a spy with his own self interests at heart, not the interests of the American people? Leaking piece-meal like he has is in his interests, not ours.

http://en.wikipedia.org/wiki/2013_mass_surveillance_disclosu...

Look at the scope of these systems. The fact that no abuses have come up (locally) is quite telling, imho. When this same type of hardware is in the hands of countries like China, we see these abuses. Is China seeing something we don't and just not telling us? I highly doubt it.
NSA surveillance photo of gopher team leaked
Maybe.

They should definitely open source .net now though. They aren't showing it the love it deserves
I've blogged a bit about what I want in a keyboard [0]. What I'm currently missing is chorded keys for symbols. (ie having them on the home row with a modifier key). I think that would actually help programmers. The problem is is that my Python specific symbols layer is going go be less than optimal for a C/Java/... programmer.

0-http://hairysun.com/blog/2013/04/02/oh-ergonomic-keyboard/
Agreed. Your warm squishy egalitarian philosophy has nothing to do with what it takes to build software or launch a startup. Unforgiving reality is the rock upon which ideology founders
The fact that discrimination seems natural means that we need to fight against it consciously, not rationalize it as acceptable.

If you value diversity, equality, etc, then you have to actively monitor your own discriminatory tendencies and lead with respect, compassion, love instead of rationality and pattern matching.
Fitness Flop: 2 weeks without my Jawbone Up
There are two kinds of programmers with massive productivity benefits to an organization:

1 - Those that can identify what needs to be done at a level deeper than the end users, can communicate very well, and can code reasonably well. (Coding well enough to understand complexity, and can do things on the fly if needed)

2 - Those who appreciate the difficulties that users have, and have an enormous technical toolset to bring to bear on tough problems.

Much performance literature says, "Play to your strengths" but when people in batch 1 already know their end users in and out, it helps to develop technical skills. And people in bucket 2 - when they make the leap to deeply understand their customer's business, they're extremely powerful. This is also why many firms like to hire CS majors for non-CS jobs.
I fail to understand why waiting five seconds to generate a report that will impact my business decisions is "unacceptable". I have numerous reports I've implemented that take over a minute to generate; they are complex queries that sometimes involve interesting statistics, and the idea of calling them outdated solely because they don't return data in a fraction of a second seems like a fundamental misunderstanding of what businesses do with reports.