skysight-inc/HackerNews huggingface dataset:
> They look like ordinary bad keyboards.

They aren't (in my opinion, and by basis of the construction thereof). The keyboards they carry are japanese imports most of which use Cherry switches. They also, unlike the Das Keyboard, have well built controllers. Pricey, but worth it. I adore the Majestouch Click Otakus that I got from Elitekeyboards.

Contoured keyboards are in some cases an acquired taste, in others unusable. I have an old hand injury that makes it tough for me to use something like the Kinesis which puts my hands in awkward positions. I've been forced to find decent standard keyboards, which have consistent keystrikes [which a membrane won't provide].

For what it's worth, I find this article to be a good read on what the deal is with quality keyboard switches, including Cherry and Alp clones:

http://hothardware.com/cs/blogs/mrtg/archive/2009/03/09/mech...

There's another article and I believe it was on my bookmarks at the last job and I didn't copy it over, but if I find it i'll add it in.

EDIT: Keep in mind also good switches only take you so far - the problems the Das Keyboards [which use Cherry switches] have had is poor controllers. BUT, even with a good controller, my understanding is USB has a limitation on N-Key rollover to a low number of simultaneous key presses. Most of the quality keyboards come with PS2 adapters and recommend using PS2 if you want full bandwidth.

ANOTHER EDIT: This I believe is the "other" guide I was thinking of. It gives an overview of several "mechanical" keyboards which may be useful for those looking for an alternative to the $20 freebie their computer came with: http://www.overclock.net/computer-peripherals/491752-mechani... ... Personally, since I've started using mechanicals I've had most of the end-of-day wrist pain I used to experience disappear.
"he's pressured Stephen & his webmaster to immediately fix this hole or risk a much worse attack on his site."

Surely that's a good thing? I agree that Stephen would/will probably be offended (assuming he wasn't notified), but he'll certainly take security more seriously now.
i always ask myself, "would woz (or any other heroes) better off using these luxuries 'back then' when he first did apple ?"
Does anyone has any idea how to test this under Linux instead of OS X?
How did Hoffman and Kernighan meet?
People First, Machines Second
How does it work? How does the tool know which articles are relevant to certain tag?
I work at TS and have a lot of friends that have been through YC. You can debate about this a lot but at the end of the day both can be fantastic for your team. There is a style to the Valley, Boulder, Boston and Seattle that will be better depending on your company and team. All have their strengths.

I'm jumping on a flight, wish I could expand. We have a ton of respect for YC.
That's an overkill solution. But I remember having to remove youtube videos from one site when Legal got wary about the new notes feature. at the time there were no documented way to disable those by default when embedding.

that feature would enable the submitter to, after our content editors approved the video, to insert messages that would not get approved. So i can see a fair use case for the proprietary totlol flash player there.
I believe counting out decades is a secular concept oriented towards the decimal numbers involved, rather than a religious concept founded in a old mistaken date for the birth of an historical Jesus.

In other words, the precise starting point of the calendar doesn't mean much to normal people who use the term "decade".
Doesn't Windows already come with a virus scanner, provided for free by Microsoft? I don't know for sure, since I only boot XP to play games, but it keeps nagging me about having all their security things enabled.
What is worse, bad commit messages or no commit messages at all? Having to diff through no commit message changes is the bane of my existence. Yes I have brought this up to my supervisors multiple times, sometimes they are the culprits.
I don't think he's dropping Erlang, just deciding that allowing small amounts of imperative / impure code to appear when it greatly simplifies things is a worthwhile trade-off. (His last post, about using the Erlang process dictionary, is along the same lines.)

Also, his archives are worth a read, particularly the Purely Functional Retrogames series. Excellent stuff.
I like HTML. I like the way it looks. I like writing it.

