Hacker Newsnew | past | comments | ask | show | jobs | submit | pkal's commentslogin

Superficial comment regarding the catgirl, I don't get why some people are so adamant and enthusiastic for others to see it, but if you like me find it distasteful and annoying, consider copying these uBlock rules: https://sdf.org/~pkal/src+etc/anubis-ublock.txt. Brings me joy to know what I am not seeing whenever I get stopped by this page :)


I don't get why so many people find it "distasteful and annoying"


Can you clarify if you mean that you do no understand the reasons that people dislike these images, or do you find the very idea of disliking it hard to relate to?

I cannot claim that I understand it well, but my best guess is that these are images that represent a kind of culture that I have encountered both in real-life and online that I never felt comfortable around. It doesn't seem unreasonable that this uneasiness around people with identity-constituting interests in anime, Furries, MLP, medieval LARP, etc. transfers back onto their imagery. And to be clear, it is not like I inherently hate anime as a medium or the idea of anthropomorphism in art. There is some kind of social ineptitude around propagating these _kinds_ of interests that bugs me.

I cannot claim that I am satisfies with this explanation. I know that the dislike I feel for this is very similar to that I feel when visiting a hacker space where I don't know anyone. But I hope that I could at least give a feeling for why some people don't like seeing catgirls every time I open a repository and that it doesn't necessarily have anything to do with advocating for a "corporate soulless web".


I can't really explain it but it definitely feels extremely cringeworthy. Maybe it's the neckbeard sexuality or the weird furry aspect. I don't like it.


You could respect it without "getting" it though.


I have to say that https://student.mit.edu/catalog/index.cgi looks like a great site! It is all public, and when you open a category (a static site), all the information appears all at once and you can Ctrl-F for keywords. It might not solve that "unknown unknown" problem that the author mentions, but it is certainly much preferable to the solution that our university used (https://www.his.de/hisinone; one example: all courses are displayed in a tree and if you click to unfold a node, the server generates verbose HTML and sends it to the client. This takes at least 10 seconds on good days).


Yeah literally the only thing they need to do to fix it is get rid of the no-cache and Connection: close headers. Maybe make an "All" page for better CTRL-F? Surely their catalog doesn't change more than once per minute and could have some level of caching (at least with revalidation)? Keep-alive would cut out ~150 ms of page load time and letting at least something like nginx cache it seems like it would cut out another ~150 ms.


I have recently been writing CGI scripts for the web server of our universities computer lab in Go, and it has been a nice experience. In my case, the Guestbook doesn't use SQLite but I just encode the list of entries using Go's native https://pkg.go.dev/encoding/gob format, and it worked out well -- and critically frees me from using CGO to use SQLite!

But in the end efficiency isn't my concern, as I have almost not visitors, what turns out to be more important is that Go has a lot of useful stuff in the standard library, especially the HTML templates, that allow me to write safe code easily. To test the statement, I'll even provide the link and invite anyone to try and break it: https://wwwcip.cs.fau.de/~oj14ozun/guestbook.cgi (the worst I anticipate happening is that someone could use up my storage quota, but even that should take a while).


How do you protect against concurrency bugs when two visitors make guestbook entries at the same time? With a lockfile? Are you sure you won't write an empty guestbook if the machine gets unexpectedly powered down during a write? To me, that's one of the biggest benefits of using something like SQLite.


That is exactly what I do, and it works well enough because if the power-loss were to happen, I wouldn't have lost anything of crucial value. But that is admittedly a very instance-specific advantage I have.


There's a fsync/close/rename dance that ext4fs recognizes as a safe, durable atomic file replacement, which is often sufficient for preventing data loss in cases like this.


FWIW POSIX requires that rename(2) be atomic, it's not just ext4, any POSIX FS should work that way.

However this still requires a lockfile because while rename(2) is an atomic store it's not a full CAS, so you can have two processes reading the file concurrently, doing their internal update, writing to a temp file, then rename-ing to the target. There will be no torn version of the reference file, but the process finishing last will cancel out the changes of the other one.

The lockfile can be the "scratch" file as open(O_CREAT | O_EXCL) is also guaranteed to be atomic, however now you need a way to wait for that path to disappear before retrying.


I forget the particular failure mode that POSIX arguably permitted in this case. I think it had to do with fsyncing the directory? And the file ending up existing but empty after the reboot? Anyway, it broke userspace, so the ext4fs maintainers killed it. I think there were some LWN articles.

I might have been misremembering: https://lwn.net/Articles/322823/

"With ext4's delayed allocation, the metadata changes can be journalled without writing out the blocks. So in case of a crash, the metadata changes (that were journalled) get replayed, but the data changes don't."

That was without fsync, though. But apparently it's a topic of discussion more recently: https://lwn.net/Articles/789600/

I agree that it still requires a lockfile if write conflicts are not acceptable.


I like how https://en.wikipedia.org/wiki/Chief_Mouser_to_the_Cabinet_Of... has a timeline and highlights if the Chief Mouser was under a Conservative or Labour government.


Of course, as a civil servant, the Chief Mouser is expected to implement government policy impartially.


From automata theory, you might know that nondeterministic automata are represented by a set of states. Deterministic automata are always in a specific state, while nondeterministic ones are in multiple at once. Lists are used for non-determinism in Haskell the same way as a set, mainly because they are easier to implement. But the total order that a list induces over a set is not that relevant.


That's right, and you see this directly reflected in the "types" of the transition functions for DFAs and NFAs, respectively [0] [1]:

    δ : Q × E ⟶ Q
    δ : Q × E ⟶ P(Q)
... where Q denotes the set of the automaton's states, E its alphabet of input symbols, and P the power set operation. Deterministic automata arrive at a definite, single state drawn from Q, while non-deterministic automata may arrive at a set (~list) of possible states, when given a current state from Q and next input symbol from E.

[0] https://en.wikipedia.org/wiki/Deterministic_finite_automaton

[1] https://en.wikipedia.org/wiki/Nondeterministic_finite_automa...


I expected this to be about Allo Allo.


I was expecting it to be Keeping Up Appearances, which is, bizarrely, the BBC's best-selling export show, and which is particularly popular in parts of Eastern Europe (the show came out just as the iron curtain was falling, so that must have been, ah, a confusing intro to the West...)


I heard this was oddly popular in France and Germany. Only surprising because I wasn't sure the language inversion, self-deprecation and cliché would translate well.


The IRC bouncer Soju uses scdoc and this has been personally annoying, as I refuse to install it just to build semantically less expressive documentation than when using the very well documented (https://mandoc.bsd.lv/man/mdoc.7.html) mdoc format. I asked the maintainer if they were interested in a contribution to translate it, and they just dismissed it out of the box.


Who cares how expressive it is? It hits all the core pieces of formatting you can realistically do in a terminal using syntax that is familiar to a much wider range of developers. The output is completely usable and reasonable. I'd rather use something closer to markdown than roff macro gunk that is largely irrelevant anywhere else.


Not everyone; I'm the kind of person who wishes posts about machine learning would be prefixed with these kinds of clarifications ("watch out, this is not related to the programming language but a family of stochastic algorithms referred to as 'machine learning'"), because I consistently fall for it.


Since this is basically just publicity for his book, see also https://www.emacswiki.org/emacs/EmacsThirtyHighlights, especially if want to skip over low-quality non-comments like "Info mode is Emacs’s implementation of the TexInfo hypertext viewer" or "Programming mode for Ruby".


If you really have to "mutool draw -F txt somefile.pdf" will extract the text contents, that you can then pipe to a LLM.


how will it handle things like tables let me try


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: