skysight-inc/HackerNews huggingface dataset:
Still blocked by Firefox on my Ubuntu box. I found out when I was testing reference urls that are in a blog post I was preparing. Annoying, I guess I'll have to wait a couple of days until it's sorted out.
Awesome work Bowei, looking forward to keeping up with this. I'll catch up with you in Nepal!
Free calling within the US and Canada through 2013 | Official Gmail Blog
This says a lot about about how much the human life span has changed in the last 90 years:

“You are thirty-five years old,” I said to myself. “More than half of your life has already been spent."
When I interviewed for my current position, I was very upfront with the interviewers that I was not interested in any kind of management position that takes me away from coding. I let them know that if they were looking for an engineer to groom for management that they needed to look elsewhere. Coding is my passion, and I don't want anything that takes my main focus away from that. Now I'm the technical lead for multiple projects, where I do about 75% coding vs 25% other stuff, and I'm very happy at this level.
This is a feature that is coming soon. Instead of scanning a QR code, you will be shown a button. Tapping it will route you through our app, where we will confirm your PIN, and then back to your browser where you will be logged in.
Are 3-or-more-player Nash games really that hard to compute?
My (ever-so-slightly more than basic undergrad) understanding is that you could send qubits to the Netherlands, have processing be performed by a quantum computer there, and have the result returned faster-than-light (as qubits), but no-one in the Netherlands could read your data or the result (or even the power meter) before at least a light-speed delay.

