skysight-inc/HackerNews huggingface dataset:
If it's specifically about feedback on the whiteboard exercise, I find the legal excuse to be a bit weak. It is something organizations will hide behind because it's a lot easier to say, "I'd love to give you feedback, but HR/Legal says we can't because of liability concerns." That makes the company look like the good guy, just blame the system.

Specifically on the whiteboard, the primary reason for not providing feedback is very simple - HR and managers have jobs to do, and they're going to focus on their primary duties on the business side, and active candidates on the HR side. Once you didn't pass the exercise, they're not going to spend time on you because that's inefficient for them - essentially sinking someone's time to write you feedback when you ultimately won't be working for them.

In the US, anyone can be sued for anything, so it is technically true that there's a legal reason not to give feedback there. But I think the risk of that takes a back seat to simply not wanting to spend the time on something that isn't seen as valuable to the company even if it is to the excluded candidate.

Now, as to everything else, particularly "fit" and all of that - yeah, there's a very valid legal risk that would suggest you should not provide that feedback. Fit is subjective, and a lot easier for someone to decide fit meant age/race/sex/etc.

My final opinion is that this type of feedback wouldn't actually be useful. It sounds like it would be, but that suggests that hiring orgs all think the same. They don't, and that's good for all of us.
I disagree, now prove your point.
> Our raw mental capabilities may have always been the same, but how smart we are also depends on our learning.

FWIW, I tend to equate "smart" with "cleverness," as a separate measure distinct from "experience," for the same reason you describe--so what I usually go by is something along the lines of:

Cleverness is a measure of "what can you do with what you have," whereas experience is a measure of "what do you have?"

> Over the centuries we've made great gains in mathematical tools, scientific knowledge, in democratizing education and in disseminating knowledge. And this means over the centuries we've (as a species) obtained more leverage that we can apply to our raw mental capabilities, giving us (overall) greater intellectual capabilities.

I don't think we've gained greater intellectual capabilities--our intellectual capabilities are the same, we just operate in a completely different mental environment than our priors did.

