MurphyA/hacker-news huggingface dataset:
by dpark | 2025-11-12 07:09:16+00:00
> Almost always the typing issues are the most trivial to fix, too.

For sure. My issue is with the ones I find in production. Trivial to fix doesn’t change the fact that it shipped to customers. The chances of this increases as the product size grows.

> It’s common for devs to add many unused or nearly unused (<3 uses) interfaces while also requiring substantial refactors to add minor features.

I’ve seen some of this, too. The InterfaceNoOneUses thing is lame. I think this is an educational problem and a sign of a junior dev who doesn’t understand why and when interfaces are useful.

I will say that some modern practices like dependency injection do increase this. You end up with WidgetMaker and IWidgetMaker and WidgetMakerMock so that you can inject the fake thing into WidgetConsumer for testing. This can be annoying. I generally consider it a good trade off because of the testing it enables (along with actually injecting different implementations in different contexts).

> I think what’s missed in these discussions is massive silent incompatibility between libraries in static languages.

What do you mean by this?

> It’s especially evident in numerical libraries where there are highly siloed ecosystems. It’s not an accident that Python is so popular for this. All of the interfaces are written in Python.

Are we talking about NumPy here and libraries like CuPy being drop-in replacements? This is no different in the statically typed world. If you intentionally make your library a drop in replacement it can be. If you don’t, it won’t be.

I am not personally involved in any numeric computing, so my opinions are mostly conjecture, but I assume that a key reason python is popular is that a ton of numeric code is not needed long term. Long term support doesn’t matter much if 99% of your work is short term in nature.
by monero-xmr | 2025-11-12 07:10:01+00:00
Valve is so successful because it is a private company, and the CEO is the CTO and he is essentially the corporate equivalent of a religious monk. How else can you get 20+ years to slowly build a software business?

As a side note YC and tech startups themselves have become reality TV. Your goal should be Valve! You should be Gabe Newell! You don’t need to be famous! Just build something valuable and be patient
Show HN: Cloud Piano – Piano with MIDI Keyboard. Instant and Effortless
by miika | 2025-11-12 07:10:09+00:00
For long time I have been observing how people buy a MIDI keyboard for just playing piano. The challenge is that keyboards often ship with lite version of a professional DAW, which is way too complex for many users. My mom couldn't do it!

I wanted to solve this problem by creating a super simple web app, which is only about playing piano with MIDI keyboard. Plug and play.

You can also import .mid file and watch it being played. Recently I added recording feature that will capture playback and these recordings can be saved to cloud and exported as .mid or .wav files.

Future plans involve displaying sheet music, and maybe testing how well live streaming keyboard events over websocket would work.

Too bad Safari doesn't support Web MIDI API but I believe that could be solved by creating native iOS / iPadOS application that would listen to MIDI events while forwarding them into web view.
by beAbU | 2025-11-12 07:10:18+00:00
I'm in Ireland and went out last night to try and find it, last year I got some spectacular photos from my bedroom window. Alas it only peaked as it was over the US so sadly I missed out.

Ireland is far enough north that we actually get the aurora somewhat regularly. We rarely have clear skies though, making it a true "planets align" thing to actually see it.
by pfannkuchen | 2025-11-12 07:10:59+00:00
I don’t know what your first sentence means. Do you say “killing” to mean “eliminating the job of”? I don’t see anywhere that mentioned “killing”.

If your second sentence is correct, then let’s allocate taxes to digging holes and filling them in? Ad absurdum but I think it applies? Like it seems reasonable to have an opinion on whether a function should continue to be funded by tax dollars. In a properly operating economy this would open up skilled labor to work somewhere more useful. Unless they weren’t actually skilled, in which case yes you have a problem hmm…
by lynx97 | 2025-11-12 07:11:52+00:00
Most criticism of C++ comes from people not really into the language. Sure, learning curve might be an issue. But if you are really into C++, there are a lot of things to like about it. At least I do love it. However, only since C++11. Before that, the language felt very strange to me, possibly due to the same effect, I didn't know enough about it.
by r0x0r007 | 2025-11-12 07:12:10+00:00
It's great to have .NET ecosystem expanding. I am a .NET dev, and I still use web optimized for mobile as my mobile platform(where applicable). Tried MAUI and all the other stuff, just doesn't cut it for me. You can make an app using it, but I would rather not to. The best 'mobile platform' for me was blazor hybrid, but then again - if it's already blazor why not go full web...I guess it depends on the 'seriousness' of your mobile application. If I had to develop a complex mobile app, I might choose another language framework, cause MAUI uses XAML and MVVM stuff that is quite a big overhead IMO.
by cstrahan | 2025-11-12 07:12:50+00:00
I think OP is talking about the compression and bit rate, not the placement of the mic.

