skysight-inc/HackerNews huggingface dataset:
Basically this is a demand for "certainty theatre", where they don't care if Britannica is wrong, they just want some warm glow that comes from the sense that someone, someone in "authority", is doing something, even if some part of them knows it's ineffective, pointless, expensive and inconvenient (in fact probably the more expensive and inconvenient to them the better. No pain, no gain).

The fact that Wikipedia is right in their face about the fact that what they're reading may not be true and they may have to do some kind of evaluation of what they're being told is, bizarrely, taken as some kind of failing.
Noir lives on through lib-noir [1]. I also suggest checking out Luminus [2].

[1] https://github.com/noir-clojure/lib-noir

[2] http://www.luminusweb.net/
> If it is so good why ain't it is used more?

I'm too pessimistic, but there is almost no correlation between quality and frequency as far as programming languages are concerned. Reasons for that are legio.
someone should submit a patch that will display the phone number of a local suicide hotline if anyone asks this ...seriously!
Something 's not right. Still too complex. Ah. Lists are recursive. Their treatment should be recursive as well. Let's see…

void remove_if(node ** head, remove_fn rm)
{
node * entry = *head;
if (rm(entry))
{
*head = entry->next;
free(entry);
}
else
head = &entry->next;
remove_if(head, rm);
}

Ahh, much better: Now we can refactor:

void remove_head(node ** head)
{
node * entry = *head;
*head = entry->next;
free(entry);
}

void remove_if(node ** head, remove_fn rm)
{
if (rm(*head))
remove_head(head)
else
head = &entry->next;
remove_if(head, rm);
}

I'm sure GCC will be able to optimize away the tail call.

Edit: oops, I forgot to test for empty lists, which was implicit in the for loop I set out to remove…
Also:-

The contents of /var/run/screen/ and the "S-<username>" subdir that should be there...

The output of "ps u" and "ps -ef | grep s[c]reen"
I have never properly worked a day for myself
An inspiring story. I couldn't even run for a bus.
Senior Unix Systems Engineer
There is less insane way to personal insights - http://www.paulgraham.com/onlisptext.html
'Mark of the beast' pupil loses case [RFID]
There's no doubt that the commute is hellish, but the people who can afford to buy housing in Manhattan are not working 10+ hour days. The IBD analysts and associates are bidding up rents, for sure, but price-rent ratios are ridiculous (35+ years) and they have no part in that.

The solution to expensive Manhattan real estate is better mass transit.

That would be a huge win.
It really depends on what you spend most of your money. If it's rent and food, then yeah, you're screwed. Other things though are pretty much constant across the whole country - electronics, cars, flights, etc. So even if your standard of living is the same, you can buy 3 more times more fancy tablets, phones, TVs and BMWs with your new salary.
Morphing touchscreen keyboard
I'm always interested in what others are building both professionally and as a side project. I think this is a great idea and would love to be part of it.
Most people I know have had a facebook account through high school and university. You meet a lot of people in that process. A few years ago adding everyone you vaguely knew was fairly vogue, and so friend lists build up.

I'd say that most people I know just leaving university have around 500-600 friends. Younger people who got facebook earlier in high school tend to have more. It takes a lot more effort to remove friends than it does to add them, and so they build up.

friends used in the facebook sense. I certainly wouldn't consider most of my facebook contacts to be more than acquaintances.
'Mind reading' headband can control games
>If college admissions gave as much of an advantage to white, middle-class students of NYC public schools as they do to Andover and Dalton grads, these people would quickly change their strategy.

That's the kicker, the average white, middle class student in NYC can't compete with the public school kids @ Stuyvesant and Bronx Science where minority enrollment is 70%+, they are getting their asses handed to them by Asian students. Hence the flight to private schools where tuition is the same as private universities to keep the immigrant kids at bay. I should know, I was one of those immigrant kids in prep school and would've been eaten alive if I attended public HS.
Round up of making the web faster in 2012
Low-cost iPhone heading to emerging markets this year - CNET News
How to model a state is a meaningless question without asking state of what.

Same is true for I/O. You must start from a protocol.

Most of people probably underestimate how many brilliant people contribute to what we could call a modern Lisp.

With all respect, Clojure is nowhere near in terms of sanity, consistency and uniformity.

