skysight-inc/HackerNews huggingface dataset:
"Privilege level". I guess that means because his dad was already rich, the valuation of billions of dollars for a disappearing text service means nothing, along with the fact that forbes inflated a two-page article into 10 means something. Ok.
I gave this example on Reddit this morning, but I'll repeat it. If a programmer was given an array of elements [a1, a2, a3, a4, ..., an-1, an] and asked to produce the array [a2, a1, a4, a3, ..., an, an-1] and couldn't do it, he'd be the laughing stock of /r/programming for a couple of days and we'd hear about this problem for years to come, the same way we hear about FizzBuzz. Certainly a programmer should know how to traverse an array and manipulate its elements!

For the case of inverting a binary tree, we haven't gotten a clear answer to what it means, but the concensus seems to be to swap every left and right nodes in the tree. Well, that's exactly like the array problem above: traverse the structure and manipulate its elements! The traversal is not a simple loop, you use recursion (or if you're fancier, use an explicit stack to avoid causing an overflow of the call stack), but I'd argue that recursion is a fundamental notion for a programmer to know.

A commenter on Reddit mentioned that there's a difference between programmers and computer scientists and that the programmer is responsible for writing software and the computer scientists are responsible for coming up with algorithms and data structures. But then, what do the programmers use? If we cannot expect them to know about trees, what about linked lists? Resizable arrays? Hash tables? Graphs? These data structures are extremely important tools for creating solutions, shouldn't programmers be aware of them and how to use them?
I think there have been a few efforts to do such a thing. A quick search of github and I found https://github.com/kovasb/gamma/blob/master/README.md
The rules are pretty clear on what the interview will cover. The recruiter tells you months before the interview and they (Google) even send you a list of what books and papers to read before you consider yourself ready. That is more than fair. I just joined a start up. It consists of 3 non-minorities and 3 minorities. All three non-minorities were recruited early on because they all knew someone within the company (and they all were competent). All three minorities came in through a recruiter - expensive and the bar definitely was a little higher than the internal referral-hire process.

So In summary, I like Google's process for its fairness. They also seem to hire quite a few good engineers and a few great ones too.
Apple limits URL checking of which apps are installed on iPhone to 50 total
That's what I figured when I implemented it. In my application I'm fine hardcoding the hash type because if we have to change hashes away from SHA-2 we have to update all of the equipment in the field anyway, so we might as well update the software at the same time.

E: It also helps that the code with the hardcoded hash type is much easier to understand than the equivalent EVP code.
If we don't even know about water, how could we possibly know anything about climate?

http://nautil.us/issue/25/water/five-things-we-still-dont-kn...

Moreover, if the premise is wrong, the conclusion can only be false, that's basic fallacy.

Follow those models like they actually say anything is like giving a driver's license to a good racing gamer (NFS, GTA, etc.). It's just simulation, it's not real.
Identical experience. They had me design and implement a practical thing. It was an interesting problem, not something I would normally be able to do in 30 minutes. They wanted it in 30 minutes. After about 20 I stopped coding on the whiteboard and started explaining where I was going with it. It was not complicated, just using a hash to store things, but the removal involved moving used blocks a free list of pre-used slots so the overhead of adding a new costly element was way cheaper. This would beat a binary tree for the scale of elements they where talking about but still easily kept in ram. I am sure they didn't have a clue what I was talking about. I think they wanted an RB tree based algorithm and a more primitive solution. Right after the interview I implemented it and sent it to them. I didn't even get a reply. About two months later I got a survey. This was after three interviews. The happy ending is I have used that bit of code several times since and it rocks. :)
Most things that deal with GLSL have to upload the code to the driver for compiling and execution, so you'll see it most places as it stands now, or there may be a loader function that reads external files, but ultimately a string of source code is passed.
That actually sounds like a decent way to do things. The only thing I'd change is making it shorter and trying to incorporate some pair programming at least to some minor degree to see how well they communicate along with developing.
Baidu Fires Researcher Tied to Contest Disqualification
I personally wouldn't be willing to spend 8 or even 16 hours working on an interview question for the chance to receive an offer. I'd take the one hour whiteboard dance.
Graph databases shine when the connections between data objects are as important as the objects themselves.

A social network is a classic example. User profiles are the primary objects - but the connections between them - who's friends with who - is just as important to creating the user experience.

Another example is one from academic research: citation graphs. Research papers reference other papers. If one was building an app to mine citation data, a graph database would be ideal.

