MurphyA/hacker-news huggingface dataset:
Show HN: Pipo360 – Generate production-ready back end APIs in 60 seconds with AI
by the_plug | 2025-06-15 19:46:16+00:00
Hi HN ,

I got tired of writing the same boilerplate over and over — DB setup, auth, routes, security — every time I built a backend.

So I built Pipo360 — an AI-powered tool that generates production-ready backends in under 60 seconds, from just a plain-text description.

How it works: Type what you need

“Create a task management API with user auth and MongoDB”

Hit Generate

Get real, exportable code

Auth (JWT)

Database schema

CRUD routes

Deployable to Vercel, AWS, etc.

No templates. No lock-in. Just code that works.

Why it’s different: Built with Gemini AI + human supervision (to ensure real prod-quality output)

Exports to MongoDB, PostgreSQL, MySQL, SQLite

Secure by default (JWT, RBAC, etc.)

Supports no-login backend previews

Try it live (No signup needed): https://pipo360.xyz

Would love feedback: What backend would you try first?

What would make it better for your workflow?

Would open sourcing part of it be useful?
by reactordev | 2025-06-15 19:46:19+00:00
Not confusing anything. Yes you can meter your own applications, generate your own metrics, but most organizations start their observability journey with the hardware and latency metrics.

Otel provides a means to sugar any metric with labels and attributes which is great (until you have high cardinality) but there are still things that are at the infrastructure level that only CloudWatch knows of (on AWS). If you’re running K8s on your own hardware - Otel would be my first choice.
by leptons | 2025-06-15 19:46:47+00:00
I don't think of him as a "complete loser" at all, not even close. Do losers have Picasso create the sets for their ballet composition (Parade)? How many "losers" have a homage of them painted by Salvador Dali? His friends included Debusy, Ravel, Poulenc, Man Ray, and the list goes on. Loser? He was a creative icon amongst creative icons.

Don't confuse eccentricity for being "a complete loser".

>In 1911, when he was in his mid-forties, Satie came to the notice of the musical public in general. That January Maurice Ravel played some early Satie works at a concert by the Société musicale indépendante, a forward-looking group set up by Ravel and others as a rival to the conservative Société nationale de musique.[44][n 8] Satie was suddenly seen as "the precursor and apostle of the musical revolution now taking place";[46] he became a focus for young composers. Debussy, having orchestrated the first and third Gymnopédies, conducted them in concert. The publisher Demets asked for new works from Satie, who was finally able to give up his cabaret work and devote himself to composition. Works such as the cycle Sports et divertissements (1914) were published in de luxe editions. The press began to write about Satie's music, and a leading pianist, Ricardo Viñes, took him up, giving celebrated first performances of some Satie pieces.

Doesn't sound like a "complete loser" to me.

I can tell you as a musician, that sometimes the music comes before all else, including feeding and clothing yourself, and even basic hygeine. It's an addiction like no other and if you really give your life to it, then nothing else really matters. That isn't being "a complete loser".
by cherryteastain | 2025-06-15 19:47:13+00:00
In this function

void Call(T arg) const { if (fn) { fn(userData, arg); } }

Say you pass something like an std::vector<double> of size 1 million into Call. It'll first copy the std::vector<double> at the point you invoke Call, even if you never call fn. Then, if fn is not nullptr, you'll then copy the same vector once more to invoke fn. If you change Call instead to

void Call(T&& arg) const { if (fn) { fn(userData, std::forward<T>(arg)); } }

the copy will not happen at the point Call is invoked. Additionally, if arg is an rvalue, fn will be called by moving instead of copying. Makes a big difference for something like

std::vector<double> foo(); void bar(Func1<std::vector<double>> f) { auto v = foo(); f(std::move(v)); }
by vidarh | 2025-06-15 19:48:40+00:00
If debugging is hard to you in Ruby because of monkey patching, it's an issue of not knowing the debugging tools. Attach pry or Ruby debug, and show the source location of a method, or log them. This isn't surprising - debugging Ruby is different to debugging most static languages, and more tutorials on how to do this well would be nice...

