MurphyA/hacker-news huggingface dataset:
by malachi_dev | 2025-12-17 07:01:30+00:00
Hey HN,

I built QR Code API after getting frustrated with existing options. Most QR code APIs are either: - Overpriced ($50+/month for basic generation) - Overcomplicated (multiple API calls just to get an image) - Or require you to use their hosted dashboard

Mine is simple: one GET request, one QR code.

GET https://qrcodeapi.io/api/generate?data=https://example.com

Returns a PNG. That's it.

*Features:* - PNG & SVG output - Custom colors (foreground/background) - Dynamic QR codes (edit URLs after printing) - Scan analytics (device, location, time) - TypeScript SDK on npm (`qrcode-api-sdk`)

*Pricing:* - Free: 100 QR codes/month (no credit card) - $9/month: 5,000 codes + logo overlay - $29/month: 50,000 codes + analytics + white-label

*Tech stack:* - Vercel serverless functions - Supabase (Postgres) - Stripe for billing - geoip-lite for location tracking

The whole thing is ~20 API endpoints consolidated into 9 serverless functions to stay under Vercel's hobby plan limit.

Would love feedback on: 1. Is the free tier too generous? 2. Any features you'd expect that are missing? 3. Thoughts on the API design?

Site: https://qrcodeapi.io Docs: https://qrcodeapi.io/docs npm: https://www.npmjs.com/package/qrcode-api-sdk
by erwincoumans | 2025-12-17 07:01:49+00:00
Yes, an amazing and detailed post, enjoyed all of it. In AI, it is common to use jit compilers (pytorch, jax, warp, triton, taichi, ...) that compile to cuda (or rocm, cpu, tpu, ...). You could write renderers like that, rasterizers or raytracers.

For example: https://github.com/StafaH/mujoco_warp/blob/render_context/mu...

(A new simple raytracer that compiles to cuda, used for robotics reinforcement learning, renders at up to 1 million fps at low resolution, 64x64, with textures, shadows)
by illiac786 | 2025-12-17 07:02:02+00:00
I don’t understand, you know what I will ask next.

And broadcasting on FM radio is then what?

You’re just redefining words, there’s no need for this. We agree it would be better from a privacy point of view if Signal did not require a phone number but you’re nit picking: it’s a one time thing, and you can take a public phone that no one can associate with you for this. And then never need it again if you have proper backups.
by unsungNovelty | 2025-12-17 07:03:00+00:00
The stupid boy is working in bad faith. Everybody knows. And nobody has invested even quarter the time with the stupid boy like the community has with Mozilla.

Mozilla is also not making mistakes. They are changing direction.

They started this by taking privileges and power from community leaders around 2015/16? There was a huge exodus of community then if ypu remember. And one after the other it reached until they bought a behavioural ad company. Its directly in conflict of interest with the humans over profit BS they are whining in marketing.

They have been in bad faith for so long. I dont see mistakes, I see pivoting. So, they can't just piggy back good PR while talking giving power back to internet users BS. Come on dude, they can't have it both ways.

They are yet another bad faith company saying they are not evil. That is it. Bare minimum, they should at least stop virtue signalling.
by lelanthran | 2025-12-17 07:03:59+00:00
>> I'm not a professional SWE, I just know enough to understand what the right processes look like, and vibe coding is awesome but chaotic and messy.

> It was already obvious from your first paragraph - in that context even the sentence "everything works like I think it should" makes absolute sense, because it fits perfectly to limited understanding of a non-engineer - from your POV, it indeed all works perfectly, API secrets in the frontend and 5 levels of JSON transformation on the backend side be damned, right ;)

I mean, he qualified it, right? Sounds like he knew exactly what he was getting :-/
by AnthonyMouse | 2025-12-17 07:05:12+00:00
Obviously the hypothetical is assuming a uniform 10% sales tax, but what's your point? If you had a 20% sales tax on accommodations then incorporating a 25% income tax into it would make it a 60% sales tax. If you wanted to continue omitting the existing sales tax contribution to groceries but apply the income tax portion you could use 33% instead of 47% and so on.
by nippoo | 2025-12-17 07:05:27+00:00
The author (and many others) assume that quality 3D printers are expensive, as a throwaway note in the last sentence.

