skysight-inc/HackerNews huggingface dataset:
A few words on top grading. We are use a top grading like process, and are pretty flexible on the references part of it. It is just a long conversation. I think it is a structured and simple way to talk about a person and where they have been. Yes, it is comprehensive, but it works well. We hire almost all candidates that have made it to the top grading stage of our hiring process. We don’t use it to find liars and don’t think of it like that. What it really is good at is finding patterns of behavior in someone’s life and work history. It’s not full of campy dumb mental problem questions. You just talk about yourself and your work history and how you relate to previous colleagues and managers. And it’s done consistently to make it a little more comparable from one person to the next. The reference checks are one of the most useful and valuable parts of the whole process (we are flexible here, we are a small company). I can see how this process could get morphed into something less friendly, but at the end of the day it’s a huge time investment for us and the candidate so we don’t embark upon it lightly. I haven’t found a better interviewing technique that takes the pain out of it for the employee and the employer. Our team all appreciated the process and we take their feedback seriously. We don’t follow all of the steps in top grading religiously, but the interviewing process is really good. We also read a lot of other books on building a hiring process and settled on top grading as the most consistent and logical. The few people we didn’t hire threw up major red flags in their interview process in terms of how they would fit in at the company and the work we do. How else should a company hire people? For a small business we try to de-risk the hiring process as much as possible because mishiring is /extremely/ painful. We have grown from 3-20 people organically. Each hire we made was and is very important to our growth and stability.