I built a graph-based recommendation system by defining connections between parent/child/related products. I then was able to traverse the graph, starting at known purchased, and branching outward to find other products/services the customer may be interested in.
It's possible the position was filled, so some hiring manager just cleared the queue.
I doubt your Passport will see an Android update even if they did this. Someone might have an unofficial Android build for the Passport though.
Probably my favorite hiring writeup of all time. So good!
Basically this is the evolution towards Minority Report. We are destroying the concept of innocent until proven guilty and are convicting people for what might happen instead of what did happen.
So true. When people are surprised when 1 boy out of 5 is diagnosed with ADHD. They can't do anything! They're freaking bored!

Millenials are called weak, entitled and useless, but wait for the next cohort of "bright" minds who are gonna lead this country. Will they be able to even feed themselves? Is it even safe to teach a kid how to cook an egg?
Install Kali Linux Over VirtualBOX
This passage gives me a good idea:

The OPower guy said they had a ton of problems where they
will be using Scalding, so I asked him what they are
doing in its absence. He said Oh we pojo it. Then he said
pojo this and pojo that, and soon I was drowning in
pojos, so I asked, Sorry, what exactly is a pojo ? Now,
bear in mind I am a Scala programmer and haven't touched
Java in ages, and they knew that. Their whole pitch was
they wanted to inject some new Scala blood into their
tired Java veins, and that's why I interviewed there. So
the guy is agape, and says, you don't know what a pojo is?
When was the last time you wrote Java?

When interviewing a candidate, use some wacky made-up term like "pojo" a lot in offhand conversation, and reject anyone who doesn't ask what it is.
Apps is the main reason. Plus it'll be cheaper than developing their own OS. Augment Android with their secure e-mail, BBM, etc and they might have something. Maybe.
I agree. Could understand that first snippet, the second, not so much. I'm appreciating Javascript more and more because stuff like that doesn't happen there.
This is common complaint I see of the Haskell community where there is always an attempt at cleverness over clarity.
pojo is a common term for java devs, at least any who have been molested by spring
It was mostly how we wanted to use it at my company. It didn't seem clear whether docker should just set up the system (apt-get, pip install) or also checkout the code. To add to the complexity, we have a puppet script we run on the machine to install dependencies. I had no idea how Docker who supposed to fit into this pipeline. So basically, I didn't know what docker was supposed to be good at, i.e. do better than other tools.
This method doesn't work well for hiring people that already have a full-time job elsewhere.
Sqoop does the extraction but not the transformation part of ETL and is only used for bulk moves not iterative.
While that's good advice, I don't follow it.

If a company doesn't have their shit together enough to coordinate an interview schedule and get the right people into the right room at the right time with my resume in their hands, ideally in their hands ahead of time, I don't want to work there. It's a basic competence test.
I am foreigner, so could someone explain to me - why this is happening? From my discussion similar incidents with other parents it seems like everybody not sure why such attitude exists today. I mean, it should be same adults who have no clue why it is done, pass and enforce these laws?
In defence of curl – sudo bash -
We did that one time. On the one had it worked very well. The person wasn't a good fit on the team so we declined. On the other hand it was emotionally draining because the guy was a really nice guy. It's really, really hard to work with someone, get to know them a bit and then at the end say, "Sorry, you're just not for us". I think it was even harder for the candidate who didn't clue in that they weren't doing very well. They met the team, got to know people a bit, got to feel the atmosphere and started to imagine what it would be like to work with us.

In the end it was such an upsetting experience for everybody that we agreed never to do it again. I think there are probably ways to make it work, but you need to be really careful to maintain some distance... But then, will you get the result you are looking for if you do?
This sounds like a huge time-sink on both sides. The interviewee will need to clear up a lot of time to work on the small project (which is not always possible).

This does not scale - the number of people that can be interviewed per unit time will go down drastically.

This wastes interviewers time, they could be spending the time working on real work (unless the project is real work).

If the project is a real work for hiring organisation, it likely would reveal to outsider things the company probably wants to keep secret (infrastructure, technology, processes, etc).
In what way ? ... out of the box the BB does everything I need. I have to reboot my iPhone6 sometimes and the rest of the family reboots their androids weekly. I dont reboot the BB... it just works.

For games... sure android and iphones are great but some of us dont use these devices as toys
To fill in one gap - our hiring process has an extra layer of insulation to better control individual biases. Your interviewers all submit feedback and an independent hiring committee makes the decision, on a different day, with all due deliberation.

The reason nobody has anything to say to you at the end of the day is because none of that has happened so nobody knows what to say at that point, and I don't think it's likely to make you feel better to have somebody give you a completely generic speech that has got nothing to do with you.

As for the more general thing that keeps popping up - do people seriously believe that all the thousands of Google engineers who do interviews haven't figured out that people writing code on a whiteboard under stress aren't the same thing as people sat at their desk grinding out code?
Personally I think there are two good ways, in combination, to determining if a person is a good hire.

1. Ask questions about past projects. Probing questions to make sure their resume sounds accurate. Get a sense for how they solved problems in the past and explain them.

2. Give them something to code. On a computer. Some small example. Even better if you can try a pair programming exercise to see how they code and how they can communicate with others on a team.

Asking academic questions has been entirely useless in my opinion. I've worked with multiple people who can pass all the academic questions about algorithms and data set and couldn't write an application to save their live...and the vice versa too. I'd rather see how they can code, now and how they can communicate about projects (active and in the past).
This burns a little as I got turned down for a job I think I would have done really well at. I'm wondering what I did wrong exactly. I accepted defeat as graciously as I could but I don't know what my future holds.

I love programming but I'm wondering if programming doesn't love me.
Inferior as an android competitor perhaps but as an OS for soft real time, or embedded or secure systems, QNX is extremely good.
> The parents decided to have them placed with a slightly problematic in-state relative instead.

Leaving out any issues of rights, that's the biggest issue here: that children get moved from a safe situation into a more dangerous one, in the name of keeping them safe.

Take this recent case in Australia [1]. A father cared enough about his child to voluntarily put him in the state's care, whilst he sorted himself out. The child never came home, as the state placed the child in an unsafe home, and he drowned.

[1] http://www.smh.com.au/nsw/parents-demand-answers-after-toddl...
Stop making phones altogether. Focus on what they do well -- BBM and MDM solutions. Being an Android OEM is death by slow cuts at this point. Players who have a much bigger head start in making Android handsets are doing poorly. Even the big "winners" like Samsung are selling a lot of units at low margins. What's Blackberry got that every other Android vender doesn't? Don't say keyboards, Motorola's first Droid had a keyboard, there's a reason they haven't made a new keyboard phone since 2012. And those are slider keyboards -- nobody is making Android apps optimized for the screen size and ratio of a classic style Blackberry. Making Android devices would be throwing good money after bad.
I've gotten the deepest leaf question
Because you can use your password by entering it via a phone keypad to IVR.
They don't start looking at your resume or asking what you have been up to until you pass the technical interviews. Which means that if you resume or experience isn't up to snuff, the interviews are a complete waste of time for you because of a decision that takes them five minutes to make.
“It only costs us 6 percent of revenue, and that’s nothing,” Nelson said.

This seems high. Is this normal for big companies?
Good point; never really thought about that. I just found it odd because their email response actually gave me a reason stating my resume didn't have enough experience for the position when it far exceeded everything they wanted for the position.
My plan was indirect but they should refine their OS. Heck they could even partner with Microsoft to allow portability. But the moment they give up their OS is the moment they are throwing in the towel, for mobile.
These cases are a tiny minority. CPS deals with real horrifying and tragic situations every day.

I'm actually more shocked that there are prosecutors and even judges that go along with this BS. I can believe one insane activist CPS worker here and there, but an entire chain of people to back them up??
Also, a new phone with sim card is only about $30 in a petrol station. You would be better off going to a random petrol station, buying a new phone/sim, and disposing of it after the call. Preferably by removing the battery, then taking it to some other remote place and destroying it, then take it home and dump it in your neighbours trash. Depends how paranoid you are, but if you're becoming a spy...
Your characterization of US education in middle and high school is largely incorrect. I don't want to take time to explain all the ways.
Not really. Apple takes something on the order of 90% of ALL cell phone profits worldwide (I've seen figures from 89 to 93%). Even Samsung is having difficulty because there have been lots of new Android competitors.

That said, while it's estimated that Android vendors take ~10% of cell phone profits, that's better than Windows Phone and BB, which take 0%.
It's also seen some use in the Javascript community as well (though not nearly as common).
Why the floating action button is bad ux design
Link to client api is broken - http://i.imgur.com/egcKVyv.jpg

(case insensitive file system on macos may be? :))
I used to think people like you had to be lying, because my service with the USPS in the Minneapolis area growing up was absolutely stellar. The value on the dollar was by far the best, and the friendly counter agents would help you figure out how to ship something the way you want.

Then I moved to Chicago and understood why the USPS gets such a bad rap. Lines a mile long, counter agents that can be called uncaring at best, tons of misdelivered/undelivered mail, etc. It was like two entirely different services.

I'm since back in Minneapolis and the USPS here is just as reliable as UPS or Fedex. 9 out of 10 packages arrive on time, which is about average for all of them.
Exactly one developer should be responsible for a review. Otherwise, you get diffusion of responsibility, and both reviewers assume they can half-ass things. Also, even if they were diligent, you're needlessly creating work for yourself, and the marginal benefit of the second reviewer is very small. Having two reviewers is okay if you give them non-overlapping parts of the code to review.

