MurphyA/hacker-news huggingface dataset:
Show HN: I built Crevo to turn ideas into engineering docs
by Sulfide6416 | 2025-09-23 03:12:12+00:00
Hey Hacker News,

I'm one of the creators of Crevo. Like many of you, my team and I have spent countless hours writing, reviewing, and syncing up on software design documents. The process is slow, tedious, and often leads to inconsistencies between the product vision and the engineering plan.

To tackle this, we built Crevo: an AI-powered platform that takes a natural language description of your product idea and generates a comprehensive set of design documents.

You can simply describe what you want to build, and it will output:

- Product Requirements Document (PRD):* Outlines the product's purpose, features, user flows, and constraints.

- System Architecture Design:* Generates diagrams for system layers, data models, and business processes.

- API Definitions:* Creates standardized interface definitions, supporting the OpenAPI spec.

- User Stories & Journeys:* Helps map out the user experience from start to finish.

Our goal is to drastically shorten the path from an idea to a developer-ready specification. We want to help teams align faster, reduce manual documentation work, and allow engineers to focus more on building.

The product is still in its early days, and we're eager to hear what the HN community thinks. We know how valuable clear, concise documentation is, and we believe AI can help us get there much faster.

We'd love for you to give it a try and share your feedback. What features are missing? What kind of documents would you want to see generated next? We'll be here all day to answer your questions.

Check it out here: https://crevo.aurakl.ai

Thanks for your time
by tamimio | 2025-09-23 03:12:24+00:00
> senior software engineer

There we go again, and then people wonder why they can't find engineering jobs anymore, or low wage/no job security if any, when anyone and everyone can be an "engineer" when they get bored and have some time on their hands. I still don't understand why there is no collective engineering committee and effort to gatekeep the profession like literally all other professions out there, because companies will NEVER initiate that since it's in their interest to keep it as is. Why would someone spend time and money to become an engineer when he or she is competing with the whole world and prisoners now? The reward is just not worth the effort anymore, this is what will kill engineering innovation on the long term for short term gains.
by sothatsit | 2025-09-23 03:12:28+00:00
I'm pretty confident that if LLMs were made 100x more energy efficient, we would just build bigger LLMs or run more parallel inference. OpenAI's GPT-5 Pro could become the baseline, and their crazy expensive IMO model could become the Pro offering. Especially if that energy efficiency came with speedups as well (I would be surprised if it didn't). The demand for smarter models seems very strong.
by windowshopping | 2025-09-23 03:13:01+00:00
That's actually kinda hard, no?

Say the server has a counter. When you load the page, it's at 57, so it displays that you would be ordering #57. While you're looking at this, someone else loads the page - what number do you show them? If you show 57, then whoever orders first gets it and the other person gets a message "Sorry, not available. Want 58 instead?" but the same thing could then happen to them with #58, too – "Sorry, not available. Want 59 instead?"

So maybe instead you show the 2nd person counter+1, i.e. 58. And you show the 3rd person counter+2, i.e. 59. But what if #59 purchases but 57 and 58 don't? What do you show the NEXT person, 57 or 60?

I'm not saying it's intractable but it merits thought.
by eru | 2025-09-23 03:13:10+00:00
> Or have we already so thoroughly exhausted the low-hanging energy stores that a second "industrial revolution" would be effectively impossible if our present civilization collapsed deeply enough?

There's plenty of coal left, and we will likely never exploit it, because solar is getting so cheap.

Also, despite long prophecies, peak oil never arrived either. So it doesn't look like we are running out of that stuff.
by pimlottc | 2025-09-23 03:14:36+00:00
You can combine this with the `:/<text>` syntax [0] for matching the most recent commit with a given text in the commit message, e.g.

$ commit frobinator/ -m "refactor the frobnicator" [ more work ] $ commit echaton/ -m "immanentize the eschaton" [ oops, missed a typo ] $ commit frobinator/ --fixup :/frobic

0: https://stackoverflow.com/a/52039150
by dustbunny | 2025-09-23 03:15:46+00:00
Is this person using deep sleep? I always make sure I'm on deep sleep.

I know it's gross:

Put this in a file:

GRUB_CMDLINE_LINUX_DEFAULT="mem_sleep_default=deep

In

/etc/default/grub.d/90_memsleepdefault.cfg

Then run

update-grub

And reboot.

Run this to check if deep sleep is enabled:

cat /sys/power/mem_sleep

If it says [deep] your good
by jszymborski | 2025-09-23 03:15:50+00:00
> why does the author here feel so entitled

People were promised they just needed to pay one fee to get the app.

Then, they went to a subscription fee, but grandfathered in previous purchasers.

Now, they've introduced ads.

Their overhead is their problem, they sold me something and now they are renegging. It's like the first thing in the article, not exactly burried.
by fuzzfactor | 2025-09-23 03:19:05+00:00
I would say that when Google came out the results were about "twice as good" as AltaVista or Yahoo.

Which is a lot but there were plenty of mainstream users by then who would not be able to perceive that full amount of difference, if at all, a lot of times.

The main things that set Google apart in everybody's mind was that there were no ads and the pledge to not be evil was interpereted to mean they never would have ads. There was plenty of that already and people were tired of it.

That's the only promise they needed to break before they would be able to become the company they are today.

Their original reason for existing.
by JumpCrisscross | 2025-09-23 03:19:08+00:00
Strongly recommend for Clockwork's The Incredible Biology Powering Autumn Colors｜Leaf Senescence: https://www.youtube.com/watch?v=wOjkeyjJ364.

The biochemistry of photosynthesis is wild. The fact that these are mobile power stations that plants remove from the frontline for winter is mind blowing. (The closest I can think of would be your eyes shipping all of their retinal into your liver or whatever while you sleep.)
by jlaternman | 2025-09-23 03:19:13+00:00
Agreed, this would be a nice setting to "burn in" the codes to frontmatter on e.g first save. And with this enabled the plugin could also check for and avoid duplicates by modifying the code until its unique).

One other possibility is use git log --follow to grab the original filepath + commit hash, to base the code on. Imperfect but should reduce code changes vs. on rename.

I really like the simple 4 letter code for shorthand!
by derektank | 2025-09-23 03:19:34+00:00
I think it is sort of incumbent upon you, as a business offering a lifetime membership, to properly invest some of that initial fee, such that the returns cover future operating costs. Many other companies work on this model.

If the bank refused to return the money I loaned them, I would rightfully be very upset. I think it's similarly fair to be upset about a company revoking lifetime memberships.

This particular situation is more of a grey area, but I don't think maintenance and operating costs are a sufficient excuse.
by burnt-resistor | 2025-09-23 03:19:42+00:00
Private equity will buy anything and everything even moderately profitable using LBOs, stick them with the loans, take out more loans to pay themselves, spin them off, and wind them down.

Basically no one is going to run a business for the sake of customers or brand goodwill because, in the real world, there are no regulations or motivations to do so because "everything is a scam" is the normalized deviancy.

Take even a boring other industry, say single phase motor start and run capacitors. In the US, 3 of the 4 major original manufacturers of said products are owned by private equity and manufacture under under an array of cannibalistic turtles that M&A'ed basically every manufacturer. The net result is increased prices and shorter product life.
by bern4444 | 2025-09-23 03:19:59+00:00
This looks awesome, I had two questions:

Is there a structured concurrency library being used to manage the chained promise calls and lazy evaluation (IE when the final promise result is actually awaited) of the chained functions?

If an await call is never added, would function calls continue to build up taking up more and more memory - I imagine the system would return an error and clear out the stack of calls before it became overwhelmed, what would these errors look like if they do indeed exist?
by LanceH | 2025-09-23 03:20:09+00:00
The details appear to be not giving a damn about changes to data. I personally wouldn't describe that as "converging". As it says, this is "Last Write Wins", which is great if the last writer is always correct.

"If it’s older → ignore" -- yea, I guess that's a solution but I would really have to look for the problem.