Also the use of monkey patching in Ruby peaked something like a decade and half ago. Outside of Rails, it's generally frowned on and introducing new methods is usually addressed by opting in by including modules these days.
by hn_throwaway_99 | 2025-06-15 19:51:55+00:00
I'm the same vein, though, wasn't Disney essentially Walt (and Roy) as well? Disney (the animation studio) went through a nadir between the death of Roy in 1971 before the start of the "Disney Renaissance" with The Little Mermaid in 1989 brought them back to form. I see no reason that Studio Ghibli couldn't eventually find outsized success after the death of Miyazaki.
by anon291 | 2025-06-15 19:52:10+00:00
India's growth rate is higher, and it has more stable family formation than those countries.

Regarding 'anti-muslim' sentiment... This is a tired trope. Muslims get special privileges in India that no other country gives them. Taking those away is not anti Muslim. I'm from a minority community in India myself (Christian). While it's not the greatest situation it's helluva lot better than other countries in the region.

Phillipines has similar issues with Islamic terrorism and takes similar stances to India but manages to fly under the rug somehow.
by ginebs | 2025-06-15 19:52:13+00:00
Synapse Social | Founding Engineer | New York City | Full time

Synapse is a funded startup backed by a Fortune 100 CEO with the goal of making academic research and news more accessible. With our mobile app, users will be able to see the latest research papers and news in their fields of choice in a curated feed based on the topics, journals, and authors they follow. Our mission is to connect the right researchers to the right papers. Right now, we’re building ways to streamline how scientists discover and share research but ultimately we will become the definitive global hub for scientific discourse.

We’re looking for a founding software engineer with Python and React experience to work on our web and mobile apps.

Experience with React Native and mobile development in general, is a big plus.

Experience with MongoDB and Flask are also nice to have.

*Tech Stack*

- database: MongoDB - mobile app: Typescript, React Native - api: Python, Flask - infra: AWS Beanstalk

*Salary and Benefits*

90-100k starting annual salary( plus equity). This range is highly subject to change after we raise again in November

Please email ginebra@synapsesocial.com with your resume !
by _randyr | 2025-06-15 19:52:14+00:00
I'm not a C++ programmer, but I was under the impression that closures in c++ were just classes that overload the function call operator `operator()`. So each closure could also be implemented as a named class. Something like:

class OnListItemSelected { OnListItemSelectedData data; void operator()(int selectedIndex) { ... } }

Perhaps I'm mistaken in what the author is trying to accomplish though?
by torginus | 2025-06-15 19:52:43+00:00
That's why ageism is stupid - in my experience age is uncorrellated with technical chops and productivity, with people who actually know their stuff and care about the job they're doing coming from every possible age bracket.

One of the most productive guys and all around technical wizard I know is a father of 3 in his 40s.

I do know a few people straight out of college who are rather excellent devs, but the problem with a lot of them them is that they have inflated egos and don't take feedback at at all, and/or they move around a lot.

Imagine building up a guy who works like crazy with a huge body of knowledge, then he's out of the company the next year, and nobody knows what any of his code does.
by bigbadfeline | 2025-06-15 19:53:20+00:00
> AI will crash the price of manufactured goods.

Quite the opposite, persistent inflation has been with us for a long time despite automation, it's not driven by labor cost (even mainstream econ knows it), it's driven by monopolization which corporate AI facilitates and shifts to overdrive.

> The point of AI isn't that it's going to blow up some of the social order, but that it's going to blow up the whole thing.

AI will blow up only what its controllers tell it to, that control is the crux of the problem. The AI-driven monopolization allows few controllers to keep the multitudes in their crosshairs and do whatever they want, with whomever they want, J. Huang will make sure they have the GPUs they need.

> You don't need a house within an easy commute of your job, because you won't have one.