A plastic soldier set is on the order of $20, and collectors will often purchase dozens.

A Bambu A1 mini (which is sufficient for the level of detail needed for these figurines) is about $200, which breaks even after 10 sets.
by theologic | 2025-12-17 07:05:41+00:00
Yep sorry about that lost track of who did what.

But thank you for actually some very insightful comments and actually digging into the details. And I do agree with your contention that there is some sort of circular system issue going on here (ala Jay Forrester out of MIT).

It is pretty interesting. While you reported everything perfectly, I'll just paste in the detailed section at the bottom as it does add a little more detail and really does give us something to think about. FDR in 1944 suggested that there should be a second bill of rights. In many ways I am attracted to his framework. In his second bill of rights, the very first one was "The right to a useful and remunerative job in the industries or shops or farms or mines of the nation."

It strikes me that having gainful employment in which you feel like you are contributing in some method to a society is incredibly foundational to good mental health. I think FDR recognized this and I don't think he was thinking about communism. I think he was indicating that we need to find worth for individuals. Of course, with World War II and his health issues, the somehow seemed to go by the side.

This is not somebody telling somebody on the street to get a job. It's a question of how do we enable people to get a job? And I believe if there is an opportunity for the government to spend tax dollars, it may be in incentivizing employers to take these individuals and be creative in how they employ them for direct benefits. It's hard for me to imagine that there isn't some economic way of incentivizing business to show entrepreneurship if we incentivize them correctly.

This doesn't mean that you don't figure out how to solve housing. It simply means that we think about things systemically.

"Participants noted substantial disconnection from labor markets, but many were looking for work.

Some of the disconnection may have been related to the lack of job opportunities during the pandemic, although participants did report that their age, disability, lack of transportation, and lack of housing interfered with their ability to work. Only 18% reported income from jobs (8% reported any income from formal employment and 11% from informal employment). Seventy percent reported at least a two-year gap since working 20 hours or more weekly. Of all participants, 44% were looking for employment; among those younger than 62 and without a disability, 55% were."
by openspend | 2025-12-17 07:06:01+00:00
I believe these companies are already doing it and charging a fee because they provide compliance and have required MSB licenses.

1. https://plaid.com/products/transfer/

2. https://www.flinks.com/products/pay

3. https://paytm.com/online-payments

OpenSpend should be open-source and free, unlike the companies mentioned above.

The idea is not only to provide the software but also legal templates like cancellation policy, refund policy, dispute resolution, etc., for different jurisdictions.
by metalrain | 2025-12-17 07:06:04+00:00
I think we will use more tools to check the programs in the future.

However I don't still believe in vibecoding full programs. There are too many layers in software systems, even when the program core is fully verified, the programmer must know about the other layers.

You are Android app developer, you need to know what phones people commonly use, what kind of performance they have, how the apps are deployed through Google App Store, how to manage wide variety of app versions, how to manage issues when storage is low, network is offline, battery is low and CPU is in lower power state.
by jerdthenerd | 2025-12-17 07:06:23+00:00
While I agree with the spirit of your statement "people are afraid to run their own software", I feel like this assumes that people are the ones choosing the software they run. I wish my teams could run more things ourselves, but are told no by our systems and infrastructure staff.

Any self hosted service in an enterprise means that you're dealing with all the headaches that come with that including: backups, user/role creation and mapping maintenance, infrastructure scaling needs, OTEL or other monitoring, etc.

It's an easier decision for VPs to pay GitHub anything less than the man hours required to execute the above tasks because it's a "not our problem" fee.
by dwattttt | 2025-12-17 07:06:47+00:00
> Either way, you didn't annotate the code so it's kind of pointless to discuss.

