File this under #shell #functions I should have written years ago:

function grepc { #Do a grep -c, but skipping files with no results grep -c "$@" |grep -v ':0$' }

#unix #UnixShell #ShellScripting #bash #ksh

@rl_dane

Oh, didn't know about -c. I usually just pipe to wc -l I guess.

@amin

-c, -l, -h, -H, and -q are my favorite #grep flags. :D

Huh, that almost became a [Marcel Duchamp] reference. 😅

Marcel Duchamp - Wikipedia

@rl_dane

I just use -v and -E

@amin @rl_dane you guys use flags?... :p
@amin @rl_dane @sotolf You guys still use grep instead of ripgrep. Tst

@thedoctor @amin @sotolf

...and bash instead of zsh
...and grep/awk/sed instead of jq
...and firefox instead of chrome
...and the fediverse instead of facebook

Face it... I'm an unpopular-opinion neckbeard level boss. XD

cc: @mirabilos

@rl_dane Those are so not comparable!

@amin @sotolf @mirabilos

@thedoctor @rl_dane @amin @mirabilos At least bash and zsh is comparable to grep ripgrep, as zsh is just a strictly better bash ;)

@sotolf @thedoctor @rl_dane @mirabilos

Mm, not really though? ripgrep is meant for bulk grepping of files

@amin @thedoctor @rl_dane @mirabilos I think I had it installed, I just never remembered to use it :p

@sotolf @thedoctor @rl_dane @mirabilos

I mostly just use it to run rg TODO and see all the spots in a codebase I marked as still needing work.

@amin @sotolf @thedoctor @mirabilos

Why is ripgrep better than just grep -R?

@rl_dane @amin @sotolf @thedoctor @mirabilos it's somehow a lot faster if you want to grep a few GiB of code, like 15 minutes to 30 seconds

@kabel42 @amin @sotolf @thedoctor @mirabilos

Interesting! I wonder what kind of algorithmic optimizations (as opposed to compiler optimizations) they're using to do that, and if regular (GNU/BSD) grep could do the same.

Because I'll wear clown shoes and a tutu before changing to a "rewrite the world in rust!" utility 😂

@rl_dane @amin @sotolf @thedoctor @mirabilos From what little i have read, some assumptions about what you are greping and different defaults. Doing the same in existing grep would probably break compatibility.
@kabel42 @rl_dane @amin @thedoctor @mirabilos Ah, so it's basically cheating, I mean, it does work, and I do it often when I create small tools, with the excuse that "It wasn't meant for that"
@sotolf @rl_dane @amin @thedoctor @mirabilos Is it cheating, if it is the second sentence in you README.md?
"ripgrep will respect gitignore rules and automatically skip hidden files/directories and binary files. (To disable all automatic filtering by default, use rg -uuu.)"
or, you didn't want to grep in .git anyway you are just too lazy to look up the flag to skip that
@kabel42 @rl_dane @amin @thedoctor @mirabilos All optimisation are just different ways of cheating ;)
@sotolf @rl_dane @amin @thedoctor @mirabilos doesn't cheating imply that you are dishonest about it?
@kabel42 @rl_dane @amin @thedoctor @mirabilos I don't know, it might be just that my mother-tongue's word for it "jukse" also has a connotation of taking the easy way out or a shortcut instead of doing the whole thing. And I transferred that over to english.
@sotolf @rl_dane @amin @thedoctor @mirabilos could be the same for German, where you have the choice of "Schummeln" and "Betrügen" :)

@kabel42 @rl_dane @amin @thedoctor @mirabilos Yeah, cheating as in Schummeln, not as in Betrügen.

I also saw now when looking the word up that it comes from german "juxen" which is "playing around, having fun" which is kind of a fun way that the word has been wandering :)

@sotolf @rl_dane @kabel42 @thedoctor @amin cheating can be Schummeln but I think it is usually somewhat more down the scale towards Betrügen, unless explicit in e.g. game
night context
@mirabilos @sotolf @rl_dane @thedoctor @amin
If using assumptions for optimization is cheating, is using Newtonian physics cheating?
@kabel42 @mirabilos @rl_dane @thedoctor @amin I mean, I cheat going to work each day, since I'm taking some shortcuts along the way :)

@sotolf @kabel42 @rl_dane @thedoctor @amin there’s meanings of to take a shortcut that aren’t related to cheating ;)

Consider a Venn diagram between both; they merely overlap, not subset.

@sotolf @kabel42 @rl_dane @thedoctor @amin … must … not … be … nerdsniped … to … make … Venn … diagram … between … terms … of … three … different … languages …