Remote work has been a thing for quite some time but remote housing is still rare anyway - a house provides access not only to jobs and school but also to medical care, supply lines and social interaction. There are places in Montana and the Dakotas who see specialist doctors only once a week or month because they fly weekly from places as far away as Florida.

> You don't need a house in a good school district, because there's no point in going to school... and college won't exist either.

What you're describing isn't a house, it's a barn! Can you lactate? Because if you can't, nobody is going to provide you with a stall in the glorious AI barn.
by zzo38computer | 2025-06-15 19:53:23+00:00
Flatpak and those other systems have many problems (much more than only that), in my opinion. I do not use them (and I also do not use Discord).

My idea to solve it is an entirely new operating system design, which uses proxy capabilities. (Also it does not have file names.)

> I don't feel like "this button opens the camera and gives me the photo you take with it" and "I can access whatever the camera is seeing at this moment" should be the same permission.

I agree that they should not be the same permission, but also the permissions should not be directly like that either. They should be "still picture input" and "motion picture input" permissions. The source of the pictures is not specified by the permissions, and therefore will be independent of the hardware and independent of the implementation.

(With proxy capabilities, this becomes much more versatile in many ways, and can avoid some of the problems of doing them directly by a permission menu.)
by Zigurd | 2025-06-15 19:53:50+00:00
Is there even one use case where a humanoid robot has proven to be the best solution? To illustrate the point I would bet money that a laundry folding machine that only folds laundry better, faster, and cheaper will be the best solution for that use case. Lawn mowing? Another robot. Floor cleaning? Done and dusted. If there is a task with enough value to automate, a specialized robot will win that market.
by nikeee | 2025-06-15 19:54:41+00:00
`current_timestamp` also returns something like `2025-06-15 19:50:50` while the docs state that it is ISO 8601. Except that this is not ISO 8601 due to the T missing in the middle. This has caused some headaches due to different formats of JS's `.toISOString()` and SQLite's `current_timestamp`. The datetime column is basically only for documentation. I wish they had some timestamptz type which rejects insertions containing invalid datetime formats.
by dmoy | 2025-06-15 19:54:57+00:00
Idk about the rest, but Satie was like 30+ years older than Poulenc, and died a few years after Poulenc's first composition.

I don't know if you can characterize them as friends. Satie's music definitely influenced Poulenc's, a lot.

Satie was broke as hell too, that part is true. Idk if being broke makes you a loser, but it might explain his choice of clothes.
by AnimalMuppet | 2025-06-15 19:55:21+00:00
Perl is interesting because it was written by a linguist. It's the only language I know of where you can say "it".

Here's what I mean: I'm talking to another developer. I say, "Read in a line of input. If it ends in a newline, remove the newline." I can talk like that to a developer.

But when I talk to a computer, it says, "Read in a line of input? From where? And put it where? If 'it' ends in a newline? If what ends in a newline?" You can't talk to a computer that way...

Except in Perl. In Perl, you say, "Read in a line of input. I didn't specify where, so read in from the standard place[1]. I didn't specify where to put it, either, so put it in the default variable[2]. Then call chomp, which if I don't specify, will operate on the default variable."

[1] The default input is the files specified as command-line arguments, in order.

[2] The default variable, $_, is used when you don't specify a different variable. $_ plays the linguistic role of "it" - it's what you're talking about when you don't specify what you're talking about.
by ilinx | 2025-06-15 19:55:36+00:00
I know virtually nothing about architecture or structural engineering, but I imagine all the weight isn’t necessarily going down from floor to floor, but a lot of the weight is attached to support columns, and the floors are built out from that.

All the weight is still on those support columns though, and I also have a hard time wrapping my head around how something like that is possible. Engineering is amazing.
by vidarh | 2025-06-15 19:56:15+00:00
Learn to use a remote debugger, and how to show the method source location.

This may sound snarky, but it's a good faith suggestion. Ruby has all of the tools to make debugging easy, but they're different than what you will expect if you come expecting things to work like in the static typing world.

