user/bmallred/data/2023-03-24-04-59-07.fit: 3.10 miles, 00:10:32 average pace, 00:32:41 duration
user/bmallred/data/2023-03-23-05-23-00.fit: 3.02 miles, 00:09:11 average pace, 00:27:46 duration
user/bmallred/data/2023-03-22-05-25-36.fit: 3.02 miles, 00:09:33 average pace, 00:28:50 duration
user/bmallred/data/2023-03-15-07-43-12.fit: 3.63 miles, 00:09:12 average pace, 00:33:25 duration
Radians Are Cursed
⌘ Read more
user/bmallred/data/2023-02-25-07-28-18.fit: 3.00 miles, 00:10:54 average pace, 00:32:44 duration
user/bmallred/data/2023-02-24-10-00-37.fit: 3.24 miles, 00:10:27 average pace, 00:33:54 duration
user/bmallred/data/2023-02-21-10-59-59.fit: 3.11 miles, 00:11:39 average pace, 00:36:14 duration
user/bmallred/data/2023-02-13-13-10-39.fit: 3.01 miles, 00:13:06 average pace, 00:39:28 duration
user/bmallred/data/2023-02-06-09-14-44.fit: 3.16 miles, 00:13:59 average pace, 00:44:14 duration
user/bmallred/data/2023-02-04-09-00-52.fit: 3.13 miles, 00:09:30 average pace, 00:29:43 duration
user/bmallred/data/2023-02-02-15-24-31.fit: 3.33 miles, 00:09:47 average pace, 00:32:36 duration
user/bmallred/data/2023-01-26-08-58-43.fit: 3.01 miles, 00:09:59 average pace, 00:30:07 duration
user/bmallred/data/2023-01-24-13-03-29.fit: 3.00 miles, 00:10:19 average pace, 00:31:01 duration
user/bmallred/data/2023-01-23-19-30-59.fit: 3.10 miles, 00:09:43 average pace, 00:30:08 duration
i have one box with virmach that is something like 3 vcpu 5.88g ram and 15g disk. for $29/year.
Basecamp Details ‘Obscene’ $3.2 Million Bill That Prompted It To Quit the Cloud
An anonymous reader shares a report: David Heinemeier Hansson, CTO of 37Signals – which operates project management platform Basecamp and other products – has detailed the colossal cloud bills that saw the outfit quit the cloud in October 2022. The CTO and creator of Ruby On Rails did all the sums and came up with an e … ⌘ Read more
user/bmallred/data/2023-01-12-08-53-04.fit: 3.01 miles, 00:12:49 average pace, 00:38:39 duration
user/bmallred/data/2023-01-10-09-15-29.fit: 3.17 miles, 00:13:00 average pace, 00:41:08 duration
user/bmallred/data/2022-12-22-08-49-05.fit: 3.19 miles, 00:09:28 average pace, 00:30:09 duration
@eaplmx@twtxt.net This exact thing happened to me last night. I happened to be watching some random Youtube video, then this Ad came on, normally they are short 3-5s ads and I just tolerate them (sometimes) – But this particular ad was 20+ mins long! Somehow I kept listening to it too, despite my daughter telling me I could hit that “Skip Ad” button.
What was it you ask?! 😅 It was one of those testimonial-style, hyped up marketing videos of some product called “Gemini 2” (a currency trading app, allegedly), I kept watching all the way through, it was fantastic! 🤣
Then I went and read up on it! …
Short answer: TOTAL FUCKING SCAM 🤣
user/bmallred/data/2022-11-24-08-09-01.fit: 3.10 miles, 00:12:08 average pace, 00:37:39 duration
user/bmallred/data/2022-11-18-08-57-22.fit: 3.01 miles, 00:12:30 average pace, 00:37:38 duration
Tell me you write go like javascript without telling me you write go like javascript:
import "runtime/debug"
var Commit = func() string {
if info, ok := debug.ReadBuildInfo(); ok {
for _, setting := range info.Settings {
if setting.Key == "vcs.revision" {
return setting.Value
}
}
}
return ""
}()
user/bmallred/data/2022-10-14-11-04-28.fit: 3.13 miles, 00:07:59 average pace, 00:25:01 duration
user/bmallred/data/2022-10-13-10-17-05.fit: 3.44 miles, 00:09:56 average pace, 00:34:08 duration
user/bmallred/data/2022-10-06-09-04-12.fit: 3.33 miles, 00:10:15 average pace, 00:34:10 duration
user/bmallred/data/2022-09-29-13-43-14.fit: 3.04 miles, 00:08:52 average pace, 00:26:54 duration
user/bmallred/data/2022-09-22-04-59-06.fit: 3.44 miles, 00:09:59 average pace, 00:34:18 duration
user/bmallred/data/2022-09-13-13-37-56.fit: 3.01 miles, 00:10:04 average pace, 00:30:19 duration
user/bmallred/data/2022-08-25-08-53-11.fit: 3.62 miles, 00:10:13 average pace, 00:37:00 duration
user/bmallred/data/2022-08-22-15-22-48.fit: 3.22 miles, 00:10:56 average pace, 00:35:11 duration
user/bmallred/data/2022-08-19-13-25-28.fit: 3.79 miles, 00:11:06 average pace, 00:42:04 duration
user/bmallred/data/2022-08-18-11-01-04.fit: 3.74 miles, 00:13:19 average pace, 00:49:46 duration
user/bmallred/data/2022-08-16-08-53-50.fit: 3.13 miles, 00:10:25 average pace, 00:32:37 duration
HM [01;03;06]: 9 mile run: 9.54 miles, 00:11:12 average pace, 01:46:47 duration
casual. end of week 3 of block 1
#running
user/bmallred/data/2022-07-29-13-32-23.fit: 3.12 miles, 00:12:10 average pace, 00:38:01 duration
I’m trying to switch from Konversation to irssi. Let’s see how that goes. Any irssiers out there who can recommend specific settings or scripts? I already got myself trackbar.pl
and nickcolor.pl
as super-essentials. Also trying window_switcher.pl
. Somehow my custom binds for Ctrl+1/2/3/etc.
to switch to window 1/2/3/etc. doesn’t do anything: { key = "^1"; id = "change_window"; data = "1"; }
(I cannot use the default with Alt
as this is handled by my window manager). Currently, I’m just cycling with Ctrl+N/P
. Other things to solve in the near future:
- better, more colorful and compact theme (just removed clock from statusbar so far)
- getting bell/urgency hints working on arriving messages
- nicer tabs in status bar, maybe even just channel names and no indexes
- decluster status bar with user and channel modes (I never cared about those in the last decade)
user/bmallred/data/2022-06-24-08-13-22.fit: 3.60 miles, 00:11:49 average pace, 00:42:36 duration
user/bmallred/data/2022-06-22-16-05-44.fit: 3.31 miles, 00:11:35 average pace, 00:38:20 duration
user/bmallred/data/2022-06-20-11-14-22.fit: 3.40 miles, 00:11:37 average pace, 00:39:32 duration
user/bmallred/data/2022-06-16-17-34-58.fit: 3.17 miles, 00:11:16 average pace, 00:35:40 duration
user/bmallred/data/2022-06-14-13-34-19.fit: 3.59 miles, 00:11:58 average pace, 00:43:01 duration
the conversation wasn’t that impressive TBH. I would have liked to see more evidence of critical thinking and recall from prior chats. Concheria on reddit had some great questions.
Tell LaMDA “Someone once told me a story about a wise owl who protected the animals in the forest from a monster. Who was that?” See if it can recall its own actions and self-recognize.
Tell LaMDA some information that tester X can’t know. Appear as tester X, and see if LaMDA can lie or make up a story about the information.
Tell LaMDA to communicate with researchers whenever it feels bored (as it claims in the transcript). See if it ever makes an attempt at communication without a trigger.
Make a basic theory of mind test for children. Tell LaMDA an elaborate story with something like “Tester X wrote Z code in terminal 2, but I moved it to terminal 4”, then appear as tester X and ask “Where do you think I’m going to look for Z code?” See if it knows something as simple as Tester X not knowing where the code is (Children only pass this test until they’re around 4 years old).
Make several conversations with LaMDA repeating some of these questions - What it feels to be a machine, how its code works, how its emotions feel. I suspect that different iterations of LaMDA will give completely different answers to the questions, and the transcript only ever shows one instance.
user/bmallred/data/2022-05-28-05-44-14.fit: 3.12 miles, 00:08:51 average pace, 00:27:37 duration
user/bmallred/data/2022-05-19-09-13-24.fit: 3.95 miles, 00:10:41 average pace, 00:42:08 duration
5k with Beth: 3.17 miles, 00:11:56 average pace, 00:37:50 duration
5k with Beth
#running
#!/bin/sh
# Validate environment
if ! command -v msgbus > /dev/null; then
printf "missing msgbus command. Use: go install git.mills.io/prologic/msgbus/cmd/msgbus@latest"
exit 1
fi
if ! command -v salty > /dev/null; then
printf "missing salty command. Use: go install go.mills.io/salty/cmd/salty@latest"
exit 1
fi
if ! command -v salty-keygen > /dev/null; then
printf "missing salty-keygen command. Use: go install go.mills.io/salty/cmd/salty-keygen@latest"
exit 1
fi
if [ -z "$SALTY_IDENTITY" ]; then
export SALTY_IDENTITY="$HOME/.config/salty/$USER.key"
fi
get_user () {
user=$(grep user: "$SALTY_IDENTITY" | awk '{print $3}')
if [ -z "$user" ]; then
user="$USER"
fi
echo "$user"
}
stream () {
if [ -z "$SALTY_IDENTITY" ]; then
echo "SALTY_IDENTITY not set"
exit 2
fi
jq -r '.payload' | base64 -d | salty -i "$SALTY_IDENTITY" -d
}
lookup () {
if [ $# -lt 1 ]; then
printf "Usage: %s nick@domain\n" "$(basename "$0")"
exit 1
fi
user="$1"
nick="$(echo "$user" | awk -F@ '{ print $1 }')"
domain="$(echo "$user" | awk -F@ '{ print $2 }')"
curl -qsSL "https://$domain/.well-known/salty/${nick}.json"
}
readmsgs () {
topic="$1"
if [ -z "$topic" ]; then
topic=$(get_user)
fi
export SALTY_IDENTITY="$HOME/.config/salty/$topic.key"
if [ ! -f "$SALTY_IDENTITY" ]; then
echo "identity file missing for user $topic" >&2
exit 1
fi
msgbus sub "$topic" "$0"
}
sendmsg () {
if [ $# -lt 2 ]; then
printf "Usage: %s nick@domain.tld <message>\n" "$(basename "$0")"
exit 0
fi
if [ -z "$SALTY_IDENTITY" ]; then
echo "SALTY_IDENTITY not set"
exit 2
fi
user="$1"
message="$2"
salty_json="$(mktemp /tmp/salty.XXXXXX)"
lookup "$user" > "$salty_json"
endpoint="$(jq -r '.endpoint' < "$salty_json")"
topic="$(jq -r '.topic' < "$salty_json")"
key="$(jq -r '.key' < "$salty_json")"
rm "$salty_json"
message="[$(date +%FT%TZ)] <$(get_user)> $message"
echo "$message" \
| salty -i "$SALTY_IDENTITY" -r "$key" \
| msgbus -u "$endpoint" pub "$topic"
}
make_user () {
mkdir -p "$HOME/.config/salty"
if [ $# -lt 1 ]; then
user=$USER
else
user=$1
fi
identity_file="$HOME/.config/salty/$user.key"
if [ -f "$identity_file" ]; then
printf "user key exists!"
exit 1
fi
# Check for msgbus env.. probably can make it fallback to looking for a config file?
if [ -z "$MSGBUS_URI" ]; then
printf "missing MSGBUS_URI in environment"
exit 1
fi
salty-keygen -o "$identity_file"
echo "# user: $user" >> "$identity_file"
pubkey=$(grep key: "$identity_file" | awk '{print $4}')
cat <<- EOF
Create this file in your webserver well-known folder. https://hostname.tld/.well-known/salty/$user.json
{
"endpoint": "$MSGBUS_URI",
"topic": "$user",
"key": "$pubkey"
}
EOF
}
# check if streaming
if [ ! -t 1 ]; then
stream
exit 0
fi
# Show Help
if [ $# -lt 1 ]; then
printf "Commands: send read lookup"
exit 0
fi
CMD=$1
shift
case $CMD in
send)
sendmsg "$@"
;;
read)
readmsgs "$@"
;;
lookup)
lookup "$@"
;;
make-user)
make_user "$@"
;;
esac
what’s your super power?!: 3.03 miles, 00:08:51 average pace, 00:26:51 duration
what’s your super power?!
#running
Recovery run (with Beth): 3.17 miles, 00:12:52 average pace, 00:40:45 duration
Recovery run (with Beth)
#running