skysight-inc/HackerNews huggingface dataset:
Though this paper focuses on undefined behavior, defined behavior doesn't really make things any better when the programmer makes the wrong assumptions. Look at the first snippet; here the programmer assumed pointer arithmetic behaves like arithmetic in a register where overflow results in wrapping. This might be a reasonable assumption, but this isn't what the spec says. Now you could argue that this should be the defined behavior (and perhaps I would agree), because this is what many programmers will expect.

But sooner or later you'll come across a programmer who isn't aware of wrapping and wrongly assumes the value can only grow when a positive integer is added to it. So you could define a language which silently does bignums and all is well, except now you have to deal with memory allocation (this can be a major issue on memory-constrained platforms) during integer arithmetic, and the way bignum computations affect the program's performance & timing (crypto side channel attacks anyone?). So the next programmer again has to know the pitfalls of the Defined behavior and Do The Right Thing, just as he must do now with Undefined Behavior (i.e. rearrange bounds checking and pointer arithmetic so that it'll never point beyond one past the last element of an array; and so that your signed integers never overflow).

The second snippet (pointer dereference before NULL check) is perhaps more subtle, and again I might agree that the language would be safer if it didn't allow the removal of the NULL check that would keep this incorrect code from doing further harm. However, no matter what your proposed defined behavior for NULL/invalid pointer dereferencing is (what would it be? I have no idea), there would likely be cases where the programmer makes the wrong assumption and his program relying on that Defined behavior is still incorrect and potentially insecure.

Simply defining undefined behavior just doesn't fix incorrect code. You still have to remove the broken (undefined or not) code from the codebase...

EDIT: If you meant to suggest languages whose compiler will abort if it finds code that might result in undefined behavior, well, that's much harder. UB in C is predominantly a run-time issue, so you'd be making a really smart static analyzer to detect at compile time whether your code can actually hit UB. Did someone solve the halting problem? Alternatively you can make a language where integers never overflow. Then we get to what I said about bignums and surprise-allocation and such.. Haskell just isn't for everything.
We basically wrote up what we called a change order. Detailed how we changed, or what we deviated on. Signed by both parties as just a cya sort of deal.
I'd think that refusing a candidate who can't work out how to traverse a tree in 5 minutes for an interview isn't a strong candidate for any coding position.

I've found this sort of generic statement ignores the practical aspects of a hiring decision. Maybe we need to qualify the definition of 'coding position', but I'm thinking of my entire devops team. I'm pretty sure I'd get some sideways looks if I asked many of them how they would implement tree traversal. And my devops team kicks ass. I don't know that a filter on tree traversal helps me in hiring more people for that team.

In keeping with the article, what we really care about is whether someone can be productive and learning how they are productive. It's not uncommon to find a disconnect between computer-science competence and acceptable developer output. I've watched candidates execute whiteboard graph traversal & shortest-path exercises quite well, but their actual code output is just silly. We're still working on finding the right way to detect that ideal mix of "smart and gets things done".
Seems to happen whenever I use locs_around. I think I'll replace that method with my own. Half my robots are guarding because this function is hitting recursion limits every god damn time.
Because the title implies that Google does not think that G+ is something users would want. There are people who genuinely like G+ and maybe even think it's awesome that YouTube now is so tightly integrated with it. So a title implying that Google did G+ because they wanted to exploit ad dollars from users without caring about the users themselves, IS a "did you stop hitting your wife"-like question.
In the App Store, I've seen the "only on iOS" category, maybe he wants to get in there.
Stanford Professor Who Sounded Alert On Multitasking Has Died
"Security Research" which can be a euphemism for hacking, has a built in reward metric and a low barrier to entry. It is also attractive to people who like to solve puzzles. If you are in a mass market being a "data base developer" at an job factory probably has very little positive feedback and peer recognition, but break the copy protection on a DVD so that you and your friends can all share a copy and you are a hero (lots of positive feedback).

One community is self sustaining, the other isn't. So if you're self taught, spend most of your time cracking security systems, you are a 'security researcher' which is a slightly safer moniker than 'hacker' given the current political climate.
When I was growing up in india, Ankit Fadia became somewhat of a minor celebrity in India. I was not sure what he was doing or who he was but I believed he was some sort of a computer god. All the kids around me started reading his ethical hacker book. Maybe that has something to with lots of Indians wanting to be 'hackers' ?
>Paid 1 month trial of remote work is a good bet, but relies on your candidate not being employed already

Most importantly it relies on the candidate not having any other options. Why would anybody interrupt their job search for a month just for a possibility to fill your vacancy?
More cores, mostly. I tried using the Raspberry Pi with server software such as Owncloud or calendarserver. It just barely works, but it is still very slow. Like, response times upwards of four seconds.

