MurphyA/hacker-news huggingface dataset:
by crazygringo | 2025-12-13 22:24:07+00:00
Are any VPN's getting China wrong? It would be pretty obvious. In fact, common VPN's I'm looking at don't even support China as an option. Obviously no VPN's are mixing countries up where it becomes clear from what you're allowed to browse.

But so "if you do things that are legal in one country, but might not be in another" is what I'm specifically asking about. Ultimately, legality is determined by the laws that apply to you, not the country your packets come out of. So I'm asking for a specific example.

And I already said, that if a site is attempting to determine permissions based on the country, it's doing so via the same list. E.g. when the country is actually Greenland, but you think it's the UK, and Netflix also thinks it's the UK. Which is why I'm saying, at the end of the day, is there any real consequence here? If both sender and receiver think it's the UK, what does it matter if it's actually Greenland?
by abetusk | 2025-12-13 22:24:44+00:00
It was threatening to rain but I thought I could make it to my destination so I bolted out the door. Half way it started pouring. I stopped in the middle of the side walk, under a tree. I was watching a cat further down the sidewalk that was in the same situation so I didn't notice a lady pull up with her car.

She just handed me an umbrella and drove off after I said thank you.
by stumptownkiwi | 2025-12-13 22:25:18+00:00
We used to run a map website called Pudland, which was a pretty busy WC2 community. I also wrote a map utility called Puddle that randomised maps, rotated them, etc to make them a bit more interesting; I remember reverse-engineering the map format to do it, which was a fun exercise. What great times they were.
by purplesyringa | 2025-12-13 22:25:22+00:00
You can try to write it in Rust, doesn't mean you'll succeed. Rust targets the abstract machine, i.e. the wonderful land of optimizing compilers, which can copy your data anywhere they want and optimize out any attempts to scramble the bytes. What we'd need for this in Rust would be an integration with LLVM, and likely a number of modifications to LLVM passes, so that temporarily moved data can be tracked and erased. The only reason Go can even begin to do this is they have their own compiler suite.
by linguae | 2025-12-13 22:25:35+00:00
I feel a major shift happened in the 2010s. The tech industry became less about making the world a better place through technology, and more about how to best leverage power to make as much money as possible, making a world a better place be damned.

This also came at a time when tech went from being considered a nerdy obsession to tech being a prestigious career choice much like how law and medicine are viewed.

Tech went from being a sideshow to the main show. The problem is once tech became the main show, this attracts the money- and career-driven rather than the ones passionate about technology. It’s bad enough working with mercenary coworkers, but when mercenaries become managers and executives, they are now the boss, and if the passionate don’t meet their bosses’ expectations, they are fired.

I left the industry and I am now a tenure-track community college professor, though I do research during my winter and summer breaks. I think there are still niches where a deep love for computing without being overly concerned about “stock line go up” metrics can still lead to good products and sustainable, if small, businesses.
by pjc50 | 2025-12-13 22:26:15+00:00
Plenty of people were pointing out that voting machines had poor security for about two decades. Even before that, there was the mechanically disastrous Bush vs Gore Florida ballot.

America being what it is, with endless Voting Rights Act lawsuits required to keep the southern states running vaguely fair elections, it was impossible to get a bipartisan consensus that elections should actually be fair. And so the system deteriorates.
by wongarsu | 2025-12-13 22:26:19+00:00
Attempting to use a VPN location in Somalia and actually getting routed to an exit in Paris or London is not what I would consider "close enough". That's off by 3000 miles. That's like claiming to be in the Amazon Rainforest in Brazil while being in Montreal, Canada. And apparently 28% of locations are off by at least this much

