skysight-inc/HackerNews huggingface dataset:
Companies can decline to hire someone for a position that requires a security clearance if they have reason to believe that it will be difficult or impossible for that person to obtain a clearance. There is a specific exception to nondiscrimination laws for this: Section 703(g).

Section 703(g) exceptions are somewhat tricky from a HR perspective because they can edge into territory that would normally be an EEO violation (I mean, obviously, since it's an exception to the rule) and there's very little precedent on them. AFAIK, there's only one court case around about it, where a guy was not hired for a cleared position on account of having family in Cuba. [1] The decision not to hire him, based on the reasonable belief that he would not be clearable, was considered acceptable. "Example 3" on that page also gets into another common scenario, which is declining to hire someone based on the belief that their clearance process would be long, and the company has an immediate need. (IMO, this is the most common scenario. Someone with a lot of family in China or Russia might well be clearable, but their clearance might be likely to take too long for them to be a viable candidate, particularly at a company that doesn't have non-cleared work for them to do in the meantime.)

[1]: https://www.eeoc.gov/policy/docs/national_security_exemption...
Being in a position to turn down a job is a privilege.
I can't wait to work through this. I agree so much with this philosophy:
"I do not want to show how to write applications for OpenGL. I want to show how OpenGL works. I am deeply convinced that it is impossible to write efficient applications using 3D libraries without understanding this."
I remember the RAIN network! I also remember the lovely spray-painted recycled Wyse terminals that were installed locally at the Speakeasy itself. Those were all I used -- I didn't bother with the PCs they had there.

I never lived in Seattle, but every time I visited (from California) I made it a point to stop by the Speakeasy nearly every day... and sometimes in the evening as well to take in a show. It's fun to hear from someone like yourself who was involved in the magic!
Agreed. Just launched it over with different "modern" browsers and was disappointed by the support.
Brangelina 12 Years Infographic for free (with your own media brandname)
Trump says US cyber attacks could have been committed by a 400-pound person
There's also the issue of paying people to work 60+ hours when you could just hire two or more people to work ~30 hours per week.

You'd have more rested people being more productive and have more people employed while giving an opportunity for improved work-life balance.

That and on-the-job training seems to have gone the way of the dinosaur.
It only stumped the candidates that clearly wouldn't make it through the rest of the problem. One sixth was a probably a high estimate.

DFS for an acyclic graph is about five lines of code and shows me that you A. know a programming language B. can figure out a data structure. I would argue both are needed to perform a dev job.
This is a great achievement for a developing country. A space race between India and China is probably better than an arms race. Kudos India
Online NLP Engine to Process Reviews of Mr Robot
Add ActiveX Controls into Visio Drawing and Retrieve Inherited Fill Data of Shape
my guess is it's...

simple math

YYYEEEEAAAAAAAHHHHHHH
> If the ratio of those hired matches the ratio of applicants how does anyone make a complaint of discrimination?

They'd complain that the company wasn't doing enough to attract resumes from underrepresented groups. That's the usual thing, anyway.
SVG is an untapped technology. It functions as an embedded document. When used within the Object tag, it can run javascript and CSS and ideally renders complex graphics with a much smaller payload. Also, they look amazing on all devices as they use the browser's rendering pipeline. SVG has been a fully supported standard for years.

https://sarasoueidan.com/blog/art-directing-svg-object/
Double post? Different URL but .. same title?

https://news.ycombinator.com/item?id=12586664
Double post? Different URLs; maybe they should be consolidated?

https://news.ycombinator.com/item?id=12586660
I didn't go there, but I thought the same. "Techs" seem to always be private...MIT, Cal Tech, Florida Tech, etc.

(Oh, by the way, Florida Tech definitely fits the aforementioned stereotype.)
Math is racist: How data is driving inequality
^^ - this.

same here - almost 20 years of dev, last time I needed to implement basic cs algorithms were in college and grad school classes (and some idiotic corporate interviews where preferred way of coding is apparently using a white board).