But as much as I love Ruby, I do agree that Rails has too much unnecessary "magic". Much of which more modern Ruby is a reaction to. Personally I avoid Rails for my Ruby web projects.
by saltcured | 2025-06-15 19:57:46+00:00
When thinking about evolutionary forces, you cannot conflate "positive" outcome with survival and reproduction. An individual might survive and produce offspring via effects that make the individual unhappy in their own life and/or with shortened life.

It's only when an effect causes death or infertility prior to normal reproductive phases that we can really say it has a direct evolutionary pressure. Anything that happens later is always going to be through secondary, social effects on how their condition supports or hinders their offspring from reproducing further generations.
by Defletter | 2025-06-15 19:58:05+00:00
> It feels like permission models are stuck in engineering for low-level programs and nobody thinks about how actual people will use it

Not to be a perpetual curmudgeon, but I feel like a portion of the blame for this could the developers XY'ing each other into the broadest use-case possible. Allowing users to select photos to embed into their messages gets "but what are you really trying to do?"-d into just putting access to the filesystem behind a flag.
by ofalkaed | 2025-06-15 19:59:31+00:00
First time I installed linux was around 98, something went wrong and I could not boot and once able to boot could not get on the net. Went through all the information I had printed out and the books I had to no avail, called everyone I could think of. For the next week I had daily bus rides to the library where I would get on IRC to ask any question I could think of, download anything which might help, take lots of notes, make a new boot disk or two and then back home to spend the night trying to sort things out.

First thing I did when I got everything working was sign on to a couple local BBS's so I could play LORD, had to catch up on all that lost time. Felt pretty great to play LORD from console.
by softwaredoug | 2025-06-15 19:59:57+00:00
I dunno a lot of migrations to X technology are pitched as valuable on one quality dimension. We improved performance by Y%! When software “quality” should really consider many criteria: correctness, performance, developer productivity, maintainability and others.

I’d rather hear about a set of tradeoffs in these sorts of articles (performance was critical so we traded Y for X) than just bragging about one dimension of improvement.
by globnomulous | 2025-06-15 20:01:54+00:00
I haven't watched the interview recently, and I don't have time to re-watch it and cross reference, so take the following with a grain of salt:

Parts of this blog post so closely match the language and structure of this interview[0] that I'm inclined to accuse the author of direct plagiarism.

