skysight-inc/HackerNews huggingface dataset:
I understand the author's frustration but this sounds like sour grapes. Sure, the interview questions that Google, Facebook, Amazon, Microsoft and pretty much every big tech company asks are hard and abstract. But it shouldn't be a surprise. As the author mentions, there's numerous books on programming interview questions. Every software engineer I know will spend a lot of time studying common interview questions like maze solving before interviewing for jobs.

You can argue the process is flawed, but what's the point of applying to these jobs without preparing and just hoping you would get a different outcome? The flip side is that these hard interviews makes programmers that can pass them scarce, which drives up salaries.
Traffic to Wikipedia terrorism entries plunged after Snowden revelations
MacHeist HTML5 Game UI Sale Site
> Everything is easy when you know how to do it.

Yes?

The point of an CS education is just as much to study well known algorithms and re-apply them to new contexts as it is to invent new ones. In fact, for most professionals, I'd argue the weighting is well slanted towards reapplication.

Our dev team previously used FizzBuzz, and found that every applicant was passing it. So they wanted a new take home programming problem, and internally their most important criteria was 'demonstrates algorithmic thinking.' They mostly write and maintain simple Django webapps, so I thought this was a bit silly, and suggested if they wanted to measure that, give candidates a problem easily solvable with topological sort. Unfortunately they bit hard and only found out afterwards that pretty much no applicants solved the problem correctly. We still hired four people from that round. So in some sense, turnover within a year will mean that none of our dev team can pass their own interview.
Until the first time you spend a couple of hours looking for a weird bug in Python because somebody broke this rule...
I didn't finish the problem in my interview, and got hired. I asked the PM later why, and he said "we wanted to see you try to solve a problem we know you couldn't, so we could see your problem-solving process and how you handle stress."

The author of the article comes off as defensive and blame-shifting. I'm not surprised he didn't get hired. Since when is it ok to say "why?" when someone asked you to perform something in an interview? Do you really think the multi million dollar news agency will need you to program a maze at some point, so they're testing your ability to? Just how dumb do these engineers think recruiters are?
Projecting human social structures onto animal interactions almost always results in wrong conclusions about both.
> Something as core as proper stack handling is to me basic functionality.

rustc handles it just as much as other compilers do. It should be safer than that, but it's currently not due to a compiler bug, and features making it safer are not "basic stack handling".

This is not undefined behavior, as has been said multiple times in this thread; please stop repeating this lie. This is a deterministic crash that can't be exploited easily.

> And, any project which resents such technical / conceptual criticism leaves one with much to ponder.

No, their comment said "inflammatory/unnuanced/ill-informed criticism". Which yours is.
There's not really a gap between them. I've spoken to people on the TypeScript team a number of times. Jonathan Turner and I talked about sharing ASTs once, and I gave an internal presentation about Babel at Microsoft last year. Also, there's tons of people that use TypeScript for type-checking and stripping types and then use Babel for compiling down ES2015 code since Babel follows the spec closer.
Since those are slides without the actual talk, any idea why HAProxy was excluded in many comparisons?

It feels a bit biased.
You can catch many things early, if you test your blood often. Cancer is the big one.
I don't need to do any RESTful JSON apps at the moment, but this is being put on by a friend of mine and I like to learn new skills in the event I need them for something else. Thanks for the pointer!
Apply HN: The Mirror AI
The idea is to build a neural interface for Artificial Intelligence in Virtual Reality.

Sounds crazy but what's the point?
Looking at the problem of General AI, recent/future advancements in the field are going to deal with a lack of training environment.
I strongly believe that in the future one will need the tools to train AI on how to interact with the "actual" 3D world.
That includes awareness of space (3D sight and sounds), time and touch.

While being essential for the general AI development, this would also greatly improve weak AI efficiency.
Given the learned notion of the 3D abstractions and corresponding real-world interactions, one would be able to extract much more meaning from the 2D projections or textual information. Not mentioning human/AI interactions that would require strong understanding of the emotions and causal relationships.

My background is purely technical with a focus on High Performance Computing and Big Data.
My most recent affiliations: Swiss Federal Institute of Technology Zurich, Intel Corporation, IARPA.
Within the specific context of a statement like, "Silicon Valley was wrong about Company X", yes.

Within the general context of what "Silicon Valley" means, no.

Is that fair?
Fantastic! Just love the thought of seeing a Wheelys bike in every street corner. Keep up the good work!
What worries me a lot is the proliferation of these puzzle solving interview sites which waste candidate's time and prove almost nothing except that the candidate can solve high school olympiad problems.

Many companies require this as a first step, before even talking to the candidate.

Apart from the problems being totally unlike what your future work will be like, the time constraint proves .. what ? That a candidate can "think fast" ?

What about code quality, architecture, design patterns, build systems, concurrency, etc ?