basic knowledge of fizbuzz, dfs, bfs, quicksort, and similar things of course is needed - however asking developers actually implement them in front of you is pointless, at least as far as job performance goes.
Overfitting
This looks like a flat out lie. Startups have to sometimes do that to woo potential investors. Although I like Facebook overall, I do not agree with many of their business practices.
OVH is one of the largest VPS companies on the planet, they didn't get there if they sucked as bad as you make them out to be. I recently switched over to a OVH VPS (just $3.5/month) for 1 project (I usually use Digital Ocean) because OVH has excellent DDoS mitigation (while that is non existent at DO).

OVH's website looks ugly, if you are used to DO's beautiful interface, but they are good. I tested their DDoS protection and is is second to none.
Generally U2F widgets don't run code or have any extra functionality unless they specifically mention it.

The OP key looks pretty barebones I wouldn't expect it to generate/store/use ssh or pgp private keys. That's more like a yubi key 4 or similar more expensive widgets that are basically smartcards and/or HSMs.

There is a U2F pam module that can allow you to use a U2F widget for screen unlock, login, sudo and the like. If you are worried about the U2F dying/being stolen/lost then you could always authorize more than one U2F widget and keep one in a safe place.
Uh...me too.

I don't know what you think is weird....some have a similar hiring experience to what Palantir did (depending on the truthfulness of allegations, of course).
This is the problem though, it's an anonymous busy body with a cell phone that's the biggest problem.
Are you sure that you meant 16-30,000 sqft house in the 70's was middle-class "comfortable"?
The burden for some may be too much for leaving the country to be a more viable option than staying and fighting for change.

Also some would argue that you can't run forever.
Sometimes I get these questions in interviews and I really don't know if I should be offended. My resume is pretty good, and I wonder who T.F. applies to these places that they have to have such simple weeder questions. Then I get all paranoid that there is some hidden complication and soon I'm producing FizzBuzz in TensorFlow:

http://joelgrus.com/2016/05/23/fizz-buzz-in-tensorflow/
> good tooling on all platforms

Eh... I've run into loads of trouble with F# and Mono, and with .NET Core you have to deal with platform fragmentation if you use any NuGet packages. Editors are pretty good across platforms now (as long as you stay far away from Xamarin Studio/Mono Develop), but I wouldn't call it "good" for non-Windows platforms.
And, importantly, more women than men carry purses or accessory bags which can divert the need for actual pockets.

In some men's fashions the pockets are ersatz. There is no sack behind the sealed slit under the flap --all for show.
Better smartphone auth setups doesn't require typing in the code. Like Duo Push.
That's not true, SQLOS is not a wrapper for system calls or another OS running on-top of a host platform. It's more of a resource/synchronicity/management layer: http://blog.sqlauthority.com/2015/11/11/sql-server-what-is-s...
That seems very skewed, based on hiring I've done. My suspicion is it's related to recruiters or other pipelines they were working from to provide them applicants / candidate resumes. There are definitely recruiters who have client populations that are very disproportionate (largely based on where those recruiters get their clients from in the first place).

It wouldn't surprise me if the end lesson that comes out of all this is "be very, very careful who you work with to do your recruiting and the effect it has on your applicant pool". If someone (be it a recruiter or just employees hoping for referral bonuses) pumps your hiring pipeline full of low-grade resumes but who nonetheless represent a particular ethnic group, and you end up turning them all down or turning them down at a higher-than-normal rate, you could really be increasing your EEO exposure without realizing it.
I tested out React Native on Android the other day and it was a real disaster. It doesn't compile for all the CPU ABIs (instruction sets) we have, so if you have native libraries for x86 or arm 64 in your app it immediately breaks it completely. You have to remove all your own libraries for unsupported architectures, then modify your build not to include them, then depend on those platform's compatibility features to run React Native's libraries built for older ABIs like arm v7.

