MurphyA/hacker-news huggingface dataset:
by AnotherGoodName | 2025-04-14 15:15:49+00:00
When you start from a black screen (eg. a monitor) your primary colors that can form all others are literally red, green and blue. Those are the subpixels that every monitor must have as a minimum. These colors will add to white and mixtures of them can make every color humans can perceive (provided your rgb are at the maximum extremes of each color, otherwise your color triangle is slightly smaller than what rgb can actually do). This is called additive color mixing. Start from black and add color.

When you mix paints your are subtracting from white. The primary colors are 45degrees around the color wheel, namely cyan, magenta, yellow. From those you can make alm other colors by subtracting various amounts of the above three colors from white.

Btw do you know what color model matches your eyes the most? It’s additive color mixing. Your eyes literally start by seeing black and as your eyes let in light the cones and rods that are focused around detecting red, green and blue are triggered in various amounts and you see color that way. You don't see color the same way color is formed from mixing paints. You don’t see cyan, magenta, yellow at all. You see in RGB.

So your painting example is really flawed. Subtractive color models are inly useful for paints.
by seanw265 | 2025-04-14 15:15:59+00:00
I used to maintain inventory software used across dozens of cannabis retail locations, where every product had to be tracked “from seed to sale” to comply with strict state regulations. Every item had a barcode. Every movement had to be logged. And any discrepancy--no matter how small--had to be resolved in a fully auditable way.

Discrepancies still happened, of course. What surprised me was how wildly the rate and nature of those discrepancies varied between stores. The software was the same. The rules were the same. But in some locations, things ran smoothly. In others, inventory was a constant source of stress.

Eventually, it became clear that the difference had nothing to do with the software and everything to do with how organized the store was: their processes, their attention to detail, and the quality of their management.

The hardest problems in inventory aren’t technical, they’re human.
by jacobr1 | 2025-04-14 15:16:07+00:00
The bigger issue is that we need a good why to authenticate more dynamically. In the context of a desktop app (desktop claude, claude code) where you are running an application locally, for your own purposes it can run as your own user.

But when you are running things in any kind of multi-user/multi-tenant scenario, this is much harder and the protocol doesn't really address this (though also doesn't prevent us from layering something on top). As a dumb (but real) example, I don't want a web-enabled version of of an MCP plugin to have access to my company's google drive and expose that to all our chat users. That would bypass the RBAC we have. Also I don't want to bake that in at the level of the tool calls, as that can be injected. I need some side channel information on the session to have the client and server to manage that.
by armitron | 2025-04-14 15:16:19+00:00
I think the more salient observation is that the author is completely detached from reality. Him writing:

"shoulder to shoulder with incredible engineers, planning ways to make web developers life's easier while raising the quality level of the web."

when Google is primarily responsible for flooding us with ad capitalism and ruining the web, portrays not only a profound ignorance of how corporations work, but a total dissociation from the -very damaging- effects of his work-seen-holistically on the real world. You don't get a free pass working for Google just because you can rationalize your particular niche as "educating users" and "raising the quality level of the web".

Towards the end, it seems to dawn on him that yeah, he "was just a fuckin cog in a mega corp". Let's hope he carries that understanding forward and distills it into a moral and ethical framework that can make the world better.
by TZubiri | 2025-04-14 15:16:21+00:00
I personally don't find metaphorical explanations helpful, especially considering this is not the only time I have heard or will be hearing about relativity, so if I get another explanation I will have to either map the concept of balls to whatever metaphor another teacher uses, which is just more work. I'm fine with using generic words like 'information', which I can map more naturally to other explanation wordings like 'signal'.

