skysight-inc/HackerNews huggingface dataset:
A thought-provoking post. I really like the specific details the author provides about the interview set-up and the results observed among candidates at his company.

Now amazing as it is that there is anyone around who has not already heard of FizzBuzz as a job screen, I actually heard an even more amazing story in August 2012, which I shared here on Hacker News a month ago.

http://news.ycombinator.com/item?id=4603414

The story, which no one here seemed to believe the first time I related it, but which I fear is very likely true, is that the hiring supervisor who told me this story is the lead programmer for a company that uses Web back-end programming to serve up online, adaptive lessons. He has a position open for a new programmer as the company's business grows. He has advertised in the expected places like Stack Overflow and Joel on Software. During the year 2012, the company has received many resumes. Applicants who have computer science degrees, and especially the many applicants who have master's degrees and who otherwise look all right, are invited to do a phone screen in preparation for an in-person interview. During the phone screen, the applicants log into an application that allows them to type on their own PC to write code that can be seen by the hiring supervisor. The test the hiring supervisor uses is "Write a program using a for loop to print the integers from 1 to 100." Applicants are permitted to use any language they please, and the supervisor said he would even consider correct pseudocode a successful answer. He has not yet had ANY applicant, not even one, submit a flawless working program to do that. Not one. He was eager to interview an applicant who got the test MOSTLY correct, after seeing many applicants fail to do it at all.

I know the company that that hiring supervisor works for. I do not know how much its location or the fact that the software roles in that company are support roles rather than producing the company's main product may influence the desirability of the company. But somehow I think he is not lying when he says that a straightforward implementation, no tricks, of "Write a program using a for loop to print the integers from 1 to 100" is too hard for many CS graduates. That's why everyone hiring today should build a work-sample test into the hiring process.

http://news.ycombinator.com/item?id=4613543

It's not clear that higher education credentials guarantee ANY minimal level of coding skill, however elementary.
uhh, what is a bus factor?

> 5. Is your bus factor greater than n/2, where n is the number of engineers?
A Description of the Brain of Mr. Charles Babbage (1909)
I've been under two unlimited policies and have taken reasonable time off in both. I take off exactly how much I want to take off, and its not really a concern that I'm under/over-utilizing my time off. I don't ask for anything unreasonable and in exchange I've had no problems taking as much time off as I want.
How about letting users mark their annotations as complete/in progress or letting them estimate, e.g. 50% complete, 80% complete, 100% complete; something I could filter against.

(btw, awesome site)
The link was to the SF craigslist jobs page. I think they meant go on Craigslist and apply for another job there, rather than work for the Craigslist outfit itself.
I'm using box2d (there are at least three box2d javascript implementations; the most impressive is the emscripten port from the actual C++ code: https://github.com/kripken/box2d.js but I'm using an older one for this). I wanted to prototype a simple balancing robot controller, and I hacked this up on the bus to work earlier this week in fact: http://www.a1k0n.net/code/balance.html Click to drop junk.

(Sorry, this is totally off-topic, but...)
It's surprisingly easy to make a segway-like balancing robot with perfect sensors. My plan is to add noise in the sensors and limited motor torque, etc. Ideally it would estimate its own kinematic parameters and do an A* search for approximate optimal control.
Clicking on the link, I believe they mean "use Craigslist to apply for a job elsewhere". It's hard to believe anyone would bag on Craigslist itself as a model of efficiency; If you were to chart number of uniques per day against number of employees, I doubt anyone is within an order of magnitude (or two, or three) of Craigslist.
In the US things are probably much better, but around here it's common to see senior positions filled by people at 0.8-1.3 on that scale, partly due to a shortage of developers and good education/experience. It's specially true at larger corporations.
Good recommendation, didn't think of that. I will do like that from now on. Thanks.
> It was wrong when the Syrian rebels posted video of the execution of 10 Syrian Army members.

And I'm sure you ran to HN to protest when it happened, right?

> It was wrong when the Libyan rebels posted video of the execution of Kadafi.

And you were vigorously denouncing it then too, right?

> It was also wrong for the Israeli Defense Force.

Oh. We finally get to the reason you posted.
Gee, it sure is easy to assume I'm a jerk. From my pithy story, you sure didn't guess the following true elements I omitted:

1. There was a great deal of primping and preening prior to the coding phase of the interview, and it was made clear that the phase of the interview was designed to demonstrate basic coding skills, that it's a fairly standard industry practice, and that these exercises are fairly meaningless and all the rest. There was plenty of warm up.

2. I wasn't running the interview; I lack the authority to do that. I am simply a member of the group the interviewee was interviewing for. I blurted it out because I was shocked by his response, which I felt demonstrated that he felt he was above menial coding exercises. I've never met a good engineer who would scoff at a problem because it was too simple, especially in a context where demonstrating prowess was desired.