You should definitely do code reviews. Their main benefit is in the long-term improvement in coding quality and coding ability of your team members.
Never heard of spring, never heard of pojo. Specialized in C/C++, STL, Boost, OpenGL and GLUT, GLx... over the decade have only found interviews for Java jobs. Have tried to learn Java, used them a jobs where none of my bosses knew it or cowokers could spend time talking to me about it. Still, I can only get interviews of Java jobs because that is the only work experience on my resume. Why are we all so screwed?
NSA – SKYNET: Courier Detection via Machine Learning
Ask HN: Is theoretical computer science missing some parameters?
I took my first course on theoretical computer science this semester was left inspired and confused. I was inspired because Turing's realizations that a simple hypothetical machine can compute any and every computable function is amazing. The fact that everything, including our gigahertz processors and our brains, boils down to a very simple machine. I was confused because it seems like the entire field of theoretical computer science is missing some parameters. Sure, everything is a Turing machine, but the more interesting thing to know is how different instantiations of computation are different from each other.

Perhaps if we understood the qualitative differences between Turing machines, our Intel processors, a massively parallel computer, a deep learning neural network, and our skull full of neurons, it would inform the progress of computer science and its subfields, not least of which being artificial intelligence.
How Not to Crash #9: Mindset
It started in the early 80s and culminated with the kidnapping of Jacob Weterling. During this time local and national news portrayed pedophiles and rapists as serious, common threats to children. There was the absurd McMartin daycare nonsense. The 80s were a time of relatively high crime and it was during this era that zero tolerance policies became the norm. It's when mandatory minimum sentences became the norm and punishments for crimes became very heavy.

As I see things we lost our soul during this time and have not yet recovered it. At this time if you traveled overseas the first question people would ask is if it was safe. Justifying laws and policies in the name of safety was the way to get compliance from the citizenry. It still persists today though people are starting to see the bullshit. Note that the usual way politicians justify curbs on the internet is by mentioning child pornography.
In most cases (like the example), it simply allows you to call "effectful" code (often monadic, IO etc) to populate arguments of a function.

My favorite example is "I want to grab three web pages concurrently and return them in a single triple." To the haters who think this is just golf, just TRY to write this as beautifully in any other language.

(page1, page2, page3)
<- runConcurrently $ (,,)
<$> Concurrently (getURL "url1")
<*> Concurrently (getURL "url2")
<*> Concurrently (getURL "url3")

(taken from the excellent haddocks for Control.Current.Async https://hackage.haskell.org/package/async-2.0.1.4/docs/Contr...)
Hourly. I have done both. There is always and always scope creep.

For hourly charges, bill in block of, at least, 4 hours. I usually give client estimate, so they have some rough idea of how much project would cost.

I did fixed price in beginning of my career and always went over my estimates. Perhaps I was just too inexperienced.
There's even odds it's a response to the Gemalto hack; all three major AUS MNOs use Gemalto SIM cards, and at the time only NSA and GCHQ were specifically called out as being involved, not ASD. Canberra might be feeling a bit left out there. Alternatively, they might be afraid that PLA's Third Department have also compromised Gemalto or other upstream hardware providers, since Australia and China are in each other's region of interest.
luckily, there is almost no more pay-phones in USA....
> Government could use the data for control, to maintain power over the people

So could corporations. If they were so inclined, Google could easily blackmail almost anyone. Your only recourse would be going to law enforcement and a messy public trial at which the embarrassing secrets they were using to blackmail you would be revealed.
In other news today: http://www.kltv.com/story/29290704/police-video-shows-office...
I guess encouraging their employees to interview is Twitter's strategy for retaining them by reminding them how much they don't want to be looking for a new job.
This is entertaining:

"... in the US you have to talk a lot of bullshit. No matter what your company looks like, you have to talk as if it’s the next Facebook. You have to pretend you’re a Unicorn even when you know you’re not. I never once met a founder that when asked, “how are things going?” could give me an honest answer. Everyone is killing it, smashing it and blowing shit up. "
This is actually a standard crowdfunding technique even when it's not from "shady" sources -- you "seed" your campaign with your own money to make it look like it has traction, giving it social proof so other people fund it.

Kickstarter knows people do this but they don't care because they still get their cut.
I stumbled upon gamma when I first starting looking into shaders--it's pretty incredible what it's doing. mikekchar is exactly right, I think, in thinking that lisp is a good candidate for creating what's described as embedded domain-specific languages (EDSLs). When I first explored writing my own shader for this project, I opted for doing it myself just so I could get a better understanding of what's happening under the covers, with the intention of maybe introducing gamma later. It ended up that my shader was super simple--just a for loop and some basic trig math, so it wasn't super necessary to migrate. But, from what I've heard, even mildly complex shaders can get out of hand quickly, so gamma and projects like it are super promising.