I don't event want to argue about Haskell. Seems like words "monad" is the same as words "chakra" or "dharma" in a popular culture.))
You don't have to forsake interesting ads, ABP has "acceptable ads" policy and I think it's enabled by default. You can, of course, customize the list.
Dashboards Aren’t the Answer - Automated Analysis Is
I don't agree nor disagree with you. :-) A great site is only great with good content - be it either text or images. There are plenty of sites to be found on there where imagery is sparse but the typography is beautiful.
Seems reasonable. How did they not 'act accordingly' in this case? What should be different about the security process currently in place?
You should go for it. Especially because finding good examples of ecomm done well is hard, so there's definitely a niche.
Now that will deter him...
<3

If I can help you help us somehow, please let me know.
XBMC4XBOX » Good news – Paypal account restored.
Here is another Facebook vulnerability, a more serious one -- a password reset bug: http://chingshiong.blogspot.in/2013/01/facebook-bug-4-passwo...
Set up a mailing list form so we can all sign up to your new side-project :)
> No free implementations existed during a key period

BS.

CMUCL. AKCL. CLISP.
Because it's tying you to an unreliable third-party service, and there's no way to mitigate it. Artifact dependencies really shouldn't be in the same place as source, they fulfil different roles.

What you want is a dedicated repository format. Libraries can still be hosted by whoever maintains them on their own repository (which can be their own piece of software as long as it follows the standards), or in the community central repository. But either way, if you depend on those libraries and want to lower your risks, it's trivial to set up a local mirror and make sure all your third party dependencies come in via this mirror. That way if their repository goes down temporarily or permanently it's no problem, and you ensure your builds remain reproducible.

The most infuriating part is, the software to do this already exists. If you want to start a new language, great. But please, use maven; otherwise you are doomed to re-invent it, poorly.
It will be the default, yes.
Hitting HN/BBC would come up at Level 4 but I get your point. Annotations are needed.
Whilst the author pushes his point too far by declaring that there are "invisible millionaires" as you say, I think the general point is sound. We are continually pushed to consume, and the consumption is not necessary for us to be happy within society. It is the job of marketers and business to make us believe we need this stuff. By recognising this we are less likely to try and satisfy ourselves by buying the latest "whatever".

Personally, I think that people should be taught about capitalism and the actual workings of society in school fairly early on. Like, "you know when you see an advert? That may not necessarily be the whole truth. They're trying to sell you something so they can make a profit. This is not a bad thing. You should learn to do it too. This is how things work."
It's valid criticism. The marginal tax rate doesn't say anything more than what the marginal tax rate is and should be indicated as such. A better way to describe thing is taxes paid at median industry salary + marginal tax rate.

Imagine if this was applied to fuel economy. "For any mph over 60 mph the car will increase it's consumption by X percent". Totally useless.
As someone stuck maintaining an older rails app with no hope of upgrading anytime soon, any information on patching rails 2.1.0 against this vulnerability?
Tail calls are considered very bad style, for good reason. gcc can indeed optimize them away, at a sufficiently high level of optimization; but it's not very nice to write code that, e.g., runs out of stack space only when compiled for debugging.
I had that happen a few years ago. Nobody had heard of uucp either. Someone once asked me what the first browser I ever used was and when I said Lynx, they thought it was fork of Firefox.
That said, it's actually an excellent C interview question

This was actually one of the very first questions we used to ask during interviews at Tenable. I'm honestly kind of amazed it's now seen as some sort of tricky technique. I would think (or hope) most C programmers would see it as basic competence with pointers.
I've just been through the YankRing tutorial and it's fantastic; I don't know how I haven't come across this before. Thanks!
With one of my friends at the university we used to compete for a shorter/nicer implementation of each data structure in the algorithms class we were taking, and after using pointers-to-pointers in some previous cases (linked lists, binary search trees etc.) and each time ending up with an implementation I really liked, I tried to implement AVL trees[1] the same way, for example an AVL rotation would be done by a call like this:

avl_tree_rotate(avl, &t->left->right->left, &t->left->right, &t->left, t->left->right);

Where avl_tree_rotate looked like this (avl_tree_update just recomputes the height after left or right branch height changes):