Edit: just wanted to say I am a partner/founder at my company and we deeply give a shit about what we do and who we work with. Our turnover across 7 years is very, very low. We strive for a good work life harmony with everyone that works with us. You have to have some process to fit people into a company and that means you gotta talk to people and get to know them. The goal is to eliminate interviewer bias as much as humanly possible after the technical screening. So it goes. Not everyone can be pleased and I would defend our hiring practices as very reasonable and humanistic in an otherwise crazy tech interviewing system at the FAANGs of the world.
I think there's truth to what you're saying, but I also think it screens out a lot of false negatives (which is kind of its intent since they'd rather that than false positives).

For me personally the process gives me a lot of anxiety/fear to the point where I won't do them even when I know I want to. I suspect a lot of the negative sentiment around interviews or talk about their 'ineffectiveness' is just this fear being poorly interpreted.

I think the technical interview process is also just a separate skill to master that has some overlap with programming, but is mostly getting good at leetcode style problems. It reminds me of things like the SAT for college.

There's a lot of failure necessary most of the time to succeed that I think scares people away because they do one and fail and then think they're not good or smart enough. I think I did ten different phone screens and three or four on sites before getting hired by a famous company. Some of those I totally bombed and others went really well - there's a randomness to it depending on the question you get and the specific interviewer.

I wish this wasn't the case and things were better because it'd be really fun to work on interesting projects with different people at different companies, but the barrier to changing is so tedious it's often better to stay put at a local maximum.
> Google might not need you to code some efficient algorithm to search a b-tree every day, but they pay top dollar and can rightly expect that their software engineers can come up with efficient and creative solutions to hard problems without dragging the rest of their team down.

This is a non-sequitur. Being able to write good software has nothing to do with reading cracking the coding interview and practicing leetcode for an interview in an environment that bears no resemblance to how work is actually done.

But hey, that's fine—they just leave good talent for others to hire.
It's easy to say both sides are bad, but you know they are not comparable.
We all know that rascists and deplorables use language intended to deceive.
having just recently (in the last 2 weeks) completed >100 problems on leetcode i can affirmatively tell you that it's not actually that difficult to game this system. i read elements of programming interviews (took about a month of a couple of hours a day) and then just blitzgrieged leetcode. this was all in prep for a FAANG internship tech screen i had yesterday. it went well (not perfect but well).

but it is true that these questions bear no resemblance to software engineering so it does feel silly going through the process.
Nothing is happening to Google Cloud overall. This is just a small org where two teams were doing similar stuff, so they got merged. This made a few roles redundant, so those folks will be looking for new roles within Google (Cloud). How this made for a WSJ headline, IDK. I couldn't read the whole article because paywall, but the first few lines do mention that it's a tiny number of employees affected and they can look for new roles.

Note: I'm not authorized to speak for Google, but hopefully this addresses some of the panic in this comment thread.
The score inflation has been plaguing many areas. this helpful chart is many years old already. It's probably a consequence of goodhart's law.

https://imgur.com/A1umWh2
https://archive.md/OCc3B
“ mountains of red tape, processes upon processes, overwork and burnout, and best of all, you get to spend your best years infecting society with the cancer that is adtech.”

Your mileage will vary depending on the team you land on.
"What is the health risk?" is something that modern medicine can rarely tell us and has almost always been somewhere between lacking to absolutely wrong. Both are related to the inability to do long term studies, beyond the ones that me and you are currently part of.
> Due to these issues the Linux kernel is no longer using standrard C.

The Linux kernel never used standard C, since the very first release (0.01) it already depended on GCC extensions.
Basically, quality control was iffy, so an appreciable percentage of munitions didn't work. Or were just lost and forgotten, in the heat of battle. Weapons too.

So it was quite the wonderland for kids who liked to blow stuff up, and play at war. But you had to know what stuff was relatively safe, and what was likely to go off, if you looked at it wrong. For example, you avoided anything that contained picric acid.

But hey, I lived through it. And it was great fun. Overall, it was arguably safer than making acetone peroxide, which I gather does go off, if you look at it wrong.
Facebook and Instagram
the post was getting too long to put in all the details, but basically, what I was getting at, imagine the data comes in batches and you have to retain the N largest seen so far
I think, you are making a good point for what may be called mutable knowledge. I.e., when writing a shell script to iterate over a few files, nothing of this is of utter importance, since the script is meant to be run only once, thus we may consider any knowledge immutable. Also, maintenance and readability aren't much of a consideration here. In the case of a "real" application, when connecting to an endpoint, as in your example, we may consider address and credentials subject to change, so this is mutable knowledge, which ought to be represented once. However, the method of connecting is hard coded in several places, so it's pretty much immutable. If we expect the method of connecting (http) subject to change, we should consider to put this in a single spot, as well, even, if this may mean that the code may be harder to follow, since we introduced another layer of abstraction. And so on…
Yeah, anyone remember this book about it? https://en.wikipedia.org/wiki/The_Hacker_Crackdown
“When I was asked to write an image filtration algorithm I spent the first 15 minutes just to understand the question. I ran out of time. ”

I have been through few of these, I just assume that there are people out there who can understand and code up the question asked within 15 min. Those are the people this company is looking for. Not you and me.
> Landlords all over make approximately the same returns as one another

In California long time landlords get Prop 13 tax cuts. New ones don't. They compete for the same tenants and charge the same rent.

Long time landlords have much bigger profit margins because of that law.

Other states have property tax restrictions but I don't know as much about them.
Reminds me of “boko-maru” of the made-up religion [1] in Vonnegut's Cat's Cradle.

1. https://en.m.wikipedia.org/wiki/Bokononism
It was broadcast on ABC nation wide instead of the typical contracted station for any given local market, right? Normally the tournaments are broadcast during normal time slots on the usual market station. Definitely makes sense that the mouse would have insisted on a bit of extra coverage for something I bet they paid a lot for, but I would be hesitant to give that much weight for determining the direction of the standard show.
I did a little bit of exploring a few years ago [0]. Iirc they just had one live stream for all their shows. All app events (quiz, chat messages) were through websocket.

The founders are ex-Vine founders, who then created a live streaming app called Hype. It looked like they were re-using Hype in HQ according to some URLs like hype.space.

https://github.com/Bekt/hqmania-ai/blob/master/lib/client.js
While I vigorously support more construction in the SF metro area, I think expectations need to be set correctly as to the amount of construction required to actually bring prices down, instead of just slowing their rate of increase. It's a lot. I don't recall all the numbers, but I believe I saw something suggesting that we need to increase the rate of housing starts by a factor of 4 just to stabilize prices. To actually bring them down would require even more than that. Again, we should absolutely do it, in my opinion, but if we were to only double construction — difficult as that will already be, politically — and prices didn't plateau, people might conclude that it doesn't work. We need to make sure they know what it's going to take.

It's not so much induced demand as it is pent-up demand. Lots more people would already love to live here — indeed, many have moved away solely because of housing costs.
O(∞)
Is this donation tax deductible?
"What proof do you have for that?"

rural areas are depopulating and cities/metropolitan areas are rising in both population and inflation adjusted real estate prices, both in the US and around the world.

Say you have 2 options...

This is a false framing. For most, the choice is between lower density area with a long usually car based commute or a higher density area with a shorter non car based commute. Things become more complicated when you have a life partner and you both have jobs, then you need to minimize the commutes while maximizing the job opportunities for both of you, and that happens best within cities.

"shoved like sardines into a 20 story high density apartment building"

this is also false framing. Some of the highest density neighborhoods in the united states are filled with 3 story buildings, like triple decker homes (ex: somerville MA) that are essentially 5k sqft homes 3 story homes subdivided into 3 units, one on each floor.

"What's the point of high density living"

The point of high density living is that it takes you less time to get to the things you want to do, it allows you to live without using a car to get everywhere, it allows for higher specializations of places, ex higher densities can support a niche board game store and gathering place, it allows a higher group of people to live within your commute shed so that you have more opportunities to make friends.

The past 5000 years of human history has included a nearly universal and constant theme of people moving from the countryside to the city. Post WWII America was a slight abberation from that, but we're back on trend like the rest of the world.
What kind of house is a reasonable house for $2.5M?
A small agile company could hire undervalued people who don't do well in traditional interviews and clean up, if they didn't cargo cult programming interviews.

See these make a bit of sense for huge companies that have to filter millions of potential candidates. They don't make sense for your ten person bootstrapped company that wants to hire a junior full stack dev.
IMO, the best way for an alternate messaging app to catch on (to WhatsApp) is federation. If we can figure out a way to have a common signaling protocol across apps and users can choose whatever clients they want, then they have a chance of competing against WhatsApp. At this point, there is no real reason to move out of WhatApp, given it just works?
There seems to be a general tendency for fields to come up with useless jargon. My favorite for years has been "deplane" for letting people off airplanes, but "performant" seems even more pointless.
I just ordered an Ender 3 Pro. Could you link me the best resources you used?
The problem with an unyielding, fairly uniform obsession with interview problems unrelated to actual day-to-day development is that you're institutionalizing Goodhart's Law. Eventually the interviews will encourage false positives as candidates grind on CTCI and LeetCode and pass interviews without actually being able to excel at actual work responsibilities.
This is literally the definition of FUD.
I agree on small orgs, but... recommending startups is a bit iffy, IMO. DGMW, startups can be great, but if you're just a good programmer wanting a stable job, then that startup job is not the job for you.

However, you could be a huge contributor and positive influence in a small org... and it's possible to gain a lot of life satisfaction that way[0]. Plus, your employer actually knows you and understands the value you bring, etc. etc.

Yes, you probably will not earn as much as you could by indirectly peddling ads, tracking users, or whatever, but personal fulfillment matters... at least it does to me... and I hire people who feel the same way.

[0] It sounds weird, but studies have shown that giving people agency (as they must be in a small org), setting their own goals, etc. has a positive influence on their well-being and productivity.
It looks like you can utilize an IRC client for Twitch chat: https://twitchtv.desk.com/customer/en/portal/articles/130278...
by using an N element max/min heap and evicting the max/min when a new element comes in that's less than the max/greater than the min (note this is also a leetcode problem https://leetcode.com/problems/k-closest-points-to-origin/)
Tosh's joke ignores that people can struggle with recall and on-the-spot test taking stress, while performing quite well at whatever the test is assessing. When studies have been done on interviewing, nothing has shown that inducing stress is ever helpful, unless the interview is for a job that requires on-the-spot stress, such as interviewing to become a police officer.

To me, here is the actual problem that I see cropping up. FAANG companies have enough volume of applications per position that they can afford to have a system that will strongly prefer false negatives over false positives, so they are willing to err on the side of, "We'll just hire people who can pass our realtime CS-grad battery and sadly say goodbye to equally good candidates who cannot." Ok, FAANG companies can do that as long as they are eyes-open about the situation. Where things screw up is that companies that are not FAANG companies do not understand that, and end up aping the FAANG interview techniques when they do not have the same applicant volume. This starves them of talent, and also leads to good applicants getting rejected by non-FAANG companies.
I have a fairly strong suspicion this is just a Yale thing.
> If you want to live and raise a family in your own house in the bay area (2.5 Million for a reasonable house), this matters.

I love the bay area, and I have terrible judgement, but even my terrible judgement and my love of the bay area combined aren't a bad enough combination to make me think it's a good place to raise a family.
I usually ignore the star ratings completely and read the text of a few reviews. This isn't a personal policy, just something I've done unconsciously. The stars don't tell me anything useful.

(Reading the reviews is by no means a good system—it's time consuming, the reviews are poorly written, and I never know what to believe. But if I ignored everything I'd feel blind.)
https://web.archive.org/web/20200214235741/https://hraf.yale...

https://archive.md/FG6Ss
Just released Commitiquette a bridge between Commitizen and CommitLint
I've designed an interview test before and I am ironically now doing a very similar interview test to what I designed for the company I used to work at. It worked extremely well for where I used it and I am absolutely thrilled to work on it now for this company. The key element here is indeed relevancy to the job you apply for and not looking for a perfect answer.

For anyone doing programming tests, I would like to give some advice, too, based on the tests I did and got through successfully:

- Always give it a try
- Always explain what you do and what you are trying to do
- Don't worry about sending in an incomplete test when you don't manage to do it
- Be verbose about what you are trying to do to solve it
- Don't be afraid to ask questions

My first great programming job was at a place where I got a hard mathematical problem to solve, and I didn't manage to solve it at the moment, so I asked if I could take it home. I didn't manage to solve it at home but sent in the broken code that I had either way.

I got the job.

Why? Because the broken code I sent in showed that I understood recursion (it was for a Common Lisp job, that code was in Clojure) and the other people, even if they did manage to solve it, used more common languages and iterative solutions. He wanted someone who got the spirit of what they were working with, so that got me in. I asked my boss later how to solve that question, and he didn't manage either.

When I did the interviewing myself, the situation was similar. One candidate sent in a huge resume that looked impressive, but didn't send in the test. Immediate fail. Two others had a hard time with the test, but they showed that they cared about making it work, and that was enough for us to accept them: the core thing we wanted to see was that they could learn and cared enough to learn about what they needed.

One of those became main programmer and leader of many others later on, and made the company hugely successful.
It's actually O(n) where n is ∞
Unless your job is coding novel algorithm implementations under strict deadlines without a computer, how does answering this question in a job interview prove or disprove your efficacy in the actual position? It only proves you're good at interviewing, which, if you think about it, is not a desirable skill in your new hire 6-12 months down the road.
Double Down on Double-Check
I wonder why Ruby users don’t flock to Crystal, and Python users to Julia. With all the whining about performance and types, they just stay put.
The evolution of the software engineering interview is a consequence of people gaming the metric. As the author points out, once the cat got out of the bag, the problems became increasingly challenging.

The real consequence is for wages. By making interviews a ceremonious practice where even engineers with years of experience need to spend a month Leetcoding, you severely restrict the talent pool. It discourages poaching. Engineers only care to subject themselves so many times, and since they already have a job, they're not too motivated to find another (compared to industry outsiders who aren't already earning software engineering-level salaries).

