skysight-inc/HackerNews huggingface dataset:
I was reluctant to switch to Caddy because I couldn't understand if does or does not use Linux' sendfile sys call, which made a huge difference for me with Nginx. [0]

Nevertheless, I used Caddy to front our internal Mattermost chat server and it works flawlessly to date. The configuration was really simple, I like it a lot.

0 - https://github.com/caddyserver/caddy/issues/4731
They're referring to the subscription plans that give you unlimited access to their catalogue (or at least most of it), like Spotify versus buying an album. Both Kobo and Kindle offer individual purchases as well.
Can you pick a specific thing in my post to argue against? I never claimed NAT and firewalls are the same thing. I claimed that whether you’re using IPv4 with NAT, or IPv6 with a default-deny firewall, you can’t have software just “assume” that it can listen to incoming connections and have things just work. You need to go to your router and configure something. Since approximately 0% of people in the world at large know how to do this, it means software can’t work this way in general, and IPv6 doesn’t change this.
Yubikeys with a passkey for every major service. One on the keychain, a nano one permanently in the laptop. This lets you access anything with the key and a password.
I want to elaborate on timing cautions: a sort that specializes to 4-byte machine ints is doing something that can't be expressed directly in CPython. Its lists are heterogeneous, types aren't known until runtime, and there is no native (to Python) concept of "4-byte int". All CPython ints are stored in "bigint" (unbounded) format, and even zero requires 32 bytes of storage in the format (overheads for a type pointer, refcount, 16-byte heap alignment padding). That format isn't 2's complement either (although it creates the semantic _illusion_ of being such): it's sign+magnitude.

The general object comparison machinery is very expensive at runtime, essentially repeated from scratch on every compare. To mitigate this, CPython does a prepass over the list (O(n)) to see whether the list is in fact homogenous, and, if so, of a type that can use a more specialized comparison function. Not free, but pays off hugely if you are in fact sorting a list of "small enough" machine ints. But it doesn't change the storage format: on every compare, cycles are still consumed to transform CPython's sign+magnitude bigint format to native 2's-complement for native machine code to compare directly.

I expect this accounts for most of the observed "speedup" over timsort. Despite semi-heroic efforts to cut the cost, comparisons of native ints in CPython will always be significantly more expensive than code specialized to compare native ints directly. At least until (if ever) CPython learns how to "unbox" ints. The PyPy implementation of Python already does, and sorting lists of native machine ints runs about twice as fast under PyPy. It's not the sorting algorithm that matters to this, it's the relative cost of machine-int compares, and almost certainly too the cache pressure of using many more bytes to store small ints than necessary in "boxed" format.

As mentioned elsewhere, JesseSort reminds me most of the old and simpler "patience sorting", with which it has a lot in common. Both keep a collection of sorted sublists (to be merged at the end), both use binary search to pick a collection member to which to add 'the next" input, both excel at "low diversity" inputs, both (on average) end up with O(sqrt(n)) sublists on randomly ordered inputs, and neither is "naturally" stable.

As I noted in listsort.txt at the time, while timsort gets a lot of value out of repeated elements ("low diversity"), it's just not the right approach to exploit that aa much as possible. JesseSort and pdqsort (and, by extension, glidesort) will always do better on that. OTOH, timsoet gets value out of many kinds of partial ordering, which "reveal themselves" dynamically via one run in a merge "winning" consistently.
Dead means different things to different people, but there is no way in hell I'd start a new project using a niche language that hasn't been updated in almost a year.
> resulting in an additional increase in temperature, as fewer particulates are emitted

Yeah that has been a blunder of epic proportions, certainly helped a lot to bring last year up to 1.5 C.

Well I hope you're right, but frankly I think political will is too focused on pointless infighting and corruption to get anything done even if they wanted to. Most people aren't even demanding anything from their representatives, they just want cheap food, cheap gas and no taxes. The Paris Agreement has become a complete joke by now, nobody's even trying to abide by it anymore.
You're throwing random things but you have failed to explain real world pains.

