I am the maintainer of a library to simulate keyboard and mouse input. I didn't start the project but took over the maintenance and have since rewritten pretty much all of the code. I recently found out that Anthropic is shipping it in Claude Desktop for some unreleased feature which is probably like "Computer Use". I noticed they had an open position in exactly the team responsible for the implementation and applied. A few months later I received a rejection. The letter said that the team doesn't have the time to review any more candidates. The code is under MIT so everything is perfectly fine. It is great that a company like Anthropic is using my code, but it would have been nice to benefit from it. I wrote a slightly longer blog post about the topic here:
I’d strongly recommend trying again and reaching out to the friend of a friend who informed you of the role and asking for a more direct intro to the hiring manager. Unfortunately, it’s really really easy to slip through the cracks as a resume, and one feels no remorse rejecting a pdf file. Even without the warm contact, some way of directly reaching the hiring manager (notably: not the recruiters!) would mean that “I wrote that library!@ becomes front-and-center, not buried as a line item. I’ve seen so much more success with myself and the people I know in cold or warm outreach than through job application portals. In fact, I’ve yet to get a callback from a single job I’ve ever applied to online!
As an aside, does anyone know why the AI labs have such bad recruiters? I successfully got a job at one and am currently working there, but I still have many many complaints about the process.
Anthropic has a tough alignment interview. Like I aced the coding screener but got rejected after a chat about values. I think they want intense people on the value/safety side as well as the chops.
You need to be insanely dedicated to burning rainforests and boiling oceans so that people can have AI write emails that other people will use AI to summarise and never even read the summary.
What does Blockchain have to do with the energy usage of Microsoft's computing centres?
Are you trying to downplay the compute required to train and run inference on these large language models by stringing together some contrived comparison to the now 'uncool' Blockchain technology? That would be absurd.
Probably alignment with mission. The siblings write a lot about it so read all that. I prepped but I missed the mark. I suspect because of doing too ordinary work so I didn't have examples that would make them think "damm this person gets us".
Some one who reads the company website and has the communication skills to be able to convincingly regurgitate the company stances on issues. Come on guys, this isn’t some FBI lie detector test, they are going to ask you the same exact question people BS on in every interview to top companies, medical schools, etc.
Don’t be naive, these companies don’t care about talent they care about prestige and credentials. <username>@standford will always beat “did actual work relevant to the project”.
Just look at the background of some of the names in this at these places. As always it’s “who you know and where you’ve been” not “what you know and what you’ve built”
edit: You can downvote if you like, but it doesn’t change the fact that high stakes tech has never been a meritocracy and AI companies are no different.
I mean, there are three serious top level AI companies, and the only thing they're competing on right now is the quality of their frontier models. Or arguably their ability to raise cash, in an extremely "buzzy" market....
There's definitely more than 3 companies competing for AI talent and you know that very well.
Nvidia, Apple, Google, OpenAI, Anthropic, xAI, Tesla, Microsoft, Mistral and dozens and dozens of well funded AI startups are just among those with more resources.
Apple Tesla and Microsoft arguably really don't count. Microsoft is selling shovels. Tesla is, well, Tesla. Apple is not competing on frontier models, far as i can tell
As it stands right now, if the code was under a GPL license, nothing stops them paying the author to get it under another license.[1]
Sure, they could offer a job as payment for said license, or just pay cash.
This approach would be "necessary" (for some definition of necessary) for GPL code, but isn't necessary for MIT code.
[1] this assumes there's 1 (or nearly 1) copyright owner. If there are multiple contributors, and no CUA in place, this approach is generally not possible.
Personally, and different people have strong feelings on this both ways, with GPL code I'd get contributors to sign a CUA. It keeps the door open for commercial opportunities like this, especially if the code is "mostly yours".
I guess with a benign modification it does work: it’s just dual licensed (a)gpl and commercial license, the latter available when offered a job. The former always available but of course they’d have to release their entire stack’s source, which Anthropic almost certainly wouldn’t want to do. That’s not OP’s fault though and the license stands as pure (a)gpl.
It would be very, very hard to make this work in practice.
What does it mean to offer a job? Can they offer a job that pays a dollar a year and call it a day? Or can you force them to offer you a job that pays a billion dollars a year?
Can they offer you a job, but only in Antarctica? What about visa sponsorship?
Of course, you can write whatever ill conceived terms you want in your license. But if your license is badly written, any decent company lawyer would strongly advice staying away from your code. And if that's the outcome you want: you might as well open source it with a 'non-commercial use only' license.
> That actually doesn't sound so bad. (Designing the job requirements!)
Well, it's similar to having a license that allows the author to decide on the price of the product after the other side has decided to buy it. There just won't be any buyers.
> Hah. Well it is now...just copy & paste the GPL's text and append that one condition.
Section 7 of the GPL (version 3) explicitly gives the user the right to remove that additional condition. So if you want it to be effective, you will at the least need to remove section 7 from your copied GPL. Then, you'll need to remove the preamble and instructions to avoid the Free Software Foundation's ire (they're being generous in allowing you to modify the license test at all).
Ultimately, it goes against the spirit of the GPL so much (and against the point of FOSS in general) that it would be entirely unjustifiable to use the GPL as the foundation for such a proprietary, source-available licence.
The FSF holds the copyright to the text of the GPL, and they allow anyone to freely redistribute verbatim copies, but they don't permit just anyone to create derivatives.
It is probably a bit late for that, as the company could simply use an earlier release, that was still under MIT license and develop it from there. They would have to maintain it of course, but if they are truly unwilling to hire, they might just do that. Nevertheless it would be a good move to move to a copyleft libre license.
Interesting, considering that Anthropic spends a lot of resourced to build ethics checks into their AI. I wonder if this hiring process was ever put through its own ethics check.
When you apply, you have to confirm that you did not generate the application with AI. As soon as you send of the application, you get an automatic email confirming your application. They also say they don't reach out, if you are not a good match and that they only contact the people they want to hire. Maybe they changed their mind on that policy, because I received a rejection letter a few months later. It was very well written. The people I showed it to said it is one of the nicest rejection letters they have seen.
There's no ethical principle which requires them to hire somebody if they use OSS from that person. Maybe they missed out on a good hire, c'est la vie.
Keep in mind that they probably use it or at least discovered it explicitly because it's open source. So either you don't release it and they use something else, or you release it and they use it. Option 2 sounds like giving you more exposure and more opportunities in the long run.
Sure, it would be hard to monetize and while it took countless hours to iron out many of its bugs, it is definitely not rocket science. I contribute to open source software expecting nothing in return because all software I use is also open source. It's my way of giving back and I love the knowledge that it is useful to people and hearing about their projects. So far I did not have any benefits from it but continue doing it anyways. It makes me happy to see more and more people using it.
I don’t really know what you’re talking about or how it’s relevant (I know you’re referring to an incident that happened outside of HN).
The guidelines clearly ask us to “be kind” and to not “fulminate”. Your comment was flagged by several community members so there’s a pretty strong consensus that it’s not what we want on HN.
That's...wow. What an absolutely disappointing reply.
If "be kind" is an actual value of HN I have yet to see it in almost 15 years of being active on this forum. This community is generally speaking not kind and fulminating is de rigeur as far as I've been able to surmise.
But whatever. I won't bother you or anyone else on here anymore. Good riddance.
You’re disappointed to discover after 15 years that we expect people to try to be kind and to avoid fulmination? I’m not sure what kind of forum you want this to be, but the guidelines have been pretty consistent about those things for much or all of that time, as has the approach to moderation. Yes people breach the guidelines all the time. That doesn’t stop us reminding people of them and continuing to aim for better. You’re always welcome here if you respect the community and want to make the effort to respect the guidelines.
(So far as I can tell I have never said the words "die slow" in my life. I think you have me confused with someone else; my hip hop conversance begins and ends with Tribe and De La Soul. It's "Thomas", by the way.)
I'm not advocating in doing it for the exposure as a primary reason. And absolutely not to be paid in exposure. 100% agree with the comic there.
I should not have used that word. It is clearly charged with negativity.
Of course I wish everyone would be compensated for their work. I feel that for some types of project, publishing as open source is a great way for people to find and use it. This can give new opportunities.
Exactly which kind of project and under which conditions is up to debate.
I have worked on a few projects that I regret not being able to open source. Mainly not my choice, stakeholders wanted traditional go to market strategies and failed/ran out of money trying to make sales. I can't help but thinking what other opportunities could have arisen have we chose another strategy.
How curious! So am I, and that is the project that I am the closest to regretting open sourcing.
I made the mistake of also implementing keyboard and mouse monitoring---you know, so I could write automated tests for the input parts!---and over the years it has turned into an endless source of feature requests, bug reports and also general questions about the Python programming language and its ecosystem.
Input events truly are horrible to provide a platform independent abstraction over, but in the end seeing people use it, make YouTube tutorials and discuss it on Stack Overflow make it worth the time spent.
You should have licensed it under AGPL; Anthropic then would have reached you to negotiate a commercial license or contribute back to the project, since AGPL forces server-side code disclosures when deployed. Without that, they can legally use, modify, and profit from it without sharing improvements or compensating you
OP mentioned he took over an existing project. He would then have to track all the people who contributed in order to be able to relicense to AGPL. Even then, Anthropic would probably then write their own.
[A]GPL is like kryptonite to corporations. Very few will take the risk of having to open their own code if someone made a mistake in isolating the GPLed code properly, so most ban the use of GPL for their products and services.
Anthropic would have found a different library or rolled their own, rather than taking that risk. If the library was fundamental, maybe they'd go for a commercial license, but that's usually an option of last resort.
what's to stop them from <prompt>Recreate this library so that I can use it in my project without fear of copyright violation.</prompt> in their very own claude code?
For small enough codebases, that seems like an inevitable reality, eventually.
If you have nearly limitless compute to throw at an issue and a good enough model, then it should be able to create enough test cases to cover most aspects of the codebase (iterating thousands of times until it gets it right) and then eventually write a new implementation in a new language or a slightly different tech stack that passes all of the original tests, alongside a few more hundreds of iterations of refactoring.
I give it a decade until large orgs are doing that to avoid licensing restrictions and other liabilities.
It might even be a boon for security that many organizations have independent implementations of core code projects, even possibly the OS. In such a hypothetical world, security issues that are implementation dependent would not affect such large swaths of the installed software.
If you feed it the library to recreate then this seems like it would necessarily be a derivative work and thus copyright infringement. Proving that they did it may be a challenge...
> Through a friend of a friend, I found out that Anthropic had an open position in the team implementing the secret, unreleased feature of Claude Desktop using enigo. I wrote a cover letter and sent out my application. An automatic reply informed me that they might take some time to respond and that they only notify applicants if they made it to the next round. After a few weeks without an answer, I had assumed they chose other applicants.
Wait, so, if it was a friend-of-a-friend situation, why did you not try to get a referral?
I've stopped applying to the big companies long time ago precisely because I'd never hear back regardless of the match or the credentials (the only exception has been JaneStreet — they contacted me almost right away after a cold application), yet going the referral route, it's relatively easy to get an interview almost anywhere.
I’m unsure if you’re being serious or making a joke. If you depend on something, it is in your best interest to have it continue and remain in good shape. What better way to ensure that then to pay the salary of the creator and world’s utmost expert on the thing? As a bonus, it ensures your specific needs about the thing are addressed in a timely manner.
Making something open source has no bearing on your future employment. Certainly, it is great to have something on the resume that is used internally, but to have an _expectation_ that someone would hire you for that reason, is beyond my imagination.
It’s weirder because it doesn’t even seem like he initially wrote it, just took over a abandoned project, changed some code, and think he deserves a job because of it.
https://grell.dev/blog/ai_rejection