Fortunately, many places don't put you through the hazing that is the typical FANG interview. You can make 85-90% of a FANG salary, at a company that asks Leetcode easy's. That's what I've chose for myself. Not because I'm an incompetent engineer, but because mastering leetcode isn't a priority for me.
I mean interviewing sucks yes. And don’t spend too long on take home work, no more than what you’d expect to put into a normal interview at that stage eg if it’s a screen no more than 1 hr if it’s later no more than a few.
Why Are There NIMBYs?

https://www.dartmouth.edu/~wfischel/Papers/00-04.PDF

When all your wealth is tied up in a single leveraged asset anything that might lead to a big change in it is more risk than most people will tolerate.
Moxie is against federating signal. https://github.com/libresignal/libresignal/issues/37#issueco...
I disagree - the recruiters are forced to be the messengers of dysfunction. I've seen some pretty reprehensible examples of this where I actually felt sorry for the recruiters.
When I studied for my google interview back in 2011 I learned tons of new things which I used professionally at google and beyond. But I’ll concede that it was before leetcode (although i did casually compete on topcoder just for fun) so I mainly read up on areas where I knew I had blind spots.
the point is to see how people think,

it is not so simple to regurgitate pre-learned answers when you alter a problem one small attribute at a time, in each case a different answer becomes optimal, thus you can see if the person understand what needs to be done or not
When my classmates were preparing interview coding questions, I was working on a mini TCP implementation and a toy kernel.

