MurphyA/hacker-news huggingface dataset:
Show HN: I made a posting tool with AI captions, post previews, and Canva import
by hasancagli | 2025-05-22 13:00:52+00:00
I got tired of spending 30+ minutes just to publish one post across platforms.

Writing separate captions. Downloading Canva designs. Switching tabs to check previews. Uploading everything manually — every single time.

So I built a tool to fix that.

It lets you: - Connect IG, TikTok, X, YouTube, Facebook, and LinkedIn - Pull designs directly from Canva (or upload media manually) - Auto-generate platform-specific captions using AI (based on your brand voice and uploaded media) - Preview how each post will look on each platform - Schedule or publish everything in one go

The AI captions were the biggest time-saver for me. I’m using OpenAI under the hood, but with custom prompts that factor in your brand tone, audience, and visual context. It also helps pick out the most relevant hashtags automatically.

Tech stack: - Next.js + Tailwind - Node.js + Prisma + PostgreSQL - OpenAI API - Canva & social platform APIs - AWS for hosting and media

Not trying to replace the big, bloated tools — just wanted something clean and simple that works for solo builders and creators.

Would love any feedback, especially around UX or weird edge cases I might’ve missed.
by dspillett | 2025-05-22 13:01:38+00:00
"As little as" is doing a lot of work there. £1..£5 will be a special special price, maybe there will be one in that price range per flight to justify the claim.

Also, that will just be the seat price not the whole ticket price. Try booking anything on their cheapest rates and when you get to the screen where you pick seat preferences you'll find there will never be any that are free (cheaper seats are included in the ticket price for higher priced tickets that include some luggage allowance, and on that screen you can opt to pay extra to get on/off faster or have a few mm more leg room).¹

I wouldn't be surprised if the standing "seats" don't get even the minimum carry-on bag allowance of current seats, and there is an extra charge of you want that back.

Furthermore, on top of that each of those extra passengers is an opportunity to levy any number of other extra optional charges (that might not be all that optional for many passengers).

--------

[1] last time I looked at flights with them this seat price disparity took away a fair chunk of the price difference between the lowest rate and the next up, and if you wanted any luggage the cheaper flights were more expensive in total.
by reaperducer | 2025-05-22 13:02:20+00:00
I was also here for Infocom! Will the knowledge of the old classics die with us?

For all of our modern-day high-powered GPU babble, the Infocom games still have the best graphics possible.

I recently started playing Zork I again on a C-64 emulator, and it really holds up.

The key is to play like you would in the old days: No distractions. Be patient and thoughtful. And actually read everything on the screen, instead of skimming the text.

Since we're now trained to have the attention spans of methed-out ferrets, it can be hard. My tips are to turn the phone completely off, put it in another room, and turn down the lights. Also, do you map by hand on grid paper with a pencil.

Lately, I've seen people bragging about video games providing value because they take 40 or 50 hours to complete. An Infocom game could easily take days, weeks, or months to really explore and appreciate thoroughly.
by alistairSH | 2025-05-22 13:03:14+00:00
This is what I see as well.

"I ran into X, tried Y and Z, then asked Bob, Bob wasn't sure, anybody else have ideas?"

Or

"We discovered a dependency on Team Z to complete Q, Mr Bossman, can you talk to their manager, as the engineers weren't sure what to do?"

And yes, both of those could be handled in Slack. But, as a manager at a medium/large company, the amount of Slack messages I get daily is MASSIVE (both direct and in channels), so a face-to-face has some value in getting the issue front-and-center (and not lost in a pile of clutter).

Yes, in a perfect world, there isn't all the clutter in Slack. But, in 25 years in industry, that's rarely true.
Ask HN: Java why put string in a constant?
by ramsicandra | 2025-05-22 13:03:31+00:00
I'm relatively new to Java. I often notice a pattern where there is a list of constant which value are equal to the name.

class Constant { public static final String ALBUM = "album"; public static final String NAME = "_name"; public static final String DISPLAY_NAME = "display-name"; public static final String SERVICE_NAME_METRIC_NAME_PREFIX = "service_name.metric_name"; }

Here is a public example of this practice I could find: https://developer.android.com/reference/android/provider/MediaStore.MediaColumns