Once you get it running despite their poor support for Android CPUs in their native libraries, half the examples and half the dependencies on the web out there crash immediately because they decided you have to import React and Component from "react" instead of "react-native" now. And there's no stack trace at all when it crashes for that error since it crashes before the normal source map functionality that provides them. My company has hundreds of files being used by React Native on iOS, but they are unusable due to this, even hours of search and replace cannot fix it because it is still crashing out, probably due to one of a dozen dependencies. Similarly if you try to use react redux 4 you are screwed, only 3 is supported. Woe be to anyone who upgrades that dependency.

As a Java programmer who is used to compile time errors when something is wrong, React Native where it crashes constantly at runtime due to poor platform decisions like forcing developers to use a different package from earlier versions is a tough pill to swallow.
Microsoft CEO Satya Nadella slams Google's game-playing artificial brain
Usually, a new tab opens whose address is "view-source:$URL_OF_PREV_PAGE". Obviously, it's not terribly hard to replicate by hand, but that's weird. As has been said since the days of old, "it worked on my machine".
Postmortem of the Firefox/Tor Browser Certificate-Pinning Vulnerability
As I said: "Even if it may not matter in this case". But what about the next time? (poster obviously doesn't understand the code) What about people who read this comment and follow the advice because it works? (happens all the time with SO) What about when your script becomes the standard deployment method for the company? (happens everywhere) What about people who don't know about file privileges either and blindly copy what they see here?

There's lots of things we do that you could say "who cares?" about. Single letter variables. Comments. Const-correctness. Unnecessary N^2 algorithms. Usually it turns out that either you or someone you work with cares a few months/years afterwards. So just learn to do it correctly the first time. Especially if the correct way takes less time than the "magic fix".
That's definitely not true. In many cases, corporations realize that settling is cheaper than fighting and winning -- and government agencies bank on that.
Text-oriented... what did you expect? Binary formats are tough to standardize. We have raster images, video, audio files, and fonts, but very few of those formats are "web" formats. Most of them are designed around getting the most bang for your bit to the extreme--an MPEG-4 decoder is a real beast, to be sure, and it's hardly a good model for vector graphics. Vector graphics follow more of a human authorship pipeline (capturing a series of drawing commands) rather than machine capture pipeline (sampling data at a certain frequency). JSON, XML, JavaScript, HTML, even HTTP are built on text-oriented protocols and formats because text-oriented systems are easier to standardize and extend. MPEG-4, MP3, JPEG, Vorbis, are binary protocols because they only exist to represent and compress narrowly-defined multidimensional data.

Resource-friendly for small systems--how would we reduce memory consumption? The alternative model for vector graphics is what, PDF or PostScript? They're not exactly models of restraint. SVG looks positively austere compared to PDF or PostScript.

The closest thing I can think of to your ideal "minimal binary" vector graphics is something like TTF, which is basically its own little nightmare compared with SVG. TTF has its own vulnerabilities, its own proprietary scripting system compiled to bytecode, et cetera.

For me, SVG is doing a great job of enabling really cool things like D3, and at the same time hammering more nails into the coffin that is Flash--something far more a resource hog than SVG. And we don't really need more 90s-era formats, we've got plenty of those, thank you very much. SVG is to images what HTML is to documents. You can build simple, static ones easily enough, and you can also make a little bit of magic happen if you throw in some JavaScript.

It looks like in the future we'll be embracing more binary systems. TLS, HTTP/2, and WebAssembly are some examples. But it took a long time to get the institutional expertise to invent such systems, and if we had rushed to use binary instead of text in the early days, we would have probably gotten it wrong in a bad way.

Besides... the hardware is getting bigger and faster anyway... we might as well deliver some good experiences with it. Most of your battery is probably going to power the backlight and GPS radio anyway.
When you become a manager expect to train as a supervisor first. Ask or accept a salary hike as a supervisor that is half of what you expect as a full blown manager. Work your way to manager because if you don't have management experience on resume by the time you are 40 expect nothing but freelance work over the age 40 if you lose your job. Management experience is what separate the expendable labor from the non-expendable staff. Management sucks, I mean having authority is great but having to hire and fire sucks. It's a great deal of responsibility and needs to be taken seriously and to be good you really need to work hard at being empathetic, unemotional, and balancing risk versus reward at the risk of your own career. To not do so just means you are a riding a paycheck and not contributing a whole lot. I made the mistake of going for the job of doing things I enjoy, worked on a lot of really cool incredible projects for well known companies and found myself unemployed over the age of 40 without the ability to get an interview despite my knowledge and experience all because I was a go to guy who got the most complex jobs done but was not a manager. Don't be me. Be humble, tell your superiors you want to work your way up to management and spend time as asupervisor first so you can train in the role as someone who must manage people and deal with HR issues while not being a manager first. Set goals and mnilestones alonga timeline and make sure they are checked off as accomplishments in your reviews. You need to train as someone who has to get your staff to do what you want despite their personalities but not make decisions about the company. Being a manager means both. Once you become numb to taking a chance on employees and learning how to communicate or have crucial converstions (read the book Crucial Conversations) it becomes second nature to make business decisions and not get hung up on the risk. I'd say set a goal of being an entry elevel manager at the age of 35. By 40 tha would make you a skilled intermediate to entry level senior manager that every one repects because you've learned to master the skills.
Hackernews is not your personal political tool/arsenal. Please take this elsewhere.
they do a lot of government contracting, and government contract awards often want you to have population-proportional hiring, to show you aren't racist.
What languages do you know? There are some tutorials aimed at people coming from different languages.

That said, some concepts hit you in the face right away, making the language have an initially steep learning curve, but after that it becomes much easier.
Google didn't intentionally change the world in Angular 2 to make sure that developers were learning new Angular 2 stuff vs. something else. If they wanted to do that, they were too late, because a lot of people had moved to React already.

Angular 2 is so different because they were trying to fix all of the problems with Angular 1. In fact, Angular 2 didn't even settle on how to do that after starting early releases of Angular 2. But, that wasn't some secret conspiracy to get people to use it. If anything, a lot of people that were sold on Angular 1 are slower to migrate, but that's what they get for trying to do things right.
To be fair, this is equally true of HTML.
If US citizens are subject to being brow beaten and humiliated by the TSA on buses and trains in addition to air travel then the terrorist will have succeeded in fundamentally alerting the lives of Americans on a daily basis.
I like to think of those in need of disruption are ones which feel very stagnated or are unsexy, so much that we don't even think of them as such anymore.

The jail system in the USA? ISPs. Automotive. Lighting (like, lightbulbs). Recycling or compost for individual homes; landfill solutions. Replacements for plastics in food packaging. The banking system (it's hard to transfer money between people's accounts, easily, as many use third-party apps to do this). Some of these are so hard to make changes in due to hard lobbying to maintain monopolies, which Google Fiber (building lines) and Tesla (sales through dealers) are experiencing.

I definitely feel governments could use major updating, in making data accessible, automation of their processes (e.g. lawsuits, immigration, etc.), the 911 system, etc. Enabling easier recording/organizing of decisions and processes made by everyone. It all feels so closed to me. Take for example open data from NYC to find where the most parking citations are handed out[1] (and then submitting requests to rectify the situation). I'd love to help in an effort like this because I think it would be very valuable for the people.

[1] https://www.ted.com/talks/ben_wellington_how_we_found_the_wo...
Visdown – Markdown for Visualisation
Who left all this fire everywhere?
this is outside my field of expertise. Can you give an example of a tail call that needs "trickery"?

I'm not 100% on this, but when you have a tail call I don't think you have to remember the state of the stack frame. "function prologue, epilogue, and the maintenance of the various pointers" aren't god given rules - they're things dictated by something like the C ABI so you can resume the caller. So if you're thinking in terms of C ABI then yes, it's a compiler optimization, but in principle I think it's a zero cost abstraction (though I'd argue that the iterative loop is the actual abstraction)