[0] https://hardcoresoftware.learningbyshipping.com/p/233-the-il...
by torginus | 2025-06-15 20:02:03+00:00
I did a lot of microcontroller and FPGA stuff in college a decade ago (and most of the stuff like Verilog and Cortex chips or RTOSes weren't exactly new then), but since then have drifted away from the field - I tried to get back into it as a hobby, and checked out what's new, and it seems to me that surprisingly has changed.
by WarOnPrivacy | 2025-06-15 20:02:43+00:00
> Does it make sense for me and a bunch of friends to go to Thailand and protest the way they run their country?

This topic concerns the actions of US Gov; it's about which actions are specifically limited by the Constitution. Enforcing those limits is how we protect our rights.

It makes sense to advocate for the constitutional rights of individuals.

Further, not advocating for others' constitutional rights - this is a factor in erosion of rights overall. I offer that the 100mi constitution-free zone adjacent to US borders is an example of that¹.

If Thailand's government is similarly bound by it's constitution, it is probably wise for Thai people to advocate for individual rights.

¹ ref:https://kagi.com/search?q=what+constitutional+rights+are+imp...
by bloppe | 2025-06-15 20:03:10+00:00
"there is an idea that autonomous vehicles are something that will erode driver jobs and put drivers at risk. And I think the irony of what we’ve seen is that it’s actually quite expensive to run an AV, and that that’s not going to be happening, at least in the near term"

Why are they assuming the higher price results from supply rather than demand? Seems like a no brainer that waymo will trounce drivers on price once adequately scaled
by the_fury | 2025-06-15 20:04:53+00:00
Absolutely. I enjoy it so much that I wonder "do people actually NOT enjoy writing Ruby?" It's usually the first tool I pull out of the toolbox for DSLs, scripts, spikes, one-offs and the like. A lot of the time, the project will happily stay in Ruby unless there's a good reason to use something else. And then I move it - horses for courses.

I programmed professionally in C, C++, C#, Deplhi, and a few other languages well before I had even heard of Ruby.
by Teever | 2025-06-15 20:05:10+00:00
It isn't about whether or not they'll have a monopoly on drones, it's about the power balance shifting to be not so one sided on defense.

For decades we've lived in a society where defending against these kinds of violent acts was far easier than committing them. That's changing, and it only has to change a little bit to have radical effects on society.
by zzo38computer | 2025-06-15 20:05:18+00:00
I think it is a problem with the design of the system (e.g. POSIX), that the permission models do not work very well, so trying to add them to a system that it does not fit, might be the problem. (In some ways, it is possible to do by a VM code, but that has its own issues.)

The other things that you mention might also be significant, although I think the problem I mentioned is also a significant reason why it is difficult to change even if you do want to improve it.

> As a programmer I dread writing any line of code that deletes files

My idea of operating system design does not have any function to delete files. You can erase the contents of a file, and you can remove all references to a file (if you can find them). If you do remove all references to the file, then the file will be deleted. However, any of these things requires a capability which can be used to modify the appropriate files; you do not automatically have the permission to do any of this. (The capability might also be a proxy capability that does copy on write so that the program's view of them can no longer see the contents and references to the file even if they are not actually modified or deleted.)
by opticfluorine | 2025-06-15 20:05:25+00:00
This definitely resonates with me. One of my favorite pasttimes is to code away on a 2D multiplayer RPG engine, and I've ended up doing at least a few of the projects on this list as part of that (ECS framework, voxel renderer, physics engine). Integration with a scripting engine like Lua is another fun one for a list like this, especially if you try to do it in an idiomatic way for your main programming language and/or leverage code generation and metaprogramming.

One thing I've found I enjoy is working on a larger-scope toy project composed of many loosely coupled systems. It works well for me because no matter what type of project I'm interested in working on, I can usually find something applicable within the larger project. Currently on my to-do list are behavior trees and procedural terrain generation, and honestly I don't know how I'm going to decide which to do first.
by OskarS | 2025-06-15 20:05:37+00:00
Indeed, that is exactly the case, lambdas are essentially syntax sugar for doing this.

The one thing the author's solution does which this solution (and lambdas) does not is type erasure: if you want to pass that closure around, you have to use templates, and you can't store different lambdas in the same data structure even if they have the same signature.

You could solve that in your case by making `void operator()` virtual and inheriting (though that means you have to heap-allocate all your lambdas), or use `std::function<>`, which is a generic solution to this problem (which may or may not allocate, if the lambda is small enough, it's usually optimized to be stored inline).

I get where the author is coming from, but this seems very much like an inferior solution to just using `std::function<>`.
by avidiax | 2025-06-15 20:05:44+00:00
I'm using the Monoprice multiviewer. It negotiates HDCP without a display attached. Other than being a bit big and expensive, and being unable to strip HDCP, it's a good solution.

I found the same device in generic packaging on AliExpress, but haven't had the chance to order that version, yet.

There are lots of professional SDI converters and such, but they are either $3k+ or "call for price".
by sigmoid10 | 2025-06-15 20:06:08+00:00
Miyazaki is not unique. Shinkai for example is part of a younger generation that does not fall behind and he has even been called the new Miyazaki (although he dismisses it). Talent per se does not die with a single person, especially not in a field with so many enthusiastic followers. And Ghibli in particular already has access to a lot of talent in other domains beyond writing and directing.
by hn_throwaway_99 | 2025-06-15 20:06:50+00:00
It's obviously not the same, but I totally disagree with "It did die with Walt". For example, I think Aladdin is one of the best movies of all time, period. Granted, a huge part of that is the genius of Robin Williams, but to create a film that has both parents and their kids doubled over in laughter is no easy feat. But it still had great animation, a great story, great songs, etc.