There are several literals in that code snippet; I could annotate them with their types, and this code would still be exactly as it is. You asked why there are competing type checkers, and the fact that the language is only optionally typed means ambiguity like that example exists, and should be a warning/bug/allowed; choose the type checker that most closely matches the semantics you want to impose.
by WhatsTheBigIdea | 2025-12-17 07:07:32+00:00
I really like this article.

I bake bread. I have spent a good deal of time optimizing the recipe for deliciousness but also for time efficiency. Proving in a warm oven is a great tip. Also baking two loaves at a time!

All this nit picking about writing style is disappointing. I like that this person got their ideas out there. They are good ideas. Legible and easy to parse == good enough. I don't care about the writing style any more than that and you shouldn't either. It is a waste of everyone's time... yours especially.

It's very nice to hear about someone else who is interested in doing hard things/real things. Seems like there ought to be a meet up or a get together opportunity for people working on stuff like that. Perhaps a get-together where everyone gives a 2-5 minute talk about something they are working on then we all hang out for another hour or two. Seems like alcohol might help get the wheels spinning?

I fully appreciate the need for a catchy headline with a hook (it got me!) but I wonder if these ideas would be more powerful/useful if expressed in positive language rather than doom speak? I guess doom speak is the fashion these days and we all have to conform to the dominant paradigm... at least a little around the edges.

Generally... Bravo. Nice piece. Nice ideas.
by globular-toast | 2025-12-17 07:08:53+00:00
My mother used to put the dough in a warm place. When I tried making bread I did the same. The bread was always disappointing, having a taste and texture more like "baked dough" than something I'd consider worth eating.

I discovered later that the length of time it spends rising matters. Room temperature (15-19 degrees Celsius) is optimal and will take a couple of hours for the first rise and less than an hour for the second. It is of course necessary to keep the dough away from any drafts. I keep it wrapped in a blanket or towel.

35 degrees Celsius is far too warm and won't give it enough time to develop the flavour and texture of good bread.
by kazinator | 2025-12-17 07:10:39+00:00
Your comment is astonishing.

If you know the word 方, that it is /ho:/, and you know that it has a う in it when written out, how can you not know that う stands for making the o long? The only vowel is the long o.

Japanese kindergarten kids can recognize hiragana words with "おう", correctly identifying it as /o:/. By the time they learn the 方 kanji they would have seen it written in hiragana upmpteen times, like AよりBのほうがいい and whatnot.
by jackzhuo | 2025-12-17 07:11:47+00:00
Always happy to meet a fellow developer in this niche!

I checked out your site—having the full index on a single page is actually super handy for quick referencing.

And I totally relate to the 'Vanilla JS vs Framework' struggle. I ended up choosing Next.js precisely because managing the state for the complex probabilities (6/7/8/9) was giving me a headache. Respect for sticking to the raw math!
by throw3e98 | 2025-12-17 07:12:43+00:00
An A1 Mini requires a smaller nozzle, a customized profile, specific filament, and quite a bit of work in Blender and the slicer to successfully print 32mm figures (approx. 1/56 scale). Even those larger figures aren't anywhere as good as the quality of injection molding you get from a Games Workshop, Archon Studio, Wargames Atlantic or Bandai kit. You typically need an SLA printer for that - which requires PPE and ventilation due to the hazardous materials.

I don't think my A1 Mini would have success trying to print at 1/72 at the same detail as an injection molding process. I've done 28mm figures on it, but it was a lot of work and had a high failure rate.

more info: https://www.youtube.com/watch?v=R7pBUk8AvJ8, https://www.youtube.com/watch?v=ldkW5nXRXN4
by tliltocatl | 2025-12-17 07:13:18+00:00
The thing about translation, even a human translator will sometimes make silly mistakes unless they know the domain really well. So LLM are not any worse. Translation is a problem with no deterministic solution (rule-based translation had always been a bad joke). Properly implemented deterministic search/information retrieval, on the other hand, works extremely well. So well it doesn't really need any replacement - except when you also have some extra dynamics on top like "filtering SEO slop" - and that's not something LLMs can improve at all.
by kjuulh | 2025-12-17 07:14:45+00:00
From the provided question by WHR I can definitely see how Scandinavian countries rank so high. Being Danish myself my answer would immediately go into long term thinking and whether I would have a better life elsewhere and to me the answer is a clear no. Not financially, socially or politically. So yes, Denmark scores really high, but is it really measuring happiness. I dont know. That said I dont think measuring how often we laugh as a better metric amongst other thing, I can be perfectly "happy" without being outwardly joyous, maybe contentment is a better word. Or well being. But it isn't as catchy i guess
by troupo | 2025-12-17 07:14:56+00:00
> Apple can not charge for external links In the US.