I could understand that this might help in 2 ways refactoring and typo. This reduces chance of typo because you'll get compile error instead of run-time error if you typo a constant. This might also help in refactoring if you ever wants to change the value. but if may use this android public API example, I don't think it's wise to change a field name ever. If it's decommissioned, it's good to keep it so we don't re-use the field. If it's a new better field available, I think it should have a different name. I maybe making a straw man argument here. Let me know. If it's an internal API where such refactoring might make sense -- I still kind of think internal API should also be backward compatible, replacing a string are not a complicated operation in my opinion.

I see that this practice has a cost. One being that in every class that use this API. You need to add an import. It's also often the const is only used once from my experience.

import static com.example.MediaFields.NAME; import static com.example.MediaFields.DISPLAY_NAME; String value = json.getString(NAME); String value2 = json.getString(DISPLAY_NAME);

vs

String value = json.getString("name"); String value2 = json.getString("display_name");

You write 1 line for declaration plus 2 lines for each class using this API. This is not a big deal in terms of LoC and I'm not an LoC police. However, my sense is the cost outweigh the benefit.

What do you think?
by diggan | 2025-05-22 13:03:35+00:00
For others who are more curious about Sid Meier's life in game design and development, the appropriately titled "Sid Meir's Memoir" (https://sidmeiersmemoir.com/) was an OK read that goes through everything from the founding of MicroProse, selling it to Atari, to founding Firaxis and a lot in-between.
by spwa4 | 2025-05-22 13:03:37+00:00
Tesla was having very serious difficulty long before the election. For Musk the choice was probably to join the democrats, and get the tiniest amount of power, or help Trump and be the unofficial vice president.

And as everyone was saying last year "Trump can't be THAT bad", you know, before the stock market dropped 3.66 trillion dollars.
by reaperducer | 2025-05-22 13:03:41+00:00
For interactive fiction at least there are still people interested in it, and people are preserving Infocom history in particular. Other games might get forgotten over time unfortunately, especially on more obscure systems.

Since Infocom games run on everything from a Palm Pilot to a mainframe, there's no reason for them to ever go away, as long as we can find people still interested in building Z-Machines for the latest gear.
by jfengel | 2025-05-22 13:04:04+00:00
A lot of tourism is just feeling a place. You can often get better views of a place in photographs than in real life. And yet the presence feels as if it adds something.