When the mic is turned on, many headsets go from sounding good enough to sounding absolutely horrible. Something about switching from A2DP to HFP, and sharing the bandwidth between the incoming audio and outgoing audio.

AirPods are impacted much, much less, largely I think because the AAC-ELD codec is decent, and Apple OSes switch the audio from stereo to mono when the mic is on (which seems like a no-brainer IMO, but I guess not all operating systems do this).
by tpmoney | 2025-11-12 07:13:19+00:00
They regularly submit code and they buy consulting from the ffmpeg maintainers according to the maintainer's own website. It seems to me like they're already funding fixes in ffmpeg, and really everyone is just mad that this particular issue didn't come with a fix. Which is honestly not a great look for convincing corporations to invest resources into contributing to upstream. If regular patches and buying dev time from the maintainers isn't enough to avoid getting grief for "not contributing" then why bother spending that time and money in the first place?
by pinkgolem | 2025-11-12 07:13:25+00:00
>vast majority of people care more about RAM, SSD and CPU

The vast majority of people do not know what any of this is, and they do not care at all, they want a fast machine for there usecase.. and for most people that is the equivalent to editing a word doc and listening to Spotify.

After watching a review if the LG gram, yeah, I am not convinced that comes anywhere close in regards of speakers or keyboard.. and the durability seems.. questionable

It also seem to be around the same price point of a MacBook air with more or less the same specs on super duper black Friday sale
by almosthere | 2025-11-12 07:13:42+00:00
No, it's putting a high price on human life, but it depends on how you look at it. We can be a nation that gets bombed into nothingness, or the only country that can defend our own or another one. But we can't do that unless we're willing to actually build weapons of war.

It's why WWII vets did what they did knowing not every bomb, aircraft or handheld weapon was perfect but still ran in to stop Hitler. I would say that put a high price on human life. These last few generations won't get it until it gets its WW.
by nanolith | 2025-11-12 07:14:03+00:00
The function contracts are integrated into the codebase. Bounded model checking tools, such as CBMC, can be used to check for integer UB, memory safety, and to evaluate custom user assertions. The latter feature opens the door for creating function contracts.

I include function contracts as part of function declarations in headers. These take the form of macros that clearly define the function contract. The implementation of the function evaluates the preconditions at the start of the function, and is written with a single exit so the postconditions can be evaluated at the end of the function. Since this function contract is defined in the header, shadow functions can be written that simulate all possibilities of the function contract. The two are kept in sync because they both depend on the same header. This way, model checks can be written to focus on individual functions with any dependencies simulated by shadows.

The model checks are included in the same project, but are separate from the code under instrumentation, similar to how unit tests are commonly written. I include the shadow functions as an installation target for the library when it is installed in development mode, so that downstream projects can use existing shadow functions instead of writing their own.
by palmotea | 2025-11-12 07:14:19+00:00
>> Infrastructure should aim to be bland, try to stay on the lagging end of controversies, and aim for universal support. Trying to use it to win some controversy just makes it vulnerable.

> Can you provide examples of sources of information that MAGA considers neutral?