On the other hand, I don't like new DSLs for writing what is already a simple markup language.
Put a name on it
You are most likely being downmodded for choosing to use catch phrases like "collective interest", "secure our way of life", and "take over the US". These are increasingly becoming phrases that we consider crackpots to use when they want to drum up support, for legit purposes or not.
The "A1 = ..." thing is a convention from Prolog, from which Erlang inherited its single-assignment variables (and many other relatively unusual features). People who write code with several levels of X1 = ..., X2 = ... vars are probably writing Erlang (or Prolog) with a thick imperative accent. It's like writing Python for loops using integer indexes - unless there's a specific reason to do so, it's a sign that the author is probably new to Python.

While putting intermediate steps of a calculation into variables can help clean up the code, if there's any sort of conceptual significance to that value, it's worth choosing a better name than X1. "ATC" (with "Avg. Triangle Count" as an end-of-line comment), for example, would actually mean something.
Not to be too harsh on Jeff Atwood - as he has decades more experience than myself. But does anyone else feel that this blog post is a bit out of line?

In short when John Gruber gives the code out under a BSD thatis a gift to whoever wants to use it - and it gives them near-complete freedom to use Markdown however they like. I don't see why on top of this gift he is in any way obliged to provide 'leadership' or 'direction'. I don't really see why its even required. Anybody can feel free to come in, fork the project with their own modifications - and if its popular then they can be the leader or their fork.
"If I had a nickel for every time someone claimed to cure cancer in mice, I'd be a rich man."

First thing that comes to mind when reading titles like this. Mice is a model for human biomedical research, but far from a perfect one, especially in the cancer field. There are substantial differences that make it hard to extrapolate these results in mice to humans.

As a medical biotechnology grad student I read these claims often and it's a shame that most of the time it's impossible to find a reference to the original article. Hard to know than if it's an exaggeration generating false hope or a genuinely promising cure with consequences for treatments in humans.
Total Internet blackout to Chinese Region partially lifted
"Item #3, the conversion of returns to linebreaks, is somewhat more debatable. I'm on the fence on that one, but I do believe it's significant enough to warrant an explicit choice either way."

Really?

Has anyone ever typed stuff, hit enter once, then typed more stuff, ever not intended a line break?

"Oh no, I kept hitting Enter between words instead of using the space-bar! If only pressing Enter was interpreted as a space character unless it was prefixed by four spaces. What a world! What a world!"
function A behaves differently depending on the number of times function B has been called and vice-versa.

In C, this is easy! It can be done quickly and cleanly by adding some global variables. In purely functional code, this is somewhere between a major rearchitecting of the data flow and hopeless.

In Common Lisp, I'd DEFVAR a variable with dynamic scope, then LET its value be incremented on each call to B. I'd never use SETQ or its variants. There's no major re-architecting here, and no breakage of the functional style. Dynamically-bound variables are like implicitly passed-through arguments to every function call.
Mutability, Arrays and the Cost of Temporary Objects in Java
This made me extremely sad:

Over the last decade, the Western political system has lost its claim to global preeminence; it is no longer certain whether democracy will eventually prevail everywhere. In fact, it is not even certain that it will last forever in Western countries.
Scapegoat comment ...
That said, this only works if all the calls to B are still on the stack. I'm not sure what the problem being solved is so I might have misunderstood the intention here.
Dup: http://news.ycombinator.com/item?id=902195

Much discussion already there, but comments no longer possible, so if you want more discussion, I guess it has to be here.

And the other item has spoilers, so if you want to watch it before knowing the outcome, do so here.

This comment is also a spoiler protector, but only if you up-vote it to keep it at the top. If you don't want me to get karma for that, here's a link to a scapegoat comment to down-vote, and hence balance the karma:

http://news.ycombinator.com/item?id=1020472

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.
You're not being too harsh. Atwood's decades of experience is no excuse for what is essentially a personal attack, nor should it be a defense when you call him on it.
Markdown is not John Gruber's baby, it is an open source project. Stop anthropomorphizing everything in order to make a cheap point.
Is aviation security mostly for show?
Lying on your back is only one of the possible positions. You can sit like in a normal chair in it, too.
The Hidra has many heads, Cheap Disposable Resilience
Aweber comes clean, sort of....splatter effect continues
I haven't tried this yet, but ran into this problem earlier. I think the problem is that you're trying to launch the main.lua file, whereas you need to run love on the directory that that file lives in. (I rebooted to Windows, found the same thing happening, and figured I must be doing something wrong - tried the directory thing and it worked)
Best of 2009
I wonder if this chair is VaporWare, I've seen a bunch of posts just like this one obviously only are based on a press release. I've so far found not a single link to someone who's actually tried it.
That would only necessarily be bad if you believe democracy is an end in and of itself, or the theoretical pinnacle of governmental systems for freedom or whatever else your end goal is.
I don't understand why the term "fork" didn't appear in Atwood's article.

It's the simplest solution to his problem.
some people hit return when the text is nearing the end of
the input box. as in this text, which has "return" after "end of".
This isn't directly relevant, but if you use Markdown a lot, I highly recommend David Parson's Discount (a Markdown implementation in C). (Parsons is also active on the Markdown mail list, which is helpful.)

http://www.pell.portland.or.us/~orc/Code/discount/
Book review: design patterns in ruby
can anyone find a price for it?
1. This article is a bit too personal, 100% agree on that.

2. The best thing Gruber could do is pass on "ownership" of the project to someone else. He is under no obligation to do so, but it seems like that would essentially solve the problem, while requiring almost no effort from him.
I like your positivity, maybe something better than democracy will emerge. As Churchill said "Democracy is the worst form of government except all the others that have been tried"

I felt sad because the article implied that the decline of democracy might imply the rise of totalitarian rule.
I suppose it's "inconceivable" to sell that nowadays ..

Did you try Googling? I felt lucky, and on that page was this link:

http://www.fentek-ind.com/kbemmtbusb2b.htm
Experimental Psychology - Change Blindness (video)
[video] iQ font: When driving becomes writing
And it should(+) always be refactored to match the new assumptions in a meaningful way.

I get your point, I just meant that "doesn't work" is quite a stretch from "doesn't allow ugly global variable hacks".

(+) http://xml.resource.org/public/rfc/html/rfc2119.html#anchor3
Open source projects are usually someones 'baby', democracy is nice and all but experience suggests that open source does best with an 'owner / leader', if the owner/leader isnt committed, then the project flounders until someone else takes their place.

a highly visible blog post criticising gruber isnt the way to move forward though, email your issues offline, maybe offer to take 'leadership' of it if gruber is too busy, and if it seems gruber wont relinquish control, but wont help the project either, then fork.

the cathedral and the bazaar is a pretty interesting read on the politics of open source
I'm not sure of the origin of the convention, but using two newlines consistently to mark new paragraphs (rather than indentation or just one newline) seems awfully common to me in technical writing. So the Markdown rule has always made sense to me. Or to put it another way, it was immediately natural to do it that way.

Edit: to answer the question of the comment below this, poems need to be handled specially in Markdown as in HTML. It's an issue more generally, and I think that the standard solution is <p> for the poem as a whole and <br> (or <br /> depending on your markup flavor preference) for the lines. It's a known thing: http://blog.signified.com.au/a-poem-element-for-html5/
How to Lower Blood Sugar - Tips You Can Use Today
Yes, I have. When you hit alt-q in emacs, you do, too. It goes with the theme of "making it look like you write ascii files". Have you never tried to read an ascii file that's written without line breaks in an xterm?

When programming, do you never cut lines with enter except after the semicolon either?
It did appear.
Very much so. One of the cool things about markdown is it looks good in source form as well as after processing to HTML. In order to keep that looking good you of course keep your lines to under 80 characters. That makes sense in fixed width ASCII but no so much once it's gone to HTML.
In fact, hidden all the way at the bottom of the article is the rather relevant fact that the divorce rate in the UK has been falling recently, just as the popularity of Facebook has shot upwards. It seems like you'd have to suggest a lot more to prove that Facebook is to blame for these divorces, rather than just an additional element in the proceedings.

I hate this kind of misunderstanding of statistics...
I suspect the word "fork" was deliberately excluded from the article because it would be less provocative. Atwood appears to be more interested in starting controversy than actually solving problems.

[edit: Ok, so it does appear in the quote taken from a mailing list, but Atwood does not explicitly address the idea.]
At the risk of commenting on a piece of furniture I'll never try, I think there should be a clear divide between where you work and where you relax. Ideally, I'd like to be in a comfortable, ergonomic chair (like the Mirra I recently bought) when I work and then take a nap on the couch. When I get tired, I want to get up, disengage from my work and let my body (and brain) relax. The concept of taking a nap in my chair seems strange to me.

I can see the appeal of being able to recline while contemplating something but as a person who almost instantly falls asleep when horizontal, I wouldn't get much contemplation done.
XKCD question with a Dilbert answer - Stack Overflow
Here's at least one UK retailer that claims to sell it: http://www.backinaction.co.uk/gravity
Alternatively:

"Oh no, I'm trying to paste this block of text from an email and it thinks every line is a new paragraph!"

Besides, Markdown was designed to be readable as plaintext and test written with the expectation that single return -> linebreak is not easily readable (unless people are in the habit of indenting the first line of their paragraphs.
Pulling your leg. Hoffman, who had learned in the "method acting" schools, apparently stayed up all night to look properly harrowed for a scene. Laurence Olivier, playing opposite, is said to have told him something like "Why don't you try acting, my boy? It's so much simpler."
> If you've designed something well, then all changes can be easily accommodated.

I disagree with that. If you can easily accomodate any changes it means you probably over-designed and over-generalized and made your solution too complicated.

> But to "design something well" requires omniscience, because it depends on understanding the problem, and in what ways that problem will likely change in future.

Yes, that is the problem. A lot of good programmers are prone to over-generalizing, even for code that should be simple and straight-forward. Sometimes it pays off, but not always.

> Fred Brooks: Build one to throw away. You will anyway.

I tend to approach programming as experimentation. "Let's build something and try it out" kind of approach. Then "if it works, we'll enhance it, otherwise we'll throw it away and try something else". It seems wasteful but with a language like Python it is easy to prototype things out.
(Edit: I think I was a bit rash in this message, stemming from my sense of sheer disbelief. While I stand by my overall point, I would like to apologize for my tone.)

Really? I can't recall the last time I saw a multi-line text box that didn't word-wrap.

That may have made sense back in the day when TEXTAREA form elements didn't wrap and there was no way to switch the wrapping on, but its been over 10 years since that was the case. Do people still do that?

Even in the presence of people needlessly hitting enter because they don't realise the input box will word-wrap, the effect of doing the-wrong-thing still seems preferable with turning enter key presses into line breaks.

The worst that happens
when you hit enter at
the end of the input
box is a narrow column
of text.

If you expect hitting Enter to result in a line-break, doing the-wrong-thing results in text being wrongly joined together into one paragraph.
Bootstrapping a startup with Smalltalk (2006)
But what if you want a newline for a reason other than for paragraphs, like a poem or something?
It's not hard to come up with sad but unlikely eventualities. The question is whether any of this article's hypothesis are true. This question is far from settled. For example, the whole retreat to an infantile world bit. The examples are cherry-picked. In television, the most acclaimed and talked about shows have characters far more ambiguous than decades past. Even in movies, the idea of inferring a trend from but two datapoints that are almost by definition outliers (I.e. the record-setters) is sensational but unsound.

I've only read some of the article. But of what I did read 100% was bullshit of similar provenance. I don't trust it.
Don't be so sure. Take a look at the PDF product sheet linked from this page: http://www.varierfurniture.com/default.aspx?menu=686

The positions where you are actually sitting either supports you, or put you in a position that lets your spine stay upright and well supported.
That still happens? Have I been watching Doctor Who too much and I've been transported back to the 90s?
I found it online for 1200$.

http://www.mobilewhack.com/new-gravity-balans-recliner-from-...

Apparently there are only 250 pieces made.
This is one of a series of posts by someone with decades of experience doing game programming. He's also very fond of Erlang (he's been using it since 1999!), and he's exploring how well it works for a domain he knows, but which is quite far from Erlang's typical niche.