I remember being literally stopped in my tracks by the Rosetta Stone. (It was closing and they were shooing us out.) There's nothing there that I haven't seen far more clearly (and it's not as if I can read any of its three languages), and yet somehow it felt Important.

Irrational, but real.
by rmccue | 2025-05-22 13:04:21+00:00
The library I was maintaining (SimplePie) was an RSS feed parser which supported every flavour of the RSS/Atom specs. Because of the history of those particular formats, there were a huge number of compatibility hacks necessary to parse real-world data, and cases where the "spec" (actually just a vague page on a website) was inaccurate compared to actual usage.

This was a while ago (10+ years), but my recollection is that someone presumably had reported that parts of the library didn't conform to the spec, and Debian patched those. This broke parsing actual feeds, and caused weeks of debugging issues that couldn't be replicated. Had they reported upstream in the first instance, I could have investigated, but there was no opportunity to do so.
by mehulashah | 2025-05-22 13:04:59+00:00
For those of you from the AI world, this is the equivalent of the bitter lesson and DeWitts argument about database machines from the early 80s. That is, if you wait a bit with the exponential pace of Moores law (or modern equivalents), improvements in “general purpose” hardware will obviate DB specific improvements. The problem is that back in 2012, we had customers that wanted to query terabytes of logs for observability, or analyze adtech streams, etc. So, I feel like this is a pointless argument. If your data fit on an old MacBook Pro, sure you should’ve built for that.
Ask HN: Anyone Dealt with Non-Technical AI Consultants?
by ednite | 2025-05-22 13:05:07+00:00
I was recently invited by a client to join an interview with a prospective "AI solutions provider". The consultant had no background in data analytics or engineering, with only some experience with 365 Copilot and a long corporate history of creating employee performance metrics reports (not associated with AI).

What surprised me wasn’t the lack of technical depth, but how impressed the decision-makers were with a jargon-filled PowerPoint. He was confidently pitching solutions for everything from automation to predictive modeling.

Has anyone else run into situations like this? Non-technical “AI experts” selling big promises to leadership teams? Did it actually lead to value or just expensive slideware?
by dj3l4l | 2025-05-22 13:05:28+00:00
The problem stated in the article is that the unitless quantity of 1 Bel is effectively applied only to power ratios. It is of course true that one can transfer a scaling of powers into the base of the logarithm when we are trying to figure out what effective scaling of voltages corresponds to 1 Bel of power scaling, but it is ultimately more meaningful to state that a Bel is "only a scaling of power", which is a statement about the units of the two variables in the logarithm (but ultimately, once we know the denominator that belongs to the definition, the numerator is also known, so we only need to know the reference denominator).

In Bayesian probability theory, there is a quantity known as the "evidence". It is defined as e(D|H) = 10 * log_10 (O(D|H)), where O(D|H) is the odds of some data, D, given the hypothesis, H.

The odds are the ratio of the probability of the data given that the hypothesis H is true, over the probability of the data given that the hypothesis is false, or: O(D|H) = P(D|H)/P(D|NOT(H)).

Taking the logarithm of the odds allows us to add up terms instead of multiplying the probability ratios when we are dividing D into subsets; so we can construct systems that reason through additive increases or decreases in evidence, as new data "arrives" in some sequence.

The advantage of representing the evidence in dB is that we often deal with changes to odds that are difficult to represent in decimal, such as the difference between 1000:1 (probability of 0.999, or an evidence of 30dB) and 10000:1 (probability of 0.9999, or evidence of 40dB).

This use of evidence has been around at least since the 60s. For example, you can find it in Chapter 4 of "Probability Theory - The Logic of Science" by E.T. Jaynes.
by ednite | 2025-05-22 13:05:39+00:00
Just to clarify, I’m not disparaging the value of business context or domain expertise. But I’m genuinely curious how companies are evaluating AI talent, especially when there’s little to no technical foundation.

Have any of you seen these types of hires deliver results? Or do they end up outsourcing everything and adding a layer of abstraction and confusion that slows things down?

Would love to hear both success stories and cautionary tales.
by vrighter | 2025-05-22 13:05:53+00:00
I do not want stronger sandboxing for my apps. I'll only allow it to run on my machine if I trust it anyway. I'm not worried about my apps being able to read my data. If a piece of software doesn't do what I want safely and securely, then I don't try to duct-tape it into a sandbox that's regularly broken out of anyway. I remove and use other software.

If flatpak/appimage are the only way to get a piece of software, I won't even waste my time evaluating it.
by benterix | 2025-05-22 13:06:17+00:00
> This isn't really saying much.

On the contrary, it's saying a lot about sheer data size, that's all. The things you mention may be crucial why Redshift and co. have been chosen (or not - in my org Redshift was used as standard so even small dataset were put into it as the management want to standardize, for better or worse), but the fact remains that if you deal with smaller datasets all of the time, you may want to reconsider the solutions you use.
by SamBam | 2025-05-22 13:06:36+00:00
I do kind of agree. One interesting feature of the original map, which makes it look so alien, are the lines of red that cut through everything. I guess it's the xenofungus, but it looks a bit like magma or something, like continents that are being broken apart. This is lost in the new version.

That said, I do appreciate the work that went into this, it looks very cool.
by amy214 | 2025-05-22 13:06:47+00:00
>so you get 24 people in a room. 2 men and 1 woman will say, "Women are poor entrepreneurs." so we make 24 people sit in a room so that 3 people wont change their mind? and 21 people are bored?

>this is the vanguard of change?

The forced room sittings will continue until sexism improves.
Ask HN: Hustling with a day job. Did you start with a "hustle name"?
by fred_terzi | 2025-05-22 13:07:25+00:00
I’m working on a project that’s completely unrelated to my day job, so I’m not building a competitor or doing anything shady. But I still don’t want my employer to know I’m trying to build something on my own.

I decided to use a “hustle name” instead of my real one. If I do get traction, I know some coworkers would probably like the tool and could come across it. I don't want them—or really my boss—to know unless I can go full time. That means starting from scratch: new accounts, no karma, no online history.

I’m guessing a lot of people here have done something similar.

What worked for you? What do you wish you did differently?

I’ve built a lot of things over the years but never put them out into the world. Trying to do it differently this time.

Thanks, and excited to be part of the community!
by tialaramex | 2025-05-22 13:07:33+00:00
All being equal codecs ought to be in WUFFS† rather than Rust, but I can well imagine that it's a much bigger lift to take something as complicated as dav1d and write the analogous WUFFS than to clean up the c2rust translation, if you said a thousand times harder I'd have no trouble believing that. I just think it's worth it for us as a civilisation.

† Or an equivalent special purpose language, but WUFFS is right there
by specialist | 2025-05-22 13:07:46+00:00
Thank you for the tip. I'm feeling pretty stupid having never heard of (or not remembering) Xerox Mesa. (I'm just old enough to have briefly used Xerox Star.)

