MurphyA/hacker-news huggingface dataset:
Show HN: Moshi – Talk to Claude Code from your phone (zero desktop install)
by rjyo | 2026-01-18 13:34:01+00:00
I built an iOS app to interact with coding agents from my phone.

Most remote solutions I've seen require installing a server or relay on your machine. Moshi is just an app — SSH/Mosh into your Mac/PC/Sandbox and you're done.

The use case isn't really "I need to get back to my computer." It's more like:
- I'm curious how the agent is doing on that refactor
- I want Claude Code to research something for me (it knows my codebase, unlike a fresh chatbot)
- I have an idea and want to tell the agent before I forget

I just type what I want — or speak it. Whisper transcribes locally, I hit send, done.

Whenever I open the app, it's ready. Connection stays alive — no tmux attach every time. Uses Mosh protocol so sessions survive wifi switches, phone sleep, walking between rooms.

Technical bits:
- Native iOS (React Native + Expo)
- libmosh/libssh2
- Whisper.cpp for speech-to-text (runs locally, no cloud)
- Face ID for key protection

No subscription, no server install, no cloud relay.

Testflight: https://testflight.apple.com/join/yApyT263

I know there are similar solutions, but Moshi is the first I've seen that doesn't require additional software on your Mac or rewire how data passes through (web relays, proxy servers, etc).

Happy to answer questions here or on Twitter: @odd_joel
by rbanffy | 2026-01-18 13:34:07+00:00
AT&T also had very strong design in their product lines. The terminals that descended from the Blit, with their square (1:1, not 4:5) CRTs was a thing of beauty. It crushed me to know how few remain and were not responsibly recycled.

As a career, we need to be better at preserving our history.
by echelon | 2026-01-18 13:34:09+00:00
I miss the M-series silicon, but plain old Ubuntu runs like a charm on Thinkpads. I much prefer the Ubuntu UX and native Linux environment.

Battery life is slightly worse, driver support is perfect - every peripheral I've tried is perfect, performance and security are top-notch.

My two complaints are battery life and compiling Rust code taking a bit longer. But everything else is better on Thinkpad.

I use a Thinkpad and MacBook Pro interchangeably.

Note: I use an X1 Carbon, so that's more like a MacBook Air. They're not 1:1 and my complaints are partly due to my choice.
by networkadmin | 2026-01-18 13:34:34+00:00
The cookie thing is just a red herring. Who gives a damn about cookies? Are they suddenly a privacy problem after decades in use? The people who want to track you (including these crooked governments who are pretending to care about cookies) are doing much more than using cookies these days. Which is exactly why they felt it safe to raise this giant kerfuffle about cookies. It's a distraction.
by Chris2048 | 2026-01-18 13:34:43+00:00
> The enthusiast offering ... because if everyone else is gouging the visitor, why shouldn't he?

Or because the fee they pay (food truck licence, parking/market fee, tax, etc) is already priced as such so they have little choice. In my country, rent is very high, that's why coffee is so expensive (and coffee places struggle to stay afloat) - the stores compete heavily, but the landlord extracts most of the value.

> The same goes for second-hand clothing stores.

Isn't giving "the girls" first look / priority morally the same? The 2nd-hand stores wise to this could just as easily advertise on vinted, no?

Describing all of this as 'hypercapitalist' seems hyperbolic to me.
by rjzzleep | 2026-01-18 13:34:49+00:00
> It’s much more impressive to say you have done something than to say you’re going to do it.

From my experience, you have to do both otherwise someone else takes what you do, markets as his own and you get scraps. It keeps happening to me, since I don't generally like to talk about what I do. And I think fundamentally it's a big difference between European and American culture.
by benrutter | 2026-01-18 13:34:55+00:00
This times a zillion! I think there's been a huge industry push to convince managers and more junior engineers that spark and distributed tools are the correct way to do data engineering.

I think its a similar pattern to web dev influencers have convinced everyone to build huge hydrated-spa-framework-craziness where a static site would do.

My advice to get out of this mess:

- Managers, don't ask for specific solutions (spark, react). Ask for clever engineers to solve problems and optimise / track what you vare about (cost, performance etc). You hired them to know best, and they probably do.