@mirabilos @sotolf @kabel42 @thedoctor @amin

lol do give in, I'd love to see how you create it. xfig? teX? ASCII art?

@rl_dane @mirabilos @sotolf @thedoctor @amin corel draw for windows 3.1 :)
@kabel42 @rl_dane @sotolf @thedoctor @amin do I look like I could afford that?
CorelDRAW! 3 : Corel Corporation : Free Download, Borrow, and Streaming : Internet Archive

CorelDRAW! is the PC graphics software package for everyone!Inside you'll find:CorelDRAW 3.0, the latest version of our award-winning illustration package, now...

Internet Archive
Corel CorelDraw 3.0 : Corel : Free Download, Borrow, and Streaming : Internet Archive

Corel CorelDraw 3.0 ( 3.0b) ( 1992 10) [ English] ( CD)Includes:CorelDRAW 3.0CorelCHART 3.0Corel PHOTO-PAINT 3.0CorelSHOW 3.0CorelTRACE 3.0CorelMOSAIC 3.0

Internet Archive
@rl_dane @sotolf @kabel42 @thedoctor @amin … probably Inkscape while constantly cursing.

@mirabilos @sotolf @kabel42 @thedoctor @amin

Sounds like me using GIMP 3.

Horrrrrid UI changes in GTK3. Horrid. Horrid.

@rl_dane @sotolf @kabel42 @thedoctor @amin that too, but Inkscape is just… Inkscape.

If I were a little better at SVG, I’d possibly use Inkscape’s XML window to write SVG as XML directly and just see it auto-updating the graphical representation, like some Tₑχ/LᴬTᴇΧ editors can.

@mirabilos @kabel42 @rl_dane @thedoctor @amin

Yeah, I mean if I would actually take this seriously for a moment, yeah cheating really depends on the goal, my goal for going to work is not excercise, so technically taking a shortcut is more about efficiency rather than doing something that lessens the thing, if I however did the walk to have excercise it would be, even though the physical action done was exactly the same, the only way to differenciate is the goal.

@mirabilos @sotolf @rl_dane @thedoctor @amin but both are, using assumptions to use a simpler model, right?

@kabel42 @mirabilos @rl_dane @thedoctor @amin

There are also different assumptions, I sped up an import job today, that dealt with barcodes, they get printed in batches, and I sped the runtime up from 2 hours + to 30 sek by checking the first item in each batch before splitting them up and having to deal with 40 000 + items, it's cheating / optimisation since I check only if the first one in the batch got imported, but because they do the writing within a transaction, if the first one of the batch is imported the rest are as well.

@kabel42 @sotolf @rl_dane @thedoctor @amin it’s more like: if you translate, you have to consider meaning. If you, for example, take the word Quelle (in the meaning of “origin of citation” and translate it to Dutch, you get “bron”. If you translate “bron” back to German, you get Brunnen. This does not mean you could substitute the word Brunnen in the original German text, despite Brunnen and Quelle (in the sense of where water comes from the ground) are the same thing, even in German.
@mirabilos @kabel42 @rl_dane @thedoctor @amin And this is one of the reasons why machine translation is as garbage as it is, it can't keep the context well enough, and find recipe sites with recipies for "Informationskapslen" statt Kekse..
@sotolf @kabel42 @rl_dane @thedoctor @amin „kein Weltraum links auf dem Gerät“. „Pfeife zerbrochen.“
@sotolf @kabel42 @rl_dane @thedoctor @amin (and this is why I run my computers including Smartphone on English, or rather, the original language if I know it)
@mirabilos @kabel42 @rl_dane @thedoctor @amin Yeah, sadly with how the world is now, normally the english translation, if there is one is way better than any other ones, which they do with machine translation or something else, even worse with small languages, some times they just decide that norwegian and danish is basically the same, so we just relabel the translation and that's good enough, or you end up with something that must have been translated with a dictionairy and having never used the language before like this:
@sotolf @mirabilos @rl_dane @thedoctor @amin a good translation would be different for english and american

@kabel42 @mirabilos @rl_dane @thedoctor @amin

English (Traditional)
English (Simplified)

@sotolf @mirabilos @rl_dane @thedoctor @amin yes :)
although there is a lot of simplification still available

@kabel42 @mirabilos @rl_dane @thedoctor @amin

Yeah the fucker that decided that "ennui" is a good word should be taken behind the shed...

@sotolf @mirabilos @rl_dane @thedoctor @amin i've never seen that word :)

@kabel42 @mirabilos @rl_dane @thedoctor @amin