3. The candidate, who is a "senior engineer" in his current position, also showed us some of his code after failing this part of the interview, which was a truly disgusting, thousands of lines of copy-paste crap pile. Imagine writing a large interactive site with jQuery, then remove the ability to use selectors and do all that by hand. Then imagine what you're doing also happens to be done for you by your backend if you enable a bit of configuration. That's the level of shockingly incompetent we're talking about.

4. We still offered the candidate the job, because we're fairly desperate, we were worried about losing the position if we didn't hire someone, and he seemed personable--and like he probably wouldn't screw things up worse than they already were on this particular project, which came back from being outsourced in really sorry shape.

5. The candidate refused to take the job, not because of the group, the low pay, the interview process, but because we couldn't get HR to change the job title from "Software Engineer" to "Senior Software Engineer." He actually made this clear to my bosses on the phone, that if they could just add "Senior" to the job title he would take the job, even with no other changes, and refused--angrily--when they couldn't do that.

I can understand why, with one remark taken out of context, you might relate more to the interviewee than the interviewer. But you really should cut people a little slack around here. Most applicants to programming jobs--especially outside technology hubs--are just not very good. This guy wasn't very good and seemed to know it, even though he hadn't seen Fizz Buzz before, and it hasn't stopped him from having a career in programming for decades.
I think a key mistake is assuming that when the web site said sold out that they actually were. You could refresh 10 times and it would flip-flop between available and not.

While I didn't buy a Nexus 4 I did buy a Nexus 10 and it was plagued with the same ordering issues. I spent over 40 minutes refreshing the page to try to get my order in. Much of the time it just reverted to the "Coming Soon"; even when I got it added to the cart it kept failing over and over when trying to confirm the transaction. Yet my tablet was shipped today.

I think it's telling that now wallet.google.com is talking about "building a smarter wallet." I think they've realized they really screwed up. It would be nice though for them to just come out and say it and apologize for the really horrible buying experience. Especially for those Nexus 4 buyers that now have to wait after already being charged.

Something that ought to stop is folks blaming the buyers without realizing that having to refresh the page 20-50 times was the only way to get an order through for many if not most people.
Or Apple has set unrealistic expectations for their product.
People really need to stop referencing things that happened 200+ years ago as if they were relevant now.

Some interesting questions, sure, but some very flawed questions also.
There's absolutely no oversight or checks and balances against government overreach.

Of course there is, that's what Congressional oversight committees are for. When they deal with classified stuff, they do so in closed session. There's a closed intel committee hearing tomorrow about that attack in Libya, for example. Sure, it's not open to the voters, but there are practical limits to transparency.
It was "want," not "need." I'm not a cartoon villain.
Great, amazing quote. Wrong author:
http://en.wikipedia.org/wiki/James_Stockdale
I'm in the same skill-level as you are, but I had a completely opposite reaction.

For me, this was amazing because it distilled how something as hard as the example is played and can be learned.
> I've only had a single person ever pass this test, out of 10 or so interviewees.

Did that person get the job? Lots of companies seem to administer those brain-bending tests and then does not use it as the deciding factor when hiring someone.

I've personally been exposed to several quizzies like checking if a number is a prime, walking a directory tree and printing .txt files, implementing a variant of the soundex algorithm, a web server to interact with the twitter api... The worst (or best) was one in which the interviewer asked me to solve a Roman Square problem as a homework. Except instead of a 3x3 square it was a hexagon containing 64 numbers. Aced all the tests, even the Roman Square and the interviewer even told me I was the only one they had interviewed that solved the problem. It was freakishly hard and involved creating a pretty complicated constraint solver.

I still didn't get the job. In fact, the common theme in my professional life, after dozens of interviews, is that if there is a programming test involved then I will not be offered the job, no matter how well I score.

My conclusion is that companies do not use tests to determine whether to hire applicants or not. Interviewers make up their decisions regardless of test results and then use them purely to make their decision seem more objective they in reality are: "Bill scored low on or test, he is not a good candidate..." or "Bill did score well, BUT $blablabla" where $blablabla is some irrational stuff.
>5. Setting timers and alarms. Put a pizza in the oven, then "timer, 15 minutes", and I get an alert when it's done.

Funny thing is that there are timers, alarms, AND reminders. All with different quirks.

* Timers: "Set timer for 10 minutes." Ignore the mute switch, but you can only have one at a time.

* Alarms: "Set alarm for 10 minutes." Ignore the mute switch, but don't get cleaned up automatically.

* Reminders: "Set a reminder for 10 minutes". Prompts for subject. Muted by mute switch. Require confirmation.

It's very odd from a naive perspective that the same basic commands works so differently due to slightly different wording.
Ask HN: Name of the Image Upload Service?
I can't for the life of me remember or google fu the name or website of the image upload service whereby it allowed you to have an upload from desktop/dropbox/etc function in your web and mobile apps.
> "Some people will find that terrible in itself"