In tail call recursion you're ensured the caller will never resume!

When you enter a tail-recursive function you save (as you normally would) a return pointer for the program counter and allocate registers/memory for your function arguments. At the end of the function you've done all the computation that that frame will ever do, so you are free to overwrite the argument variables when calling the next iteration/recursive-step. The return pointer doesn't need to be touched at all. Where is the complexity you're talking about?
Generally I trust my U2F that has a simple button on it to not reveal it's private key much more so than a hugely complicated smartphone.

Especially the button, which makes it very hard for a remote attacker to get anything from the U2F token.

How many apps are on your phone? How secure is the software stack? Kernel? Hardware? Drivers? If android, how good is your manufacturer + cell provider at distributing the latest updates? Can you prove that an app can't see the screen and send a touch event?

Also generally it's faster to hit the single button on a U2F widget than it is to do anything with a smartphone.
You had a lot of bad things happen with React Native. But do these bad experiences apply to Exponent also?
This would make an awesome gift. I've been planning on doing exactly this with my girlfriend's conversation for quite some time now, but just haven't been able to get to it.

Also, my chat history is so large, it craps out while exporting the chat. I'll try to see if I can do something about it.

Thanks for sharing!
You're welcome! Thanks for posting some new ideas.
A whole lot of people tell you to avoid NYC because it's "dangerous."
Ask HN: What do you use for remote access?
Have you ever had to access a device or VM behind NAT and what would you use to do it? Say a raspberry pi running a web server. Would you use port forwarding or something else?
loop/recur is good for replacing structured loops but tail recursion is more general, since it can replace arbitrary gotos.