It says ennui, is pronounced "ahn-wie" and just means "sadness" :p

ennui - Translation in LEO’s English ⇔ German Dictionary

Learn the translation for ‘ennui’ in LEO’s ­English ⇔ German­ dictionary. With noun/verb tables for the different cases and tenses ✓ audio pronunciation and relevant forum discussions ✓ free vocabulary trainer ✓

@kabel42 @mirabilos @rl_dane @thedoctor @amin

Is english, but a loanword from french, which explains the fucked pronounciation :P

https://www.merriam-webster.com/dictionary/ennui

Definition of ENNUI

Definition of 'ennui' by Merriam-Webster

@sotolf @mirabilos @rl_dane @thedoctor @amin it's always the french with the weird spelling, can someone teach french sensible spelling?

@kabel42 Sure because there's absolutely nothing weird about English spelling whatsoever.

@sotolf @mirabilos @rl_dane @amin

@thedoctor @kabel42 @mirabilos @rl_dane @amin 99% of the time you look into the etymology and see that the word originally came from french :p
@thedoctor @kabel42 @mirabilos @rl_dane @amin It hit me in the other direction reading an article about the titanic, and coming across a fancy word that I read as "Boulasch" and wandered what the heck that was, probably some fancy french thing, until my wife at that time told me, "You idiot, that's Bullauge" :p
@thedoctor @sotolf @mirabilos @rl_dane @amin its always* the frensh words, the germanic and celtic words are fine :)
@sotolf @kabel42 @rl_dane @thedoctor @amin “but it’s french so it’s cultured!!!!11”
@sotolf @kabel42 @rl_dane @thedoctor @amin like you have the germanic words (deer, cow, …) for animals and fancy french for their meat (venison, bœf^Wbeef, …)

@sotolf @kabel42 @mirabilos @thedoctor @amin

That's funny, as it mainly means "boredom" in the original French.

Ok, seems that modern French ennui is a cognate to English ennui, not the source. The source is Old French, which has a meaning more similar to the modern English one.

https://www.etymonline.com/search?q=ennui

Search 'ennui' on etymonline

Search results for 'ennui' on etymonline

etymonline
@rl_dane @sotolf @kabel42 @thedoctor @amin oh, but boredom is sadness

@mirabilos @sotolf @kabel42 @thedoctor @amin

Eh? Boredom is a superpower! Us #GenXers know how to use it. ;)

@rl_dane @sotolf @kabel42 @thedoctor @amin no, definitely not. I need lots of books.

@mirabilos @sotolf @kabel42 @thedoctor @amin

Well, that's one way of using boredom. Other ways are crafts, hobbies, plotting to take over the world, Pinky...

@rl_dane @mirabilos @sotolf @thedoctor @amin weaponized boredom and spite for greater code? I still need something to focus my boredom into...

@sotolf @kabel42 @rl_dane @thedoctor @amin more like

  • English (with stiff upper lip)
  • English (slurring what is supposed to be hard consonants)
Basic English - Wikipedia

@rl_dane @kabel42 @mirabilos @thedoctor @amin That's just american english :p

@sotolf @kabel42 @mirabilos @thedoctor @amin

I feel... slighted.

* looks at our president and congress

So, anyway... XD

@sotolf @mirabilos @rl_dane @thedoctor @amin thats why machine translation with more context works much better :)
deepl is actually pretty good at german<->english if you give it enough context.
@kabel42 @sotolf @rl_dane @thedoctor @amin most of the time I still use LEO (“link everything online”, hah those were the times…) because they show more variety in meanings, even if they are lacking a lot sometimes…
@kabel42 @sotolf @rl_dane @thedoctor @amin (and ofc I read a lot and get understood context for when to use which words that way, by immersion)
@mirabilos @sotolf @rl_dane @thedoctor @amin afaik the translation is ml and deep neural networks not llm
@mirabilos @sotolf @rl_dane @thedoctor @amin and trained on legally obtained translations
@kabel42 @mirabilos @rl_dane @thedoctor @amin I have heard both the one and the other, the thing is it's not very accurate with my native tongue at least.
@sotolf @mirabilos @rl_dane @thedoctor @amin as i said, they are pretty good for german<->english, i can't judge other language pairs
@kabel42 @mirabilos @rl_dane @thedoctor @amin I mean if you speak both you have no use for it, if you don't you have no basis to judge it on, so it's safest just never to use it. It's a warning that if you ever read something auto-translated from the scandinavian languages, it's probably missed a ton of neuances, and added or subtracted stuff that wasn't there.