I've gone down this road and considered github (or similar) as the backing database. In the end, I just don't have an answer that isn't specific to nearly every field that might be entered. A notes field might be appended. First in might be important, or last in (if it can be trusted as correct). Usually it's something like, "which of these two did you meant to capture?"
by dustbunny | 2025-09-23 03:20:38+00:00
My parents can never understand windows because they keep changing the ux design and my parents can't tell the difference between Microsofts AI ad stuff and the real os. My parents will literally type "email" into the Google search bar and hope to find their email address.

Windows has failed them.

Linux Mint/Cinnamon is closer to windows 95 than windows 11 is. It's cleaner, simpler, better.

Mac osx is annoying compared to cinnamon. I hate the empty space around the dock. I hate how Mac windows don't always consume the same amount of space for some reason so I can see the different rounded corners on different "maximized" windows. I hate Mac osx's full screen mode forcing each fullscreen app onto a different desktop. I prefer cinnamons default window tiling/desktop switching/fullscreening keyboard shortcuts and animations.

Finder's default mode of unaligned randomly placed folder icons is so wild. .DS_Store is so annoying. The lack of a system tray meaning you have to use the dock in order to see if you have a DM in slack. Spotlight opening the "spotlight" app when I type the "spot" of Spotify. Idk I just truly prefer cinnamon.

There's things about Mac osx that are great. The central nature of /Applications and of ~/Library is great. Lots of things are great.

Mac hardware is by far best in class but Mac osx is honestly pretty ugly compared to Cinnamon imo. I'm not biased. I paid through the nose for my MacBook. But I like the esthetics of Cinnamon on my desktop much more than osx.
by ryukoposting | 2025-09-23 03:20:40+00:00
My guess is that, from the factory, Apple's firmware doesn't actually charge the battery all the way up to its 4.2V "full" threshold. It's probably stopping at 4.12 Volts, or something like that. Then, that threshold will slowly rise over the years in order to keep perceived battery life consistent. Eventually, after several hundred (or maybe a couple thousand) cycles, the threshold stops rising at around 4.2 Volts, and that's when you'll start to see the "battery health" number start to decline.

While I'm not an Apple engineer, I am an embedded systems engineer. I promise you, this kind of trickery is commonplace in consumer electronics. It's also far more common in expensive stuff (phones, laptops) than in cheap stuff (power banks, vapes). Cheap stuff could do this, it's not hard, but the people making those devices don't get paid enough to care.

Point being: A lithium ion battery's capacity is reduced every time you charge it - sometimes by only a couple mAh, but still. This is intrinsic to the chemistry. Your phone is doing things behind the scenes to mitigate that wear, but wear still happens. If you intend to keep your phone beyond its designed 2-3 year lifespan, it behooves you to keep charging current down.
by phil21 | 2025-09-23 03:21:16+00:00
I do wonder about the second order effects of the second bit.

A lot of open source tooling gets created to solve those random "silly" things that are personal annoyances or needs. Then you find out others have the same or similar problem and entire standard tooling or libraries come into existence.

I have pontificated on how easy access to immediate "one offs" will kill this idea exchange? Instead of one tool maintained by hundreds to fulfill a common need, we will end up with millions of one-off LLM generated that are not shared with anyone else.

Might be a net win, or a net loss. I'm really not sure!
by sreekanth850 | 2025-09-23 03:21:31+00:00
No matter if its hosted on Azure GCP or AWS, latency is real. Cloud providers doesn't magically eliminates the Geography and phhysics. Private network don't eliminates latency magically. In general, Any small latency hike can potentially create performance bottlenecks for write operations in strong consistency DB like postgres or MySQL because each write operation go through a round trip from your server to remote planetscale server that create transaction overhead. Complex transactions with multiple statements can amplify this latency due to this round trip. But you could potentially reduce this latency by hosting your app near to where planet scale host their DB cluster though. But that is a dependency or compromise. Edit: A few writes per second? Probably fine. Hundreds of writes per second? Those extra milliseconds become a real bottleneck.
by renewiltord | 2025-09-23 03:21:56+00:00
There's no reasonable devil's advocate. The answer is that one-time fee apps are not sustainable. There are ongoing costs with most businesses and one-time fees do not capture that. Therefore don't sell them. Sell everything on subscription or you will eventually fail to serve your customers and everyone will be unhappy. If you're a big business, it's risky to buy open-source applications, so don't do that unless the benefit is obvious.