One example is given by Guy Steele in "Why Object-Oriented Languages need Tail Calls". Basically, tail recursion lets you keep O(1) stack space even in the face of opaque method dispatching in OO code. https://eighty-twenty.org/2011/10/01/oo-tail-calls

Another required reading are the "Lambda the Ultimate" papers, if you haven't read them yet. The "GOTO" one is particularly relevant here. http://library.readscheme.org/page1.html
5GHz performance is vastly better in urban areas. There are 26 networks visible from my apartment (in a small 2-story apartment building), and the 2.4GHz WiFi spectrum effectively has only 3 channels (due to substantial overlap, only channels 1, 6, and 11 are normally used). So you're sharing a lot of bandwidth with your neighbors. 5GHz has much better spacing (so less interference) and more total bandwidth.
The same complaint is the basis of sexism in the tech industry

No it's not. It's in fact the opposite. Sexism is systemic to the point where you're lucky to have 5% of your applicants be female.
Reverse engineering FPGAs
I am also a software engineer (in part) and I basically agree with everything you say, except, I don't really feel like I'm missing out.

I have a huge amount of respect for the people doing this, and it does look like great fun for them to do it and I do enjoy reading about them doing it but the idea of hooking up hundreds of logic probes and analyzing code on a logic analyzer sounds like something that is, personally, a nightmare. But, this is coming from a guy who hasn't picked up a soldering iron without burning himself on it.

That said, the EE class I took in college was by far my favorite (and the only one I regularly attended -- before I left), but I was always more entranced by the theoretical than the practical side of it.
Not sure about pipe fitting, but for welding, say, or framing? There are definitely 10X welders. So your "trending to zero" point resonates with me (being a shitty welder).
I could see an application for this in the field of disaster risk management. After a hurricane for example, WhatsApp channels are becoming used to coordinate response and recovery efforts between multiple different organizations. There is a need for a tool that can extract all the information that gets shared into a report that can be used for analysis of the big picture.
How to Title Case a String in JavaScript #Algorithm
some have a similar hiring experience to what Palantir did

... which is completely irrelevant to whether Palantir is on the right side of this issue.

If a police department was reported as displaying bias against blacks or muslims, would it be reasonable to respond with "I've had issues with blacks and muslims in law enforcement too"?

Now consider the fact that Palantir does a lot of work for intelligence agencies...