- Technical leads, if your manager is saying "what about hyperscale?" You don't have to say "our existing solution will scale forever". It's fine to say, "our pipelines handle dataset up to 20GB, we don't expect to see anything larger soon, and if we do we'll do x/y/z to meet that scale". Your manager probably just wants to know scaling isn't going to crash everything, not that you've optimised the hell out of everything for your excel spreadsheet processing pipeline.
by lillesvin | 2026-01-18 13:35:48+00:00
Aristophanes was such a troll. I can only recommend reading some of his plays, like The Assemblywomen (where this word is from), The Wasps, and The Clouds. They're almost 2500 years old but they've aged incredibly well both thanks to the many amazing translators that have worked on them and because the source material is also solid satire that in many cases is still relevant today.

Plato argued that The Clouds (which is sharp satire of Socrates and his school) was in part what got Socrates convicted and killed. This is obviously debatable but Aristophanes certainly didn't self-censor or mince words.
by rglullis | 2026-01-18 13:36:10+00:00
When an IP address is linked to any other data, then it counts as PII. By itself, it's not.

So, sure, if you stick the user's IP address on a cookie from a third-party service, you are sharing PII. But this is absolutely not the same as saying "you need to claim legimate interest to serve anything, because you will need their IP address".
by ben_w | 2026-01-18 13:36:29+00:00
The Iron Man thing… MCU Tony Stark wasn't as smart as he thought he was. He should've allowed surgeons to help with his heart immediately, rather than the entire B-plot of Iron Man 2; Iron Man 3's plot could've been averted in a whole bunch of ways if he'd been less arrogant and thoughtless, and also shows him as a loner unwilling to call for assistance despite (by this point) being allied with what passes for gods in the MCU; Ultron was his own hubris punching him in the face; the justification he gives for the Sokovia Accords was a stupid response to an act of self-defence that, sure, could've and should've been handled better, but it isn't like Stark himself was great at avoiding collateral damage during emergencies in the other films; his rage-fight against Barnes in Civil War, while understandable, was wildly unprofessional and a sign he was not a suitable person to be in possession of a one-man weapon system like the Iron Man suits have been shown to be; his tech gift to Peter Parker had wildly inadequate safety measures to be gifted to someone still in school, even if they had been to space.

Basically: yes, Musk is just like Stark. Half as smart as he thinks he is, has main-character syndrome and/or narcissism.
by jlokier | 2026-01-18 13:37:04+00:00
It's not from the 2014 changes.

From https://commonslibrary.parliament.uk/research-briefings/sn06...:

"Someone who was born British and has no other nationality cannot be deprived of their citizenship in any circumstances."

"Deprivation now affects people born in the UK, not just naturalised citizens"

"Until 2003, however, deprivation was only possible for naturalised citizens."

"The Nationality, Immigration and Asylum Act 2002 extended citizenship deprivation to British-born dual nationals for the first time."
by jraph | 2026-01-18 13:37:34+00:00
If you are an app or website developer, at least you won't break other's systems.

But you might still break stuff in your own projects. Imagine you extend a native prototype with a method, and later the native prototype starts having a method with the same name.

Newer libraries start using that new standard method.

You upgrade the libraries your website depends on, or add a dependency, and this new code happens to depend on that native prototype. Only you replaced it with your custom method, and that method likely doesn't have the exact same behavior. You broke that new code and fixing this might not be trivial because uses of your custom method are sprinkled everywhere in your code.

It only works if you ever works on projects that have zero dependencies, or dependencies you never update.

Or you could spare yourself the troubles and define a method that takes the node in parameter.

It's also a question of forming good habits: you could be working on your projects now, forming a habit of extending prototypes, but will you remember not to do this the day you write a library?

By the way, how can you be sure you won't move some of your app code because you like your utility functions and would like to reuse them in another project of yours? And why not open source that shared code, so you can just install it with NPM? Bam, that stuff is a library now.
Show HN: Open-source confusion matrix generator for ML models
by pareshrnayak | 2026-01-18 13:37:36+00:00
Hi HN,

I built a small open-source web app that generates confusion matrices for ML models.