They promised a thing they could not deliver on and that was sufficient to get enough users that they could then sell the app onwards to a bunch of suckers. This is a classic play in the "sell dollars for pennies and then sell the dollars-for-pennies app to a guy with a lot of dollars who eventually gets sick of buying pennies with dollars" genre.
by rmunn | 2025-09-23 03:22:00+00:00
If you don't honor contracts, then you should go out of business, because nobody will trust you (if they're wise, though there are always some people/companies who will be foolish).

If you make a contract that involves you receiving a one-time fee for something that will cost you far more than that fee, then you will eventually go out of business for being stupid.

Yes, there are hosting costs and maintenance costs. So the original deal (pay once for something that costs us ongoing money) was a stupid business decision. Doesn't change the fact that they undertook to make that contract. So now they should be held to it.

And the fact that someone else bought them does not invalidate the contract. When you acquire a business, you acquire their contractual obligations. As it should be, otherwise contracts cannot be trusted in the long run.
by wahnfrieden | 2025-09-23 03:22:46+00:00
I don’t think you understand. I’m not suggesting you try to do two tasks at the same time. The old wisdom isn’t that we shouldn’t do two things at once with our hands/minds directly. It’s that we shouldn’t put another task into WIP while an existing task is still pending completion, if theres work we can do on that already WIP task. (Lean methodology)

But now we can start the tasks and rest while they are ongoing, and wait until a later point to evaluate their result. So you have choices: do you avoid delegating any tasks because you think you can do them faster? Do you rest and do nothing or get distracted with non-work while you wait? Or do you begin parallel async work and interleave orchestration and evaluation tasks (performed serially as individual pieces)?

None of this is about breaking human psychology. It’s about how to adapt processes within lean methodologies that became pervasive in our industry.
by hermannj314 | 2025-09-23 03:23:34+00:00
Reducing waste, fraud, and abuse is always only one side of the story. I agree it would have false negative impact (someone does not submit a good report that otherwise would have), but I don't think that instantly makes it a horrible idea. I think the net effect would have to be studied, but I highly doubt all true postive reports would become false negatives. The goal is reducing false positives, so it is going to be a tradeoff and you'd need specific numbers to conclude anything.

Do you really think it is a horrible idea? That is just so harsh of a label.
by danpalmer | 2025-09-23 03:24:24+00:00
It's reasonable to feel that reneging on the deal is wrong, while also recognising that $5 for 14 years (and counting) of value is far too low a price. There's no good answer here.

The company is stuck in a bad place where the most loyal users, probably those getting the most value out of it in the long run, aren't paying for it. Subscriptions for newer users are one way, or trying to upsell existing users, but this subscription is exceptionally expensive for what it is, and they can only monetise the non-standard feature set.