Here's what I've decided to do when they reply with a coding interview task:

I charge my clients 50 EUR an hour. If you want me to spend 3 hours on a coding interview as proof that I can code, then I'll expect you to pay me 150 EUR as proof that you can pay.

I think this is fair. Otherwise, I'm going to knock on someone else's door, were I can talk programming with an actual person, share "war stories" and get excited about building something cool together.
Forensics should be contracted from the private sector, independent of law enforcement, be equally available to defendants, and QA'ed with test data in double-blind tests.
No it is not, if you ever tried to write portable C code you should clearly be aware that each C compiler has its own flavor of undefined behavior.

The C standard is very generous in terms of undefined behavior freedom.
Weird comparisons. People who like Elm aren't going to switch to TypeScript because it's more popular. They are fundamental disagreements that can't be dismissed with a Google Trend chart.

TypeScript is currently popular but popularity in JavaScript never last long. The cycle is:

* A library that comes out that solves a problem with the previous iteration.

* The new popular library has some different problem but people ignore it because the new cool thing is still fresh in their minds.

* People become annoyed with the popular library and someone makes a new library that fixes the problem with the popular library. It looks a lot like the original library that popular library replaced.

* Cycle repeats itself.
Ask HN: Most Appropriate Time-Series Database
Some Information:

- I'll be storing 1K samples at 8KHz. Each sample is 1 bit to 2 bytes.

- Data will be coming in via a UDP stream, hard-line connection (not Internet)

- I need to be able to define queries based on session parameters, where sessions are a combination of samples to pull and start/end time. For example, "pull all the samples from these 12 streams from this 4 minute time period within this 1 TB Db."

- Should be friendly to data-mining apps.

- I'll need to integrate a visualization package, ideally browser/HTML5 based.

- Want no-charge, open-source package.

Any suggestions or comments are greatly appreciate.
> "I guess you don't follow the EPL closely."

Yeah, I only really follow Arsenal's games and get bits of other news here and there, but I knew about Aguero being injured as I play fantasy football as well, and he's been doing me proud since he returned from injury. ;-) That said, now that you mention Pep Guardiola it does ring a bell. Has Pellegrini announced who he's managing next? Speaking of managers, I'm gutted that Mourinho may be coming back to the EPL, not a fan of the way he winds people up.
Yeah, I didn't bother to explain in depth how things really are, because that would have required an order of magnitude more effort than just listing Bob's absurd nonsense claims, which is adequate for my audience. I'm sorry that Wikipedia isn't sufficiently clear and correct to replace knowing what you're talking about, and I'd fix that if I knew how, but I don't.

Teaching difficult ways of thinking, in person, to people who trust and respect you, is already hard enough. Trying to teach them to random people on the internet who think you're quite possibly full of shit and may not even bother reading to the end of what you write, that's an exercise in futility.

Forgive me if I don't accept the implied invitation.
In this case, I think an argument can be made that hiring worked for the firms involved.
Avast Free Antivirus 2016 Crack Free Download
IIUC, MIR has a textual representation, but the compiler works on a control flow graph in memory. I don't think MIR is written to disk and then re-parsed during compilation.
TypeScript's type system is "occasionally typed". E.g. in trivial, C#/Java-style code it works well. And even there it falls back to `any` way too often (and it can become hard to find out way). Flow's type system is designed with modern, more functional style in mind and didn't fail me yet.
> Almost anyone in any company can go to HR and say, "This person is great, we should interview them for position X" and they will go to the top of the pile. If you reach out to someone you know at a company, if they like you, and you are good, usually you can get an interview there.

I see you have never worked in the defense industry before.
very true...
Well, given it predates Interstellar by half a century, that's more Interstellar's problem than that of The Death of Grass.
Your assumption is that they only help accuracy. Instead they can allow you to visually hide important UX elements and yet keep them discoverable.

I'll have to think a bit longer to come up with good examples.

Edit: non-scrolling swipe gestures are where this is the most valuable.

Improved Google Photos app image selection: a hard press would start selection, and as you continously to drag to select it would provide tactile feedback for where the image borders are, making accidental selection less likely and quicker to detect. Selection would stop on release (to make scrolling easy). Hard press and swipe again to continue the selection.
Calculation is not math per se.
We changed the title to what the URL says, which is more neutral.
My impression is that there is some degree of correlation between threads with high numbers of comments and the comments exhibiting unproductive behaviors. Correspondingly, this makes it more likely that the story will be flagged. Likewise I think there is some correlation between stories that are "more mainstream news" and high numbers of comments exhibiting unproductive behaviors: these stories are even more likely to be flagged.