And if I do it for privacy, the actual exit location seems very relevant. Even if I trust the VPN provider to keep my data safe (which for the record I wouldn't with the majority of this list), I still have to consider what happens to the data on either end of the VPN connection. I'm willing to bet money that any VPN data exiting in London is monitored by GCHQ, while an exit in Russia probably wouldn't be in direct view of NSA and GCHQ
by ramity | 2025-12-13 22:27:00+00:00
I see I was mistaken, but I'm tempted to continue poking holes. Trying a different angle, though it may be a stretch, but could a caching layer within the VPN provider cause these sort of "too fast" RTTs?

Let's say you're a global VPN provider and you want to reduce as much traffic as possible. A user accesses the entry point of your service to access a website that's blocked in their country. For the benefit of this thought experiment, let's say the content is static/easily cacheable or because the user is testing multiple times, that dynamic content becomes cached. Could this play into the results presented in this article? Again, I know I'm moving goalposts here, but I'm just trying to be critical of how the author arrived at their conclusion.
by devilbunny | 2025-12-13 22:27:12+00:00
Do you have friends or family in your home country that will run an AppleTV box with Tailscale for you as an exit node?

I can't get into work from a non-US IP, but I can Tailscale back to my house and it works just fine. I even gave my in-laws (who live several states away) an AppleTV box running TS just to have another endpoint if for some reason the power goes out at my house while I'm gone (rare, but happens).
by SV_BubbleTime | 2025-12-13 22:27:12+00:00
“We don’t censor results”… well…

Either that is completely bullshit, or it’s technically-bullshit.

1. They don’t have to censor because their sources censor for them. “Oh we’re just an aggregator of censored results” doesn’t mean “this is an uncensored search engine” like the claim would have you believe.

2. Proof of this is evident in by comparing Russian yandex.com, my now go to for anything related to hacking, pirated anything, topics of censorship or controversial discussion, even “legit” but rarer information like how to train or use X or Y AI model, etc. The domains that appear on yandex remind me a time gone by. Like image search before Pinterest, unreliable but not sterilized.

3. I use DDG everyday. In the last year or so, I have found myself going to Google, Bing, Brave, Yandex, SearX, and other more than ever. The quality of DDG has for me, unquestionably slipped. I have a strong distaste for Google, and have used them this year more than ever.

They are not uncensored, although maybe they allow that burden to be done for them to keep their nose high in their air on the topic.

However, I fear it may be a moot point as I find myself looking elsewhere often now.
by XenophileJKO | 2025-12-13 22:28:07+00:00
I don't think you realize the level of damage it generally takes to get bipartisan support for creation of an oversight body.

It was popularized that an estimated 8,000 infant deaths attributed to swill milk occured every year in NYC in the 1850s (take with a grain of salt).

Even more recently much of the banking regulation only occured after severe market issues that broadly impacted the economy.

On a related note: "Layoffs" are going to be a hard practical harm point to rally around. Unless we fundamentally change the nature of our economy (Which doesn't tend to happen until the previous system collapses.), effeciency is king. Tha market isn't rational, but effeciency is a competitive advantage that compounds over time. So you have a prisoners dilemma here. If you want to restrict a technology that boosts efficiency, you either have to close your market and then put up rules that constrain efficiency or you bleed your prosperity.
by mrob | 2025-12-13 22:28:16+00:00
As somebody who's tried using a miswak [0] teeth-cleaning twig out of curiosity, I can say with confidence it's not the same experience as using a modern toothbrush. It's capable of cleaning your teeth effectively, but it's slower and more difficult than a modern toothbrush. The angle of the bristles makes a huge difference. When the bristles face forward like with a teeth-cleaning twig your lips get in the the way a lot more. Sideways bristles are easier to use.

[0] https://en.wikipedia.org/wiki/Miswak
by conartist6 | 2025-12-13 22:28:20+00:00
It'll get you an academic integrity investigation if you get caught using it to write either a first draft or a final draft of a paper, and especially for an English class where the whole point is for you to learn how to write.

If you're going to try to fake being able to write, better to try to dupe any other professor than a professor of English. (source: raised by English majors)
Show HN: I made a HumanLayer-clone Claude Code plugin
by yz494 | 2025-12-13 22:28:22+00:00
I made a clone of the workflow described by Dex Horthy in Advanced Context Engineering in the form of Claude Code Plugin where you can download at https://github.com/billlyzhaoyh/humanlayer-clone.

It enables you to step through the three steps of using coding agent to accomplish complex tasks: research, plan and implement. This is also backed by a Linear based automation flow that you can follow the plug in to setup. The plugin will help you set up the github workflow if you wish or you can copy paste from my repo.

Let me know your thoughts and feedback!
by rynn | 2025-12-13 22:28:23+00:00
> Is there any real-life situation in which this matters, though?

You’d be shocked at the number of people in regulated industries that thinks a VPN inherently makes them more secure. If you think your traffic exits in the US and it exits in Canada — or really anywhere that isn’t the US — that can cause problems with compliance, and possibly data domicile promises made to clients and regulators.

At minimum, not being able to rely on the provider that you are routing your client’s data through is a big deal.
by 141205 | 2025-12-13 22:28:48+00:00
I was driving from Sacramento to Reno, and there was a bad snowfall up in the mountains. I ended up getting struck in a small country town, and couldn't get up an iced hill. I thought I was going to be stuck there the entire day (at least), but a stranger pulled up in their pickup truck—with four wheel drive—and towed me up the hill and to safety. That's the most significant act of kindness I can remember—from a complete stranger.
by pxc | 2025-12-13 22:29:07+00:00
> If a script is simple - I use posix sh + awk, sed, etc.

> But if a script I write needs to use arrays, sets, hashtable or processes many files

One option that I sometimes use at work (in addition to writing some Python CLIs) that is a pretty nice next step on this spectrum is Bash-with-all-the-fixins'.

I use a Nix-based dependency resolver for shell scripts called resholve¹ to parse scripts so that it can identify all of their dependencies (including Bash itself), then produce a "compiled" script as a Nix build where all of the references to external programs are replaced with pinned Nix store paths.

Then I have a fixed (and recent) version of GNU Bash regardless of platform, so I'm free to use Bash features that are newer or nicer than POSIX sh. My favorite such features are `mapfile` and `lastpipe` for writing in a more functional style, plus of course maps ("associative arrays").

I don't have to worry about portability problems with common utilities, because my scripts will bring along the expected implementations of coreutils, `find`, `grep`, etc. I'm free to use "modern" alternatives to classic utilities (like `rg` instead of GNU grep or `fd` instead of GNU findutils) if they offer better performance or more readable syntax. Polished interactivity is easy to build by just embedding a copy of `fzf`. And while I don't love Bash for working with structured data, it becomes a lot less painful when I can just pull in `jq`.

It's obviously got some disadvantages versus an option like Python, but the amount-of-code to functionality ratio is also much more favorable than Python's.

I typically use this for scripting build and development tasks in projects that already use Nix (via Devenv— I have some unpublished changes to the scripts module that add resholve and ShellCheck integration) to manage their environments, so there's no special packaging/distribution/setup burden.

IME it makes for vastly more readable and maintainable shell scripts than painstakingly limiting oneself to pure POSIX sh, so it can serve quite well as a middle ground option between barebones sh and a "real" programming language as your little script gradually grows in complexity.

> if you need external deps - just statically link them and distribute a cross-compiled binary (use zigcc[1] or easy Nim cross-compilation).

The deployment story sounds very slick and hard to beat! This is something I might want to try for scripts I want to be easy to distribute on macOS systems that don't have Nix installed.

--

1: https://github.com/abathur/resholve
by eek2121 | 2025-12-13 22:29:09+00:00
You are in the minority. Most folks that subscribe to VPNs are folks in the US, Canada, EU, and other "First World" countries. (I had a source a while back for something completely unrelated, however I didn't save it)

I'm not discounting you at ALL, I'm simply stating that the majority of traffic originate from these countries. Most of these folks just want to hide their IP address for various reasons. Privacy, Piracy, etc. Most don't care if it's in the next largest city, they just don't want it to appear to come from them.

Folks in countries like yours will likely pick endpoints to bypass the government. Folks up to nefarious stuff like cracking web sites, social media influencing, etc. will likely pick the target country more carefully. Anyone else? Whatever is the default.

I recognize this is a hard concept to understand for folks on this site, but the average joe signing up for a VPN doesn't even remotely understand what they are doing and why. They were pitched an idea as a way to solve privacy issues, block ads, etc. and they signed up for it. The software suggested a low latency link, and they went with the default.

The ads for a lot of VPN providers literally use scare tactics to sell the masses on the idea.
by imglorp | 2025-12-13 22:29:18+00:00
And who is going to find all those capsuled people and rescue them? Rescuers will be swamped with hundreds of thousands of non-capsuled people who should logically take priority. Depending on how these things float, if they get swept out to sea, you might need a ship with a crane to lift the capsule aboard. Does it float nicely with the hatch open or do you have to stay sealed up to stay afloat? Can you float with air ports open or do all of you have to stay breathing that scuba tank in the photo; how long will that last? What will many -- thousands? -- of EPIRBs all going off at once do to the SAR system?
by cootsnuck | 2025-12-13 22:29:20+00:00
> For transparency, a single software engineer budget is $670K+.

Are you saying that the costs to employ a single software engineer is $670K+? If you mean something else then nvm.

Otherwise that's a ridiculous number to use unless you are specifically talking about places with the highest cost of living in the country where a mid-level dev starts at over $200K.
by fuzzfactor | 2025-12-13 22:29:47+00:00
It's not the drinks themselves, turns out they're actually toxic anyway.

It's people who normally have better things to do, getting together at times with nothing better to do than raise a toast to something or other.

And some of them just can't help it, they come up with ideas a little bit better than the status quo, while they're at it, and sometimes quite spontaneously :)

Maybe it's a more uninhibited evaluation of the status quo at the time, which is like table stakes as an accepted baseline and will remain that way until somebody gets a wild hair and raises the stakes in a way that's meaningful to all present.

"Sheesh, doesn't such-and-such really suck?"

"Yeah, it's a shitshow, grumble grumble."

"Hey, what about ?"

"Wow, you're right, it could happen."
by jmward01 | 2025-12-13 22:30:01+00:00
I think there is a calculation that makes the point a little clearer. There is some distance, x, where it is cheaper to transport the electrons mechanically than it is to push them over a wire. Every month that distance gets shorter as battery prices drop. This gets even more advantageous for batteries when you start talking about variable use and generation since it is easier to change the destination or source of a battery container than it is to change the destination or source of transmission lines. My main point is that that distance x is going to rapidly get towards just a few miles away from point of use very shortly. Imagine a small city getting a local electricity provider. I actually think the way it is likely to go is that energy consumers (cities, factories, etc) will start installing backup power via battery shipment and then slowly start disconnecting from the larger grid as the cost of the battery container delivered power dips below the cost for transmission line delivered. The infrastructure is just so much more efficient for most use cases because we already have that infrastructure for shipping other goods.
by danenania | 2025-12-13 22:30:05+00:00
You can use an agent while still understanding the code it generates in detail. In high stakes areas, I go through it line by line and symbol by symbol. And I rarely accept the first attempt. It’s not very different from continually refining your own code until it meets the bar for robustness.

Agents make mistakes which need to be corrected, but they also point out edge cases you haven’t thought of.
by glamp | 2025-12-13 22:30:20+00:00
Hey Boris,

I couldn't agree more. And using Plan mode was a major breakthrough for me. Speaking of Plan Mode...

I was previously using it repeatedly in sessions (and was getting great results). The most recent major release introduced this bug where it keeps referring back to the first plan you made in a session even when you're planning something else (https://github.com/anthropics/claude-code/issues/12505).

I find this bug incredibly confusing. Am I using Plan Mode in a really strange way? Because for me this is a showstopper bug–my core workflow is broken. I assume I'm using Claude Code abnormally otherwise this bug would be a bigger issue.
by theturtletalks | 2025-12-13 22:30:29+00:00
Yeah, you're right. Amazon isn't really about the software at this point. It's the lock-in. Sellers can't leave without losing all their reviews, rankings, and years of optimization. That's the moat.

I'm not building better software to compete directly with Amazon. I'm building infrastructure that sellers can truly own, so lock-in stops being such a powerful moat.

Traditional marketplaces charge 15-30% because they provide checkout, payments, and the customer database. But if stores already own that infrastructure, the only thing you really need is discovery. And discovery doesn't have to cost anything.

Our marketplace is essentially just a directory. Stores keep their own checkout and process their own payments. We query their API and render the results conversationally. And because the code is open source, if we ever became like Amazon, anyone could fork it and launch a competing directory.
by cyberax | 2025-12-13 22:30:58+00:00
Go is most emphatically NOT memory-safe. It's trivially easy to corrupt memory in Go when using gorotuines. You don't even have to try hard.

This stems from the fact that Go uses fat pointers for interfaces, so they can't be atomically assigned. Built-in maps and slices are also not corruption-safe.

In contrast, Java does provide this guarantee. You can mutate structures across threads, and you will NOT get data corruption. It can result in null pointer exceptions, infinite loops, but not in corruption.
by reactordev | 2025-12-13 22:31:01+00:00
Some fantastic text adventures can still be had online. There are MUDs (my favorite), Roguelikes, Sims, and even cyberpunk adventures. A half dozen Star Wars ones as well.

This was peak 1986. A few years later and we’d be jumping a little pixel plumber on cathode ray tubes.

Can’t wait for the next part…
by kotaKat | 2025-12-13 22:31:03+00:00
I'm surprised to see them on a patchwork of applications still and not already on an enterprise-wide system like Ellucian Banner. I wasn't expecting Workday here, though.

That doesn't quite make sense for a college. Students aren't employees, why are we trying to fit them into the same mold as an employee in this nonsense it feels like?
by ignoramous | 2025-12-13 22:31:40+00:00
It isn't just latency, but "triangulation".

[IPinfo] pings an IP address from multiple servers across the world and identify the location of the IP address through a process called multilateration. Pinging an IP address from one server gives us one dimension of location information meaning that based on certain parameters the IP address could be in any place within a certain radius on the globe. Then as we ping that IP from our other servers, the location information becomes more precise. After enough pings, we have a very precise IP location information that almost reaches zip code level precision with a high degree of accuracy. Currently, we have more than 600 probe servers across the world and it is expanding.

u/reincoder, https://news.ycombinator.com/item?id=37507355
by submain | 2025-12-13 22:31:49+00:00
> The real secret to agent productivity is letting go of your understanding of the code and trusting the AI to generate the proper thing

The few times I've done that, the agent eventually faced a problem/bug it couldn't solve and I had to go and read the entire codebase myself.

Then, found several subtle bugs (like writing private keys to disk even when that was an explicit instruction not to). Eventually ended up refactoring most of it.

It does have value on coming up with boilerplate code that I then tweak.