I'd like to see a return to versioned software. Call Pocket Casts done, fork it, release Pocket Casts 2 for $20 with all these features. Next year release Pocket Casts 3 for another $20. People can update or not, up to them.
by lukeschlather | 2025-09-23 03:24:27+00:00
I think I had that happen with a Windows laptop once like 6 years ago, I have used a couple MSI and Lenovo laptops and haven't had any issue. Windows has a much more wild driver ecosystem, and I'm sure there are bad drivers/motherboards/GPUs. (I do have some issues with my MSIs around USB-C docks causing bluescreens and refusing to resume from "screen shut off to save power" but as far as the laptop stuff it's been flawless.)
by JumpCrisscross | 2025-09-23 03:25:23+00:00
> President does not choose to use the shadow docket. The use of the shadow docket is controlled by the court justices

Oh wow, I didn't know this [1]. Thank you...what in the actual fuck.

I'm having trouble parsing how the shadow docket relates to a party requesting emergency relief. Do you have a good source on this?

[1] https://en.wikipedia.org/wiki/Shadow_docket#Procedure
by defrost | 2025-09-23 03:25:58+00:00
However, currently only 8.5% of people who are incarcerated are held in private facilities. Despite the significant amount of economic and political power held by private prison corporations, it is imperative to understand that private prisons are not the only force at work in the Prison Industrial Complex. Exclusive focus on private prison corporations as the lynchpin of the PIC ignores and overlooks the variety of other players and systems at work. For example, there are thousands of companies and a wide range of contracts in both private and public prisons: it is a whole network of parties with vested interests. In Are Prisons Obsolete, Angela Davis explains that, “…even if private prison com­panies were prohibited – an unlikely prospect, indeed-the prison industrial complex and its many strategies for profit would remain relatively intact. Private prisons are direct sources of profit for the companies that run them, but pub­lic prisons have become so thoroughly saturated with the profit-producing products and services of private corpora­tions that the distinction is not as meaningful as one might suspect” (Davis, 2003, 99-100).

~ https://sites.tufts.edu/prisondivestment/prison-contracts/
by muppetman | 2025-09-23 03:26:17+00:00
Because we paid to not have to put up with this garbage. There's so many better ways to do this - look at nzb360 - https://nzb360.com/

They added a new/better interface you have to pay money to unlock. When they add new features/services you now have to pay to unlock. What you paid for originally, still yours. Want to get access to the new stuff? You can either pay a subscription for "everything" or pay one-time-unlocks for features.

Then I look at serviecs like lichess where they just operate 100% on donations and users helping by adding their devices into the pool of compute for analysis.

"Shove ads in" is the low, easiest, tackiest way to "annoy" your users into paying. Those that already paid once are annoyed the goalposts have changed. Make the app worth paying an upgrade for, don't just go "well it's still shit but now there's ads unless you pay!"
by porridgeraisin | 2025-09-23 03:26:51+00:00
I really like the idea. Especially the idea where you return different RpcTargets based on the "context", that's really quite nice. Not just for authentication and such, but for representing various things like "completely structurally different output for GET /thingies for admin and users".

The promise-passing lazily evaluated approach is also nice -- any debugging woes are solved by just awaiting and logging before the await -- and it solves composability at the server - client layer. The hackiness of `map()` is unfortunate, but that's just how JS is.

However, I don't see this being too useful without there also being composability at the server - database layer. This is notoriously difficult in most databases. I wonder what the authors / others here think about this.

For an example of what I mean

const user = rpc.getUser(id) const friends = await rpc.getFriends(user)

Sure beats

GET /user/id GET /graph?outbound=id

But, at the end, both cases are running two different SQL queries. Most of the time when we fuse operations in APIs we do it all the way down to the SQL layer (with a join).

GET /user/id?include=friends

Which does a join and gets the data in a single query.

So while its a nice programming model for sure, I think in practice we'll end up having a `rpc.getUserAndFriends()` anyways.

I'm not that experienced, so I don't know in how many projects composability at just one layer would actually be enough to solve most composability issues. If it's a majority, then great, but if not, then I don't think this is doing much.

One situation where this actually works that comes to mind is SQLite apps, where multiple queries are more or less OK due to lack of network round trip. Or if your DB is colocated with your app in one of the new fancy datacenters where you get DB RAM to app RAM transfer through some crazy fast network interconnect fabric (RDMA) that's quicker than even local disk sometimes.
by Eisenstein | 2025-09-23 03:27:52+00:00
So you are saying that because people are being screwed in the current market that is undeniable proof that people are OK with being screwed by the market?

If I misunderstand you please correct me.

If that is what you contend, then you have no addressed whether or not the market allows them to do otherwise. You take for granted that the market is free and that people are willingly choosing this outcome with perfect knowledge and without any incentives or forces which would compel them to act despite not wanting to be screwed. For instance, if you do not have bargaining power with a company over your contract, you have no choice but to accept it. Can you enter into negotiations before agreeing to a EULA?

There are forces that are not free market forces which constrain actions, there is human tendency to prioritize immediate needs over long term benefits, etc which all play a role.

The fact that:

1. The market exists 2. We have a conception of how the market should work in an ideal 3. People act in a certain way

do not all combine to make it true that 'people prefer it this way'.

That's the point I am making in counter to your assertion.