Try reading it (and his archives, at http://prog21.dadgum.com/archives.html ) in that light. It's not just somebody ranting about how FP is junk after halfheartedly trying to learn Haskell. The "Purely Functional Retrogames" series is particularly good.

I would love to see more blogs that have people seriously evaluating how "newer"* languages hold up for real work, not just page-sized Greenfield projects. As he puts it, "Timidity does not convince." (http://prog21.dadgum.com/35.html).

* I know, Erlang isn't that new.
Google chrome based netbook specs are out
I worked like this for two years: http://www.dqd.com/~mayoff/images/alfa.jpg (picture shows the guy I got the idea from, not me)

the backsaver zero-gravity line is not as flashy as the one in TFA but it allows locking the recliner at any angle you want, not just 3 pre-set ones.

A backsaver will run $1000+ new, and the one in the TFA is probably more; if you want to try the idea out you can get a cheap lawn chair version for $65 on Amazon: http://www.amazon.com/Strathwood-Anti-Gravity-Adjustable-Rec... (I've tried that one too, and IMO it's a great value, although even more limited to "reclined" and "not reclined").

I stopped coding in a recliner since it was too hard to add a 30" monitor to the setup in a cubicle environment.
Keep in mind that the article culminated with two key arguments, first that "the Western way of life is coming under pressure from two sides at once, Islam and climate change" and second that "the West can still be strong, provided it remains true to itself, its concept of humanity, which is based on Christian ideas, and democracy".

That the author seems to view the present through the lens of a struggle between Islam and Christianity, it is somewhat unsurprising that he should view the future through the similarly black-and-white lens of Western democracy v. totalitarianism.
£1420 for the cheapest version at backinaction.co.uk
Diary of a High Functioning Person with Schizophrenia
This is the nature of free software and a big part of why free software is great. Sometimes a maintainer can no longer work on a project for a variety of reasons. A free license makes it pretty easy for someone to fork the project and take over development.

It would be nice if John Gruber opened up the contribution process or officially handed off development to someone else, but he's under no obligation to do so. We're not paying him. He probably started Markdown for his own purposes and was kind enough to release it under a free license. It's totally fine if he doesn't want to continue work on it, because I can easily take his code, check it into GitHub, and start my own fork.
dude, i'm telling you what people do.

perhaps your problem is confusing people with computers?
Interesting point about driving.. Since I'm a driver, I wonder how many 'polyphasic' zombies I encounter out on the road? My dad has always told me that sleep deprivation is a significant cause of car wrecks. I'm sure there's research to support this if you google around.

So basically I hate these people. They should do something else with their free time, instead of endangering others with their zombie-driving.
No mention of tarsnap? http://www.tarsnap.com/
good article. can give few examples myself when too much focus on code perfection led startups to dead...

just get things done, man!!
Can you say more about what problem those $250 keyboards are solving? I guess I never find myself with issues where keys don't register or anything like that, even with a $15 crapola one. (Wireless ones, however, are a different story.)
Fear of tech commitment
What I didn't get about the SSA example was why CPS wasn't considered. It's literally the functional language equivalent.

As for running a static variable across to unrelated functions, I don't know any language where that's considered a good idea. Well maybe Fortran, but that really doesn't help the argument.
thanks, that was probably it (i looked myself but couldn't find anything, probably because of the wrong person).
as far as i know, there's not.

does that change the argument somehow? the article is more general than programming.
If only he'd have used shorter variable names! While he did massage the layout to get to 100 lines, I don't think it's that bad - the stuff that is on one line belongs there, even if usually it would be split over several lines for screen width reasons.