I've never seen anything suggesting the raw number of comments affects score negatively.
being a prosecutor is a stepping stone to higher office. You get very politically ambitious people in that job. They live to win any way they can.
The Fruit of My Tree – A Reaction to the #Lemonade Convo
One of the fundamental principles that's coming out of a century of hiring research is you have to evaluate candidates on the same basis - any other approach is an invitation to bias and subjective decisions.

If you evaluate two similar candidates, candidate A on their github and candidate B on their performance on Hackerrank then it's incredibly hard to fairly compare those two candidates without adding subjective bias.

In practice what happens is the company goes "oh well the person with a github clearly has more initiative". But is initiative part of your evaluation process ? - have you ensured you've fairly allowed all candidates to demonstrate it, or have you ended up evaluating candidates unfairly on totally different metrics.

If you're hiring you can vastly improve your hiring process by doing two things: (1) Adopting a standardized structured interview where questions map directly to your needs and (2) using a work sample test (getting candidates to do a small piece of work that resembles real-world work as closely as possible).
…and even if you get a bad apple it is simple enough to let them go in a week or two. If you are really hiring, your recruiting process should be running continuously so the loss is not fatal.
I agree. I'm learning Elixir right now, and I think it'll inject a lot more enthusiasm back into the Erlang stack.

Phoenix also feels like the extension to Rails.
Google Shuts Out Competitors on Android? Hardly
Hmm, lower incomes where health care and university is provided by the government, higher income where it is not.

And if you take the cost of health care and university out of the US statistics, do you think they would remain higher?

back of the envelope math says no:

Its less than 10 thousand dollars higher, US health care is estimated at 5k per person on average. Given that these are household incomes youd have to multiply that by average family size, which is like 2.3 people

Its 2.3*5000 more expensive to have healthcare per family in the US

That already has wiped out the entirety of the 10k gap.

If you include free university it is even more one sided.
Chatbots are a novelty. They will come and go faster than Pepsi Clear. I don't see them being big headlines next year, and at most, two years from now.
I can't think of any downsides of an optional type checker. Can you? Just curious if there's an argument I hadn't heard before.
I got 99 problems, but GitHub ain't one.
Inside rustc, MIR is a data structure. The outputs you see here are a human-readable export of that, the compiler does not emit text and then re-parse.

Projects in Rust, like miri, hook directly into the compiler and use the datastructures as well, they don't parse the output you see here: https://github.com/tsion/miri/blob/master/src/bin/miri.rs

(The post has been amended to try to clear this up a bit)
I think that's what he meant by "[...] if I had looked at Dijkstra’s shortest path algorithm and breadth-first search one day before my interview, this would have been a trivial problem to solve [...].".

Sure, BFS is 'easy' but it's not really something that stays fresh in your memory after years of not having to use it.

I completely agree with his point that it if you have to study for an interview, the process is broken.
Yeah, it would be like, say, a python developer not knowing how interpreted languages worked. Or how a shebang worked. To the extent of thinking it was impossible to use an interpreted language for `init`.

Something like that, right?
Choosing a winner based on Google Trends?

Hmm.

Pointing out that CoffeeScript is on the decline because Google Trends for it once peaked and has since declined?

Hmm.

Failing to consider that TypeScript might be at a similar peak and is due a similar decline?

Hmm.
Sci-Fi Dystopias That Are Everyday Realities Today
I think the archaeologist almost surely meant this and the reporter completely screwed up the story.

It would be functionally insane to think that authoritarianism came fundamentally out of a New World archaeological site that is 3000 years ago. For example, in order to sustain this belief you would have to believe that someone from this culture traveled to Africa and then invented time travel, so that they could go back to the mid-2000s BC and give the idea to the Old-Kingdom Egyptians.

Just to give some numbers by rectal extraction: I am about 98% sure that a seasoned academic from Stanford would not be so clumsy with his speech as to say outright that he thought this had happened; I am only maybe 75% sure that a given reporter understands a given scientist's research, so given that we have this report I'd estimate .98 * .25 / (.98 * .25 + .02 * .75) = 94% chance that the reporter misunderstood the scientist, and only a 6% chance that the scientist really believes what the reporter was saying. It's possible but I definitely think it's highly unlikely.
I don't particularly care what it is. This is the discussion forum where I've been told that Babel single-handedly has "destroyed the web platform" and all sorts of just senseless attacks, including ones that get way too personal.

No, if this community wants to act like a bunch of 12 year olds then that is their prerogative, but I'm not going to be part of it.

Again, I'm more than happy to talk about this anywhere else.
I like your post, and I was going to comment on it, but the login process is rather onerous. So.....

The first thing that jumped out was that you are trying to fit programmers into a bell curve, when they're really distributed by the power law, see: http://blog.benroux.me/4-steps-to-making-your-interview-suck... That was kind of a side piece to your blog, though.

Secondly I wanted to give you some ideas I've had on a similar topic, just to throw them out there:

Apple has a three-step interview process that I found interesting. First they ask a question about a language (your choice in language) to see that you know at least one language well. Then they ask a question about an algorithm, then they ask a design question (how would you design a chess game? What classes would you use?)

Another thing I've found is that programming skill is the low bar. It's important, but what you really want in a candidate is someone who can self-manage, who knows how to get things done. Can I assign this person a task, and they will be able to finish it on time (or let me know as soon as they realize it will be late)?

So in an interview, I ask questions to figure out if the person can get the computer to do what he wants. Then I try to figure out if he's a good self-manager. Unfortunately I haven't figured out a way to determine that in an interview, but I'm still working on it :)
As the main developer of an editor (vis) using a similar segmented data structure (a piece chain, similar to a rope, but storing the text junks in a double linked list, thus asymptotically worse) I can attest that the performance is generally very good. Some work will be required to adapt/write a regexp library around some kind of iterator interface, but in general I found that persistent data structures are very well suited for editors.

One problem with the gap buffer is that as soon as you have multiple cursors/selections or in my case structural regular expression support, then you have to move the gap around all the time. Also undo/redo support is simply not as elegant as with a persistent data structure.

For syntax highlighting copying the relevant text region into a contiguous memory block is simple and works well. For now I'm trying a completely stateless approach to syntax highlighting i.e. the text coloring is always completely recalculated. This trades highlighting accuracy for simplicity, but in practice the results aren't too bad. Efficient syntax highlighting for huge files is a hard problem.
She has no fine, only if she wants to cycle again, then she has to pay the fine. The UCI can't force it as she's not a member anymore and the UCI isn't a court
Oh, bullshit.

Look at how rotten soccer is from FIFA on down. Look at US sports where those guys were oozing steroids out there ears with basically no consequences.

It's just that cycling is kind of a working man's sport in Europe and is sort of caught in a no-man's land: it's not wealthy enough to buy its way out of trouble like soccer and US sports, but does have enough money to attract cheaters.

When the scandal linked below hit, all the cyclists got caught and punished (rightfully so!), but people in other sports? The judge has ordered the evidence destroyed!

https://en.wikipedia.org/wiki/Operaci%C3%B3n_Puerto_doping_c...

This was roughly the time period when the Spanish soccer team was running away with all kinds of international success.

Cycling has surely had its share of problems, but it is also making a big effort to clean things up, with fairly draconian out of competition testing that would no way, no how be accepted by stars in other sports.

See also: https://twitter.com/veloropa/status/725359244443262976

And like the response says, the only reason soccer doesn't have a bunch more is because they don't test well. If there's doping in cycling, you can bet that, at 10X (at least) the money in soccer, there's some serious doping going on there too.
That's partly by design, and partly due to skewed incentives.

As noted below, the skewed incentives are that prosecutors need to close and get convictions in order to progress. They are graded on how well they can get convictions, not if those were "fair."

However, this is also partly be design. The theory of our judicial system is that each side will do everything (legal) in their power to argue opposing sides. And then the judge/jury, after hearing both sides, comes to a logical conclusion. The theory goes that if both sides do their job, each avenue of either guilty or innocent are properly explored and then the decision by the arbiter is the closest to the truth.

In reality, though, the prosecutors often have way more leverage and power to argue more persuasively and offer deals than the average defense lawyer. Especially if the defense is from a public defender. And high-end celebrity defense lawyers that cost millions also have a way of overpowering and bringing more resources to bear in the defense. Combined, this means that rarely are both sides actually being argued in a balanced manner, thus skewing which way the arbiter will decide.
BFS may not feel very relevant for front end development, but second time the author encountered it in an interview should have been a clue that it's worth learning.

The world is full of not-entirely-relevant systems that you need to master to succeed. Tech interviewing is just another one of them. The good news is that once you know what they're looking for (and yes, there are books) it can be studied in a straightforward way.

Think of it as a standardized test, with all the associated virtues (consistency) and faults (dehumanization).
I can’t speak for all the team here but yes that’s something we’d consider. Someone suggested Keen IO on the issues tracker which is not open-source but it’s the only viable alternative that has been proposed so far, and it’s not from Google so some people would be more happy with that.
Definitely should have used phone/skype/gtm for the first few interviews, until they proved their interest.
I hadn't tried the UI stuff in playgrounds (I use it for experiments mostly). I'll take your advice and set up a project. Table views are useful, but a definite pain point.

Good luck!
This post got traction:

https://news.ycombinator.com/item?id=11581603
So we have all these posts saying how it is so hard to find developers, and half the posts saying hiring is broken.

Maybe the best time to do one of these interviews is right after taking your algorithms final. I think I got 120 on that thing, but I would have a hard time recalling what BFS and DFS did without reviewing it.