News for hackers. Stuff that matters.

jpcom

I found that rather entertaining, thank you. It reminds me of Rick n Morty, S01 E04, when they start rapping on stage and making more and more specific requests to get the matrix they're stuck in to glitch out.
Never poop alone
"Play Beethoven's Fifth"
So. F*king. Cool!
Every app is a state machine. If you have not learned about Finite State Machines (FSMs) I highly recommend you take a weekend or two and watch some videos, read some stuff on them.

Learn to draw your own Finite State Machines.

Essentially, we identify "states" of our "program" and then we move between them via transition lines/arrows. Eventually we encounter an "accepting state" and then the "program" is done. In reality, programs don't ever really get to "done" mode, but algorithms do.

Consider a simple task like eating cereal in the morning:

1) Get bowl

2) Get cereal

3) Get nondairy milk

4) Pour cereal into bowl

5) Pour just enough milk to keep cereal crunchy

6) Use spoon to take a bite

7) Crunch

8) If there is still cereal, go back to bowl with spoon, number 7; otherwise, go to 9

9) Done! Do the dishes, I guess.

Now if you draw that out as circles with arrows, you end up with some state transitions going backwards, some going forwards, and some looping back on themselves.

Reasoning about your app should be the same. There should be a "finite number of states" and well-understood transitions between the states.

When you have tested all the states and all the transitions between them, you have tested 100% of your program. 100% when it's gritty and dirty and connected to the rest of the "real world" [is tough] because it's not existing in isolation, 100% is like the ideal but you can be happy with 80-90% certitude you've covered it "all."

Congrats and welcome to the wonderful world of ports.

I would say yes, verifying that the code not only does what you expect but also doesn't do anything of the things you do not expect, is the main bottleneck.

That is: do-all-the-things, please, and don't-do-all-the-non-things, as well.

Ideally, one can reason through their application at a high-level and have a "spec" or specification that the LLM can build from and check against.

You can also have the LLM go back through and tell you about any vulnerabilities you need to address before shipping.

I don't know exactly what you are shipping, but in general: never give the LLM root access or command-line access in a deployed app. Give it the minimal permissions necessary to accomplish its work/role. Pin versions [if you're working with version 5, explicitly say that, rather than just using the "latest" one since that's a moving target].

Some things are not obvious until deployed to a live environment, so do thorough testing. You can have an LLM generate test cases and run a "test suite" to check your code does all-the-things and none-of-the-non-things [undesirable outcomes] this way.

But again, when you have many moving gears finally coming together in a product, in a real, online environment, your best bet is doing lots of testing first to give yourself confidence you've caught most of the edge-cases, and that there are no "catastrophic" edge-cases lurking, unaccounted for.

If you still have any specific questions or want to zoom in on any aspect of software creation, please ask us