static void avl_tree_rotate(avl avl, V **from, V **to, V **parent, V *child) {
if(*from) (*from)->parent = *to ? (*to)->parent : NULL;
if(*to) (*to)->parent = *from ? (*from)->parent : NULL;
avl_tree_swap(avl, from, to);
child->parent = (*parent)->parent;
if(!((*parent)->parent))
avl->root = child;
else if((*parent)->parent->left == *parent)
(*parent)->parent->left = child;
else if((*parent)->parent->right == *parent)
(*parent)->parent->right = child;
(*parent)->parent = child;
*from = *parent;
avl_tree_update(avl, *parent);
avl_tree_update(avl, child);
}

It was one of nicer programming workouts I ever got (the whole class was a great experience and I think every professional programmer should go through implementing all the basic data structures and algorithms in plain C one time), but I never managed to get deletion right, despite spending quite some hours on it, it just went beyond my head. Not that it matters for linked lists, and in this case I made it deliberately harder on myself, but I think the moral of the story is that when you are too clever with implementation details, you might run out of your cleverness when starting to deal with the actual problem domain.

[1] http://en.wikipedia.org/wiki/AVL_tree
C# in 2012, here's a summary
The title is misleading. I thought this guy had been running every station or something (i.e. managing). I would have been much more interested in a story about how running the tube changed his life than something about him running around London.
HTML 5: Why Did You Ditch Me, Mr. Zuckerberg?
Inspiring story and noble cause. I just wish there was a bit more basic info for this. An photo gallery, a logo of the charity, a Twitter account to follow, i'd even like to donate to the cause, but can't see how :-( I want to engage.
Felt like I was reading some random girl's facebook status.
One of the troublemakers on a small island :-)

You've escaped anyway.
maybe these?

http://showinghn.com/
https://twitter.com/JustShowHN
> With all respect, Closure is nowhere near in terms of sanity, consistency and uniformity.

It's Clojure http://clojure.org/

Closure is Google's js library and tools https://developers.google.com/closure/
Okay, thanks for pointing that out. I've never been to London, or even on a subway train for that matter. Wasn't sure if there are walkable paths alongside the tracks or something (seems dangerous).

So did he run from station to station above ground following the tracks, or is it too difficult to follow the tracks (buildings, obstacles, etc)?
If people are not held accountable to deliver at all, which is what it sounds like you're proposing, then Kickstarter is not awesome but the biggest scam in history.

> At Kickstarter you give money to something that might or might not work out in the end, but that will most definitely overshoot its estimated delivery date – if it doesn’t it’s a fluke. That’s how you have to see it.

No, you don't.

Obviously there needs to be leeway given to projects that expand their scope after overshooting their funding, but shitty planning is shitty planning, no matter how you look at it. What possible positive effect is there in tolerating it? If anything it increases the likelihood of complete failure by removing sanity checks.
Now, now.. comparing two very different-intent dashboards isn't cool. I know I'm late by 10 hours because people have already vented their feelings about the writeup.

You can partly agree that dashboards should be smart but not every dashboard _needs_ to be so. Creating smart dashboards requires you to actually identify the metrics and the requirements of the end-user.

When you generalize this, you end up having a dashboard that's Google Analytics. It's gigantic and by letting the user decide what labels he wishes to give to the numbers, it's actually way more smarter than the 'feeds.'

That's just my humble opinion but I sure don't feel comfortable about how other dashboards are treated in this piece.

And if someone's interested:
http://thisiscsr.com/post/40088895750/dashboards-smartness
I always used to believe happiness was the most important thing for a society.

Then I read Brave new world. Happiness taken to extremes.

Now I'm not so sure.
Ghostery - Regain control of your browser privacy
Alien hand syndrome
Let me help you out..

The charity's website is www.hhho.co.uk - here you can find out all about Harry's campaign.

The charity JustGiving link is www.justgiving.com/steven-whyley

There was never a dedicated twitter account set up (there should have been), I did it all through my personal Twitter account.

I need to get some pictures uploaded to the blog - I didn't get round to it. I just had them on my Twitter and Facebook.

But I have made a video - hopefully this should give you an idea of what it was all about - http://youtu.be/a_mb6pXyrfA

