skysight-inc/HackerNews huggingface dataset:
Try a Fire TV box for a while. Search on devices without a keyboard is far easier with voice recognition.

I agree the fascination may be excessive, but there are a few legitimate use cases where it's not obnoxious (anyone within hearing will likely end up listening to the TV anyway, so presumably you have their acceptance for noise in the first place) and actually useful, and searching for stuff to watch is one.
Project of the Month: seccomp-bpf
The TV could store a "wake up" word locally. The TV doesn't send any audio anywhere until you speak the wakeup word, at which point in beeps and a light flashes and then all audio is sent away to the cloud for processing.
Yup. I'm pretty sure it's provable that a perfect KTH virus must necessarily pass the Turing test.

Not sure if that's a case for or against tinfoil hats.
> The voice recognition is done on remote servers

While possible, this is not theoretically necessary, and I find this highly doubtful in practice.

What about the delay on each voice command as it pings the server? If it was generally the case that voice commands were sent remotely, I suggest usability would be 0.
Here's the thing though: the reason people hiring get so hung up on specifics is because they get burned repeatedly. Coding is just hard. Learning it is hard, doing it is hard, and there aren't enough people who can do it well to go around.

So if you're a manager and need to "build a team", you can either play that needle in the haystack game (which you will always lose, because the needles generally don't even show up on your list of resumes) or you can try to cheat: find someone who has done exactly what you are doing in the past.

Obviously that doesn't work either, but it's not irrational to believe it might.
Some Hifi equipments are in the range of hundreds of thousands, it is easy for the reseller to slip in a couple of cables in the range of thousands. It's 1% of the final price.

Of course there will be absolutely no difference with a 5 € Ethernet cable.

Most interesting is that expensive analogical cables are as much as useless. During a blind tests listeners are unable to tell which cable is the "expensive" one.
> There's also the fact that Mordor was evil.

You're saying Israel's military is not good enough for an evil power? I didn't know alignments had strength requirements.
That's why I prefer a so called jack of all trades to a one tricky pony. I've worked on mobile projects where I've had to switch between Java, Objective-C, JavaScript, Bash, SQL and Python in a single day to add new features. Knowing, for example, obscure details about Java you rarely need and could Google for anyway isn't as useful as being flexible.
Not a great analogy though, since the programmer output is text, not a physical object.
It's about targeted advertising - arguing with your spouse? Next ad break we show you adverts for lawers.
It can and did happen, as the afflicted chip was the SMPS controller.

At last, a use for all those write-protect stickers we collected for floppies...
But its not contrived -- its like your entire job. You're literally saying "I can't perform my primary job function when there is any pressure whatsoever". That MIGHT be acceptable if you're interviewing for an entry level job.

The only other reason I can think for being unwilling to do this is if you're incapable of working with other people - because whiteboarding out solutions with other devs is super common. Even "where do you think I should start, I'm a bit nervous and an idea to get me going would be great" is a perfectly acceptable question. The best interviews are a conversation -- if you turn it into a conversation where we're working together on the problem, it shows a lot about you still. If you take someone else's idea and run with it I think that's really cool, obviously if you need hand-holding it's suboptimal, but there is still a very positive possible outcome from saying "I have no idea where to start" if you're actually nervous.

The only ways I can think of to fail writing out code is people skills or being completely unable to program. It's not like I expect a perfect solution in the 30-60 minutes we have, analysis paralysis is just as bad as no-knock raiding the problem. There is some type of middle ground that involves a good solution that had to be done quickly -- maybe you even mention some other avenues to explore.

What if you ever have to represent my department in any capacity and someone asks you what your ideas for a problem and you just say "no, I don't do that" -- that doesn't really represent me well. I would be very surprised if being uppity about a question being "below you" ever works, you might as well just walk out the door if you're going to refuse to answer a question on "philosophical principle".