Recent smartphone processors have since about doubled their clock speed and quadrupled the processor count. Even half that would bring response times below a second, which would be much appreciated.
I think you might be conflating the terms "troll" and "asshole." If you show up to a subforum on SA and start actually trolling people by posting spam or a bunch of NSFL images or something, you'll get banned pretty much instantly.
If there was Hacker News Gold, I would've give you some for that excellent gesture.

edit: typo
At the time of the talk (Feb 2011) 1 BTC was equal to 0.50 USD.

Amazing that it is up 100000% in about 2 1/2 years.
Preteen girls are not allowed to have accounts. That's COPPA.
i've seen both (the new paperwhite and the 2012 glow) side to side and for me kindle's backlight crushes the nook's. your mileage may vary.

...also half price sounds like a really nice deal!
I have seen many such threads show up on HN from time to time. I don't understand how anyone can arrive at any such bold conclusions based on anecdotal evidence.

I am from India, I have spent some time in the out-sourcing industry. And, I think any generalization is never absolutely true. Like in any other country, there are good universities and bad universities in India, there are smart people and not so smart people, passionate people striving to always learn and do better and people just working to stay employed and get by.

And, finally you always get what you pay for. There are out-sourcing companies in India that offer services at low cost ($/man-hours) and there are companies that offer services at higher costs, it's up to the customer to choose what they need. And, in my opinion since the entire model of out-sourcing is based on saving costs and by out-sourcing companies competing with each other, I bet there are more low cost services than higher ones (supply and demand).
After I posted that comment, I remembered that I had read one a couple of years ago and it explained trees and blobs. Looking at the tree structure now though, I can't see any reason why a leaf has to be a blob instead of a tree.

So without some new rationale, I have to come to the conclusion that ignoring empty directories was a political decision. Perhaps I missed something in how the hash is computed, for example if the node's name wasn't part of the hash, then empty directories would have no effect on it, which would mean the same hash could represent different directory structures, which would be incorrect. But that can't be right, because git can store empty files.

This all means that git can't represent an arbitrary directory structure. That's a big deal, because it can't be used to say, incrementally back up a hard drive without help. That's all well and good if its main use is version control, but I'll never look at it quite the same way again.
> Inputs?

rolls eyes. You provide a bunch of anecdotal evidence about a country of 1 billion people and then ask people for inputs. I lived there for eight years; there are smart people and there are stupid people. The bell curve applies to every fucking demographic in the planet. Guess what? When you nickel and dime, you tend to get cheap labor and cheap labor sucks ass. This applies to call centers too. So instead of complaining about the race/ethnicity of the developer, maybe the complaint should go up to higher management.

To give you an analogy: This is like deciding to buy a shoddy car because you are cheap and then complaining that the neighbor's porsche outstrips you every time you take it to the drag race.
> vps provider goes away

Backups. Your colo, cloud host, mail provider are equally likely to disappear.

> hardware failure

Unlikely to be a big issue unless you own your own kit and can't afford redundancy or replacement. Otherwise, it's a case of firing up another VM and restoring it as per any other computer.

> User error

Less likely to happen than on a hosted service from experience. I've seen massive data loss on a couple of big names.

> Maintenance

Seriously you just leave it. "apt-get upgrade". Perhaps some minor reconfiguration required between distro versions but I haven't had to do this in 5 years on Debian.

Also don't forget, bar gross misconfiguration, if your mail server goes away even for a couple of days, email usually makes its way to you eventually anyway. It's quite resilient.

As for backups, I always test restore at least once a month.
Since technical solutions to things are always fun, a recommendation system could be awesome: look at your upvotes and activity, cluster you with folks who vote similarly, then show you links based on neighbors' votes. There are refinements (maybe there could be other signals--domains, user-added post tags, etc.) but even a basic try at it has the potential to make everybody happier.

I love posts about algorithms and anything about Go or Python 'cause I use those; people's snazzy tech demos are always cool; startup/career stuff can be fine but isn't super relevant to me. It's just weird that to get to the bits I like I load a page that also has a lot of strident arguments about the things I shouldn't or must do, the things people are quitting, the things folks are mad at each other over, etc.
Yes, I own a Beaglebone Black. But the operating system and the ecosystem surrounding it is oh so aweful compared to simply-Debian it-just-works Wheezy for the Raspberry Pi.

That probably doesn't matter too much if you are building some embedded thing, but I am mostly using my Pi as a web server, and I like that is so easy to set up and configure.
Smart interviewing helps filter-out bad engineers. I don't know the situation in other countries. At my work (India), 3 days of back-to-back interviews typically yield one or two employable engineers. And our code is on-par with code from other branches of our MNC, as evidenced by global reviews and testing. The upper management sees this and steady increases our head-count.

It's as silly blaming "Indian" coders, as saying Indians are poor, don't eat cows, are Hindus, etc. We are a diverse lot. Perhaps more diverse than those in the west are used to, but that's how things are here.