(If I'm wrong please correct me!)
I guess I'm so clueless because the last time I was in the market for a drawing tablet was about 8 years ago when I purchased my Graphire. Only recently have been looking into a replacement and didn't want to spend a lot for something that's essentially a hobby. My research has now led me to this tablet which seems to use the same UC-Logic digitizer http://www.huion-tablet.com/product/product.php?sku=1004
I would say the best practical reason to move over to a flat design is performance increases. It has been shown that CSS properties such as background-image gradients and border-radii are among the worst offenders for decreased front-end performance. With websites approaching 2MB in size it is no surprise to me that flatter design makes for smaller files (less CSS prefixes, less JS repainting) and less browser rendering. This was precisely why our company moved over to a flat design as we've increased the number of users rapidly over the past year.
Excellent read, thanks for sharing!
Think twice before using a phone charging kiosk
IRC clients are a bad example considering that they are often used on hosts that you can't count on having much more than a C compiler. Super-lightweight VPSs, free accounts on school servers, etc.

Nobody wants to boostrap another language in their $HOME just to use IRC.
I've always been interested in their hosting costs. I'm sure the numerous edits and user actions are the largest toll, but since Wikipedia encourages hotlinking to their media assets, they pretty much act like an imgur-type service, on top of serving the typical webpage...the bandwidth expended just on images must be huge.
C for performance. If you need better abstractions (generics, OO, etc) you can switch to C++.
I'm not married, nor do I have kids, but I've decided when that time comes I will put my wife first.

It seems to me "your children come first" is the traditional expectation of modern, American society, but I think it's wrong. At least in my case, it led to me being very well treated and doted on within a tragic environment of my parents' relationship falling apart.

This NYTimes blog post [1] captures my feelings pretty well.

[1] http://parenting.blogs.nytimes.com/2010/06/14/priorities-chi...
"With the passwords you're talking about, a malicious site would gain access to all of your accounts as soon as you created an account with them, which is one of the major problems with password reuse today."

First they would need to know the scheme. Second, one wouldn't haven't to follow that schema at all, you could use something simple and easy to remember for each site. Also, as I don't know the implementation behind this, but couldn't a malicious site do the same with clef with a man in the middle attack (as stated elsewhere in the comments)?

Another question: how would mobile browsing work? If I wanted to log into one of these sites on my mobile device, how would I do that?
By removing customer's choice to use a blackhole email, I suspect you are much more likely to lose them as a customer, rather than gain a happy customer with a valid email.

If they do go the latter route and give you a real email address, it is really so valuable to you? More likely, your interesting offers will get tagged with the "spam" flag, or auto-deleted by a filter.
I'm not telling you anything you don't already know David, but Fowler and many of his peers and contemporaries grew up developing object-oriented systems that ran in large enterprises. You could read the title as "patterns we are using to build enterprise systems". That is primarily the market Thoughtworks continues to serve. Good code and design is much more broadly applicable, of course.
I use Hushmail, whether that fits or not, I have no idea.
This is a fair point. We really want to be respecting users' privacy, which is one of the reasons we've focused on a business plan that doesn't count on selling that data about our users. We do think that a central identity is a better solution for many security reasons, but also for many privacy issues that stem from the security problems.
> I recall that learning that lim(1 - 1/n)^n with n->inf is 1/e

To clarify this should not be 1/e, but e.
It might be difficult to get married in Italy if you have the same gender… blame it on the catholic church!
Care to elaborate on why?

Github's tagline is currently "Build software better, together." Wouldn't this help people create better software?

I'm not saying they should automatically add secret_token.rb to gitignore, just that they could let you know you might not want to do that.
An Atom Smasher in the Garage
This is a feature which will be out with our next release. When we detect the visit from a smartphone, we change the QR to a button, and when it is pressed we redirect you through the app, where you verify your PIN, then redirect you back to your browser where you are logged in.
I Don't Dance the Smartphone Tango
Match Review – Manchester United vs Newcastle United
50 things we know now that we didn't know last year | TBO.com
Hm, really? Sure, I hope to get older, but I don't really make great plans for life in my 70ies. While life expectancy might be higher, I know people who died younger, and many who are 70 and not in the greatest shape.
I have always found that helping people does not make you more popular: they just start treating you like their bitch, and get angry when they ask yet another favour and you eventually say "no". Also, they will not reciprocate - why should they waste time helping their bitch, when the bitch is supposed to help them? As soon as you act like a subordinate, you become one, at least in their eyes.

People often mistake my role as tech support, which means anything from changing toner cartridges to setting up their presentation equipment. They often just turn up in my office with another "emergency" and I'm supposed to drop everything and run off to help them. I have learned to issue a flat "no" when this happens unless they let me know well in advance that I will be needed. They are often furious but I'm thick-skinned enough not to care: at least I have some control over the situation if I play it this way. My boss supports me so that helps.

"You should expend effort only for people who respect you" is something I've learned the hard way and it really does work. I keep pushing back until they learn that (even if I annoy them) my time is not worthless, and if they treat it as such I will not help them. Actually, I usually end up feeling quite good about this way of working.
I'd say software is becoming more 'specialized'.

My alma-mater (UBC.ca), the CS Dept touches a few subjects:

- Design Patterns (still using GoF, which is probably not the right fit for 3rd year students)

- Refactoring (we do refer to Martin Fowler's book albeit we don't dig that deep)

- Barbara Liskov book (touches a few thing regarding type-systems and its relation with OOP, IN-OUT contract/verification, a bit more academic/formal but most of us saw her work in C# contracts, the L in SOLID principles, some of the OOP best practices probably).
HTML5 Needs DRM to Win
You're falling into the trap of thinking everything is HTML. This doesn't apply to native code. There's very little penalty for using rounded rects, drop shadows (which are part of most drawing primitives), and gradients.
Your attitude makes it harder to reinvent yourself [edit: in a major shift].

But if you are happy with doing things which more or less builds on previous experience, all through your career while the world/you change, congratulations.
Then just give the freebies to non-throwaway accounts. Now your users still have a choice, and you don't lose any goodwill (obviously, explain that throwaway accounts don't qualify).

This is on the same level as adding a CAPCHA if someone comment looks like spam.
True. A search for python tutorial returns the official python tutorial. But, I hear your point. It should be added, or a least a link to the very beginner material should be provided.
I have founded tech startups both in Europe (Holland) and Silicon Valley. While some details are apparently debatable (judging from the discussion here), the overall picture seems very accurate. The fear of failure and personal liability is a huge issue in most European countries. I hate to say it, but there is a lot European countries can learn from Silicon Valley.
I disagree with you, i think it has much more to do with the concept of happiness..

In US where the capitalism is too strong, people tendo to believe that wealthy = happiness

Despite not been a european, but a brazilian, i think europeans understand that happiness its a more tricky and uneasy concept to conquer.. and is made of much more values.. even the simplest ones..

They are far more sophisticated in human relationships and the concept of happiness..

but lets not generalize..i know a lot of sophisticated americans.. but is much harder to get there.. cause it needs one to get free from its own dominating culture..

In Brazil we have similar regulations, and labor parties are stronger and popular..

We try to work and be happy with our work, and make a living, but also we want time to have fun, to be with the family.. even if you have to earn less money..

those are different perspectives from the life quality we all want and spect.. different equations, different answers..

who are right? i think it always depends.. what is good for you may not be good for me.. and this means it cannot be enforced by the stronger part of the relationship..

freedom is based on choice.. on the capacity and possibility of choosing.. if someone stronger, be it a enterpreteneur or a country, enforce someone to take a path, that is just limiting individual freedom.. and that is a real threat..

People are different, and have different life values.. we should protect that.. not enforce the "everyone should fit into this box, please!" behavior

I tend to like more the way europeans live life than our brothers from north.. because its everything about happiness not about (just) money, and i think they(europeans) are more conscious about it.

Life should be driven by passion, making a living, money, wealthy.. should be just a consequence of that.. or not :)
Pentagon Preps Stealth Strike Force to Counter China
Horoscopes for tech entrepreneurs, hackers, and VCs
I feel journalism is bad, and getting worse. The so called need for 'balance' and quick news cycles leads to bad writing. However this isn't data. What would be a measure that would show quality over time? Readership would be one - although this would be skewed by people changing media (paper to electronic). Industry profits might be another, although this is indirect and is messed up by the enormous amount of advertising dollars in the mix. Whats a better measure of quality?
The closer the book to the language you'd like to apply to the better it is. Nothing beats applying it in real-life regardless whether it's a classic or not.