AWS rejected me since I failed to write prefect code to traverse a tree in level order. Google did not even give me an interview since I told the campus recruiter I have not prepared for the coding questions.

Then I ended up with an internship at CoreOS and created etcd. I am glad that they did not hire me back then.

Today, I am sure I still cannot pass the coding interview at "Giant Search and Advertising Company", but they run a lot of my code in production :P.
Most of the people whining about performance and types probably don't actually use Ruby day to day.
Is that true? I suppose the truly average HR rep can’t be, but I’ve never been given the freedom as an engineer to not ask a silly algorithm question. At most I get to decide which one I think is least silly. Maybe there are engineers somewhere who think the questions are great and high signal, but I’ve never met any.
Kissing is a form of bonding and recognizing kin. Apes and birds feed their young by passing on chewed up food mouth to mouth.

Sexual kissing could have been a way that was passed down from gestures that were used to recognize those who aren’t kin.

The term for it is relic gesture.

https://www.irishtimes.com/life-and-style/health-family/scie...

[..] What are the origins of kissing?

In early human societies, it is believed mothers weaned their babies by chewing up their food and then passing it to their babies by lip-to-lip contact. Evolutionary biologists suggest that erotic kissing is a so-called relic gesture, passed down through cultures from these early practices of the mother’s deep kissing and the infant’s searching tongue movements.

“If young lovers exploring each other’s mouths with their tongues feel the ancient comfort of parental mouth feeding, this may help them to increase their mutual trust and thereby their pair-bonding,” writes Desmond Morris in his classic book on human behaviour, Manwatching.[..]

Desmond Morris’ Manwatching is an excellent read.
... and then they can complain about the dearth of software developers...