I originally needed this while working on a project and was surprised that many simple tools were either paid, cluttered, or required heavy setup. I wanted something lightweight, free, and easy to use.

The app supports numeric and string labels, CSV upload or manual entry, multi-class matrices, and shows common metrics like accuracy, precision, recall, and F1-score. You can also download the generated matrix as an image.

It’s fully open source and built with Streamlit. I’d love feedback, suggestions, or contributions from the community.

GitHub: https://github.com/pareshrnayak/confusion-matrix-generator
Live demo: https://confusion-matrix-gen.streamlit.app
by m0llusk | 2026-01-18 13:38:13+00:00
The swipe against IKEA at the end seems out of place. In my experience IKEA knives have decent materials, design, and build quality despite the low price point. Maybe this is an artifact of the author's focus on resale value? IKEA knives have a low initial acquisition cost which contributes to extremely low resale prices, but they seem to function well and much better than Forgecraft knives.
by kmacdough | 2026-01-18 13:38:14+00:00
The biggest advantage? Regional caches.

If your traffic volume stays well below server capacity, the network connection is impeccable and throughput isn't a major factor in ISP costs, then the improvement is indeed negligible.

However, if the server or it's network ever experience congestion or disruption, or you simply face sheer volume, that's when CDNs shine.

Regional caches insulate clients from network or performance issues with your server or its connection. If you have high volume, they also drastically reduce traffic through the backbone which can reduce ISP costs, depending on your contract.

Like others say, this really applies to all static content, including static media, css and js.

I hear you ask, "how can you be exceedingly good at this?" Caching itself isn't tricky, but catching efficiently and effectively at such huge scales is. The fact that Cloudflare offers these services for FREE, is a pretty good (perhaps Faustian) deal.
by erricravi | 2026-01-18 13:39:49+00:00
This 61% figure is a significant milestone for grid resilience. At Storify News, we’ve been tracking how the 2025 surge wasn't just about general demand, but specifically the localized clusters of AI data centers and the electrification of industrial heat. What’s particularly interesting here is the "duck curve" management—solar handled the bulk of the demand surge, but it’s the rapid deployment of BESS (Battery Energy Storage Systems) that actually made this 61% figure viable without destabilizing the frequency. The question for 2026 is whether the transmission infrastructure can keep up with this pace of interconnection.
by exceptione | 2026-01-18 13:40:01+00:00
Truism aside, Europe hasn't a lack of fertile grounds nor good climate.

Europe has a pressing need for minerals and energy.

> The reason almost the whole EU budget (hyperbole, but indeed
> it is a lot of the EU budget) is spent on agricultural
> subsidies is precisely to protect our food security.

Protect food security or export status? Case in point, we are overspending on agriculture. Also, it would have been better to trade with African countries wrt the real pressing concern. A missed chance.
by Fargren | 2026-01-18 13:40:08+00:00
This is not my experience at all with Facebook. Since six months ago or so, Facebook is saying my three option are to pay them a subscription, accept tracking, or not use their products. I went with option three, but my reading of the GDPR as that it's illegal for them to ask me to make this choice.

I'm in Spain, this is probably not the same worldwide.
by jerkstate | 2026-01-18 13:40:14+00:00
There's a big difference between "I tried it and it produced crap" and "it will replace developers entirely any day now"

People who use this stuff everyday know that people who are still saying "I tried it and it produced crap" just don't know how to use it correctly. Those developers WILL get replaced - by ones who know how to use the tool.
by kannanvijayan | 2026-01-18 13:40:27+00:00
I suspect it's just circumstantial - two different design approaches. Both of the approaches have their advantages and disadvantages.

IMHO the bigger issue with NaN-boxing is that on 64-bit systems it relies on the address space only needing <50 bits or so, as the discriminator is stored on the high bits. It's ok for now when virtual address spaces typically only need 48 bits of representation, but that's already starting to slip with newer systems.

On the other hand, I love the fact that NaN-boxing basically lets you eliminate all heap allocations for doubles.

I actually wrote a small article a while back on a hybrid approach called Ex-boxing (exponent boxing), which tries to get at the best of both worlds: decouple the boxing representation from virtual address significant bits, and also represent most (almost all) doubles that show up at runtime as immediates.