Right, and if they do find it terrible, they don't use the software. It's not rocket surgery.

> "What is she hiding"?

Please, I'm not a sitcom character.

To attempt to address the apparently spirit of your concern, of course there are unintended consequences (to anything). The important question is whether the net effect is "terrible" (GP's impression), "awesome" (my experience), or somewhere in between. It seems to me that the main differentiator is what relative value you (and the close friends who would be candidates for sharing location data) put on secrecy (among those close friends) vs information (about those close friends). And I am reporting that in my life, I have yet to experience any downside, I've experienced plenty of upside, and some of the upsides have been awesome.

I would certainly be horrified and angry if Google turned this feature on by default, or if user locations were published to people they hadn't consented to, or something like that.
I'm pretty sure recent versions of Firefox (say, since the early teens) have had nagless updates.

I find myself having to manually check the About dialog for updates now, because they're about the only reason I ever restart my browser, and if I don't manually check occasionally I'd have no way of knowing an updated existed.
Adrian: You should update your HN profile with links to Soundslice
Hate it.
Copyright: YouTube is the host and already has well-formed copyright/takedown/safe harbor policies.

The transcription/tab output itself can not be copyright - sweat of the brow.

There is the question of whether a useful user resource can be maintained if/when the host video is taken down - can the tab stand alone without the original audio?

I think so - reduced utility, of course, but legally on solid ground and still better than tabs alone.
Please see my remarks here: http://news.ycombinator.com/item?id=4791210
Was it http://filepicker.io?
The new technology is the ability to track the subject of a conversation through multiple steps of indefinite pronouns. This is a subtle change but, as I understand it, very difficult to accomplish. Here's a paraphrased example I've published here before:

Me: Will it be cold tomorrow?
Siri: Not too bad, the low temperature will be 57 degrees.
Me: How about Saturday?
Siri: Looking colder, the low temperature will be 34 degrees.

It is my second question that is the hard part. Siri "knows" that I'm still asking about the temperature, despite no reference to temperature in the text of my question. OS X and previous versions of iOS cannot do this.
Great post! I wish you had briefly talked about why you picked backbone over other options like AngularJS.
A great piece of software in the same space as SoundSlice is Capo:

http://supermegaultragroovy.com/products/Capo/
You know that I'd like? To be able to pre-order one now. I don't want to have to keep track of news for when I can buy one (I got the notification email hours after it was sold out in the UK). I want to give them my money and have one within a month.
Yes! I think that was it! Thank you very much Giraquid! :)
I'm working on making a 3D printer to speed it up (and to force me to learn CAD). But most of the stuff I do is electronic, so if I don't have a specific part that a) I don't have, and b) the surplus store doesn't have, then I need to wait a while and pay $7 in shipping for a $0.35 part.

If I had more money where the $7 convenience fee of storing the junk at someone else's house wasn't a big deal, I would totally keep it all there. It's kind of like Amazon Glacier, it takes a while to get it, and it's expensive, but you can put everything there. If it's on disk drives in your garage you can store a bunch, but it takes a little bit to find. If it's on SSD storage on your desk, it's the quickest to iterate, but then everything is right there.
Getting little girls interested in science/tech: Move Over Barbie
I never understood why people proudly boast about their past mistakes. Is it supposed to make their current achievements sound better? "Oh, we had 8500 lines of spaghetty JS code in one file, but we used AwesomeFrameworkX and it fixed everything!" For me, this doesn't make the framework sound more impressive, but rather undermines credibility of the author. How did it get to 8.5 lines? Did no one notice? Did no one care? Was every line necessary? Does having a file like that is really better than having some stuff handled on the server side? Was Backbone the only way to move forward?
There is a huge benefit from 'getting your hands' on something. For folks who are visually challenged (verbal thinkers) having a prototype or a way to provide a sense of scale and design is really really important.

Steve Roberts clued me into a really useful way to prototype an enclosure, basically corrugated cardboard and fiberglass. Make your "thing" out of corregated cardboard (some sturdy boxes) and then cover it with fiberglass dipped in resin. (be sure and where a respirator mask though, the fumes are nasty).
Reinventing email, for me, would start with what Facebook have achieved: if I want to send an email to my friend Jane, all I have to care about is her name, and all she has to care about is similar.

I still think this is one aspect of Facebook that is often overlooked; they make it incredibly easy to contact people you know. Email addresses are a nightmare to the average user by comparison.

For me, that's the beginning of where the revolution will lie.
step one in reinventing mail should take care of security (encryption) and trust (am I talking to the person I think I talk to). and these should be mandatory.
Got

name Unexcept error custom code
2

when creating an account.