One systemic problem I see in most companies that I have worked for is that the companies get structured to promote even those with about 5 years of work experience into management positions. That certainly isn't enough time to develop deep competence in some of the complicated technical fields. That's been changing slowly in the last few years though.
CompCert is a research project. Its unqualified existence does not prove that any demand exist for anything. You might as well say that there is some demand for aspect-oriented programming because so much research is being done on the topic (substitute the topic of your choice if my having picked this one offends you).

It so happens that this particular research project found a few industrial users eager to try it out and study the feasibility of deploying it, but it wasn't necessary for the research project to exist.
http://en.wikipedia.org/wiki/Congo_Free_State#Humanitarian_d...
Box: a Short Film using Industrial Robots and Projection Mapping
I've worked with Justin for a decade.

We've been using Server Pilot since Justin and co. dropped the Server Pilot demo and are now managing most of our development and production servers with Server Pilot.

Server Pilot makes setting up apps, users and databases painless and focused. Updates, back ups, patches and notifications (both good and bad) now take place in the background. We can now focus on app development and refinement - the stuff we're best equipped to manage.
Log temperatures in your apartment/house: http://thule.mine.nu/html/
I talked about this many times before too (and here again), but Indian programmers get a bad name because the 'throw over the wall' factory line coder shops. Where 100s of coders have 1 m^2 each next to eachother; computer, headphones and working isolated by sitting like that all their working hours. No 'training' to speak off, no senior of quality helping them. And (big!) companies in the west just throw a spec over the wall and expect the result to work. This is just most of Indian outsourcing and the quality is a guaranteed drama.
I'd add to this that it's pretty evil in code too, just more insidious.
>>it doesn't acknowledge anything not bought through Amazon as "books"

I have a Kindle and this is patently not true. I have multiple DRM-free .mobi "books" that I have sideloaded. You don't even need a cable; just add the book as an attachment and email it direct to your kindle (username@free.kindle.com) and it gets synced over WiFi.
I'm trying to push my research group to release our papers as iPython notebooks and it looks like my next paper will be. Our text will be rendered as normal markdown and our figures will be live figures with all the code that we used to generate them. This way, if anyone wants to check our work, extend it, or just better understand it, they're more than free to do so. It should be a nice step forward in the ultimate goal of reproducible science.
Applying Angular.js at jQuery scale
An analogy is not a straw man. Moreover, I can identify at least two problems with your rebuttal.

First, the existence of a bad policy somewhere does not excuse the existence of similar bad policies everywhere. You can't justify the penalties under the CFAA by comparing to the penalties for crack cocaine possession, because they are both excessive.

Second, you'll notice that your discovery (if such a prohibition for arsonists indeed exists) breaks the analogy with a prohibition on driving for those convicted of a DUI, because it isn't a prohibition on all fire, when it is a prohibition on all driving. Which makes your argument the straw man, because a prohibition on large public fires is a minor inconvenience, whereas a prohibition on burning fuel to heat one's residence, like a prohibition on driving whatsoever, is a life-altering situation that may require you to find a new job and residence while doing very little to combat the evil in question supposedly justifying the restrictions.
If you liked Coin video, here there are more videos from its filmmaker.
Most people are answering the question "is it better?", but the question is "is it worth it?"

i.e. "Is it worth 2.5x the price of the standard Kindle?"
From the top appstore review

> the only problem is there's no tutorial, and it take a long time to even launch your product

I'm not sure whether or not it's supposed to be a joke. But I found it pretty funny nonetheless.
RockMyRun mobile service now on Android -  Workout Music
The vast majority of Googlers do not approve of G+ policies.

For me, this is the most critical statement in the entire Google+ saga. Most Google employees do not approve of a strategy that google is betting its future on. Has this ever happened before? Probably never before. And to me, it marks a clear beginning of the end of google as we knew it. The google we grew up loving was a google that put product quality before anything else. Everything else(such as market share) was a result of a good product. This is no longer true.
Do you want to be right or do you want to be free?
Saving 9 GB of RAM with Python's __slots__
BTC aren't only for the Internet. Until you said the word "online," the thought didn't even cross my mind. Thanks for clarifying my confusion, you have a valid point. I guess I never disagreed with you.
These threads are already huge, but I'll take a bite.

I don't think it's G+ being more important than the users, I think it has more to do with YouTube. Currently, G+ is for nerds who care about anonymity and all the other things that Google is being criticized here. That's fine, I'm one of them.

However, YouTube is a shithole and it's likely that YT people don't care as much about what they sign into as long as all their stuff is there. That Google would try to move YT users on to G+ makes sense in a "slum clearance[1]" way.

The Real Name vs. Nicknymity thing is a real problem, and for me I don't think Google is handling right, but I do think they're handling it in a way that is not out of line with the values of a stereotypical corporate bureaucracy.