Moreover, having a different view of the world allows for different connections to be made, and different potentials to be expressed (irrespective of one's individual level of cleverness).

So, for example, by placing a priority on stories & views that encourage greater investigation of the physical world, we get to where we are today. And we can teach the next generation slightly different stories that optimize for different kinds of usefulness.

To bring it to the HN contingent--if I learn a new programming language, I've gained experience in different ideas and operate in a different mental landscape. But I'm not smarter afterwards, and I wasn't dumber before.
DR. FREUD FOR ARTIFICIAL INTELLIGENCE
> It's a fair supposition

Why? Reviewing any of Amazon's acquisitions shows that they have revenue targets that, when met, means they just don't get involved. Why suppose they are suddenly going to do the opposite now?
I suspect keeping ambulance at standby was more of a hotfix for a bug, than a feature. Yes Amazon is frugal, but I think it is a bit of a stretch to assume there was malicious intent in not cooling their FCs.

In a giant warehouse managed by a company with > 100k employees, things are not changed that quickly...
"most common uses are tractable" does not guarantee that many common uses will have been correctly analysed.

As to why it's disallowed: stack space is limited, and tail call optimisation isn't taken for granted. Here's what the Joint Strike Fighter coding standards (thataway -> http://www.stroustrup.com/JSF-AV-rules.pdf) say:

AV Rule 119 (MISRA Rule 70)
Functions shall not call themselves, either directly or indirectly
(i.e. recursion shall not be allowed).

Rationale: Since stack space is not unlimited, stack overflows are possible.

Exception: Recursion will be permitted under the following circumstances:

1. development of SEAL 3 or general purpose software, or

2. it can be proven that adequate resources exist to support the maximum level of
recursion possible.

So yes, you're allowed it if you do that extra work, but given that you can replace tractable recursion with a loop anyway, the win you'd have to get from expressing the problem recursively has to compensate.
How interesting to see Amazon and Walmart making major acquisitions on the same day.

One is for offense, the other is for defense.

Goes to show that the future is Amazon and not Walmart.
It is important to note that the antagonism between union and management is especially bad in the U.S. Germany demonstrates one arrangement that generally works to align the interests of the two.

Just calling this out to try to counter the tendency of U.S. folks to assume that there is only one, unchanging form of capitalism. In fact, ours is increasingly a weird outlier.
You're right, I misread your comment (I thought that you were saying that using "North America" makes it obvious that this is the USA - which you did not). Sorry (as they say in Canada :))
> My message to you is right there in the same thread in my client. Don't send it back to me.

Dozens of times a day I add someone to the cc list when I'm replying to an email. I suspect most people that have an assistant (or are one, or collaborate with others in general) do this constantly.

It's an incredibly common use case. Should we all abandon this very common behavior in order to avoid your scorn?
Ooh, I'll have to read this - thanks for the pointer.

When I was a much younger human I took quite a lot of drugs like mushrooms and MDMA. Toward the end of one such session I found myself in my kitchen, staring into the dark space behind the window and was struck with a realisation of what Hell would be, should it exist. Not spewing fields of lava and endless pains of torture, rather unending consciousness with no inputs or outputs. I imagined black (although that would technically be an input - I am unable to imagine literally nothing!) but just as easily, an infinite field of white would be as horrifically terrifying.
In our technical interviews, we asked the following questions to our candidates:

- Find the most frequent integer in an array

- Find the common elements of two int arrays

- The buying/selling stock question from https://www.interviewcake.com/question/java/stock-price (slightly modified, I removed the word efficient as I only care about a correct solution, not the most efficient one, and we provided a data-set with a correct answer).

They were asked to bring their own laptop, and use their favourite editor, with the language of their own choosing, and setup a test environment.

It was an eye-opening experience to see how different the responses were, also how few that could actually solve the first two ones, I subscribe most of this to pressure to perform, but I think we at dodged two that was really good at talking, but had never opened their editor for at least a couple of years, despite their resume stating otherwise, and when asked about it they did programming every day.

I am all for finding better ways of interviewing for new engineers, and I really like their points about communication, but I am not sure giving them access to master and start hacking around is a fair challenge either, of course that is where the pairing aspect comes in, maybe it is worth a shot for our next round.
As far as lines go, one of the things I love about Whole Foods is that they always seem to have enough capacity at the registers so that there's one with no line. Worst case, one person in front of me. And the average cart is small there, so it's quick.

Contrast that to other grocery stores (Shaws and Wegmans, for instance) that seem to calculate exactly how many cashiers they need such that no line is more than 3 people deep, but none of them are idle, ever. And the average cart is full-to-the-brim, so there's always a wait. It can be 9pm at night with 3 customers in the store, but there will still be a wait.
I'd pay to discover the error I made :)
I think people often try to emulate policies from large successful companies without necessarily understanding the context for why this policy would make sense for those particular companies, but not for others.

In a company like Google or Facebook, it may not matter whether or not you have any experience with technology X, because they have a large training organization that will teach you proprietary technology Y anyway. Their interview process might therefore come across as overly academic, because there's a good chance you might have to "study" and quickly learn something arbitrary as part of the job.

In a much smaller organization, it's unlikely that you will encounter any technology or basic problems that haven't been seen before and it's much more important that you have a baseline level of competence in your expected job. It's also less likely that they have an organization dedicated to training software engineers.

Logically, these very different types of companies should have very different interview processes, but that isn't always the case.
Jobs for Digital Nomads – 10 sites for finding the best entry level remote jobs
I'm sorry to hear anout your experience. Whiteboarding is tough, from both ends I think.

How do you decide in 1 hour if you want to invest 1 month of a team's time to see if the candidate was a good hire? It's a tough problem.

When I do interviews I try to make them worth the candidate's time. My approach is to ask just one key question: "Pick an algorithm you like, one you've invented or one you've read about, and teach me how it works"

This I think balances the power dynamic since it puts the candidate in control. And it gives them a chance to show off, should they choose to do so. Plus I might learn something.

Afterwards I start throwing additional information at them and try to twist the algorithm they presented into unfamiliar situations. This gives the candidate a chance to learn something new, I hope. I taught one candidate about impractical theoretically awesome O(n) sorts this way.

But people whom we've hired after such an interview told me that at the time they felt like they failed the interview even when they did smashingly well.

Anyway, I'm happy that you eventually got the job! I wish people spent more time trying to make it fair to the candidate.
HN discussions on previous 3 parts:

https://news.ycombinator.com/item?id=14480559
https://news.ycombinator.com/item?id=14497867
https://news.ycombinator.com/item?id=14549007
> I'm sorry... if you can't reverse a linked list, you should be ashamed to call yourself a hacker. Don't get pissed at me, go learn it right now.

Yeah...I don't understand those kind of complaints. Spend a day or two practicing interview questions and brushing up on algorithms and data structures. The same topics come up in most interviews I've been in. You might not use the information every single day but you'll be better for it.

I wouldn't fail someone in a coding interview for getting that exercise wrong but if they had no idea how a linked list worked and they've never had the curiosity to find out that's really bad. I've interviewed coders who have never even heard of a linked list and you can't tell me that's not some indication of their breadth of knowledge.
If you build an arbitrary thing everyday that's completely different how do you calibrate of cross the different candidates so that you give an equal hiring experienced and make sure you're not biasing on other factors that can get you in legal deep-water, or just you know biasing accidentally because of the problem being harder today
Coming back after mid-shift break for another 4 hours was always pretty hard. With stocking there was always something to do as well (staves off bordedom but also tiring). Checkouts often have peak times so you often get long periods where you're really just chilling with your co-workers.
> ...each Standard Ebook is lightly modernized to feature consistent and modern spelling and hyphenation, so old-fashioned ephemera doesn’t distract you from timeless content.

I like old-fashioned ephemera...
Mondragon corporation has existed in spain since the 1950s as a worker-owned cooperative and employs about 75,000 people. Whole foods employs about 91,000 but I'd say that puts them in the same ballpark. You could argue in addition that Mondragon has been limited by a) Spain having been a dictatorship until the 1980s, b) the relative youth of the EU single market vs that of the US leading to a more regional business culture and c) the additional language barriers in Europe that make business expansion a bit slower than in the US.

https://en.wikipedia.org/wiki/Mondragon_Corporation
Outages Hit YouTube Friday Morning
Hershey's is unpalatable though! Worst chocolate in the US :(
Pay for your package.json
Bad interviewers are always going to give bad interviews, whiteboard or not.
There is a big difference between being able to solve a problem during a normal work session, and being able to solve the same problem, on a whiteboard, with no internet access, under time pressure, all while trying to explain your thoughts to an audience.

Whiteboard interviewing is a skill that needs to be practiced, and it is mostly orthogonal to the skill known as "being an engineer".
Plenty, both in terms of security and UX:

1.) It's less secure (unless the email is encrypted, which in most cases it is not).