On a more general note - what a superb idea, completely ruined by a desire to wrangle it into a recurrent revenue model. This should be a standalone paid app with an optional paid service for team collaboration and online backups. But it must work out of the box with no b/s accounts and no Internet connection. Simply because it doesn't need either.
If an engineer steps infront of a bus does your company cease to exist?
LMGTFY http://en.wikipedia.org/wiki/Bus_factor :)

The bus factor is the total number of key developers who would need to be incapacitated (as by getting hit by a bus/truck) to send the project into such disarray that it would not be able to proceed; the project would retain information (such as source code) with which no remaining team member is familiar.
agreed, email isn't a todo list at all.
It's much more clear. Props for the speedy response!
The number of your people a bus would have to squish to screw your company.
Next generation of Service Status Dashboards
Hey Guys,

I am starting a project at work (ISP) to create a service status dashboard. Something along the lines of what Heroku, AWS and Azure have.

I have a free reign on this and no deadline (yes I know this can be dangerous to have!). Anyhow, the two main things that I would like better with dashboards in general is to have them customized to your own services, so you only see information related to what impacts upon you. Also I think status change notifications would be cool too.

But apart from that I don't have many ideas, what do you guys think? Is there anything you have wised a service status dashboard has had as a feature when you were using it?

What would the next generation of service status dashboards look like?

Do you have an opinion on the status dashboards I mentioned as examples earlier?

Any and all comments are appreciated and welcome!
I'll admit, partially it was because I was sitting next to Jeremy as he was pulling backbone out of the documentcloud workspace and into a soon-to-be-released javascript library. Otherwise, the community has embraced Backbone.js and, for better or for worse, you're swimming in the biggest pond. That means more community driven updates and support, as well as more competition to stand out from in the newest javascript writing convention.
Idea for social media scheme in the work place
How would you feel if you employer capped your daily social media access on their computers to a fixed amount a week, and allowed you to trade unused minutes for real life perks? Like time off, deals, discounts or even goods?
Thank you, this is very concise and useful. If I sounded like I discounted your claims, please don't take it that way. I only wished to learned more about this situation, which I know little about, but could have major implications across Europe and by proxy, the US.
>I remember a family friend telling me when I was a kid that computers are going to be the future and that there will be a lot of jobs in this field.

That's great. I had the opposite. For some reason my dad was convinced computer programming was on the decline and was 100% against me going into computer science. I did engineering instead of CS and later regretted it. Going back to get my MCS now.
I use Android phones, want a Nexus 4, and I also hold a significant portion of my investment funds in GOOG. I care how many are sold.
"Email is not a messaging protocol. It's a todo list."

that's ridiculous. I would expect more from someone who likely remembers uucp and what/how email was designed for.
What would be a reasonable amount of time?
Don't forget about their $5B transmission line as well:

http://www.guardian.co.uk/environment/2012/may/15/energy-win...

http://gigaom.com/cleantech/by-the-numbers-googles-offshore-...
The balls to end this? Would that entail the genocide of the 1.6 million people living there?
Yeah, it's not rocket science, obviously. It's computer science. :P

The way I see it, email is the simplest and cheapest way. Although I wouldn't like average Joe to casually login to their email account on public machines.

But then, chances are the email provider will have 2-way authentication, so it would be a bit more work to get to the account every time on a new, public machine, but I guess that wouldn't be that often and would be preferred to the current way of doing the same thing.

SMS creates cost which some sites couldn't bear and the app route creates greater cost of implementation (to be a true replacement - or should I say truly disruptive ;) - it would have to be cross-platform, IMHO).
I'm always the odd man out when people praise design here. To me the UI is boring and cliché. Flat and minimal principals don't work in every circumstance, as evidenced by the Rdio desktop app and others like it where you end up glancing past features because they aren't prominent enough (i.e. they look like every other element on the app). There needs to be depth and hierarchy as applications become more complex and elements need to stand out from each other.

Instead of trying to re-invent what email is, just make it easier to do what people use it for. Make it smart and intuitive. The problem I have with all of these designer showcases is that how it functions is ultimately more important than how it looks. Neither this nor Mail.app showed any functionality that wasn't available in some way or another from any other client I've used.
2-finger scroll: I'm pretty sure this happens when there are no unscrolled bars under the cursor - so how about an old-school JS hack (remember those?):

1) put the annotation inside a container (and make that position:relative); annotation position:absolute, right:0px;
2) autoscroll the container
3) add some JS to infinitely increase the width of the container on a left-ish mouse move. (I think this will still work even if the container is, itself, in a cropping container.

I suspect the result will be that 2-finger left swipe will be like quicksand - no apparent movement. Kind of sucks, but less than losing your page.

An alternative would be to make history back/forward suck less: keep the display state in local storage and render a page just as it was the last time a person saw it (in terms of time display, modes, and selections).

Probably that's a useful thing to do anyway and has Least Surprise in its side.