Google wants to know the real names of everybody on its services, I get that, but users who value theirs and others' internet identity do so regardless of whether it's under a real name or a nickname. That Google has been found to be getting back alley sex from the US Government does not help their case for knowing who you really are.

In my more cynical moments I think comments and such are a ruse to get more PII from their users for law enforcement purposes. But YT is also a shithole, and the ad rates against combined-identity demographics ain't sour neither.

1. http://freakonomics.com/2011/09/30/the-controversial-legacy-...
Userbin - Easy To Use Authentication
> "one of the most finely crafted, expensive looking pieces of social software that has ever been built."

Glad you like it. I find it slow, clunky, limited, and information poor. And annoying, because it always puts pointless design tricks ahead of functionality.
Torvalds father says his son was asked by the NSA to add a backdoor into linux
Just throwing this out there since I know the common wisdom is to "have a contract, duh".

I have a few clients who basically put me on a retainer, then I send them a bill. If you give an hourly rate + an estimate clients seem to be cool, provided they are actual businessses. The only clients I've ever had issues with are individuals (usually artists since I freelance electronic media) and that stems from budget / rampant psychotic narcissism. But with businesses, I state my rate I estimate hours & then I bill them.

I'm sure there is a more secure way of handling this with contracts but if a company I work remotely for ever stiffs me on a bill:
1. They better be closing up shop the next day or I'm gonna come after them hard.
2. They lose access to the skills I offer them.
3. I probably have accounts/services in their name that they can't alter/operate without my help, so they're really just shooting themselves in the foot & will likely come to realize this rather quickly.

Anyway worst case scenario I lose 1 payment (maybe it was 1-3 grand?). Maybe it's scary to think that a 3k payment might disappear but the reality is, after discussing with them they'll probably just hand it over anyway or you can settle in between. Even if I one day lose a thousand dollars (which I highly doubt) I can look back and smile knowing I never had to deal with a ton of legalese.

The reality of it is that businesses can't just stiff you on a bill if they agreed to pay for your services, and if you have nice clients who are trying to build a business they have no reason to hurt you if you do good work for them. But I understand not everyone has the luxury of sane clients. I certainly didn't back when I was dealing 1-on-1 with artists.
> What I would like to see is a raspberry pi that works like a 'hardware virtualbox', networking over USB, power over the same lead so you just plug it into your PC/Mac and you have something right there, ready for whatever web/hardware development needed.

This is actually how the BeagleBone Black works. Install one driver, plus it in via USB, and it's powered and networked to your computer, and a JS IDE with GPIO control is automatically loaded.
its a good point about arduino being easier for hw dev than some of the other boards out there. Once you slap a full OS like linux on a device writing high level software is easier and very low level hacking becomes an exercise in operating systems and drivers etc etc and not a quick weekend long project controlling servos and whatnot.

I was particularly impressed with the approach of the Getting Started with Arduino book - for artists / non-electronics / non-programmers.
My RasPi is certainly collecting dust as well, but not for the lack of uses--It is connected to power, ethernet, and an external hard drive. I only ever access it over ssh and never need to touch it.

It runs a Time Machine backup server, a calendar/contacts server, and Bittorrent Sync. Really, one of the best buys I made in the last few years! I literally use it every day!
It will be interesting to compare the two after extended use. This video attempts to do so, with only decent results:

https://m.youtube.com/watch?v=9ZbRd93f7p4&desktop_uri=%2Fwat...
I'm guessing most freelance work is for pretty small amounts. Unless you are talking about a claim in excess of $10,000, it's not going to be worth pursuing, you will owe your lawyer more than that very quickly. If it's a local client you might have some luck in small claims court where you typically represent yourself.
Also, with network connections firewalled via iptables.
Good god, this is a stupid article.

1. The American programmers who stereotype an entire fucking country based on cheap shitty code bought from a stupid offshore center should be forced to take a statistics class. I have seen ten year old PHP code written by people who now work at one of the top three companies which makes me want to puke. I don't go around claiming that the top companies are bad or an entire race is bad.

2. The developer who got into a debate and started whining about societal issues is kind of lame. No one gives a fuck about whether you are in a wi-fi shuttle or what the competition is as long as you, the individual, can deliver code.

3. Meta discussions about the education system are hard to evaluate. One general trend is that more people go into the hard sciences in India than they do in the U.S. This means that a lot of potential barista servers are writing code. Ergo more crap. This doesn't necessarily mean that the education system needs reform or doesn't. It is what it is.
Good idea, thanks for the suggestion.
Isn't it essential that a monumental topic blows up a community? Isn't this one of the most important purposes of a community, the ability to kick off a movement?
The main question is do you need the the back light. For me it is essential, i tend to wake around 3 am every morning and read for an hour, without interrupting my wife, which is worth the extra money.