Viewing profile — rav
rav
HN member- Joined
- Wed, Feb 20, 2013, 8:46 PM UTC
- HN karma
- 1,266
- Public activity
- 283 items
- HN profile
- View on Hacker News ↗
About rav
Recent public activity
-
comment
Comment #48873015
> For example, it would be interesting to incorporate Ghost Font into CAPTCHA systems, as most systems are easily solved by AI today. It seems to me like it should be easy enough t…
-
comment
Comment #48706060
Today I learned that jq -Rrj is a shorter command line for doing the same as tr -d '\n'.
-
comment
Comment #48664674
Not the first time that a Nature publication's "too good to be true" results turn out to be based on simple programming errors... Nature 532, 210 (2016) was retracted after it was …
-
comment
Comment #48648880
There's a note at the end: > As always, this blog post is written by me, without any AI, so all errors are my own. However, the illustrations in the post are clearly made by genera…
-
comment
Comment #48648258
> Of course, if you're implementing POSIX vi, there are quite a few features that have aged poorly, like roff/troff macros and line-editing What do you mean by "roff/troff macros"?…
-
comment
Comment #47937288
Looking in dev console reveals that the issue is an error response from https://cdn.skypack.dev/canvas-confetti - at the moment that URL returns: A server error has occurred FUNCTI…
-
comment
Comment #47806748
Given a commit that both refactors (A) and adds a feature (B), you can go into the codebase and remove the new feature by hand (B^-1), commit the feature removal, and immediately r…
-
comment
Comment #47738730
In TypeScript it's called "bivariance", which sounds very programming language theory like, but is not a term typically used in academic contexts, since it is unsound almost by def…
-
comment
Comment #44856978
How is it "50-90%" savings? If a given application doesn't repeat its queries, surely there's nothing to save by caching the responses?
-
comment
Comment #43976661
You can rewrite it using let-or-else to get rid of the unwrap, which some would find to be more idiomatic. let value = Some(param.as_ref()) else { // Handle, and continue, return a…
-
comment
Comment #43625192
At the moment it seems like you can avoid AI search results by either including swear words, or by using 'minus' to exclude terms (e.g. append -elephant to your search query).
-
comment
Comment #43447454
I often run rm -rf as part of operations (for reasons), and my habit is to first run "sudo du -csh" on the paths to be deleted, check that the total size makes sense, and then up-a…
-
comment
Comment #43416552
My suggestion: Change the color of visited links! Adding a "visited" color for links will make it easier for visitors to see which posts they have already read.
-
comment
Comment #43405874
On a small team I usually already know who wrote the code I'm reading, but it's nice to see if a block of code is all from the same point in time, or if some of the lines are the r…
-
comment
Comment #43083810
Ooh, core.hooksPath is quite nifty. I usually use something like ln -sf ../../scripts/git-pre-commit-hook .git/hooks/pre-commit which simply adds a pre-commit symlink to a script i…
-
comment
Comment #42900678
I don't understand what a dedicated "completely open source offering" provides or what your "five nines feature flag system" provides. If you're running on a simple system architec…
-
comment
Comment #42858744
It seems to me that macOS has env -S as well, but the shebang parsing is different. The result is that shebang lines using env -S are portable if they don't contain any quotes or o…
-
comment
Comment #42856610
Oh wow, today I learned about env -S - when I saw the shebang line in the article, I immediately thought "that doesn't work on Linux, shebang lines can only pass a single argument"…
-
comment
Comment #42830105
No love for the tag? "The HTML element renders everything following the start tag as raw text, ignoring any following HTML. There is no closing tag, since everything after it is co…
-
comment
Comment #42808479
FIM is "fill in middle", i.e. completion in a text editor using context on both sides of the cursor.
-
comment
Comment #42730734
Actually, "git reset --soft" moves the current branch to another commit, without moving the index (aka staging area) along with it, whereas "git reset" (aka "git reset --mixed") mo…
-
comment
Comment #42730629
For move-branch: Use `git branch -f master HEAD~` if you're currently on another branch, or `git reset --soft HEAD~` if you're currently on master.
-
comment
Comment #42723314
You could use handwritten asmjs in that case. I did it at work to improve performance on some pixel-wise software rendering we were doing. (We have since then switched to WebGL, bu…
-
comment
Comment #42687685
To run a macro on the start of each line matching your search, you can use: :g//norm @q Here, g// repeats the most recent search, and norm @q runs the q macro on each matched line.…
-
comment
Comment #42687061
Heads up - you should use "qD instead of "qdd to avoid an extra newline at the end of the register contents. (In fact the current Vim 9.1.954 behavior seems a bit odd in that it mo…