skysight-inc/HackerNews huggingface dataset:
When you try to help, you realize they navigated to this point and then didn't spend 1 minute trying to read the code and see what's going on.

I'll take the other side here...

I track my problem to a particular part of a submodule. The person that owns it didn't document it well, didn't write an overview of how the thing works, and generally has made "just reading the code" a poor and error-prone substitute for asking them directly about context they've chosen not to share with anyone else.

The person becomes annoyed at my continued questioning instead of "reading the code", and eventually complains about my lack of motivation. The code, meanwhile, never gets fixed, and is a ticking timebomb of technical debt.

Whose fault is this? Mine for not "reading the code" and breaking encapsulation, and changing my code to match undocumented behavior? Or the other person's, for failing to behave professionally like an engineer and identify that they are knowledge-hoarding?

Who's to say, really. It doesn't matter...I've got another gig lined up.
I'm not sure that law is compatie with existing human rights laws. Has anyone tested them in French courts?
It's not that there might be a collision, but that collisions are guaranteed. How many 3Mb files are there? 2^(3M8) = 2^25165824. How many distinct hashes are there? 2^(2561001) = 2^256256.

By the pigeonhole principle, we can't fit 2^25165824 objects into 2^256256 holes; indeed each file will have on average 2^24909568 other files that share the same set of 1001 sha256 hashes.

The reason that we are able to work with hashes, and that compression works in practice, is that we don't have to deal with every 3M file. Most of these files are gibberish and will never be seen, and finding two files that match even one hash is incredibly difficult. But once we start talking about brute-forcing, we start encountering problems -- and having to dedicate an awful lot of processing power to the problem isn't the biggest one...
I have worked with a few Secretly Terrible Engineers over the past couple of years. One of those was hired before we had instituted any kind of standardized technical screen, another was senior enough that we decided to skip the technical screen (and regretted that decision later), and a third passed the technical screen but was unable to get anything done, in large part because he spent most of his time on Reddit and HN. That of course indicates that passing a technical screen is not a guarantee of success, but it does seem to be at least one good filter.

Our technical screen consists of 6 questions on a few different topics, and is designed to probe a variety of different areas. I consider it fine if someone fails one or two, as I don't expect someone to be strong in all areas; some people may be really good at actually coding, but not know what big-O notation is, or someone may be fresh out of college and so not have much hands on experience yet but if they do well at the algorithms and data structures questions it indicates they were paying attention and absorbing their classwork.

But people who don't know the big-O complexity of basic operations on basic data structures they use every day, and can't put together a coherent class hierarchy for modelling files and directories, and don't know how to interpret a system call that they see in a stacktrace, don't know what TCP is, and can't write a simple program on demand with access to Google, StackOverflow, in any language they want, using any tools they want, are definitely going to be more work to bring up to speed than they are going to be worth. And I've talked to people who have degrees in CS and several years worth of experience who have failed every one of these questions.
> substrings are mutable

Are you sure? I know that a byte slice []byte is mutable, but I thought slicing a string yielded a string (and strings are immutable), an explicit conversion (and copy) is needed to get the underlying byte slice.
I did.

I expect sites sometimes not to work fully. But completely blank?
Similar to the title MD for doctors or JD for lawyers, engineers have the PE (Professional Engineer) title. It requires a bachelors degree from an ABET accredited school, 4 years of experience, and pass two day long exams. It's pretty rigorous.

Also, based on my experience with engineering interviews, they rarely have what I would call "hurdles." It's not a gauntlet that they have pass, usually it's just a relaxed conversation about their skills and experience to make sure they fit the position and will work well with our team.
This is not a Japanese-only thing. It is a thing so common in America that there is a named test to detect it -- FizzBuzz [+] -- and this test, or one like it, actually catches many people out.

[+] c.f. Any of the following and note that they're from the nation of, ahem, conventional engineering culture:

http://imranontech.com/2007/01/24/using-fizzbuzz-to-find-dev...

http://blog.codinghorror.com/why-cant-programmers-program/

http://www.globalnerdy.com/2012/11/15/fizzbuzz-still-works/

I would note that a common theme in these posts is "I thought it was a myth but then I tried hiring and the boogeyman sprung to horrifying life."
What? He's providing the link to reddit to prove that Zoe Quinn called in a Swot team. The source is reliable for matters on Reddit, but that's not what we are discussing.
You'd possibly be doing a lot of people a great service by putting together that list--I'd jump right on it, personally.

If you decide you want to, please respond to my comment here!
wait, wait, wait. In your first two paragraphs, by "software engineer" do you specifically mean a coder, a programmer, someone who is paid basically to write lines of code? (As opposed to: software tester, architect or manager-type role on technologies they might not know personally, front-end designer who happens to accidentally be able to do some javascript etc.) You mean someone with nobody below them, who is not doing software testing, debugging, front-end design, or the like, but paid to put out code, but cannot write a for loop that does a character count in the specific language they are paid to code in? And who is gainfully employed "coding" in that language, for months, years?
If you email shitty@openlistings.co with your city I'll let you know when we come to your area (that goes for everyone). We're going for full California coverage in the next month or so.
These days I don't have much of a problem ignoring the "javascript disabled" demographic.
This sort of happens with shipping, corporate and domain registries. One day Tuvalu will sink, but its domain is too valuable to abandon and will continue. Hardly anyone can point to Liberia on a map, but over 10% of the worlds shipping is registered there^. The CEO of HSBC is paid through a Swiss bank account belonging to a Panamanian nominee company.

Facilitating non-identification, unaccountability, lopsided arbitration schemes, and evasive business is big money.

^"There" is of course an office in London, not actual Liberia.
I completely disagree, it's downright dangerous to not evaluate the behavior of other drivers around you. If I see someone aggressively changing lanes or tailgating, talking on their cell phone, or doing anything that looks risky to me, I mentally note it and keep as far away from them as possible. I'm frankly amazed anyone wouldn't do the same.

I agree that Alice in my example doesn't have any legal fault for the accident. Maybe this is a cultural difference, but as I see it she does share some responsibility for being in the accident if she didn't make a best-effort attempt using known-good practices to avoid it. All drivers share that responsibility.
I'm a bit of a fan of the mindset a few consulting companies I know have (only in this particular regard):

You are a warm body. We need a programmer. We will teach you to program well enough to make the client happy, regardless of your prior experience. If you don't learn, we'll bench/fire/dismiss you.

It's very cynical, but at least it's better than "oh no they can't program whatever shall we doooo" I see elsewhere.

To your point, a good manager should be helping grow the skills of their team, even if a member who technically shouldn't be there has landed in their midst. The industry is littered with stories of people who, given proper support, turned from a liability into a huge asset.
800eur/month... fuck... fuck. fuck. fuck. i feel bad for you. as i've said in a previous comment, i've moved recently and i do intend to go back. i do want to have a family and it has to be in the "land that saw me being born". reading your comment is just painful. i was making something in the likes of 1300eur/month before, with some perks on top, though.
This can work well if the person currently functions as a freelance consultant or is unemployed but has worked as a consultant in the past. Also, ideally you have a specific small project for them to work on. Finally, you have to be able to pay them the market rate. If all of that fits (rare) then it's a great choice.
This is besides the point of the article, but I really struggle with wallets. Here in the EU you often have not-insignificant amounts of money in coins, but there's a dearth of decent wallets with durable coin pouches. Not one of the designs shown in the article would be a valid wallet for me :(
It would be nice to able to get, say a:

* General Computer Science Cert

* Software Architecture Cert

* C Lang Cert or a Java Cert

from an accredited institution and be instantly employable at the entry level. This is kind of how it works with Network Engineering, I wonder why it can't with Programming/SoftDev.
Great idea and looks like a good implementation. Are there native hashmaps and arrays? Those are things I like from Powershell.
This is bizarre to me. Yeah, I've worked on teams with people who couldn't ship code, and they got fired. But I'm looking for work now. Let me tell you what it's like. There are companies who provide automated coding tests that require you to pull out bizarre algorithms that I haven't needed in 15+ years of shipping code and creating MM's of value for employers.

After weeks of searching, I'm finally at a second-stage interview with a company where they intend to hand me a spec, put me in a room, and see if I can come out a few hours later with a functioning prototype. And it's a relief; that's a sane test. Can I produce or not?
Looks like there's problem with the scraper version, but feel free to take a look if you're on your Nokia N900 and don't have JS: http://www.shittylistings.com/?_escaped_fragment_=
I've interviewed, and been an interviewer, in interviews with the most obnixous technical questions, interviews where the hardest technical question was equivalent to "can you code?" and interviews that were in between. In no case was there a discernable correlation between the technical difficulty of the interview and the abilities of the eventual hires.

This industry's biggest hiring/talent problem isn't "posuers." The biggest problem is the persistent and incorrect belief that applied mathematicians (CS majors) can easily learn the skils needed to engineer complex systems as they go (or, worse, that said skills are trivial or even irrelevant compared to the ability to recite textbook DS/Algorithms trivia) and that they are also able to adequately determine the capabilities of other similarly trained persons to do the same mainly by relying on textbook test problems (albeit sometimes with a twist).

In other words the (undisputed, in my opinion) existence of people who can't write a simple for-loop doesn't justify the absurdities seen in modern software interviews.
I think what you described exists, it's just not what I was referring to. Quite the opposite, I've seen this happen when there WAS very clear documentation, possibly a link to a wiki or readme file in a comment that points to an overview, and yet the person clearly hadn't bothered to read any of it.
Right. The article talks about this. 'Top' universities are filters for high degrees of talent or money. It is not their value-add then, which makes their graduates employable, it is their pickiness choosing with students to allow to buy their services.