https://medium.com/@kannanvijayan/exboxing-bridging-the-divi...
by CPLX | 2026-01-18 13:40:37+00:00
While this is absolutely true and I've read this before, I don't think you can make this an open and shut case. Here's my perspective as an old guy.

The first thing that comes to mind when I see this as a counterargument is that I've quite successfully built enormous amounts of completely functional digital products without ever mastering any of the details that I figured I would have to master when I started creating my first programs in the late 80s or early 90s.

When I first started, it was a lot about procedural thinking, like BASIC goto X, looping, if-then statements, and that kind of thing. That seemed like an abstraction compared to just assembly code, which, if you were into video games, was what real video game people were doing. At the time, we weren't that many layers away from the ones and zeros.

It's been a long march since then. What I do now is still sort of shockingly "easy" to me sometimes when I think about that context. I remember being in a band and spending a few weeks trying to build a website that sold CDs via credit card, and trying to unravel how cgi-bin worked using a 300 page book I had bought and all that. Today a problem like that is so trivial as to be a joke.

Reality hasn't gotten any less detailed. I just don't have to deal with it any more.

Of course, the standards have gone up. And that's likely what's gonna happen here. The standards are going to go way up. You used to be able to make a living just launching a website to sell something on the internet that people weren't selling on the internet yet. Around 1999 or so I remember friend of mine built a website to sell stereo stuff. He would just go down to the store in New York, buy it, and mail it to whoever bought it. Made a killing for a while. It was ridiculously easy if you knew how to do it. But most people didn't know how to do it.

Now you can make a living pretty "easily" selling a SaaS service that connects one business process to another, or integrates some workflow. What's going to happen to those companies now is left as an exercise for the reader.

I don't think there's any question that there will still be people building software, making judgment calls, and grappling with all the complexity and detail. But the standards are going to be unrecognizable.
by networkadmin | 2026-01-18 13:40:44+00:00
> Experienced sysadmins in my experience were the ones pushing adoption because they had to clean up the messes caused by SysV’s design limitations and flaws

That's funny. I used to have to clean up the messes caused by systemd's design limitations and flaws, until I built my own distro with a sane init system installed.

Many of the noobs groaning about the indignity of shell scripts don't even realize that they could write init 'scripts' in whatever language they want, including Python (the language these types usually love so much, if they do any programming at all.)
by Eikon | 2026-01-18 13:41:02+00:00
ZeroFS [0] is very thankful for what it brought to Linux with the v9fs [1] subsystem which is very nice to work with (network native) compared to fuse :)

[0] https://github.com/Barre/ZeroFS

[1] https://docs.kernel.org/filesystems/9p.html
by ashirviskas | 2026-01-18 13:42:21+00:00
I wonder what if we just crammed more into the "tokens"? I am running an experiment of replacing discrete tokens with embeddings + small byte encoder/decoder. That way you can use embedding space much more efficiently and have it contain much more nuance.

Experiments I want to build on top of it:

1. Adding lsp context to the embeddings - that way the model could _see_ the syntax better, closer to how we use IDEs and would not need to read/grep 25k of lines just to find where something is used.
2. Experiments with different "compression" ratios. Each embedding could encode a different amount of bytes and we would not rely on a huge static token dictionary.

I'm aware that papers exist that explore these ideas, but so far no popular/good open source models employ this. Unless someone can prove me wrong.
by riffraff | 2026-01-18 13:42:34+00:00
> why is Trump burning so many bridges for such a superfluous, unnecessary, counterproductive action? Maybe he thought it would be an easy land grab. Maybe it is to distract from his hugely unpopular immigration policy. Maybe it is because, as Trump told the New York Times, possession is “what I feel is psychologically needed for success. I think that ownership gives you a thing that you can’t do, whether you’re talking about a lease or a treaty.” Maybe it is literally about maps.

the major missing potential reason, and I'm not saying it's that one, is that the Epstein files are still only partially released and war works so well as a distraction that it's been featured in multiple books and movies.
by dwood_dev | 2026-01-18 13:43:01+00:00
I'm surprised we have not seen more investment into RISC-V from Chinese firms. I would think they want to decouple from ARM and the west in general as a dependency. Maybe they view the coup of ARM China as having secured ARM for the time being and not as much pressure?