By the way you can be extremely strict and safe in typescript, it's really up to the team using it, but you can encode virtually everything and have it fully type safe.

Also, there's great tools like effect-ts if you're more functionally leaning.
> Back when we had to actually think

> I recently realized that there’s a whole generation of new programmers who don’t even know what StackOverflow is.

There was also a time before StackOverflow, when systems had manuals and libraries had documentation which one could actually read to find out the difference between Number(x) and parseFloat(x).
I'm out of the loop here - why would this article suddenly have such heavy traffic?
h2o is also one of the few servers to get resource prioritization correct for HTTP/2 and HTTP/3.

If resource prioritisation is new, a few references:
https://www.youtube.com/watch?v=MV034VqHv5Q
https://calendar.perfplanet.com/2022/http-3-prioritization-d...
https://github.com/andydavies/http2-prioritization-issues
A guide to LLM inference and performance
I'm always surprised by comments like yours. Do you see anything in that post that points to it being serious?
Regrettably it seems the term AI has been hijacked by LLMs. You must now be more specific when discussing AI: referring to classifiers, goal planning or decision making systems.
These start from 450 euros.
As far as a political binary, only a single side has been disproven, the Republican side that says that renewables and storage can't meet market needs. The democratic proposition, in policy, in rhetoric, in action, has always been a transition from fossil fuels to renewables and storage, which this ERCOT news is completely consistent with.

The future of resilience is batteries, not gas. Most of these new gas generators will be stranded assets within a decade.

Additionally the part of the picture missing in this announcement is retirements, which are of course all fossil fuel.
Which browsers/libraries trust these? Or does the go tool chain install them?
For a definition of "nobody" that includes Eric S Raymond, one of the most prominent figures in the linux world who's article (https://www.catb.org/esr/time-programming/index.html) I reference multiple times.