1. Yes. Yes it can.

2. This was literally my first question you keep dancing around: "Why can't those services show a link in their app to their page without Apple claiming it's owed 27% of the sale?"

> You still aren’t going to stand out and monetize

What does this have to do with my question? Literally nothing.

But we've been at this twice already, and I am not inclined to go for a third round.

Adieu.
Show HN: Tuby.dev – Indexing Rails videos via Vision AI code analysis
by alanalvestech | 2025-12-17 07:15:20+00:00
YouTube's algorithm is optimized for retention, not learning. As a Rubyist, I found it hard to find deep technical content amidst the noise of basic tutorials.

I built Tuby.dev to solve this. It's a curated aggregator for Ruby/Rails videos.

The Engineering:

Instead of relying on YouTube's metadata or captions (which are often incomplete), I built a pipeline that:

1. Downloads the video locally (to avoid datacenter blocking). 2. Sends it to Gemini 1.5 Flash (Vision API). 3. Performs OCR on the code shown on screen.

This allows the system to index Gems, patterns, and versions that the author used in the code but forgot to mention in the description or audio.

The Stack: It's running on Rails 8 with Inertia.js (React). Ruby version is 3.4.7 with Prism parser enabled.

I'd love to hear your thoughts on the classification approach or the stack.
by planckscnst | 2025-12-17 07:16:08+00:00
For now, this is mitigated by only including trusted content in the context; for instance, absolutely do not allow it to access general web content.

I suspect that as it becomes more economical to play with training your own models, people will get better at including obscured malicious content in data that will be used during training, which could cause the LLM to intrinsically carry a trigger/path that would cause malicious content to be output by the LLM under certain conditions.

And of course we have to worry about malicious content being added to sources that we trust, but that already exists - we as an industry typically pull in public repositories without a complete review of what we're pulling. We outsource the verification to the owners of the repository. Just as we currently have cases of malicious code sneaking into common libraries, we'll have malicious content targeted at LLMs
by adastra22 | 2025-12-17 07:16:36+00:00
In the concept of a “nation-state”, it is accurate. 20% of Israel’s population is non-Jewish, but it is still accurately described as a Jewish nation.

I’m not defending the morality of this classification scheme, just trying by to be accurate. It dates to the 19th century and is not with the times today, which is why I generally prefer to avoid the term myself.
by WOL_AI | 2025-12-17 07:17:04+00:00
WOL AI isn’t here to make you feel better—it’s here to make you act better. Most AIs politely answer while you stay stuck. WOL AI detects your mental state—overthinking, procrastinating, panic, ego—and responds accordingly. No motivation quotes, no generic advice. It forces clarity, cuts the noise, and calls out excuses. Built for founders and creators tired of “nice” AI. Not a productivity tool. A brutal reality-check engine. WOL AI helps you decide.
by necovek | 2025-12-17 07:17:46+00:00
There are better definitions. Monolith would be a full product (as we are talking Twilio, their main offering) in a single, tightly coupled codebase which does data passing mostly by directly calling appropriate code paths.

Service-oriented architecture is where you decouple parts of the full architecture into independent subsystems that communicate over opaque interfaces and without ability to break those boundaries.