But I partially agree: certification programs need to indicate degree of attainment, not just pass or fail. I disagree that SAT entry requirements is particularly important to an employer. If I wanted to make sure a candidate had a certain SAT score, I could ask them for it, couldn't I?
No, I didn't mention that link, which btw isn't from reddit but from someones blog. (I haven't made up my mind on that one but it seems he makes a leap yes.)

I'm trying to point out that you are acting as if you have already made up you mind: whatever the facts, gg-ers are wrong.

In this case it seems you are, among other things, denying that KiA is Subreddit-of-the-day. Which is very easy to prove.

I suggest you read through this very carefully and find out exactly what you commented on instead of jumping to conclusions[1]. Because, you know, -this isn't reddit.

[1]: Protip: This often a good idea elsewhere as well.
Probably hype. There is a lot of hype in the industry, unfortunately.
https://news.ycombinator.com/item?id=9160052
I appreciate the kind and considerate response. Thank you. Your thoughtfulness and good intentions are all I could ask for. Thank you.
You're in a rut
Can hipsters save the world?
The OP's point is, unless I misread it, not that there are no incompetent engineers who can't code, but it is ridiculous to, like, ask some "fancy" algorithm questions, brain teasers, etc. that are mostly not related to the candidate's working experience at all.

For candidates who are fresh graduates, it looks it is the most effective way to ask algo and data structures. For a senior engineer who has at least 10 years of experiences, the interviewers cannot find some better questions to ask, to verify if the candidate is a good coder?

I was interviewed once. I was asked a question. I knew the question could be solved with a "fancy" algorithm, since I read the original paper in graduate school. It was elegant and beautiful, very creative. After so many years, I couldn't remember any details, and I had had no opportunity to use it in my work. I am not a genius, so I couldn't figure it out in 20 minutes during interview. Does that mean I am a fake?
Want to build a chip?
Computer literacy for protection and productivity
An anecdotal case of the worst candidate I interviewed. He was friends of our VP. He had an engineering degree from UC Berkeley. Over 20+ years, he was a consultant for firmware development at 28 positions. The non technical portion of the interview went great and I said I wanted to ask a few coding questions. He was really resistant and used all kinds of excuses. I told him to humor me and code something simple like draw how a linked list works and how the to write the insert function in C. At the point I was totally caught off guard. He knew not a single like of C syntax and just made things up. He didn't understand the concept of pointers at all. Later when I talked with my co-workers they had the same feedback. He didn't know how to program at all. We wondered how he consulted at 28 companies for the last two decades!
Thanks for the tip. This kinda goes along with talking to users. But is a bit more in depth. I will definitely make sure to add it.
Real men don't buy girls? At Mobile World Congress, they do
Please notice http://www.w3fools.com/.
I tried a couple of these kickstarted wallets and they were both awful. I ended up very happy with this "front pocket wallet" http://www.amazon.com/Dopp-Regatta-Series-Getaway-Pocket/dp/...
On binbox.io, we use a similar library called Stanford Cryptograph JavaScript Library. It's fast enough that small files decrypt and encrypt within reasonable times, but it scales poorly to large files.
The real customers of these MOOCs and other programs are employers, not students. What are these programs doing to work with employers and appeal directly to them?
I agree.

I once was offered a job for director of engineering of a big financial firm in the UK based on a couple chats over the phone with the CEO and some tech guy (don't remember the title). With the CEO, I just chatted a bit in general about my past and my future, with the tech guy, mostly explained my past, talked maybe 5 minutes about tech (design patterns or something) and that was it.

No code, no hard technical questions on what to use what or when, nothing. I know a lot of people that didn't have the skills for that job but their attitude and bullshitting techniques would probably have gotten them the job. And this was a very successful company handling millions in revenues and working with the major banks.
> In all my years immersed in the tech industry, I have never once heard a firm talk about the idiots lurking in their own offices. They always seem to be elsewhere. For everyone.

When you point one finger, there are three fingers pointing back to you. Hey author, you are on of them!
If your shell has completions the difference is usually not very noticeable.
My opinion on the appropriate response: downvote, click report and ignore.

I know that can be hard, and comments can be hurtful. But unless the internet changes in a fundamental way, we have to learn not to take attacks from strangers personally.

Unless of course you happen to know who does it. You can also try changing the culture, but that's hard on the scale of a college.
I think one thing that really bugs me about this article (and a lot of the stuff coming out of the valley in general) is the unqualified use of "engineer" when describing developers. Most software development seems to lack the rigors of what (atleast used to) fall under the domain of engineering (EE, ME, ChemE, etc.); I also don't think the culture is this antagonistic in other engineering fields, especially where people are licensed as professional engineers (ME, Civil, etc.).
Indeed, it is a gorgeous story.

We use the excuse of biological dissimilarities to get around the fact that most archetypes we've constructed have been artificially constructed -- gender, relationships, and socialization all revolve around certain attributes that are very arbitrary and have little, if anything, to do with biological characteristics. The controversial "wire mother" experiment carried out by Harry Harlow[1] proves this to some extent.

Another story much like the one in the NYT article, if you're interested: http://www.npr.org/2015/02/20/387309723/pain-but-no-regrets-...

[1]: http://en.wikipedia.org/wiki/Harry_Harlow
Git alias favorites of ours:
https://github.com/SixArm/sixarm_git_gitconfig/blob/master/g...

Suggestions and pull requests welcome!
Probably explains why he went through 28 of them!
>(i.e. they accept pull requests)

Well, Epic accept pull requests too for UE4, you know, but they are not actually open/libre/whatever source.
That's what I did, and it worked for me. If ViolentAcrez can get another job, these mooks can, too. I have no patience for crybabies.
Interesting because quite a few of us started out with a totally different idea of what it was like.
I know, you think I'm insane, right? I doubted my sanity, too. Not a software tester, nor an architect, nor a manager, nor a houseplant, nor a figment of my imagination. A software engineer.

Actually, come to think of it, I think it's almost exactly accurate that "He had the same seniority in the same role that I would be have today if I had not quit that company 4 years ago." (This incident would have been from 5 or 6 years ago.)
Yes, please, let's start policing thoughts.
This page crashes my chrome tab
It is not. That's the point of the comment you're replying to.

There exist good interview questions, where you give lots of facts to the candidate and make it clear that they can ask if they don't remember the order of arguments to reduce(). (In fact, a good way to put them at ease is to admit that you don't remember either, and are just looking up the documentation :-P )

But if, given those bare facts, they can't write a legible and correct binary search even over multiple iterations, or reason about O() complexity of an algorithm they either just implemented, or just came up with, they are probably an STE.

In my experience, these people fall into one of two categories: new graduates who just barely scraped through their college classes, and people misrepresenting their past jobs in QA or product management as programming experience. (That isn't to say that non-CS-majors shifting into coding can't be great engineers - I know several! But when interviewing one, you can't make the assumption of basic competence, and it's a red flag if they play up their non-programming work rather than talk about actual coding experience/studies.)
Hey, I've been working for the Samwers in Berlin, for US based companies and recently in Lisbon. And yes, the vibrations and creativity of the ciy is still unique and not yet overun by hipster crowds. I believe it will stay like that for quite a while because there is no giant rush of international masses to the city to live and work like in berlin. thats good for staying a creative landmark, thats bad for driving business and startups forward. most stuff here is dominated by local people or international enterprises and as long no international strong interest si driving knowledge and skill into the city it won't change.
Did a Human or a Computer Write This?
I think one thing the author fails to realize is how much worse it is to hire a terrible engineer than not hire a good engineer. I've seen a terrible hire cause more than $1M of damage in the year it took for him to get fired.

While I think that these sorts of people are rather rare within the population of engineers at large, they appear much more often in the interview process as they are more likely to need a job, and probably have to interview many more times before they find their way into a company.

That said, I do agree with the author that extremely deep technical interviews are also unreasonable. Variants of FizzBuzz are generally enough to weed out the terrible engineers and it's pretty hard to tell the good from the great until you've actually worked together.
Because they're shitty?
Indeed, property values in CA are insane right now. Here's a super nuts one... this piece of undeveloped land is going for $1809/sqft https://www.openlistings.co/p/427-14th-st-santa-monica-ca-90...

That said, by "shitty" I don't mean bad or cheap, just that the value would be boosted a lot if it was fixed up.
Useless? No. Diceware's not useless, and it's just a wordlist.
Another way to do it: buy a kit for taking your own samples, write down the code on the kit and send it to the lab.

Write the code into a web-page and you get status updates when it is received, when the results arrive etc.

If you want to you might register to get email updates.
Hank's former employers are not combustible inanimate objects. They have responsibility for their own actions. I mean, imagine if someone they knew nothing about had told them he was a space alien and they fired him for that. Who would you blame then?

Anyway, again, my point was that there was internet hate machine harassment following the incident at Pycon, following from some minor thing that should not really even catch the interest of strangers, just like in this story.
Nice misquote.

..and if convicted..

The case in point relates to harassment and threats of rape here.

What part of that isn't illegal exactly?
I think his average stay was maybe 9 months which is not unreasonable for consultants. My guess is they were all charmed by the CV and didn't interview him thoroughly enough.
> nothing they can provide via javascript should convince you otherwise.

How about javascript that is:

(a) open-source

(b) third-party audited, with a third-party-published hash of the versioned javascript

(c) verified against the hash at runtime by a browser plugin that consults a hash directory of audited versions?