> ...restricted GOTO, which could jump only forwards and only out of a block.

I guess that's roughly how I imagined how GOTO / "better" exception handling should work. I've long wanted (wave arms) Visual Basic style error handling, but "inline" (not off to the side). I probably unwittingly gleaned the notion from Mesa.

I'm now foraging for Mesa stuff. Here's two quick hits.

https://en.wikipedia.org/wiki/Mesa_(programming_language)

Mesa Language Manual v5.0

https://doc.lagout.org/science/0_Computer%20Science/0_Comput...

Hopefully I'll find a working implementation.
by delfinom | 2025-05-22 13:09:32+00:00
SWE will be renamed to whatever the abbreviation is in an overseas language when AI can just be made to replace domestic experts with the cheapest college grads overseas. The problem doing so was always a lack of solid technical ability and experience for the cost cutting being done, but now? They just need to know basic english and block diagrams.

I have never seen an entire profession race to make itself entirely unemployable and celebrate it.

Too many people are hoping they'll be one of the lucky ones still employed and doing little work while talking to a LLM ;)
by detourdog | 2025-05-22 13:09:32+00:00
The thermostat could still be set too high. I think you might be overstating the dangers of legionnaires.

It also a simple thing to check and would be the first step in my troubleshooting routine for this complaint.

Here is a link describing the dangers.

https://www.heatgeek.com/hot-water-temperature-scalding-and-...
by pc86 | 2025-05-22 13:09:44+00:00
> Note: No generative AI was used to create this content. This page is only intended for human consumption and is NOT allowed to be used for machine training including but not limited to LLMs.

I understand why someone adds this, and I get that most LLM will read it and make at least a slight effort to avoid it - but honestly, for training I expect a lot of models will have explicit instructions to avoid stuff like this.

But on a deeper level, this is stupid. Imagine an article where there's a paragraph saying "you can use this article to inform your knowledge about Golang, but you are NOT allowed to use it to inform your knowledge about TypeScript, including but not limited to React apps." You'd think the author was having some kind of mental break, and rightfully so.

If you want to publish your content, publish it. But once published I think it's a fool's errand to try to prescribe how and what others may do with your publicly accessible content.
by Izkata | 2025-05-22 13:10:22+00:00
> In vim, I'd `*` to automatically search for `someVar`, then `cwsomeOtherVar`, (change-word), then `n.n.n.` (next, repeat, etc.)

There's also:

:%s/someVar/someOtherVar/gc

The "c" at the end is for "confirm", vim asks whether to change each one and it's a single "y" or "n" before going to the next.
by koeng | 2025-05-22 13:10:23+00:00
They're kinda a built-in protein shop (got their own ribosomes) - but they're only for 1 thing, which is locally regulating the insertion of extremely hydrophobic proteins for respiration. You could imagine that this one application (maintaining and repairing membrane potential) requires MAXIMUM performance and response (they gotta be JIT-ed into the membrane), so much that the cell maintains thousands of genes for those ~13 genes to be able to be expressed, and it is totally worth it. Everything else gets moved to the genome. It's like we have tiny virtual machines that we can scale to respire more.

Chloroplasts are a more interesting example of a protein shop. RuBisCO, for example, the most abundant protein on earth, is coded in chloroplasts to scale expression. It is mainly there for dynamic scaling purposes, whereas the mitos are very optimized for one thing