You're missing the point. I'm talking about how common institutions should behave in a diverse society. Like I said: stay on the lagging end of controversies (e.g. avoid controversial issues until they're truly settled) and aim for universal support (e.g. have good representation of all the factions and their points of view). It's not about what "sources of information" faction X "considers neutral," it's about not egregiously and one-sidedly poking faction X in support of faction Y. Give both factions reasons to like and support you. Maybe it's not full-hearted support, but that's a hell of a lot better than opposition.
Show HN: BindWeave – Subject-Consistent AI Video Generation
by Viaya | 2025-11-12 07:15:17+00:00
We’ve been exploring how to make AI video generation consistent. Most existing text-to-video models can create impressive short clips—but the “same person” often drifts across shots or disappears when multiple subjects are involved.

BindWeave (https://www.bindweave1.com ) is our attempt to solve that. It’s a subject-consistent video generation framework that unifies single- and multi-subject prompts using a cross-modal MLLM-DiT architecture—a multimodal large-language-model coupled with a diffusion transformer. By combining entity grounding and representation alignment, the model interprets complex prompts and keeps visual identities stable over time.

We built it because we wanted reliable, controllable subjects for storytelling, digital avatars, and research demos—without retraining for each character. Now creators can describe a scene, attach one or more reference images, and generate stable, high-fidelity clips where everyone stays recognizable throughout.

Demo videos and a short paper summary are on the site. We’d love feedback from anyone working on AI video, cross-modal generation, or identity preservation—what use cases or limitations matter most to you?
by manmademagic | 2025-11-12 07:15:46+00:00
This may be true in some cases, but I’ve also seen issues with too many stamps, signatures, red-tape, tribunals/committees, and multi-stage approval chains.

There’s a balance somewhere put there, but that balance is different for everyone.

Personally I think problematic decision making is more to do with the “blame” side of ownership. It benefits the unsure more than the certain, and not many people are okay with making and admitting to mistakes.
by thisislife2 | 2025-11-12 07:16:19+00:00
As a developer you should NOT have to pay Apple or Google or anyone any money to create / distribute software. Developers create real value to a platform, and no self-respecting developer should encourage this kind of exploitation. App Stores also exploit customers and also violate their privacy.

Note that the usage of App Stores on a Mac is not at the same level as that of iDevices (where everyone is forced to use the Apple App Store to install any software). And many Mac developers also sell / distribute their products outside it. Since your application is a Mac app, you do have a real choice to avoid App Store and distribute your app online through other means.

All that said, it's pretty hard to judge how much the App Store can help you sell your product because it depends on various factors like how useful your product is to your target market, how well-designed your product is, who your competitions are etc. Whether you can make money also depends on your business skills.

My advise - just sell and distribute the app yourself ( https://stripe.com/resources/more/how-to-start-a-digital-pro... ) and use the $99 on Google Adwords to promote your app ( https://business.google.com/in/google-ads/ ). How many people searching for the feature that your product offers, click your ad and buy your product will give you a very fair idea of the commercial viability of your app.
by kakacik | 2025-11-12 07:18:07+00:00
... and the most probable scenario - this is new normal, US slides mildly into fascist dictatorship ruled by elite who doesn't even try to hide its status and control, but maintains enough momentum of the past to keep it afloat at/around the top with China as a cca peer. Less actual military power but better overall economy shape. Its not like US is a champion of real democracy for decades, not if you compare it to places like Switzerland.

Lets not forget half of US population knew pretty well what they voted for and went on ahead full speed, in 'fuck it' or 'fuck'em' mentality.
by wahern | 2025-11-12 07:18:09+00:00
It's already too exhausting to use for OOM, which is why Rust effectively punted on that from the very beginning. And the ironic thing is that anyhow::Error (or similar) seems poised to become idiomatic in Rust, which AFAIU always allocates, while the extremely belated try_ APIs... does anybody even use them?

It's a shame. Were I designing a "low-level" or "systems" language, rather than put the cart before the horse and pick error results or exceptions, my litmus test would be how to make handling OOM as easy as possible. Any language construct that can make gracefully handling OOM convenient is almost by definition the fabled One True Way. And if you don't have a solution for OOM from the very beginning (whether designing a language or a project), it's just never gonna happen in a satisfactory way.

Lua does it--exceptions at the language level, and either setjmp/longjmp or C++ exceptions in the VM implementation. But for a strongly typed, statically compiled language, I'm not sure which strategy (or hybrid strategy) would be best.
by clort | 2025-11-12 07:18:18+00:00
My information may be a little out of date, but in Bluetooth there was two types of audio. There is isochronous streaming (Headset profile) and audio streaming (Audio Profile). The Headset profile is bidirectional and time-sensitive (packets will be dropped if they take too long), it was designed for headsets as per its name ("communication device") rather than the Audio profile which, although it can be a source or a sink is basically for streaming, where the audio is not time-sensitive as such.

So yeah, the isochronous streaming mode is much lower bit rate but thats probably why Windows sets it as a communications device, because it needs that mode.

Its difficult to know exactly, but I use a Logitech Zone Vibe 125 headphones with microphone and find it works fine for phone calls and listening to audio. However, I am not an audio nerd and neither are the people I speak to using it. I never had any luck with in-ear devices.
by Quothling | 2025-11-12 07:18:57+00:00
Go is frankly the polar opposite of C#. Go compiles to a native binary with no runtime dependencies and it relies on simple garbage collection and static linking. C# runs on the .NET runtime which is heavily managed, gives you JIT, reflection, dynamic code generation and so on. Go views concurrency as fire and forget, C# views it as compose and await. Go is extremely explicit while C# is extremely implicit.

Now, I understand that you may talk about it from a non-technical perspective, but even so, there are major differences. C# is a general purpose language for the cloud/web, and so is Go, but Go is also widely used in other areas like in embeded software. TinyGo is soooooooo much better than working with C/C++ or Rust as an example. Places like that where you wouldn't usually find a transpiled language (other than maybe Python with MicroPython).
Show HN: AI Terminal Course – Learn AI Engineering Like Learning Vim
by josharsh | 2025-11-12 07:19:21+00:00
I spent months watching AI tutorials on YouTube. Took notes. Felt like I learned a ton. Then I sat down to build something and... couldn't. I didn't actually understand a lot of stuff!

The problem: Passive learning doesn't work for engineering skills.

What makes this different:

• You TYPE every command (no copy-paste) • You SEE real API responses (not fake demos) • You PAY real costs (~$10 total) • Terminal-only (no context switching)

Think vimtutor, but for AI engineering.

20 modules covering: - Tokens, embeddings, RAG - Structured outputs, tool calling, agents - Cost optimisation, evals, production monitoring - Real OpenAI/Anthropic API calls

Try it: npx ai-terminal-course

No installation. Just run it.
by wvenable | 2025-11-12 07:19:21+00:00
I agree with the other comments that this understanding of exceptions is wrong. He's not wrong about these two points:

- Correctness: you don’t know if the exception type you’ve caught matches what the code throws

- Exhaustiveness: you don’t know if you’ve caught all exceptions the code can throw

But that's actually not a problem. Most of the time you shouldn't catch a specific exception (so always correct) and if you are catching then you should catch them all (exhaustive). A better solution is merely:

void f(string s) { try { File_handle fh { s, "r"}; // use fh } catch (const std::exception& e) { printf(stderr, e.what()); } }

That's all you need. But actually this code is also bad because this function f() shouldn't have a try/catch in it that prints an error message. That's a job for a function (possibly main()) further up the call stack.
by asterios33 | 2025-11-12 07:19:29+00:00
I believe the article misses the mark because it's one sided. unsurprising, since it seems written from the perspective of someone who sees the main unit of value as a pull request.

Collaboration is useless in deterministic predictable environment with a single source of truth. When you deal with lot of ambiguity,constant changes and need to adapt then you have no choice that collaborating and getting a feedback loop.

You can win alone, but you can’t lose alone.
Whosworkingnow.com
by belhassen2 | 2025-11-12 07:20:15+00:00
Who’s Working Now — a live map of the world’s working hours Instantly see which countries are awake and open for business — and now, you can add your own customers by country and contact them directly via WhatsApp in one click.

Perfect for remote founders, digital nomads, and global sales hackers who live across time zones. No sign-up. No data collection.

whosworkingnow.com
by urban_winter | 2025-11-12 07:21:38+00:00
If you're in the vicinity of the road called London Wall (where the car park referenced in the article is) then it's only a short walk to London's Roman amphitheatre [1]. It doesn't seem to be very well known but is quite impressive. It's one of very many bits of Roman history entombed in basements of London buildings.

The Merrill Lynch Financial Centre also has a big chunk of Roman stuff in the basement - but there's no public access and no access to the walkway around the ruins even if you're an employee.

[1] https://www.thecityofldn.com/directory/londons-roman-amphith...
by vineyardmike | 2025-11-12 07:23:03+00:00
Well he wrote a memo saying the women at Google were "neurotic" and that's why women biologically are predisposed to not be software engineers.

If that's conservative ideology, then I guess it is fair to say such ideology might not be appropriate for a workplace. In reality, he just said stupid stuff to be provocative, and tried to post-hoc justify it as vilifying conservatives instead.
by jorangreef | 2025-11-12 07:24:10+00:00
Appreciate your kind words, Kelsey!

I searched the recent history of our community Slack but it seems it may have been an older conversation.

We typically do code review work only for our customers so I’m not sure if there was some misunderstanding.

Perhaps the assumption that because we didn’t say anything when you pasted the code, therefore we must have reviewed the code?

Per my other comment, your benchmarking environment is also a factor. For example, were you running on EBS?

These are all things that our team would typically work with you on to accelerate you, so that you get it right the first time!
by smallstepforman | 2025-11-12 07:25:03+00:00
My biggest beef with exceptions is invisible code flow. Add the attribute throws<t> to function signature (so that its visible) and enforce handling by generating compiler error if ignored. Bubbling up errors is OK. In essence, this is result<t,e>. Thats OK. Even for constructors.

What I dislike is having a mechanism to skip 10 layers of bubbling deep inside call stack by a “mega” throw of type <n> which none of the layers know about. Other than
by fellowniusmonk | 2025-11-12 07:25:59+00:00
Ugh. Nietzsche.

It's just not interesting, its not really foundational, it weirdly adopts the value frame of what it rejects, its arrogant, much of it is trivially false.

It's like hearing someone talking about reading Von Mises or Ayn Rand or Myers Briggs types for the first time.

It's like, I'm too old and well informed now to find any of them interesting or of value, maybe they're a developmental phase and are ok if you don't get stuck in them.

Read them sure, but if you're the type of person who believes what they read and can't engage with it critically your better off reading more substantive and true works, like cheaper by the dozen or the boxcar children, or the musicians of brennan or read more interesting, modern, informed work like Wheeler.
by spookie | 2025-11-12 07:26:23+00:00
Agree in some ways. Still, discussing the nitty gritty is superfluous, the important underlying message you are making is more existential.

Open source software is critical infrastructure at this point. Maintainers should be helped out, at least by their largest users. If free riding continues, and maintainers' burden becomes too large, supply chain attacks are bound to happen.
by tpmoney | 2025-11-12 07:26:26+00:00
> someone who's contributed their time as a volunteer to an open source software project that we have come to rely on, now has some sort of an obligation to drop everything and do more unpaid work for a trillion dollar company

If you could highlight the relevant part of the bug report that demanded the developers "drop everything" and do "unpaid work for a trillion dollar company", that would be great because I'm having trouble finding it. I see "hey, we found this bug, we found where we think the issue is in the code and here's a minimal reproduction. Also FYI we've sent you this bug report privately, but we will also be filing a public bug report after 90 days." And no, I don't think having a policy of doing a private bug report followed by a public report some time later qualifies as a demand. They could have just made a public report from the get go. They could also have made a private report and then surprised them with a public bug report some arbitrary amount of time later. Giving someone a private heads up before filing a public bug report is a courtesy, not a demand.

And it's really funny to complain about Google expecting "unpaid work for a trillion dollar company", when the maintainers proudly proclaim that the likes of no less than Google ARE paying them for consulting work on ffmpeg[1][2][3]

[1]: https://fflabs.eu [2]: https://fflabs.eu/about/ [3]: https://ffmpeg.org/consulting.html