[plonk](https://www.catb.org/jargon/html/P/plonk.html)
This map is spot-on! It shows Virginia, where I live, in red with over 100k customers without power.

Here is a link to a video I took in my back yard about 45 minutes ago when the wind was fierce: my power went out about 10 minutes later.

https://youtube.com/shorts/N1rcUk-1kNM?si=1s8uCdvfqa5VmrXL
Idk about Kobo plus, the content available on it all seems to basically be the written equivalent of shovelware (unknown authors, questionable quality). I've almost never searched for a modern book I want to read and found it available on the subscription service.

Agree everything else is better though, and Amazon's equivalent subscription library could be just as bad for all I know.
I am still looking for a dead simple webserver that can serve files, do CGI and reverse proxy.

I have been using lighttpd for much of this. It's configuration is extremely simple although it has some quirks. It also has a few problems like not always correctly logging errors related to CGI, and not being able to proxy to a backend over SSL.

I tried caddy because of its simple configuration syntax and plugin support.

For caddy the sample webpage alone threw me off. It includes a bunch of CSS, custom fonts, and for whatever reason it has tilted text.

I'd like a test webpage to fit on my terminal screen when I SSH to it. Or at least not require a modern browser to render.

Anyway I just don't think Caddy fits my usecase. Are there no dead simple, lightweight alternatives to nginx and apache that actually work?
https://archive.ph/2xtP2
Protection laws? Maybe. I think we need to improve the lives of workers in other ways. Higher pay, better benefits, universal healthcare to break the employer tie, more time off, more sick time, mandated parental leave.

I understand the hate for at will employment. If you pay attention to the industry and what your company is doing, you can avoid layoffs or at least be better prepared for them.
You have to fight the chronic overachievers to the proverbial death.

One should do it only for the fight, not to win.
Every space is crowded these days, and - to some degree - the grifters with less technical talent and greater "marketing" talent are everywhere too.

I am doing this for myself first, but I am also considering putting a decent amount of money this time, so at the very least I'd like to break even, in lieu of becoming a money pit.
I built a platform where people can share, discuss, and validate software ideas before jumping into development. The goal is to help entrepreneurs and developers refine concepts, get early feedback, and find potential collaborators.

It’s like a brainstorming hub for SaaS and digital products—where ideas can be tested before committing time and money.

I’d love your thoughts! What would make this more useful for you? Would you use something like this?

https://idegen.havis.dev/
If you don't want to be a steward of an open technology, why on earth would you become an open-source maintainer?
You can fork it, rename to something like "Glimpse" and see the adoption skyrocket. Surely the success is just around the corner. Oh wait a minute
Also understand how they can be used for unique hard to detect "Scams" like MaidSafe. "We came up with a brand new amazing way to dht! like ants!"

This all sounded technically interesting and useful, and only after ingesting huge amounts of all the technical details do you realize the whole plan was to force everyone to re-write all internet applications over again (dumb) and then it evolved into some slow scam where after 10 years or something they pretend its still being worked on, but nothing ever finishes.
Kobos doesn't require a subscription. I switched from a Kindle to a Kobo Clara Colour recently and it's honestly one of the best tech choices I've ever made. Kobos are hackable by default, so you can literally plug them into Chrome and flash new software onto them via WebUSB (or just via the file system). The real kicker for me though is the support with Calibre, I have a massive collection of maybe 2000 books, and this perfectly syncs with my Kobo supporting filtering, collections, etc. attempting this with even 10 books with my Kindle would routinely break down, books not appearing even after waiting hours for it to index, corrupt file systems, etc, the entire device is designed to push you towards Amazon store, including the scammy "pay £20 more to remove adverts" and them disguising the actual price as "reduced".

The fee GP pointed to is a monthly subscription similar to Amazon's Kindle book club offering.
That’s the bottom line. Kindle books will now be fully locked into the Kindle ecosystem and if Amazon decides to take back something you’ve “purchased,” you’ll have no recourse. I’m done purchasing ebooks from Amazon because of this.
> One should do it only for the fight, not to win.

You're not wrong.
https://archive.ph/hqs8t
.....something something, to bring costs to 3 or 4 times that of conventional cells by 2027
with the presumption that they can even build cells in the "conventional" sizes
stuck at 30cm width and need to get to 100cm/40”
and, they are rolling out pervoskerite, which needs to be perfectly sealed, the sealant and
pervoskerit materials have no track record.
the money is of the government hand out variety
In the French revolution, mobs would smash textile shops to the dismay of the workers, string up the middle class owners, then drink the reagents and die.
> offending people with prudish attitudes or without a sense of humor is a pretty common old-school hacker goal

I agree, and to an extent laud it, but it also means keeping GIMP an old-school hacker project.
Mediamonkey allows me to just go to tracks and hit shuffle and then it randomly adds all my tracks to a queue with no repeats. You can do it at any level of hierarchy, allmusic, playlist, album, artist, genre etc.

Edit: I checked I can also shuffle a folder without adding it to the library.
Love it! When I first learned about serverless as a vibe years ago it didn’t click, but it’s so clear to me that abstracting compute fully is a huge win as long as you can safely assume things about the way your code will run.

It’s interesting to see so many companies coming at it from different angles. Fly, Vercel, Cloudflare, Northflank, Temporal? etc.

Pretty much all the code I need for my work can run in GitHub Actions, so I’m not so much the target, but still enjoy watching the development.

If you can answer, what’s the overall initiative here for Vercel? Own all the compute, as opposed to just the front end ish things?
If you go on the page for Manitoba Hydro, it says there is 1 customer in Quebec: "South Cypress". Although South Cypress is a municipality in Manitoba.

Seems like a data issue where the municipality was double-counted and one in Quebec for some reason.

https://poweroutage.com/ca/utility/1408
This is a crazy take to me. Most people don’t care that a calculator gives them a correct answer? It’s just an estimator?

Why would we not expect it to work when we know how to build ones that do, and people use it as a replacement for math on paper?
> either US citizens lose civil liberties, or US media companies cannot operate in Europe.

Oh, this one's easy. We're leaving it up for the media companies to decide, right?
> I don't have anything bad to say about Caddy

Here's one: it does not support dynamically loadable modules, like most (all?) Go programs. So if you need e.g. geoip, you have to build your own, and then maintain it, tracking CVEs, etc. You can't rely on your distribution's package maintainer to do the work.
I would appreciate it if someone could explain the benefit of removing educational videos and/or how it saves taxpayers money.
https://archive.ph/KqZLU
And I'm dancing around the point - the problem is demand for energy, not fossil fuels. Reducing emissions means reducing demand - an end to economic growth as we know it. Again, politically toxic.

The green new deal envisions us driving around in EVs.

The drill baby drill folks picture us driving around in our pickups.

And the reality (if we want any hope of meeting our climate goals) is probably no more driving, or at least significantly less. We saw what covid lockdown did to our supply chains. Do we really think we could handle a drastic reduction in mobility and economic demand? I don't see that happening anywhere today, do you? I see us getting less resilient to oil decline by the year. You can no longer live a normal life in most American towns without a car. Want to eat and send your kids to school? You drive. We're not prepared to have a conversation about consuming less, let alone actually achieving it IRL.
The point of the article is to teach you how calculators work. Not find a piece of software to unblock you.

You may well find yourself in the field of computing having to compute something!
I think this is a really good idea, and zig shows how it could work.

But this?

> Under these conditions it'd be easy to imagine most C programs running with fewer bugs (, leaks, etc.) than Rust programs.

This is a crazy goal. You will never out-rust rust by adding a few runtime checks to C, while in debug mode. Fewer bugs than rust code is a wild goal.

I don’t think you understand just how much rust’s design prevents you from shipping bugs. It’s due to a combination of so, so many things. Like: references instead of pointers, unsafe blocks, sum types & match instead of unions, no implicit nullability, unwrapping optional values is explicit, the result type and #[must_use], bounds checks, the borrow checker preventing use after free, ownership semantics, Send & Sync for thread safety, and I’m sure plenty more.

It’s common to write very complex, threaded rust code and have it work first time. Well, the first time it compiles. Coming from C, it’s wild. Or, really, just about any other language.

To get the same result in C wouldn’t just need a “strict mode”. You would need to ban raw pointers - which would make it no longer C. And you’d need to make functions return more than an (easily ignored) status code. Ie, you want a result type. For bounds checking, you’d need a language level data structure for slices / arrays (pointer + length). You’d have to do away with void pointers for “generic” parameters. And probably 100 other tiny, breaking changes that the C community will never accept.

And for all that, you would essentially get zig. Zig does all these things.

But that would still get you worse bug density than rust because you don’t have a borrow checker. It’ll get you close - Runtime checks in debug mode will detect your use after frees - if you have a good test suite. But they won’t prevent aliasing. Or (I think) help with thread safety. For that, you need a borrow checker. You need rust.
Not sure how much of this is tongue in cheek but it's an amusing read
Show HN: I built an extension that generates a calendar with a prompt
Hi HN,
I built a chrome Extension that lets you manage your calendar with a prompt. You can quickly generate, adjust or cancel an event as you wish. I built this as a personal side project as I was beginning to get frustrated with having to manually change my calendar events all the time. After my friends saw what I made, I decided to publish it and share it.

Demo video of how it works:
https://www.youtube.com/watch?v=fyeW8bLsVys

I would really appreciate any feedback. Also I plan on making this always free

I hope you find CalendarGenie useful :))
It is the Sentry surveillance to which I refer. The crashes on my computer do not belong to you.
The Nvidia firmware language? I think that one only has two steps:

1. The more you buy the more you save

2. Black leather jacket
Massive +1 to this, I'd recommend using Calibre to manage your library and any Kobo reader as the companion, I manage a massive 2000+ book library like like this, and never encountered issues with syncing, corrupt file systems, etc, which I did regularly with Kindle.
+1 for autin, and in case anyone is wondering, it works on windows with e.g. git bash too. You just need to build it yourself.
I really wonder what the business case for spending so much effort on such precision was. Who are the users who need such accuracy but are using android calculator?
I've always been interested in starting my own entrepreneurial journey and have tried and failed many times, even after following advice from some fake gurus out there.

Honestly, it’s exhausting. So, I decided to create a newsletter that covers and showcases everything I’ve learned along the way with screenshots and data to back it up!

But I want to ask—are there any specific metrics you’d be interested in? Whether it’s case studies or purely personal observations from my journey, I’d love to know what you'd find most valuable.
Eh. Where I work they probably wouldn't care about the BDSM aspects but they are pretty sensitive to ableist slurs, which is primarily why I recommend Photopea instead of GIMP when they need to do Photoshop-ish things.
Software devs are not alone here.

Have you ever tried asking a doctor how much something will cost? Or if the thing they want to bill you for will even work? They have no fvkin clue.
If you "set -o vi" then (Esc)/ becomes reverse search.