Either way, it's currently hard to be excited about RISC-V ITX boards with performance below that of a RPi5. I can go on AliExpress right now and buy a mini itx board with a Ryzen 9 7845HX for the same price.
by XorNot | 2026-01-18 13:43:06+00:00
Man I just discovered this as a good guide on how to exceed the normal limits on Linux kernel modules.

Been working on a derviative which hooks the VFS to allow dynamically remapping file paths on a per process basis so I can force badly behaved apps to load custom TLS certificates (looking at you Bazil builds in nixpkgs).

(If anyone knows something which already does this it would save me a lot of yak shaving)
by rglullis | 2026-01-18 13:43:18+00:00
Yeap, but the thing is:

- they don't care about the cookies they are setting on their properties, if most of the functionality they have require you to be authenticated anyway.

- These "smaller websites" are exactly the ones more likely than not to be Google's and Facebook's largest source of data, because these sites are the ones using Google Analytics/Meta Pixel/etc.
by YeGoblynQueenne | 2026-01-18 13:44:25+00:00
Funny, but as a speaker of Greek I never realised that it's in principle possible to basically create infinitely many, infinitely long new Greek words by stitching together word-roots and connectives, like "λόπαδ-ο τέμαχ-ο", etc.

I mean, has any linguist noticed this? The ability to (again in principle) embed infinitely many sentences is AFAIK an argument for the infinite generativity of natural language. Can the same argument be supported at the word-level also? And does anyone know whether it has?

Also, I think in German it's very common to string together words like that to form longer words. Are there more languages with that characteristic?
by snapplebobapple | 2026-01-18 13:44:37+00:00
Many cities in north america you cant get occupancy without grid tied electricity, so every house incurs the coat of bas government policies on transmission. Its why i havent bothered with this yet. The optimal setup for here is natural gas generator, some battery and some solar given how stupid the fixed charges are here but you cant live in your house if you disconnect from the grid (even better would be for fuel cell manufacturers to offer something sized for a house so i can get hot water put of it as well and a silent unit)
by woooooo | 2026-01-18 13:44:51+00:00
The issue is when all the spending gets you is more complexity, maintenance, and you don't even get a performance benefit.

I once interviewed with a company that did some machine learning stuff, this was a while back when that typically meant "1 layer of weights from a regression we run overnight every night". The company asked how I had solved the complex problem of getting the weights to inference servers. I said we had a 30 line shell script that ssh'd them over and then mv'd them into place. Meanwhile the application reopened the file every so often. Zero problems with it ever. They thought I was a caveman.
by Chris2048 | 2026-01-18 13:45:11+00:00
They've effectively outsourced the work - they are paying this guy to get up at 5:30AM on their behalf. You go shopping for yourself, he goes on behalf of his customers.

> they've completely demolished the vibe of something formerly quaint.

I think you mean overlooked. Well, it's in the spotlight now, and gotten popular.
More busy, less calm, less 'quaint'. The market exists for (as a result of) the sellers, of they are happy, consider that the target demographic has just shifted, and you are no longer it.

> Imagine if I went to a hippie festival..

What is a 'hippy-festival', does it imply some kind of values shared by the seller, or is that just a description of the usual buyer?

Feels a bit like the glass-makers fallacy.

Why can't the food truck do the same? Why do they need to go to the 'fancy neighbourhood' if the food truck can raise their prices in their current location (festival)? Do you think the food truck sellers believe this is a bad thing? Should the food sellers be prevented from earning more so that you can pay less - and surely the food truck sellers could continue charging less if they wished? Unless the festival organisers started charging them higher fees.
by dataviz1000 | 2026-01-18 13:46:54+00:00
I flew from Asia to Buenos Aries after on a whim deciding not to return home to the US. I ran out of USD a while ago. Everywhere in the world I can withdraw cash with a small fee and whatever the exchange rate is. In Argentina it was a $10 fee plus the government set exchange rate and max withdraw was 60,000 pesos. So I was paying $10 to get $60 worth of pesos.