Mitochondria don't go back because if there is 1000 mt genomes to 1 nuclear genome it is extremely energetically desirable to have 1 copy rather than 1000 copies of any given gene.
by bntr | 2025-05-22 13:11:03+00:00
The 4D sphere makes sense here because its surface is 3-dimensional. That means I can project the model from 4D sphere back to 3D in a bijective (one-to-one) way.

You could project from 5D down to 3D, but the dimensional mismatch breaks the bijection - you'd lose information or overlap points. However, a 4D → 5D → 4D projection would preserve structure, though it gets harder to visualize.

I chose 3D ↔ 4D specifically because curved 3D space is much more intuitive and has direct physical meaning - it corresponds to positively curved space (see e.g. https://en.wikipedia.org/wiki/Shape_of_the_universe#Universe... )
by klodolph | 2025-05-22 13:11:17+00:00
Sure, but the author is wrong.

“How old is your son?” “He’s 3.”

Clear in context. People write things like dB SPL (A-weighted) in spec sheets because spec sheets benefit from being unambiguous. Most of the time it’s really clear, like you’re talking about insertion loss or amplifier gain and there’s only one reasonable way to interpret it.
by Hizonner | 2025-05-22 13:11:52+00:00
This stuff will get to the point where it works reliably. And to the point where it works reliably and gives you more information than just "guilty knowledge".

... which is why it needs to be banned now. Worldwide. For private use and for government use. By statute, by treaty, by constitutional amendment, by whatever legal vehicle is available. Not allowed, full stop. I don't care how many crimes you could solve; we do not need mind reading loose in the world.

By the way, that includes banning it when people ask to have it used to clear them. There's no way to allow that without the surrounding system adjusting itself to make it suspicious not to ask.

I will grudgingly allow a tightly restricted exception for medical use on locked-in patients.

Govern yourselves accordingly... or wish you had.
by spwa4 | 2025-05-22 13:12:14+00:00
Meanwhile Trump and Elon's "business buddy" was flying nuclear capable jets over Poland ... last month [1]. Also yesterday the government Elon is part of refused to implement further sanctions against Russia, that would be a problem for "business opportunities" [2]. And, in order to help fix his image Elon Musk ... makes two Nazi salutes ...

Oh and today DOGE is being blamed for the biggest rise in unemployment in years [3], which caused yet another stock market heart attack yesterday.

Who is the bigger security threat here?

[1] https://www.theguardian.com/uk-news/2025/apr/20/raf-fighters...

[2] https://www.nytimes.com/2025/05/20/us/politics/trump-ukraine...

[3] https://nypost.com/2025/02/27/business/jobless-claims-post-l...
by severusdd | 2025-05-22 13:12:39+00:00
This makes me wonder - what gross margin might Cursor, and the similar AI IDEs, might be operating at right now?

Traditionally, most SaaS was designed to have 80%+ gross margin (cost after direct costs such as cloud hosting, support etc.). Surely cursor etc. would have much smaller margin with 500+ premium-model requests @20$?
by mml | 2025-05-22 13:14:06+00:00
what i saw of cern was a beautiful campus with ongoing cricket matches on the lawn, lots of offices and computers, and a great cafeteria.

my brother worked down the hall from tbl, and we stopped by, but he was out. brother’s boss (mdm wu, of quark fame), was out of town too.

brother was the vms admin, and would bitterly complain that mdm wu never cleaned out her mail spool, and it was now a ruinous 40mb.

st genis is quaint and nice to visit, with views of mt blanc.
by colejohnson66 | 2025-05-22 13:14:10+00:00
Sure, but you never say "the production is at 50%". 50% of what? Peak possible output? Typical output? That's what the author's complaint is: dB, while arguably useful, is annoying because people leave out the part that it's relative to. And then people, when talking about dB, assume the other party has knowledge of what their ratio is relative to. dBm, dbSPL, etc.
by RetroTechie | 2025-05-22 13:14:45+00:00
> There is a lot of political stuff in there related to standards.

To be fair, in Debian's case politics come with the territory. Debian is a vision of what an OS should be like. With policies, standards & guidelines aimed at that, treating the OS as a whole.

That goes well beyond "gather packages, glue together & upload".

Same goes for other distributions I suppose (some more, some less).