I'd recommend self-hosting healthchecks and using runitor for your cronjobs. Runitor pings healthchecks when the cronjob starts, then pings it again on completion with the status (success or fail) along with the stdout and stderr.
Healthchecks can be configured to expect a ping periodically (once per day, once per hour, whatever) and alert you if it doesn't receive one.
For backups, Borgmatic has a healthchecks integration.
RFC3339 is better than ISO8601 since it doesn't allow some of the esoteric formats, and allows some useful formats that ISO8601 doesn't (like separating date and time by a space instead of by T)
For example, 2026-W32-1 is also a valid ISO8601 date: Monday on the 32nd week of 2026. That format isn't allowed with RFC3339.
RFC3339 is better than ISO8601 since it doesn't allow some of the esoteric formats, and allows some useful formats that ISO8601 doesn't (like separating date and time by a space instead of by T)
For example, 2026-W32-1 is also a valid ISO8601 date: Monday on the 32nd week of 2026. That format isn't allowed with RFC3339.
cat is misunderstood a lot. The purpose of cat is to combine multiple files together (it's literally short for "concatenate"), like cat *.log to combine all log files together.
If you're just using it for a single file, then you should just redirect the file to stdin. These two command lines behave similarly:
cat foo.txt | some-command
some-command < foo.txt
For head, tail, grep and some other commands, you can just pass in the file name directly as an argument (e.g. grep whatever foo.txt).
In frontend development, it's pretty common to use German to stress test UIs, as it's a commonly used language with a lot of long words. It reveals all sorts of UI issues - text that doesn't wrap properly, buttons that are pushed off the screen, etc.
I don't know German, but I do like the idea of using compound nouns rather than inventing new words.
It's also common to test UIs with Arabic, to test handling of right-to-left languages. At work we have a "fake RTL" language that's English but rendered RTL. It's interesting because everything is flipped - for example, a left-hand sidebar is instead on the right side in RTL languages. Company logo is at top right instead of top left.
This looks like an AI edit rather than an actual renovation.
The shelf thing on the left has exactly the same items on it. Why would they keep the hole with the CRT TV in it? Also I'd hope that nobody would actually put a square table in a round space.
For other alternatives with their own engine - the main ones are Yandex, Mojeek, and Qwant. DuckDuckGo is good, but most of their results come from Bing.
Kagi is priced well for what you get. Search engines are very expensive to run. You don't have to pay for the premium AI, and the pricing of the starter ($5/month for 300 searches) and pro ($10/m for unlimited searches) plans hasn't been affected by AI. They've remained the same price ever since they launched in 2022.
Accurate. At work I'm finally getting around to paying down tech debt from a temporary hack that was supposed to only be in the code for a month or so, but now it's been in our production code for around five years.
It would have been maybe a week or so to do it the right way initially, but we had hard deadlines and were pressed for time and just couldn't get around to doing it. Now it's over a month of work for one senior engineer (me) to clean up, because there's so many interdependencies between the hacky code and other parts of the system that depend on side effects of the hacky code, or the order of updates performed in the hacky code. What a mess.
At least AI can help a bit. Even the newest models aren't so great at system architecture in brownfield projects though (projects building into existing systems).
Not sure if this counts, but as a software engineer, pretty much all major software you use is hacks on top of hacks on top of something someone built as a 'temporary' solution or as a proof-of-concept that's still in use years later. It's amazing that anything works properly at all. Stable software is basically just software with 10+ years of bug fixes layered on top of it.
Part of the reason that Windows backwards compatibility is so good (plenty of Windows 95/98 apps still work fine on Windows 11!) is because Windows automatically applies compatibility fixes, including simulating bugs that were in older versions of Windows, because old apps could be relying on those bugs.
My wife gets very frustrated when she encounters bugs, whereas I'm usually like "well, it's not nearly as bad as it could be" lol
I use healthchecks + runitor for notifications. Would recommend. I posted another comment about them.
OK, TIL you can just do
<foo.txt. I didn't think that worked. Thanks!I'd recommend self-hosting healthchecks and using runitor for your cronjobs. Runitor pings healthchecks when the cronjob starts, then pings it again on completion with the status (success or fail) along with the stdout and stderr.
Healthchecks can be configured to expect a ping periodically (once per day, once per hour, whatever) and alert you if it doesn't receive one.
For backups, Borgmatic has a healthchecks integration.
RFC3339 is better than ISO8601 since it doesn't allow some of the esoteric formats, and allows some useful formats that ISO8601 doesn't (like separating date and time by a space instead of by
T)For example,
2026-W32-1is also a valid ISO8601 date: Monday on the 32nd week of 2026. That format isn't allowed with RFC3339.https://ijmacd.github.io/rfc3339-iso8601/
RFC3339 is better than ISO8601 since it doesn't allow some of the esoteric formats, and allows some useful formats that ISO8601 doesn't (like separating date and time by a space instead of by
T)For example,
2026-W32-1is also a valid ISO8601 date: Monday on the 32nd week of 2026. That format isn't allowed with RFC3339.https://ijmacd.github.io/rfc3339-iso8601/
Thanks - I didn't know this either!
Admittedly I still use
catfor this.This also works too, but it's more verbose:
It's mentioned in the Bash man pages:
EDIT: I was just informed that simply
<foo.txtworks too.It wouldn't be at the end, since you'd still be piping into
programI know, but I just wanted to mention this since a lot of new Linux users end up using cat this way :)
catis misunderstood a lot. The purpose of cat is to combine multiple files together (it's literally short for "concatenate"), likecat *.logto combine all log files together.If you're just using it for a single file, then you should just redirect the file to stdin. These two command lines behave similarly:
For
head,tail,grepand some other commands, you can just pass in the file name directly as an argument (e.g.grep whatever foo.txt).Because I used Arabic as an example rather than Hebrew? Or because I'm unfamiliar with RTL languages?
In any case, it's pretty easy to figure out that I'm Aussie :)
In frontend development, it's pretty common to use German to stress test UIs, as it's a commonly used language with a lot of long words. It reveals all sorts of UI issues - text that doesn't wrap properly, buttons that are pushed off the screen, etc.
I don't know German, but I do like the idea of using compound nouns rather than inventing new words.
It's also common to test UIs with Arabic, to test handling of right-to-left languages. At work we have a "fake RTL" language that's English but rendered RTL. It's interesting because everything is flipped - for example, a left-hand sidebar is instead on the right side in RTL languages. Company logo is at top right instead of top left.
Interesting, thanks for the link. Strange that a bot is on the list (https://lemmy.bestiver.se/u/rssbot)
Good catch! I didn't notice that initially.
This looks like an AI edit rather than an actual renovation.
The shelf thing on the left has exactly the same items on it. Why would they keep the hole with the CRT TV in it? Also I'd hope that nobody would actually put a square table in a round space.
For other alternatives with their own engine - the main ones are Yandex, Mojeek, and Qwant. DuckDuckGo is good, but most of their results come from Bing.
Kagi is priced well for what you get. Search engines are very expensive to run. You don't have to pay for the premium AI, and the pricing of the starter ($5/month for 300 searches) and pro ($10/m for unlimited searches) plans hasn't been affected by AI. They've remained the same price ever since they launched in 2022.
Accurate. At work I'm finally getting around to paying down tech debt from a temporary hack that was supposed to only be in the code for a month or so, but now it's been in our production code for around five years.
It would have been maybe a week or so to do it the right way initially, but we had hard deadlines and were pressed for time and just couldn't get around to doing it. Now it's over a month of work for one senior engineer (me) to clean up, because there's so many interdependencies between the hacky code and other parts of the system that depend on side effects of the hacky code, or the order of updates performed in the hacky code. What a mess.
At least AI can help a bit. Even the newest models aren't so great at system architecture in brownfield projects though (projects building into existing systems).
Not sure if this counts, but as a software engineer, pretty much all major software you use is hacks on top of hacks on top of something someone built as a 'temporary' solution or as a proof-of-concept that's still in use years later. It's amazing that anything works properly at all. Stable software is basically just software with 10+ years of bug fixes layered on top of it.
Part of the reason that Windows backwards compatibility is so good (plenty of Windows 95/98 apps still work fine on Windows 11!) is because Windows automatically applies compatibility fixes, including simulating bugs that were in older versions of Windows, because old apps could be relying on those bugs.
My wife gets very frustrated when she encounters bugs, whereas I'm usually like "well, it's not nearly as bad as it could be" lol
Yeah that'd be my guess too. It's one charger that has two different cables, rather than two separate chargers that can operate independently.
That'd be considered cheap in California.