The question is just a jumping off point -- its up to you to turn it into a conversation that shows me how great of a programmer you are. If your answer is telling me how dumb my interview is, then that doesn't show me how great a programmer you are at all -- it shows me you have an attitude problem.
This is a GREAT article, not so much for the extrovert angle (I don't know, I'm extroverted sometimes -- I just can't concentrate over people yelling), but because of the headphone parts at the bottom. So many times does "just use headphones" get thrown at people who protest the open office reduction, but they don't realize that wearing headphones all day is uncomfortable (and probably dangerous), even if we love music - and it's also distracting.

When we have things like IRC/Hipchat/Slack, email, and video chat, having a door is no more a problem, because we can get a hold of anyone asynchronously.

Therefore, if anything, it should be EASIER to have doors now.

Sadly, the best office environment I've seen was at AT&T in 2000-ish. Employees had HUGE cubes, with quite a lot of office space for managers. Cube size reduced significantly over the last decade and a half until now cubes are viewed as somehow decadent. We laughed at cubes relative to offices then, we would LOVE to have them back now.

I'm looking for the work-from-home revolution to take over or companies to at least realize what they are doing with the open plan stuff for development. Technology makes doors not exist - so we should at least be able to have quiet.
Corecursion doesn't mean what you think it means. You mean mutual recursion.
Pretty much the same thing that everyone else does:
"Echo uses on-device keyword spotting to detect the wake word. When Echo detects the wake word, it lights up and streams audio to the cloud, where we leverage the power of Amazon Web Services to recognize and respond to your request."
The article refers to the same thing being the difference that Samsung doesn't owns the Amazon/Microsoft/Google/IBM cloud where they run all the voice-recon algorithms.
> contrived problems in stressful situations are going to result in a lot of false negatives

I don't understand the concern with a "contrived" problem. You think it is better with a random spontaneous problem the interviewer thinks up on the spot?

Interviews are stressful for most people; good interviewers will take that into consideration.
As far as networking is concerned, what should I google for separating a device like this onto its own internal private network? I have devices that I want to whitelist traffic for while not affecting other devices in my home.
> Likewise, who would want to use an inferior language or library when superior ones exist?

My guess is that the existing codebase is in inferiorLanguage, and it would be a massive pain in the ass to rewrite it in superiorLanguage.

The carpentry analogy doesn't really work here because you can stop using the rubber mallet at any time. You can't just switch frameworks or languages when you feel like it.
As someone who occasionally has hiring responsibility I sympathise with both interviewer and interviewee. It is extremely tricky to determine if the person you have interviewed is going to fit the bill. I've hired people who I thought would be a great fit for permanent roles but turned out to be the worst kind of procrastinating, one trick ponies who caused more problems than they fixed.

In a recent situation I had a very specific set of requirements for very specific reasons. The company is .net all the way and has a couple of permanent developers who know only VB and have no C# experience. Because of a large influx of work, these developers needed some additional resource for a short period of time. I wanted to try and increase the skill level of the permanent developers as they are not very familiar with design patterns and 'modern' techniques. To this end, I wanted C# developers with familiarity with design patterns and modern best practice to come in and develop in VB. I didn't care if they hadn't used VB recently at all. But I did care that they knew .net. I don't have time for them to learn .net. So I can't have someone from the Java world, it would just take too long. But at the same time, I'd rather not have a VB only person, as they tend (and I am generalising, I know) to not understand much about design patterns and they don't tend to have broad programming knowledge.

When interviewing for a specific role, you have to think very hard about what it is you are trying to do - and don't just fall back on generic cut and paste questions.
Obtenir des liens retours avec un EMD. Galère majeure. Solutions radicales
Original discussion to the original article posted by Jason Bock (which was merely copied by Dawood Sangameshwari without proper attribution [1]):

https://news.ycombinator.com/item?id=7819413

[1] There is some attribution a the bottom of the page, but it isn't proper. It contains neither the original author's name, nor is it a clickable link. It's just a plain text URL. Better than nothing, but still the most shabby way of "attribution" I've ever seen.
Actually, a carpenter who is asked to build a cabinet will start by asking you about what kind of cabinet you want, and a sketch on a whiteboard will work as well as anything else.

Where is it going to go? How big should it be? What's the purpose? Is it going to be built-in, or standalone? What's your budget? Do you want doors, and if so do you want glass in them? Shelves? Drawers? Some combination?

Are there exsting cabinets or furniture in the room? Do you want the style matched, or the woods matched, or both?

All of this stuff goes into the specs for the whiteboard... oh, and you don't know enough about this that "cabinetmaker" is a serious specialization, you should really have put that down as the job title and you should be looking at a portfolio of their work.

So not so far off, really.
of course, this happens, but when it happens just end the interview.

would you like to work in such a place?
Relevant XKCD: http://xkcd.com/378/
I think every programmer should write machine code at least once. It's fascinating to understand how the CPU actually gets the job done.
Making a Project “Contributor Friendly”
I've seen this in my own business. In my last full time job (18 years ago) my time was charged out at £150 pre day, I setup on my own and started charging the same customers £600 per day.

The difference in the way the customers treated me was astounding, I was exactly the same person in the same clothes with the same knowledge but they valued my skills more just because they were paying more.
Note that most hi-fi setups use an analog audio cable to transport the signal to the speakers.
I like the metaphor and style, but I think he left some good parts out. Such as (and yes I was asked these):

- The ridiculously broad yes or no honor question (e.g. "So are you familiar with data structures and design patterns?”)

- The ridiculously specific-to-the-company question (e.g. " Here is a batch of the data our systems generate. How would you process it for triggering of requests to our api?")

- The vaguely worded trick question: "OK that looks good... But how would you do it if you didn't have all these nice Java objects and methods?")

- The Prove-it Take-home that doesn't change anything. "We use ruby and you've mostly used Java, do this ruby take home assignment." Two days later. "Your assignment looks great but we're really looking for someone with more Ruby experience."

- The post-coding interview, resume-based rejection AKA "why the fuck did you ask me to come in in the first place?" rejection. (E.g. "Your coding interview went well but you've jumped around to different projects and we're not sure you wouldn't leave us if given the chance.")

- The didn't drink enough kool-aid rejection. "Don't know the CEO's full bio? Don't know the intricate details of our public API? Didn't read our blog post from this morning? For shame."
That is a serious flaw in the typical interview process. An interview is supposed to screen people based on whether or not they can do actual work. If you are really screening for some parallel skill, then your hires are going to be a crapshoot.
Real programmers use "copy con program.com"
Senior programmer would know that he needs to check hashing mechanism when his custom dictionary keys were not working right.

Everything eventually boils down to the bunch of algorithms Knuth so carefully documented for us. Learning a new language is just learning the syntax and semantics for it's mapping to those algorithms.

Stop holding languages in so high regard, jeez. IT is held back by this so much it hurts. Let's just describe some sensible high-level evaluation semantics and start all compiling into that already!
> But I agree. I'd much rather have a dumb tv and upgrade my attached boxes.

So you trust the manafacturer/software provider of your attached box more than that of the TV?
No mention of H1Bs in this hiring related post?
Which would be perfectly valid if software developers spent their entire day solving problems on the whiteboard. But we don't.
http://i.imgur.com/E1OV1AS.jpg

Such a common sound path deserves only the best.
Python

You don't have to worry about memory management, pointers and the like, and can just focus on the algorithms.

All that stuff it super important to also know, but probably easier to learn about them separately.
Cheap Point of Use Electric Power Monitor
Is Older and More Expensive Whisky Really Better?
So is jQuery a library or a framework? I've seen it called, and used, both ways. It's not a hard and fast definition, and that's what I mean by "really understanding" something. I want the things I build to be able to be used in any way that it would be useful. It's the fractal landscape at the boundary between the definitions that I'm interested in.

I find myself refactoring code a lot, pulling pieces out and putting them elsewhere. Sometimes I think, "this piece would be better as a gem", or that "this gem needs to be its own application.

When I think about the overall thrust of what I'm doing, I get the sense that I'm building a framework. I need to be able to work web applications into the framework, and the only framework worth really using in this fashion is Rails. But Rails isn't intended to be included as you would a library. I need to understand it better if I'm going to be able to work it into my own framework.
Why doesn't this work with taxes? I feel like the US government needs to steal some marketing team from champagne companies...

I mean, only the very rich can voluntarily pay 95% of their income in taxes! Nobody else can do that! Go ahead and try to beat me!

The more you believe paying taxes is a 'waste of money' the better it works!
Two-way data binding is not inherently a bad idea. In fact, it's awesome in many cases, especially forms and form-like elements.

The problem is that people have a habit of misusing them and start using two-way bindings where they should be using events or similar patterns.
If you are writing numerical stuff, you should be using more explicit types such as std::uint32_t.
I worked with a guy, in about 2000(?), who wanted to play with Atmel microcontrollers, he broke his leg badly and was out of commission for a while. He didn't have any programming tools, just the manual and a library of components. He built the base board and used switches and logic to programme it. He used that first Atmel device to build an ISP for another device, he built it so that he could write applications on his Psion PDA in assembly. He build an assembler and compiler for his PDA!
I liked that it was written as a piece of journalism rather than a didactic exposition of vital business truth, as most other books in the genre have a tendency toward attempting. Which is appropriate, because unlike hard sciences, business has few absolutes and is heavily context sensitive.

Also the writing style was great, Brooks had a knack for making the players in these case studies colorfully come to life.
Why is thought process relevant? Different people have different thought processes. I would estimate that recruiters would bias to hire candidates that have similar thought processes to themselves, even if that doesn't correlate well with actual work performance.
I don't feel like this power cable is expressive enough. Definitely does not bring out all the subtle nuances of Beyonce's "Single Ladies".
thanks for turning me on to jellybean, what a great scheme. awesome plugin btw!
I wrote about the different worlds of people that form the bulk of the CHAOS study and what seemingly is the crowd on HN and Reddit at https://blog.ukigumo.eu/3-types-of-company/

In short, most projects fail because many companies either don't understand IT well enough to take advantage of it or are too focused on IT to understand business.
> When interviewing for a specific role, you have to think very hard about what it is you are trying to do - and don't just fall back on generic cut and paste questions.

I think this is true, but it raises a question about "hiring for a specific role."

I find that when companies do this, they're in a reactive mode. Which of course is going to happen from time to time, but the reason memes like the OP get born is because many companies are habitually reactive when it comes to hiring.

I don't follow a lot of sports, but I follow NFL football. Each year, the teams get to "draft" (a/k/a hire) incoming players from college. When it comes to the NFL draft, there are two prevailing philosophies: "Draft for Need" and "Draft Best Player Available". Without question, teams that stick to more of a BPA approach tend to have longer term success. Teams that draft for need sometimes get that player that helps them get over the hump and win a championship, but more often they're trading away long-term greatness for some short-term pain relief.

I think hiring for software teams (and just about anything where there is a lot of variance in depth and breadth of skill) follows the same pattern. Hiring for a specific role is an antipattern (albeit sometimes a necessary one). If you have a very specific role to fill, perhaps a freelancer or a consultant might be a better fit for easing the short-term pain. Then you let them go as soon as they're no longer needed.
New App Tracks If College Students Are in Class
Gadget Hunt – Product Hunt for physical products only
Siri, and Cortana (iOS and WP8 voice recognition engines) both send the clip to a remote server to perform recognition.

There are many services that provide real time processing of large amounts of data on server cluster/farms, and more are coming. It is very much possible to perform large computations in almost real time in these situations, and you'd be surprised at how little latency people notice, particularly when there's no indication of what the actual number is.
Man this is the strangest thing to me. I used to be a carpenter. I would show up at your job site with my tools, you might ask me a couple questions, I've had guys ask me to lay out a wall or two off the prints. Call a reference to see if I show up to work. Then I get the job. Usually, doing something myself or my boss never had done before, and we would figure it out off the prints, and build it.

I just go turned down for a job I was perfectly qualified for because I 'didn't seem eager enough.' Other notes from the interviewer said 'I'd be ready to go day one' and 'seems easy going and easy to get along with'

What the fuck is wrong with people? When did working at your shit company have to be my passion instead of my job?
I would go so far as to say someone with that kind of encyclopedic understanding of a language is a negative indicator. People with an 'deep' understanding of a language like to use said knowledge to create 'Clever' code. 'Clever' code is generally more buggy, harder to maintain, and basically never needed.

PS: And yes, I have been burned by this in the past often enough so I will now pass on a few marginal people that happen to know a language 'deeply'.
While I totally agree with the moral of this story, I'd like to point some reasons why the visuals of a software might interfere with audio:

1. just check this website: http://thume.ca/screentunes/ there is a large chance that your computer videocard and/or LCD will make a noise on that page

2. when the videocard makes such a noise, it can interfere with the PSU and thus affect the soundcard as well.

3. Thus, it's actually possible that changing a "high-frequency stripy" interface to a solid color will lower the noise-floor on the sound-card a bit.
Well that doesn't inspire confidence. I'm not a Box user; is data usually encrypted with a user-supplied key as well before transmission to Box's systems? Is access to Box's "internal" S3 storage going to potentially yield unencrypted (or encrypted with a known key) user data?
Two points:

First, nobody expects a cabinetmaker to draw a to-scale, installation-quality blueprint on a whiteboard like many companies expect out of whiteboard coding exercises.

Second, a cabinetmaker's portfolio will consist of multiple photographs of completed jobs. It will likely not include detailed specifications of the jobs or records indicating what specific parts of the jobs this cabinetmaker was responsible for and what other carpenters did. It certainly will not include the ability to inspect the actual work done. This industry expects candidates to have a portfolio such that this level of inspection is possible.
Google PSLV. It's over two decades since their last launch failure (and 18 years since a partial failure). At least 26 consecutive successful launches since the late 90's putting over 70 satellites into orbit. it also holds the record for the most satellites successfully put into orbit in a single launch.
So if a salaried carpenter does a shoddy work, does the employer get reimbursed? I find that very hard to believe.
This is true of any job though.

Even though there is a difference between "interview coding" and "real life coding" an advantage of our profession is that we can have interviews that can give more insight into how someone will do their job than just asking them questions. Imagine hiring a manager - you can't "whiteboard" management.
New: Programmers Without Borders
I laughed at one of the answers mentioning this:

"Connect one end of cap to ground - one end of cap to cat.
.... ( How 'to cat' is achieved is left as an exercise for the reader.)"
Covert Psi in Computer Solitaire
How to bypass the Windows 8 log-in screen
When it is a machine that I have built myself, running an open operating system, then yes, I do give that much more trust than the TV manufacturer.