Thanks for your kind comments...
2013: A Programmers Resolutions
I agree, the title is somewhat confusing and misleading. I thought he actually "ran" as in managed the whole tube, which lead me to expect some nice anecdotes about problems encountered and solved when operating a large modern underground rail network. When I realised it was "running" with your legs and feet I then thought he was a member of the maintenance teams and had actually run up and down all the tube lines during line closure for maintenance work.

That said, well done for getting off your arse and doing this.
By side projects I assume you mean web apps and programming related things. I've pondered a system to track these, but it would be even more fascinating to extend it beyond code - think: artwork, carpentry, electronics projects, robots, etc. Basically a 'Things I've Made' kinda site.

Edit: Interestingly, the thing about side projects is that most of their value is derived from what can be learned while building them. Often they simply die upon completion (or when boredom sets in) because there isn't much left to learn from the project. Because of this, I don't know if there's necessarily a personal benefit to archiving your own projects online (other than showing off / clout / credibility for resumes and such), but I can definitely see value in the social building part of it - which is probably the goal anyway.
In other news, the UK now has the greatest divide between rich and poor in the west.

http://www.independent.co.uk/news/uk-most-unequal-country-in...
Facebook: Instagram User Exodus? What Instagram User Exodus?
Author has some good points. What I don't like is this superficial "the future" label. Hopefully, "the future" won't be about just one technology. In my opinion, it should be more about using the right tool for the right job. Even though I'm a big fan, it's obvious that JavaScript is not the answer to all of you casual programming questions, let alone the very complex ones.
Google Plus Now Includes High Resolution Tools for Photos
900 foot-wide asteroid to make close approach to Earth today
I haven't precluded the ability to treat textual notes as data points in level 1... so they'd be available down at level 4 and 5 as annotations.

I didn't really want to get into any detail on how to make a specific chart, or capture a specific event... just a general scale of maturity whereby you can't generally do the higher levels without having the earlier levels in place and done reasonably well.
I made one in a hack day once, never actually told anyone about it. Would love to see an active one: http://leanly.co/
To balance that out, I would state that neither the regulator, nor the regulatee, really understands finance enough to make arbitrarily accurate predictions of consequences to their actions. They are betting that they understand how the whole market, the rest of the market, or the regulators (regulatees only need consider this) will act in response to information they may or may not possess based on analysis they may or may not be able to justify.
Short-Lived App Firegram Used Instagram Loophole to Deliver More Likes
If you could also pitch a side project idea and link up with people would be awesome. I'd use it.
Yes it was overground as you can't literally run underground (on the tracks) as you'd kill yourself on the wires.

Therefore, I ran from station to station - worked out the routes before each run and ran with my iPhone and Google Maps and ran to each station on each Underground line. The distance is greatly lengthened because I couldn't run on the tracks but I still visited every station - some as many as 6 times as they appear on 6 different lines.

I had a picture outside of every single one and then went on my way to the next station. I ran over moterways, over footbridges, canals, fields, commuter packed pavements, marsh land, cobbled streets and got lost an awful lot.
http://theyrule.net/

This is pretty old now (2000-ish?) but is a pretty great graphical and interactive demonstration of how interlinked the big corporations' boardrooms are.

Check out the 'popular maps' for some good examples.