Like vi in reverse, n goes further back, but N goes forward.

The "set -o vi" option is a POSIX optional feature, and should work in any compliant shell.
If Kagi was free, it would also produce junk results.
I was actually just working on a project like this to digitize an old manuscript. I used a PDF scanning app (there are plenty, I used Naps32, simple but it works). And then I piped the images into a `tesseract-ocr`. This will extract the text from the image but it won't deal with formatting or obvious typos. For that you're going to want to feed the text into an LLM with some prompt telling the model to correct errors, fix formatting, and provide clean text. Smaller local models (<70b parameters) do not work very well on this task for big documents, but I found ChatGPT's reasoning model does a fine job. My goal is to find a model that can run locally with similar performance.
shrug at work we use NAT to let two different networks with overlapping addresses talk to each other all the time. No firewalls there.

NAT wasn't invented for the home-broadband user, you know.

But I'm at least glad we've cleared up the myth that NAT provides any security benefit when, in fact, it's the often deployed accompanying stateful firewall that's actually providing this.
I’m reading The Choice right now. I can’t tell you if it makes sense without having read at least The Goal, but I suspect not. But that book still sells 100k copies a year despite used copies being everywhere, because it’s worth reading. The Choice may offer you some notions about the silver linings in failure. Eli loved when things failed because they helped him find the boundaries of the problem. Like a human SAT solver.
thats OG style trollkraft
> it's config format can't be worse than nginx's.

It's alright — the main upside for me is that it supports parameterized includes, thus letting you reuse large chunks of configuration without relying on something like ansible or bash + envsubst.

https://caddyserver.com/docs/caddyfile/directives/import
I'm saying that the people who employ illegal immigrants tend to be republican small business owners. They're not a majority of republicans but they are the heart of the party in the way educated professionals are for the dems.
Yes I know, my point was that not pirating is not helping to remove DRM from the world as the OP was suggesting.
> C debuggers and tooling are vastly more powerful than Rust's static type system, and catch a much wider array of memory problems (, and bugs) than the Rust compiler can catch. Static verification is far more limited than the dynamic verification a sophisticated debugger can perform.

Is there any dynamic verifier that fully validates all acesses w.r.t. the object trees specified by the C standard? Tools like ASan and UBSan won't detect a write to one field running into another field, only a write overrunning the complete object. (Compiler-level hardening might catch that to some extent, but it's limited to TU boundaries.) Not to mention things like 'misuse of restrict pointers' that I've never seen any verifiers for, except for special cases like overlapping memcpy() buffers.

Meanwhile, Rust does have its own dynamic verifier, called Miri [0], which checks just about every language-level rule at runtime. The main drawbacks are that it's slow and doesn't support calling arbitrary C functions, but it would be hard to get that to work short of the Valgrind route of emulating the whole process on an instruction level.

[0] https://github.com/rust-lang/miri
I’m curious about this api. I’d looked at it before but it didn’t seem like it could handle arbitrary input that didn’t fit one of the predefined schemas. I also wasn’t sure how much training data it needed. What has your experience been like?