2.) If you use GMail with several accounts and POP3 you'll have to wait until GMail sees fit to fetch the email.

3.) Password managers provide both a superior UX and superior security. So, by all means at least provide a password-based login as an alternative (which admittedly defeats the purpose for the operator to have a less complex authentication system to worry about).
Je me souviens/ Que né sous le lys/ Je croîs sous la rose.

I remember/ That born under the lily/ I grow under the rose.
Never been to a WF (we don't have many here) so didn't know those other jobs existed. Seems like they do have a lot of work to go around then instead of just stock work/checkout work.
Well that explains this https://news.ycombinator.com/item?id=14570149

Frankly it sounds like laziness though, it's not that difficult or onerous to read papers and follow citation trails!
I can imagine cutting trees, burning large areas of vegetation to allow for mining, which is even worse. Lands get deformed, parts of limestone mountains start collapsing. Plants never grow again in the area unless aggressive regenaration of the land and planting is done. The soil gets fragile and unstable.

I also wonder how the process of production is done. To process limestone usually produces a lot of co2 (I have no reference, but that's what I remember from reading stuff online). Additionally, as many have noted the plastics used (20% of the final mass of the product) still are plastics made from fossil resources. Is a way for recycling known, especially considering the final product is a mixture of plastics and limestone?

It seems that the producer does not have a real, scientific proof that his production is environmentally good, but does it as a 'novel', and 'fascinating' idea with the only goal of making money. The article itself says that the producer looks forward to making a product that will last, but does not indicate that the producer ever had a goal of protecting the environment.

Finally, the subject is very much worth of discussion in HN, and I personally feel thankful for the one who submitted it.
A Guide to Choosing a Rebalancing System
The plans: (pdf)

http://online.liebertpub.com/doi/pdf/10.1089/space.2017.2900...

In the "Why Mars?" section, Musk writes:

> It is a little cold, but we can warm it up.

In the very, very, long term we might be able to terraform Mars, but in the next few hundred years I think it would be more accurate to say that heating is a lot easier to manage than cooling.

We can survive in Martian temperatures that occur on Earth with nothing more than well-insulated clothing. But as Phoenix, AZ is discovering this week, even a few degrees over body temperature is really bad.

In the section on the importance of reusability, he writes:

> However, with frequent flights, you can take an aircraft that costs $90 million and buy a ticket on Southwest right now from Los Angeles to Vegas for $43, including taxes.

That's because the casinos subsidize it. Flights to and from Vegas from anywhere are cheaper than others, even more frequent or shorter flights.
> You are thinking that using reflection and casting at runtime is not a sensible thing because it is not optimal

No I'm not thinking that, I'm saying that implementing a non-generic base interface like

public interface IValidator {
bool Validate(object obj);
}

is pointless because you'll have to do the same type checking/casting in Validate you would have to do in a wrapper which implemented IValidator<object>. Requiring a base interface is worse because you'll have to implement the same boilerplate implementation of Validate(object) in every implementing class - see IEnumerable/IEnumerable<T> as an example.

> Obviously this library will need to do run-time casting of types

You've linked to a clojure library which is dynamically typed so I don't see how this is relevant. It's not obvious to me why a C# version would require casting.

Task/Task<T> does follow the pattern but they could have simply introduced a Unit type in the BCL and replaced the non-generic Task type with Task<Unit> instead.

> To run all of these validators against a given class you have three (un)reasonable choices:

You only need to write one wrapper class which encapsulates the cast you'd have to do anyway in a non-generic IValidator interface:

public class Wrapper<T, TBase> : IValidator<TBase>
{
private readonly IValidator<T> inner;
public Wrapper(IValidator<T> v)
{
this.inner = v;
}
public bool Validate(TBase b)
{
if(b is T)
{
return this.inner.Validate((T)(object)b);
}
else return false;
}
}
Purotic Natural Dog and Cat Ear Cleaner
To protect against an attacker with physical access to a machine may indeed be futile, but it should be possible to provide some measure of security against a malicious process running on the machine.

Defending sensitive data if the DB process itself is compromised, again, seems pretty difficult. That was the original goal of the academic proposals like CryptDB or Cipherbase - defense even against a fully malicious database server.
We had a lot of run doing SS!

Launched https://kyso.io - Kyso is the fastest way to share data analysis to your team and the world.

Our pres: https://www.startupschool.org/presentations/411
I eventually got hired by a good company that really needed a Ruby developer for a short term contract. From what I can tell, so far they seem very happy with my depth of experience and ability to take charge. I am very full-stack, so all they have to do is tell me what they want, and I'll make it happen. I enjoy it, because I like building things.

But because it's short term, I have to find time to continue studying so that when I get back on the market, I can pass those whiteboard interviews. It's very challenging to do this when I have a full-time job and a family.

I never thought I'd be here at this point in my life/career. It's depressing. But as they say, you gotta do what you gotta do.
I've been using mutt + vim + gpg + multiple gmail account for the last ~5 years and it's proven to be fast and easy to use, the only issue I have is that it disconnect from time to time from the imap servers.

Follow my configuration: https://github.com/javier-lopez/dotfiles/blob/master/.mutt/m...
People don't realize that we farm trees. It's a crop, like wheat or corn.
The most you could say is WF's margins are "thin" instead of "razor thin". They're not writing US student loans here.
Show HN: Yet Another Image Compression Service (alpha)
Fry's Turkish Delight is nasty sugary gloop, and is nothing like the real stuff (what Lewis was referring to)

The real stuff is much more delicate, subtly sweet, and has a much nicer mouth feel - not to mention flavor.

Rose water is one of those flavors you either like or dislike a lot. However it comes in other flavours! Various nuts, citrus, etc. very tasty.
Texture is like pre-industrial gummy bears. I like it.
I assume from this response that you have never worked with someone who created semi-constant issues because they didn't realize that .vimrc they copied from GitHub was silently turning spaced into tabs whenever they saved a file.

You are a lucky, lucky person.
Sorry but this is the real world.

If you want feedback go see a therapist or career coach or talk to friends, family, mentors, previous coworkers etc. Don't expect a hiring manager to do this for you. As someone who has interviewed hundreds it would actually make me resent you because if you can't show the initiative or take the responsibility to improve yourself then I made the right decision not to hire you.

Worst of all I and many others would feel uncomfortable giving personality advice (if that was the issue) and would just lie and give some other reason. It's human nature and would just throw you off course and wouldn't help anyone.
Probably because he expects people who are financing to become customers and help tell other friends in the industry how amazing the company is.

"It’s not just about the capital, but about getting a funnel of companies and individuals that could be potential customers as Atrium"
Slow security is bad for many reasons:

1) It means default-secure will not happen. If the NSA has to spend 10x as long to attack your security, but 1/10th as much communication is encrypted, it's a win for them (since now the simple fact that something is encrypted means someone put effort into it, which is a good signal that it will be useful).

2) Brute force attacks are typically embarrassingly parallel, and can be amenable to special purpose hardware (e.g. GPUs). An attacker with an 8 GPU system spend $10k and can attack PBKDF2 much faster than a $10k server will be authenticating people.

3) If your security relies on slowness, then people will pick less-secure defaults. If you can get an equivalent level of security per cpu-cycle, then people will pick a higher security margin (this is the non-binary version of #1).

3DES is way slower than most crypto primitives used today. I haven't seen it recommended much though.