Re:Why vibe code in Common Lisp? on Wednesday August 12, 2026 @08:04PM (#49280202)
Roughly just over one-thousand people, precisely 1,337 people self-describe as elite in the field.
She's 8 years old man cut her a little slack on the code aesthetics ;)
Re:Gentoo bugzilla closed due AI bot scraper overload on Saturday August 08, 2026 @12:21PM (#49223232)
What are they scraping the gentoo bugzilla for? I'm confused. Unless you're actively using Gentoo why would this be a resource? Very confusing. Also you'd think we'd have LLM BitTorrent by now, where if they want to scrape something we get a DHT hash for the content and share it with one another, rather than melt servers with the millionth request of the day.
What do the minus numbers signify?
don't forget the love :)
Which IDE are you using?
Yes, it takes commitment to master a language. In the case of Japanese, which traditionally takes the most weeks to master when coming from English, we made Japanese Complete based on frequency analysis to help speed up the process of acquisition. With 777 kanji carefully selected by frequency you can get 90% coverage of kanji in the wild. This is about a third of the "daily use" set of ~2200 kanji so the process is greatly accelerated. If you're interested in seeing what 777 kanji look like, I recently created a small kanji quiz game that quizzes by English meaning words [0].

[0] https://japanesecomplete.com/kanji-game.html

You can use the product for free at the link I shared for Show HN. It is true this is incorporated into the broader lesson plan now, but initially I had just worked it out as a demo and was excited to show it to the community. I appreciate your vigilance although can't help but think it's misplaced.
Voice recordings are turned to text via in-browser Speech-to-Text (STT the opposite of TTS) and then piped / sent to Grok as text. These are privately sent via my API key to Grok. I don't hold on to them at all except for sending them over the wire to Grok. So storage duration on our side is as minimal as possible, typically just a few seconds while it is sent to Grok and a reply is formulated. However, one should be aware that the whole conversation is sent to Grok from within our lesson pages, so the whole chat persists for a session until you close out the tab or move to another lesson page, at which point it is reset.
It's very beautiful, lovely work. Sleek and shiny, it's a device that begs for interaction, which is important in something that you'll be engaging with every 24-30 minutes. I would like a version of the display to show grains of sand falling through a digital hourglass.
Re:Ask HN: What advice would you give to a CS student today? on Thursday March 27, 2025 @11:01PM (#43501058)
Team up with some loyal friends who are effective at getting things accomplished and make a company. If you can dream it you can achieve it. Especially now, with the barrier for creating products being lower than it has ever been. Of course, it probably helps to have some internship experience or learn from someone who has already built a business so you don't make all the same errors that can be easily avoided. But in general I think we are telling people that they are not ready to make businesses, when in fact the tools are getting very good, so good that it might be advisable to advise people to start making businesses straight out of school.
Hey HN! I’m pumped to share Aiko, my Japanese tutor AI—learning Japanese should feel like chatting with a friend. Check it out at https://japanesecomplete.com/aiko.html —no signup needed for the demo!

Aiko uses xAI’s Grok (latest model) to craft natural Japanese replies and AWS Polly (Mizuki voice) to speak them. Pick a topic like "Greetings" or "Ordering Food," hit "Click to Record," and talk to her in Japanese—she listens via Web Speech API, responds, and plays it back. It’s real-time, with a mic level visualizer and auto-scrolling chat, all in client-side JS (React + Tailwind).

This ties into my Japanese Complete project (data-driven, 90% real-world Japanese coverage). Sold a $450 lifetime plan this morning, so I figured it’s HN time. Next up: server-side polish, auth, and more topics. Would love your take—especially on UX or scaling ideas!

So cool. Is this basically like 2 inaudible waves coming together in an "overlap spot" to create an audible moment?
Re:Welcome to the Zero Sum Era. Now How Do We Get Out? on Sunday March 02, 2025 @02:38AM (#43228253)
Precisely. Henry C. Carey, Abraham Lincoln's chief economic adviser, would say that the article's platitudes about "interdependence" miss the fundamental issue - it's not interdependence itself but the _type_ of interdependence that matters. Carey's economic nationalism recognized that exporting raw materials only to import finished goods creates colonial-style dependency, not prosperity. Carey's "harmony of interests" demanded domestic manufacturing capabilities that transform local resources into higher-value products, creating what he called "association" between producers and consumers within the same economic sphere. When we outsource manufacturing to non-democratic nations with concentrated labor power, we're not creating mutual benefit but establishing extractive relationships that hollow out our productive capacity. True economic resilience comes from rebuilding local manufacturing prowess that completes the production cycle domestically - something the globalist narrative conveniently ignores while democratic nations gradually surrender their self-sufficiency in the name of "efficiency." Carey's approach would actually transcend zero-sum thinking by creating genuine wealth through productive transformation rather than mere exchange, in turn unlocking fresh potential for growth, when nations develop their complete productive capacities instead of competing for shares of existing production.
Haha, according to this tool I am unemployed again! And I had a very productive week, by the way. Of course, it doesn't take into account how useful my creative pursuits were, it looks like it's evaluating me on my contributions to the mission to Mars? I didn't know the bureaucracy was tasked with that.
Re:Introduction to a Self Managed Life on Friday February 28, 2025 @03:03AM (#43202986)
I think the trade is not only privacy but complexity. If I have to be a full-time system administrator for my one machine or set of machines, it really takes a toll. I'd rather just hand that work to a conglomerate. Linux in theory could also do this, but nobody has nailed it yet. By far the best advances have been package managers and those are only a fractional solution. For a person who does not have hours to pour into study and slamming their head against a keyboard in despair when something inexplicable is off, it is really hard to recommend something as fragile as linux. And I don't mean fragile if you "know what you're doing," I mean fragile for someone who doesn't know what GRUB is, doesn't know what a kernel does, doesn't need to ever see a compilation flag, and suddenly they're exposed to all the above when an update goes sour. There are, of course, efforts to make things return to a graceful state gracefully, but until there's an off-the-shelf solution for "rescue my machine remotely" that can run through all phases of the boot process, I think most people are gonna want to use something where they can blame a vendor instead of their own ignorance or lack of time to bone up on a topic as nested as open-source operating systems.

Older »