Microservices architecture is a SOA taken in the direction of keeping them as small as possible, which can be very small!
by alicebossgoo | 2025-12-17 07:18:06+00:00
As Industry 4.0 advances, the integration of IoT-enabled liftsu2014connected to cloud-based maintenance platformsu2014allows predictive servicing, reducing unplanned outages. These innovations are transforming industrial spaces into smarter, safer, and more productive environments. With global e-commerce growth projected to exceed 25% annually, the demand for high-performance electrical lifts in industrial settings will continue to surge.
by Seattle3503 | 2025-12-17 07:19:40+00:00
> And I mean sure, everything is kinda janky on Jenkins, but everything falls into an expectable corridor of jank you get used to.

This is kinda where I am. No one really feels like they are selling a premium "just works" product. Its all jank. So why it the jank I chose at the price I chose?

At the moment I'm self hosting gitlab runners. Its jank. But it's free.
by leroman | 2025-12-17 07:21:52+00:00
The biggest challenge an agent will face with tasks like these is the diminishing quality in relation to the size of the input, specifically I find input of above say 10k tokens dramatically reduced quality of generated output.

This specific case worked well, I suspect, since LLMs have a LOT of previous knowledge with HTML, and saw multiple impl and parsing of HTML in the training.

Thus I suspect that in real world attempts of similar projects and any non well domain will fail miserably.
by 71bw | 2025-12-17 07:22:16+00:00
LLMs can handle a lot of these issues already, without having the user think about such issues.

Problem is - while these will be resolved (in one way or another) - or left unresolved, as the user will only test the app on his device and that LLM "roll" will not have optimizations for the broad range of others - the user is still pretty much left clueless as to what has really happened.

Models theoretically inform you about what they did, why they did it (albeit, largely by using blanket terms and/or phrases unintelligible to the average 'vibe coder') but I feel like most people ignore that completely, and those who don't wouldn't need to use a LLM to code an entirety of an app regardless.

Still, for very simple projects I use at work just chucking something into Gemini and letting it work on it is oftentimes faster and more productive than doing it manually. Plus, if the user is interested in it, it can be used as a relatively good learning tool.
by Moru | 2025-12-17 07:22:29+00:00
Exactly this. The black box in this case is a problem because it's not in my computer. It transfers the users data to an external entity that can use this data to train it's model or sell it.

Not everyone uses their browser just to surf social media, some people use it for creating things, log in to walled gardens to work creatively. They do not want to send this data to an AI company to train on, to make themselves redundant.

Discussing the inner workings of an AI isn't helping, this is not what most people really worry about. Most people don't know how any of it works but they do notice that people get fired because the AI can do their job.
by zeruch | 2025-12-17 07:22:31+00:00
They didn't evolve into SF; SF was a project inside of VA that eventually became the flagship of what remained after the hardware and related services were excised. When they started (1998/99), Git wasn't a viable option (the first version of it wasn't released until 2005, by which point SF had ballooned to an enormous scale at the time, with it's own product inertia, and it would be a few more years before Git would become a major VCS itself, which is when Github started, and by then VA/SF was in decline and had changed hands several times.

(disclosure: I was on the "Ignition team" for SF)
by blub | 2025-12-17 07:22:31+00:00
> No one claims that good type systems prevent buggy software. But, they do seem to improve programmer productivity.

To me it seems they reduce productivity. In fact, for Rust, which seems to match the examples you gave about locks or regions of memory the common wisdom is that it takes longer to start a project, but one reaps the benefits later thanks to more confidence when refactoring or adding code.

However, even that weaker claim hasn’t been proven.

In my experience, the more information is encoded in the type system, the more effort is required to change code. My initial enthusiasm for the idea of Ada and Spark evaporated when I saw how much ceremony the code required.
by nneonneo | 2025-12-17 07:22:59+00:00
When you tap one of those fields it bounces you to a contact card. If it is an existing contact (for example, yourself), you just get the full contact card. If that contact card has multiple addresses (my contact card lists ten), you get no indication of which one it was sent to.

At some point in time the actual email address used was flagged with a little “recent” badge - by itself a confusingly-worded tag - but even that doesn’t show up consistently.

It’s stupid because there’s really no reason to play hide and seek with the email address - that’s an identifier that people should generally be familiar with (since you have to use it reasonably often), and lots of people have multiple addresses that they can receive mail at.