Case and point: Singleton design pattern in Java (and JVM) vs Singleton design pattern in C++. Try implementing it in a production environment and make sure it is thread-safe, network-safe (can be sent through the wire), etc. You'll end up with different approaches.
Not dumb. I only discovered Linkedin Python groups yesterday. I didn't mean to come off as condescending.
Randi Zuckerberg Also Confused About Facebook Privacy
Well it's so easy to evade taxes when you are self employed as opposed to an employee or a civil servant, that this is often true.

Every time that you get your espresso and you don't get a receipt (which is more often than not), the owner of the café pays no taxes.
Monitoring many people is of course cause for concern, but it has little to do with what the article was talking about. The article was talking about the monitoring of specific, fairly small groups of people.

I would object to any attempt at widespread monitoring of public spaces by the government (though I don't see an obvious constitutional problem there). I don't object to using their existing monitoring capabilities to focus on certain groups.
I wanted to let you know that I read this comment, but knew I needed something to say to justify adding one:

I would like to note for future reference, that my position here is not outright dismissal, but extreme skepticism.

PS. That this appears to be a centralized solution is a deal breaker for me, at least for important accounts.
Why should a potential customer be willing to trust you with their email address? Perhaps you are very respectful of their privacy, but already their trust has been violated plenty of times by other, less honest companies. "One bitten, twice shy" and all that.
Or discuss it with the man? Sometimes it is the woman longing for sex.
I think it is easy to see the Sprawl books as being technology-oriented with cyberpunk window dressing. If that is your perspective going in to Blue Ant, then I can see how you might be disappointed. The Blue Ant series makes it clear that Gibson is interested in contemporary humans and their culture. Technology informs these topics, but isn't the primary focus.

Going back to Sprawl after reading Blue Ant, new layers of detail became apparent to me. There is a lot more than just an AI-driven singularity story going on. If anything, the [Spoiler!] Neuromancer-Wintermute union is a McGuffin made too explicit, distracting many readers from the rest of the interesting content. Like Space Rastas. How awesome are Space Rastas?!

I found it easy to follow the Cayce Pollard thread in Pattern Recognition. Everything seems to develop around her or eventually relate back to her. In some sense, Cayce is a hybrid of Case from Neuromancer and Marly Krushkova in Count Zero. Bigend is a hybrid of Josef Virek (Count Zero) and perhaps the physical aspects of Armitage (Neuromancer).

All of Gibson's books deal with characters that operate with relatively little wealth and power on the fringe of society and their interactions with figures of extraordinary wealth and power who have ambiguous locations within society. But these characters aren't just computer hackers / programmers. They can be marketing advisors, children, fashion designers, linguists, artists or mercenaries.

It is worth giving the Blue Ant* series a second change, there is more in common with Sprawl than first appears.
> bike-sheddish

It seems this term has evolved beyond any recognition to me. In what way is choosing C over another language that may provide more built in "arguing over something trivial/tangential"?
I used to work at a marketing firm and we did occasional phone survey which I would have to listen in periodically to ensure the questions were understandable and getting good answers.

I was always amazed that anybody would spend 20 minutes answering questions asked by some random person for absolutely no reward. I still don't understand why. And our surveys had to be representative of the area demographics so it was not just all lonely, elderly people. It was people of all ages, race, etc.
Somebody please fire the copy editor,

> Last Friday I interviewed Peter E. Hart, an electrical engineer who was an early artificial intelligence researcher, about one of the first robots, a machine named Shakey that was designed at SRI International beginning in 1966.
Version control being hard-coded with an exception for a particular framework of a particular language... I see the benefits, but I am deeply wary of it. What if the filename changes in the future? Does GitHub somehow have to detect versions?
I think there's a big chicken-and-egg problem here since why would websites use it before there are users?

But it also seems like it would be too much of a hassle for users. If they let their browser or Lastpass save the passwords, they can log in automatically without multiple steps involving a phone. I mind having to take out my phone for regular 2-factor authentication but I normally only need to do that once for each device. I also find that I would rather type in a couple digits than wait for a camera and QR code recognition.
We use a Riverbed appliance for this at work (http://www.riverbed.com/us/solutions/wan_optimization/). Would love to see a comparison on ease of setup, stability, and optimization benchmarks, if anyone knows of one.
Thanks for the notice. Now I'll add your business to my blacklist of enterprises which I'll never do business with.
Brilliant read with many takeaways! Mike - Thanks for sharing!
But why have you designed your interface in such a way that this could happen?

A normal interface would allow you to remove one node at a time and this wouldn't occur.

A more advanced interface may allow you to remove 2 nodes, but would return a vector or a new list to ensure proper deallocation.

Don't get me wrong; you have to think with C++ and generally know what you're doing. However, you can write safe and high level C++ and I don't necessarily think thinking about your design is a bad thing.
From Rackspace FAQ:

> Can I import my own image or export an image of a server?

> At this time, you would have to pick from our Linux distributions or Windows images.

I want to upgrade the OS on my schedule, not theirs. I want control of my own backups. And I really, really want snapshot capability, running / under LVM or btrfs. None of these seem possible from my interpretation of this answer (although I can't conclusively say they aren't).

You're right, though -- the pricing isn't bad at all.
It would be e if there had been a + sign in the parens, but with a - it is, in fact, 1/e. (1-1/n) is always less than 1; multiplying a bunch of factors less than 1 can't possibly* give you 2.something.

*without somehow wrapping around infinity http://en.wikipedia.org/wiki/1_%2B_2_%2B_3_%2B_4_%2B_%E2%80%...
If anyone is wondering about the use of "to-day" (and, as a bonus, "to-morrow"), the following are from Etymonline.

"To-day"

O.E. todæge, to dæge "on (the) day," from to "at, on" + dæge, dative of dæg "day". Generally written as two words until 16c., after which it usually was written to-day until early 20c.

"To-morrow"

late 13c., to morewe, from O.E. to morgenne "on (the) morrow," from to "at, on" + morgenne, dative of morgen "morning". Written as two words until 16c., then as to-morrow until early 20c.

...

The latter reminds me of Spanish where they say "mañana por la mañana" (lit. tomorrow during the morning) and Portuguese where they say "amanhã da manhã" (lit. tomorrow of the morning).
These are all good books. One I would add myself that has had the most impact on me is "The Passionate Programmer: Creating a Remarkable Career in Software Development". It used to be called something like how to keep your job from being outsourced but I think it does a good job of showing one how to be more than just a 9-5 programmer and really dive into the profession and distinguish yourself.

In fact I really love the whole pragmatic series because they focus on the craftsmanship and techniques surrounding it more than the specifics of a technology. Kind of like most of the books you have listed there.
Did you know about a "hidden" page: http://news.ycombinator.com/best
Looks like an experimental feature to me but it will be nice to have something like this.

Waiting for: http://news.ycombinator.com/best/2012
I don't think the answer is having GitHub do anything about it. The word has to be spread, yes. But not that way.
Developers need to know about the importance of all their files and their security at development, else just think of what will happen when GitHub is not around or when they use another form of Git, etc. Problems need to be solved from the root and that means teaching developers to be more security aware, not making tools that will make said awareness easier to forget.
We use C quite heavily at Bump in our mobile apps. With our recent app Flock, we wrote nearly all non UI logic in C to be shared between iOS and Android. This made moving to a new platform much faster and easier than in times past. A lot of this core code is also used on the server to manage incoming connections from the clients as well.

Aside from the ability to share code, it also makes sure that we are not using anymore memory than we really need. Avoiding unnecessary GCs is an important concern in writing performant Android Apps. Having the core C layer only hold on to as little memory as possible is a huge win.

On a less objective note: When I left undergrad I thought I'd never write C again, but it was such a pleasure working with it again. Knowing (almost) exactly what operations your code is doing is quite liberating after working with so many other higher level languages and frameworks.
Top 2600hz Blog Posts of 2012
Private Zuckerberg Family Moment Inadvertently Made Public Thanks to Facebook
The iterator for a vector is a class... although quite a thin wrapper around a pointer, it is still a class.

The difficulty to handle errors in C++ is generally bad API design left over from the C days. Exceptions used correctly make error handling exceptionally easy.