It very definitely was ๐ The way that company used the satellite network was cool, don't get me wrong. They would use it to push content out to all their stores with multicast which was really efficient with bandwidth. I loved it for that, but I hated interacting with it over unicast in any way, shape, or form. Horses for courses, as they say.
Badabinski
Nope, it would have no bearing on my decision-making process. Not my body, not my womb, not my fucking business.
Ditto for tar
and unrar
, although I deal with .7z
so infrequently that I have to look at the manual every time I use it.
find
's fucked up argument handling really becomes a problem for me when I want to use it in a complex pipeline or when using the -exec
flag. I've spent far less time debugging in those situations since switching to fd
. I won't yuck the yum of folks who are comfortable and like find
, but I feel that we probably have more approachable alternatives for new users.
This is excellent news.
However, the article is a bit light on the details. Like, was the state being sued? If so, who was suing them? Also, can this be appealed? Or is the legislature there going to have to try to pass a constitutional amendment allowing the practice of forced birth? I'll go look it up, but I just find it odd that none of that context was provided in the article.
EDIT: here's an article with more details and the full text of the judge's ruling: https://www.wabe.org/breaking-judge-rules-georgias-restrictive-abortion-law-unconstitutional/
It will likely be appealed. The case is:
SISTERSONG WOMEN OF COLOR REPRODUCTIVE JUSTICE COLLECTIVE, on behalf of itself and its members et al. v. STATE OF GEORGIA
EDIT: AP is continuously updating the article, so I imagine that they'll probably add some or all of this context before long.
The screenshots look really nice. I've personally always struggled with designing nice TUIs, so I really appreciate the way this looks.
I'd recommend trying out shellcheck and potentially building it into your repo as a CI check. I've written a ton of Bash over the years, and I've found shellcheck to be absolutely essential for any script over ~100 lines. It's not perfect, but it does do a great job of helping you avoid many of the foot guns present in Bash. I also dearly love this site. It's a fantastic reference, and I look at it almost every day.
I may take some time later today and provide a bit of specific feedback.
find
is also just a fucking mess in terms of UX. The fact that the ordering of positional and optional arguments are so strongly tied to each other has always driven me fucking bonkers. Nowadays, I install fd
everywhere I can and tell people to switch to it and never look back. locate
is nice and all, but I always forget to update the db and I don't want it populating in the background.
tar
doesn't bug me as much, provided you use unix or GNU style options. tar xvf foo.tar
is just icky and less readable than tar -xvf foo.tar
. I will happily concede that it's not very ergonomic though. I used to rely on things like dtrx
(short for Do The Right eXtraction) because it was such a pain to remember the options for tar
/unrar
/unzip
/7z
.
My pain tolerance for shitty input methods has been permanently warped after experiencing psychic damage from using Teamviewer to connect to a system over a very flaky HughesNet satellite link. I was working for a vendor that supplied a hardware networking box to a stupid retail company that sells food and shit. I just wanted to ssh to our boxen on a specific network so I could troubleshoot something, but the only way I could get to it was via putty installed on an ancient Windows XP desktop on the same network as our box that could only be accessed with Teamviewer. My favorite part of that was that the locale or something was fucked up, so my qwerty keyboard inputs were, like, fucking transformed into azerty somehow?? The Windows desktop was locked down and monitored to a tremendous degree, so I couldn't change anything. The resolution was terrible, the latency was over a second, and half of my keyboard inputs turned into gibberish on the other side.
Oh, and I was onsite at that same company's HQ doing a sales engineering call while I was trying to figure out what was wrong. I spent 5 days sitting in spare offices with shitty chairs, away from my family, living that fucking nightmare before I finally figured out what was wrong. God damn, what a fucking mess that was. For anyone reading this, NEVER WORK FOR GROCERY/DRUG STORE IT. They are worse than fucking banks in some ways. Fuck.
EDIT: also, I asked 'why Teamviewer' and the answer was always shrugs. This was before the big TeamViewer security incidents, so maybe they thought it was more secure? Like, at least they didn't expose RDP on the internet...
Having been in this situation (the only binary I could use was bash
, although cd
was a bash builtin for me), echo *
is your friend. Even better is something like this:
get_path_type() {
local item
item="$1"
[[ -z "$item" ]] && { echo 'wrong arg count passed to get_path_type'; return 1; }
if [[ -d "$item" ]]; then
echo 'dir'
elif [[ -f "$item" ]]; then
echo 'file'
elif [[ -h "$item" ]]; then
echo 'link' # not accurate, but symlink is too long
else
echo '????'
fi
}
print_path_listing() {
local path path_type
path="$1"
[[ -z "$path" ]] && { echo 'wrong arg count passed to print_path_listing'; return 1; }
path_type="$(get_path_type "$path")"
printf '%s\t%s\n' "$path_type" "$path"
}
ls() {
local path paths item symlink_regex
paths=("$@")
if ((${#paths[@]} == 0)); then
paths=("$(pwd)")
fi
shopt -s dotglob
for path in "${paths[@]}"; do
if [[ -d "$path" ]]; then
printf '%s\n' "$path"
for item in "$path"/*; do
print_path_listing "$item"
done
elif [[ -e "$path" ]]; then
print_path_listing "$path"
printf '\n'
fi
done
}
This is recreated from memory and will likely have several nasty bugs. I also wrote it and quickly tested it entirely on my phone which was a bit painful. It should be pure bash, so it'll work in this type of situation.
EDIT: I'm bored and sleep deprived and wanted to do something, hence this nonsense. I've taken the joke entirely too seriously.
oh my God it's like you're in my head get out of my head. I'm reading this because I'm trying to catch up on sleep and need to distract myself from the dread, so this hits way too close to home lol
I prefer "As Foretold."
Feminist as foretold.
FUCK.
I have once again been hooked all the way to the fucking gills.
The arch wiki has a udev rule that can automatically do something if the battery crosses a certain threshold: https://wiki.archlinux.org/title/Laptop#Hibernate_on_low_battery_level
No polling which is great. I always try to do stuff on an event driven basis where possible for efficiency reasons. Gotta test this out though, since your battery might not send events for every percent change.