Edit: It was connected to littlesis.org in 2011 ("a free database of who-knows-who at the heights of business and government")
For an historical example, the anonymous author of Primary Colors was identified through a literary analysis (http://en.wikipedia.org/wiki/Primary_Colors_%28novel%29#Unma... )

Don Foster "did a textual analysis of Primary Colors to identify words, phrases, and expressions that were repeatedly used and to look for "quirky expressions" and peculiarities of punctuation. Afterwards, he simply analyzed writing samples until he located a consistent usage of the same "telltale" signs of authorship. Sample after sample was rejected until finally he happened onto the writings of Joe Klein and found what he had been looking for. The literary quirks and features that Foster had isolated in Primary Colors occurred with such frequency in Klein's articles that despite Klein's initial denial, Foster knew he was Anonymous."

Similar methods have been used to, for example, try and figure out who wrote which portions of the anonymously authored "Federalist Papers."
Thanks. I would edit the title but I now can't seem to for some reason. Sorry for the confusion...
What I took away from this, which, reading the other comments, is not at all what everyone got out of it, is that a bunch of graphs can be a great, but a system that automatically makes recommendations based on those graphs (taking some of the decision-making out of the equation) is closer to ideal.

I might be projecting, though. I talk regularly with the people behind Pirate Metrics (http://piratemetrics), which does that sort of thing. (Records, displays, but makes suggestions as well.) S, that sort of idea has been on my mind.
Report Says Cyberattack Could Knock out British Military
I am going to buy a t-shirt which says "I use Vim"
It is your cloud. It is your data.
The idea that you can classify a programmer's understanding of pointers based on doing linked list tricks is absurd. Usually Linus says things that make sense, but not this time IMHO.

Also the code proposed may work for linked lists that is a very well understood topic, but code like this in general is hard to understand and debug, without actually providing some serious advantage.

I remember some code on the Linux kernel implementing the inode caching in the virtual file system layer that was a mess like that, but multiplied by 1000. Very "Smart" indeed, but for the sake of what?
VMWare calls it vMotion [1]. You define the host cluster and it handles the rest. Xen supports live migration [2] but EC2 does not.

[1] http://www.vmware.com/products/datacenter-virtualization/vsp...

[2] http://sysadmin.wikia.com/wiki/Live_migration_xen
http://www.hnshowcase.com/ is one. It's ok but I would prefer something with disqus comments so I would get notifications and stuff.
Lists are recursive, right. Better than double pointer indirection is to have the function return the new head. Note that the following code is not functional, but returning the new head makes it cleaner.

node *remove_if(node *head, remove_fn rm)
{
if (rm(head)) {
return remove_if(head->next);
}
head->next = remove_if(head->next);
return head;
}

A good use of this technique (returning pointers to the resulting node) is the following code which very cleanly implements AVL trees in C (from http://infoarena.ro/multe-smenuri-de-programare-in-cc-si-nu-... -- scroll to the end (sorry, main article in Romanian)):

#define max(a, b) ((a) > (b) ? (a) : (b))
#define geth(n) (n->h = 1 + max(n->l->h, n->r->h))

struct node
{
int key, h;
struct node *l, *r;
} *R, *NIL;
typedef struct node node;

void init(void)
{
R = NIL = (node *) malloc(sizeof(node));
NIL->key = NIL->h = 0,
NIL->l = NIL->r = NULL;
}

node* rotleft(node *n)
{
node *t = n->l;

n->l = t->r, t->r = n,
geth(n), geth(t);
return t;
}

node* rotright(node *n)
{
node *t = n->r;

n->r = t->l, t->l = n,
geth(n), geth(t);
return t;
}

node* balance(node *n)
{
geth(n);
if (n->l->h > n->r->h + 1)
{
if (n->l->r->h > n->l->l->h)
n->l = rotright(n->l);
n = rotleft(n);
}
else
if (n->r->h > n->l->h + 1)
{
if (n->r->l->h > n->r->r->h)
n->r = rotleft(n->r);
n = rotright(n);
}
return n;
}

node* insert(node *n, int key)
{
if (n == NIL)
{
n = (node *) malloc(sizeof(node));
n->key = key, n->h = 1, n->l = n->r = NIL;
return n;
}
if (key < n->key)
n->l = insert(n->l, key);
else
n->r = insert(n->r, key);
return balance(n);
}

node* erase(node *n, int key)
{
node *t;
if (n == NIL) return n;
if (n->key == key)
{
if (n->l == NIL || n->r == NIL)
{
t = n->l == NIL ? n->r : n->l;
free(n); return t;
}
else
{
for (t = n->r; t->l != NIL; t = t->l);
n->key = t->key,
n->r = erase(n->r, t->key);
return balance(n);
}
}
if (key < n->key)
n->l = erase(n->l, key);
else
n->r = erase(n->r, key);
return balance(n);
}

int search(node *n, int key)
{
if (n == NIL) return 0;
if (n->key == key) return 1;
if (key < n->key)
return search(n->l, key);
else
return search(n->r, key);
}
Forrst was supposed to be _Dribbble for programmers_ but it has been hijacked by designers.
"I ran over moterways, over footbridges, canals, fields, commuter packed pavements, marsh land, cobbled streets and got lost an awful lot."

Lol...brilliant, and truly inspiring.
Five Important Aspects of Successful Test Automation Approach in Agile