The same applies for explanations of bitcoin, or Machine Learning, or stock markets, just use the proper wording, difficulty, weights, secondary market. Metaphors are not teaching.
by 0xbadcafebee | 2025-04-14 15:16:46+00:00
Hmm, there's supposed to be a Tasks [reminders] feature in ChatGPT, but it's in beta (I don't have access to it). Whenever it gets released, you could make some kind of "router" that connects to different communication methods and connect that up to ChatGPT statefully, and you could just "speak"/type to ChatGPT from anywhere, and it would send you reminders. No need for all the extra logic, cron jobs, or SQLite table (ChatGPT has memory across chats).
by martinbaun | 2025-04-14 15:16:49+00:00
Unpopular opinion here... If you tread carefully you'll most likely not succeed. I am not American and I know you guys like to sue eachother for putting cats in microwaves and stuff so maybe this is not great opinion to have in America at the current moment.

I would go for it and put a disclaimer, or I would just incorporate in a country where there's no issues with these things.

all this is hard of course to provide good value, but worthwhile.

Twitters' cost is insane right now, I had quite a few ideas for twitter integrations but they would easily cost thousands per month just to access their API.

I looked into https://github.com/d60/twikit - might not be suitable but you can definitely play around with it. Just don't use your official account as I got shadow banned using it unfortunately.
by altushiring | 2025-04-14 15:17:28+00:00
Acuity Insights | https://acuityinsights.com/careers | Canada | Full Time | Remote (EST ±4) | $135,000 to $175,000 CAD |

Join Acuity Insights’ startup-to-scaleup journey as a Senior Software Developer. In this fully remote role, working within EST and PST time zones from anywhere in Canada, you’ll be part of a team modernizing our assessment platform, Casper. You’ll build new systems, maintain existing systems, lead design, and mentor developers.

Our core assessment product, Casper, provides education programs with a more holistic view of applicants by evaluating their soft skills. Incorporating Casper's insights into the admissions process results in a larger applicant pool, enables student success, and graduates better professionals. Since 2014, Casper has been adopted by over 600 higher education programs, and more than 1 million applicants have registered to take the test.

The systems you’ll work in are mostly JavaScript and TypeScript, though we have some new code in Go. Older apps are Meteor-based monoliths that run on Heroku and store data in MongoDB. Newer apps are React UIs that call well-defined APIs running on AWS API Gateway and Lambda and use DynamoDB.

The role is ideal for a quality-focused full-stack developer with strong technical proficiency who is looking to advance their career with a people-centric company that prioritizes work-life balance, invests in continuous growth, and builds products with meaningful social impact.

Software Developer (Senior) - https://apply.workable.com/acuity-insights/j/5D8EBBAECF/

Perks:

- Competitive salary within Canada

- Remote first company

- Health benefits program

- GRSP Matching

- Flexible vacation policy

If you want to know more about our team culture or have questions about these roles feel free to email me at gguja [at] acuityinsights.com or apply directly.

Check out the job ad for further details on the company and interview steps.
by scarface_74 | 2025-04-14 15:17:39+00:00
During the first “bust” in 2000 I had four years of experience and living and working in Atlanta - far away from a tech hub. Boring old enterprise dev jobs at banks, insurance companies, etc weren’t affected and I was easily able to get offers.

I worked at a company where utility companies sent us data files and we created, printed and mailed bills.

In 2008 during the financial crisis the next time I looked for a job (my third), I had two offers relatively quickly - one programming point of sales systems and the other that I accepted programming ruggedized Windows CE devices for field service workers.

Fast forward to 2020 at the height of COVID, I got my one and only BigTech job working at AWS (my 8th job).

Unlike the author of the submitted article, when I got Amazoned 3.5 years later, I shrugged, my $40K severance was deposited in my account and I reached out to my network and targeted outreach to some recruiters in my niche and had four interviews and 3 offers within 3 weeks. Why would I waste time getting emotional about a company knowing that the CEO is 6-7 positions up on the career ladder and I’m just a random number to most of the organization?

A year later in 2024 around 9:00 PM I had a “1-1” with my manager invite for the next morning. I already had my suspicions and told my wife that I am probably going to be laid off in the morning. She said let her know how it goes and we went to sleep.

I woke up the next morning, was notified about my layoff asked when I would get my severance and responded to a recruiter that reached out to me about a week prior.

I started the interview process and three weeks later I had a job making the same as I was making at AWS.

I don’t need to “justify” what I’m making. I have a skillset and experience that are in demand and companies are willing to pay me for it because by employing me they get a positive ROI.
by bflesch | 2025-04-14 15:17:54+00:00
IMO industrial policy is the way to mitigate risks of war or extortion vis-a-vis a specific trading partner. Only once this safety criteria is fulfilled, politicians can think about tackling other issues with industrial policy - and unfortunately these further initiatives often fail or have unintended second-order effects (e.g. we want Intel chip factory in Germany).

My understanding is that due to human nature wars mostly start due to religious or extremist views of individuals leading a nation. Such a risk of your trade partner invading you because they don't like your skin color can be hardly formalized in an economic theory (maybe there exists one already, idk).

So role of industrial policy would be to ensure that a certain balance is kept with regards to creating dependencies to other nations, which could be abused in case of war.

Famous negative examples of failed industrial policy for Germany would be the dependence on gas mostly from russia and the dependence on oil mostly from middle east.

Another example would be the agricultural subsidies to ensure all citizens can be fed even when other nations would not export any food. A current example in Germany would be the production of "German steel" using fossil energy instead of production of CO2-neutral swedish steel. As Germany is part of EU, this is a conflicting view: We can't on one side ask for more trade and integration of supply chains between democratic EU countries, but on the other side assume that Sweden will deny steel exports to us when we'd need it.

Producing steel in Germany with fossil energy instead of doing it in Sweden with hydroelectric power is both more expensive and has more negative externalities (CO2 emissions due to use of fossil fuels). Therefore such industrial policy reduces welfare that would otherwise be available for German people.
by BlackFly | 2025-04-14 15:18:02+00:00
You'll need a stronger defense than that in court because courts absolutely create and deal in gray areas where technical fine lines exist.

What you need to argue is that the the smart contracts were valid contracts that the creators intended to and had opportunity to understand and that their creation was their act of negotiation of a position. It isn't really a stretch, but with amounts like this probably more diligence would have been due than that. Calling it theft is ridiculous on the other hand.
by Aurornis | 2025-04-14 15:18:42+00:00
> I’ve been seeing more of this classist rhetoric on HN

It has always been there. It usually gets downvoted away but it takes time. Inflammatory takes like this one are usually more popular when stories are fresh and then get downvoted as the story ages on. My theory is that these shallow, ragebait-ey takes appeal to people who are skimming stories for a chance to rage a bit, but then they get bored and move on to the next thing. It takes a while for people to read the story and come up with good discussion, which gets upvoted later.
by zdragnar | 2025-04-14 15:18:58+00:00
Therapy isn't so much telling you that your feelings are wrong. Feelings arise from many factors that are beyond your immediate control.

Therapy helps provide better context for, introspection into, and understanding of those feelings, and more importantly, alternative ways of responding to, expressing and acting upon them.

At the very least, expressing them less aggressively while still getting across your point.
by ativzzz | 2025-04-14 15:19:06+00:00
Just like you're assuming the OPs feelings are wrong. They are not.

I remember my dad lamenting the bourgeoisie to a family friend who recently immigrated to the US. His answer was, "To us, you are the bourgeoisie"

There's always someone richer than you, you can hate it, but what's the point? You just make yourself miserable and don't enjoy whatever you can carve out of life for yourself
by 6510 | 2025-04-14 15:19:11+00:00
> espousing pro-Palestinian views

The Convention on the Rights of the Child has been signed by everyone and ratified by everyone except the United States who played an active role in the drafting of the convention.

https://en.wikipedia.org/wiki/Convention_on_the_Rights_of_th...

Israel ratified the convention in 1991
by mdaniel | 2025-04-14 15:19:36+00:00
I'm not the person you asked, but it does jam me up that Claude Desktop currently makes you edit a .json file and restart the app to add new MCP servers[1], so that's at least one static thing. I'm sure someone will show up with a github link of awesome-org/mcp-mcp-server

1: https://modelcontextprotocol.info/docs/quickstart/user/#3-re...
by theptip | 2025-04-14 15:20:25+00:00
This is fun! I think this sort of tooling is going to be very fertile ground for hackers over the next few years.

Large swathes of the stack is commoditized OSS plumbing, and hosted inference is already cheap and easy.

There are obvious security issues with plugging an agent into your email and calendar, but I think many will find it preferable to control the whole stack rather than ceding control to Apple or Google.
by psunavy03 | 2025-04-14 15:20:40+00:00
If you speak publicly at all as part of your job, it's actually a good thing to keep track of your verbal/physical tics and try to eliminate/minimize them. Whether it's "umm," "you know," a hand gesture you keep doing, subconsciously swaying back and forth slightly, or whatever. They're all distracting even before you get to the level where people start counting them.
by hnlmorg | 2025-04-14 15:20:51+00:00
You may think I’m being reductive but I think you’re massively overstating things too.

For example:

> People lost the ability to operate as businesses, to manage their tax affairs fairly, to invest in their own skills, and to retain profit.

I don’t know a single IT contractor that lost that ability. Maybe in other business sectors, but we are talking about IT here.

> What they got in return was, at best, a modest day-rate bump—hardly compensation for losing all autonomy, business deductions (like training, equipment, downtime), and legal protections.

This is also an exaggeration.

And you’re overlooking the point that IR35 only affects contractors working on BAU or who have worked with the same company for more than 2 years.

Firstly 2 years is a long time in contractor terms. And secondly, most occasions for hiring contractors was to work on new developments. So most of the IT contractors were still outside of IR35.

That’s not to mention that many companies would describe the work in ways that are favourable to working inside IR35 (not to the extent of tax fraud, but to the extent where any BAU responsibilities that were required weren’t the primary responsibility in the job specification.

Ironically places hardest hit by IR35 were government departments rather than businesses. Some of who ended up just adding ~40% to the contracted salary so the government still ended up covering the tax rather than the contractors.

And the very few contractors who were inside IR35 and didn’t get a bump in the contract fee would tell me they were still better off contracting rather than being employed (even taking loss of perks into account).

Now I’m not going to say that IR35 made things easier for contractors. Clearly it didn’t. But it wouldn’t have been catastrophic for the contract market had the employment bubble not also pop shortly afterwards.

You also seem to suggest that IR35 prevented contractors from claiming expenses back in tax, and that simply isn’t true either.

Edit: I will concede that it’s been 3 years since I was last given a budget and told “go hire, you decide who” so if there’s been any legal changes to IR35 since then I might have missed it.
by chmod775 | 2025-04-14 15:21:00+00:00
> There is only one building in North America, probably in the world, where one can browse bestsellers and children’s books by crossing an international border and then sit for an amateur theatre troupe in a regal opera house with each half of your body in two different countries.

Maybe not quite specifically that, but I expected there to be similar things, given that there's borders all over the place in Europe. Sure enough, in the very first city I checked, I found a library + culture center + music academy right on the border between the Netherlands and Belgium.[1]

That is at least according to the rough border on maps. Generally countries make sure to organize things such that buildings are either in one country, or another, while sharing streets. I expect no building is treated as being in multiple.

[1] https://maps.app.goo.gl/8DFosfEJyrx7kPap9
by motorest | 2025-04-14 15:21:41+00:00
> If there is a deny list, and you have multiple services, you either do need to sync it or have a service fully responsible for this, and this does come with the burden of dealing with consistency guarantees (...)

No. Revocation is typically implemented as a shortcut to token expiration. Token expiration involves a grace period. The goal is to arbitrarily reject a long-lived token before it's expiration.

> (...) like if a service is dealing with very sensitive data.

No. That's why single-user tokens are used.
by o11c | 2025-04-14 15:21:42+00:00
I recommend against global -Werror, instead use -Werror= with each individual option to make it much easier to deal with compiler upgrades that change warnings.

For well-maintained code, -Werror=all is expected, but switching to it is not trivial in a nasty codebase. It's still worth doing, but it's a whole project.

-Werror=extra is also a good idea once your codebase is clean for all of the above, but you will need to learn to write suppressions, and some of those are compiler-specific.

-Werror=format=2 (requires adding attributes) and -Werror=unused (weird version-dependent interactions with other warnings, so better enable it explicitly) are next, then there's a long tail of obscure warning options that should be considered; many are useful but others should be explicitly disregarded (one particular question of interest that stick out: how hard is it to suppress/restore this within a macro).

Past the trivial, Clang's warnings tend to suck (and they often refuse patches even for parity); GCC's are more useful due to the strength of history. It's still worth using Clang just for the fact that it uses different logic for triggering warnings (and also different warnings available; -Weverything is great for discoverability); just be aware that `__has_warning` isn't very useful (what we really need is `__has_warning_that_actually_works_correctly`, which requires hard-coding known-bug-free compiler versions).
by Aurornis | 2025-04-14 15:22:17+00:00
> He did not steal anything. He beat the fund (Indexed Finance) at their own game.

As popular as this idea is online, it doesn’t work that way in the courts.

Intent matters in issues of the law. The “finders keepers” rules don’t apply in legal matters in the real world.

If someone logs into their bank and notices that changing the account number in the URL lets them withdraw from other people’s accounts, no court is going to shrug it off and say that it’s the bank’s fault for not being more secure. Likewise, finding a vulnerability in a smart contract doesn’t automatically give someone the right to any funds they collect from exploiting it.

We all know the “code is law” arguments about smart contracts are just marketing bluster. The lawyers do, too.
by palmotea | 2025-04-14 15:22:20+00:00
> Who are "they"?

"doctors/media/government (collectively)"

> Do you have quotes to back this up?

I was there, I don't have time to dig up quotes for you. But if quotes will satisfy you, they shouldn't be too hard to fine yourself.

> Because if we're considering the cause of vaccine hesitancy during COVID-19, every component was dwarfed by the full force of conservatives media, politicians and social media influencers lying about the vaccines.

My point is by that time the public health apparatus had already dropped the ball on vaccines.

Also, your precis reads as a convenient partisan narrative, with others taking all the blame. Nothing is really that simple. IMHO, it's far more helpful to think about how your side messed up, rather than dwelling on the other side.
by jaxtracks | 2025-04-14 15:22:27+00:00
One theme that pops out to me here is the reliance on other people being a positive experience for the author. In the software field, we tend to live pretty high up the economic value chain, which can abstract us a bit from participation in the more grassroots co-operative aspect of society. This can be alienating and warp worldview.

When I'm hitchhiking to support packrafting trips or get back to where I launched my paraglider, I have no say in who I'm going to be chatting with and feeling gratitude towards. Initially that feeling of being reliant on whoever comes my way was difficult to adjust to after the false sense of individualism that a high paying job in a bubble of similar people brings.

The benefit though is enormous. Now I stop to help anyone who's broken down on the side of the road despite the flash judgements their car or bumper stickers might bring. I'm much more aware of the value and interconnectedness of our society, and feel inspired to actively seek to contribute instead of remaining aloof. Most importantly, I realize that there's a whole lot of people out there looking to help people out at any turn, and that gives me a lot of faith.
by ramesh31 | 2025-04-14 15:22:46+00:00
>ChatGPT is now the 7th highest ranking website on the planet - does anyone outside the HN crowd know about Google AI Studio?

This isn't about consumer facing chatbots anymore. Industry adoption is what matters. And GCP is a far far easier sell than Anthropic or OpenAI. If they both can't respond in a significant way (capability or price) very shortly, 2.5 is going to start eating their lunch.