TAG at least engaged with some quotes of what I said and wrote some explanation of some of his ideas. Jiro is low effort and vague, and I read him as too biased/hostile to engage in some debate. TAG listened when I told him I wasn’t advocating infallibility and moved on to making a different point, but Jiro wouldn’t listen when I told him his comments were off topic, applied to arguments generally, and had nothing to do with my article and claims in particular. Jiro insisted it did apply to my article with no quotes, details or arguments. Also Jiro is all offense, no defense/alternatives, no ideas of his own to say, while TAG is a mix. And that’s not even getting into the article Jiro linked itself being extremely problematic and easy to misuse and use selectively, which is what Jiro is doing with it (though in a different way than it’s set up for).
I see how Jiro was unresponsive.
I thought it had some similarities with how you advise against revolutionary rationalism and instead advise to changing more slowly after careful/expertly consideration: rationalism and convention [Fallible Ideas podcast].
I don’t like how it provides an easy excuse to not listen at all and dismiss rational arguments.
I think the proper CF/decisive arguments response is that you must go through the entire debate tree. Even if you got persuaded by one decisive argument you haven’t yet made an effort to review the literature for criticism of the decisive argument.
I guess one can tentatively accept the idea after each persuasive decisive argument, but then one should keep in mind there are, or could be, lines of argument that go deeper that one hasn’t yet addressed. In that case you shouldn’t yet act on the knowledge in significant ways like being an activist about it or making a major life change based on it. At this point one could engage in debate and discussion holding it as true given the discussion or debate is understood to be held over a less stable belief.
It’s unfortunate that there’s no easy way to distinguish between new essays and old essays that just had their forum topic created. (which I think is going to keep happening sporadically for a while as old essays get loaded by people in real browsers now that i embed the forum comments on the blog posts. it seems like web scrapers in general aren’t triggering it or more would already have been created).
I wrote Richard Hamming on Doing Great Research today but it sorta blends in with old stuff on the forum.
Should essays/videos get auto-posted from an Elliot-bot account instead of the Elliot account? Would that be better or worse?
Better.
Why?
The bot tag fulfills the same purpose but having it be an Elliot-bot account would make it more obvious. I think the purpose is to explain possibly weird posting behavior. And possibly transparency and honesty is another purpose?
I don’t think it’s important or necessary, just slightly better by making it more obvious.
I submitted a code improvement to Discourse
I was discussing CF and induction with TAG, but they seem to have stopped responding on LessWrong with no explanation.
Silly AI tip: Say hi to your agents when you wake up. You’ll get your second 5h usage window sooner. Helps if you’re pushing near usage limits. E.g. if you start work 2h after waking up, then your usage only has to last for 3h before you get more.
you can do something like this in cron, too if you don’t want to remember:
1 * * * * claude --model haiku "reply only OK"
another tip: /loop 4m 'cache warm' (with claude; different for other clients). unless you have longer cache times on (is 2x usage with claude), the cache expires after 5 minutes. Sending a msg is about 0.08x the ‘cost’ if it hits the cache. Examples of when the cache can be hit: replying or sending a new msg after it’s been idle for 5+ min, taking more than 5 minutes to answer all questions asked via the tool, a bash script that takes more than 5 min to run. Just having the 4 min loop will fix (1). Unfortunately (2) just needs you to be faster, and for (3) you need the cache warmer + run in bg by default.
If you’ve ever seen a 10% chunk be taken out of your usage super quickly, cache expiry + a longish thread might be why. This is now a much bigger problem (potentially) now that opus with 1m context window was made default.
You can also ask it to use Monitor(heartbeat 4.5m 'keep cache warm') to use the monitor tool which is better than scheduled tasks but not always enabled because anthropic. The Monitor tool sends a msg with every line of stdout. You can use it to make a simple way to send msgs from agent to agent too. It’s so useful I made my own version for opencode.
pinging claude periodically could line up the timing poorly. you might have a 5h window ending right when you start working. i think it’d be better to set a cron job to run at a specific time in the morning, e.g. 3h before you usually start working.
the cron job should be 1 minute past each hour (* * * * * would be every minute), but yeah you’re also right if you want to hit maximum usage over an 8hr period (where you want to start with like 2hrs remaining, then you get 5hrs, then 1hr, or something like that)
they’ve also started sometimes letting cache windows not align to the hour or half our. I’ve seen like resetting at 4:40pm on mine occasionally. It seems inconsistent and that it doesn’t work like that atm. In general trying to optimize feels like a cat-and-mouse game, so probably picking a strategy that is simple and works for the context is the best thing for regular use.
The one good thing about all this quota stuff at least is that you can always hit 100% usage if you plan it right. It seems like for anthropic plans (both 5x and 20x) you can use 10% of weekly quota in a 5hr period, so you get 50hrs approx of solid use each week.
At 28:20 he says he talks to his audience a lot and most content creators don’t and think you aren’t supposed to!? Honestly fits my experience of the world pretty well (with intellectuals too). Not what I do though.
oh also i have this in my statusline.sh for claude:
❯ cat ~/.claude/statusline.sh
#!/usr/bin/env bash
input=$(cat)
# --- archive/copy statusline input for processing ---
session_id=$(echo "$input" | jq -r '.session_id') # | tee -a ~/.sl-debug.log)
CC_PROFILE=${CLAUDE_CONFIG_DIR:-$HOME/.claude}
CC_STATUSLINE_OUT_DIR="$CC_PROFILE/sl_out/$session_id"
CC_STATUSLINE_OUT_FILE="$CC_STATUSLINE_OUT_DIR/input.json"
sl_out_f="$CC_STATUSLINE_OUT_FILE"
mkdir -p "$CC_STATUSLINE_OUT_DIR"
echo "$input" > "$CC_PROFILE/sl_out/last.json"
echo "$input" > $sl_out_f
# ---
# ... snip ...
you can do various processing using other tools and see what it says and things. in this case, it has this shape: { <other stuff>, "rate_limits":{"five_hour":{"used_percentage":60,"resets_at":1778239200},"seven_day":{"used_percentage":87,"resets_at":1778432400}}}. You can then schedule stuff based on that. there’s lots of other info too like context usage, cost, api/wall duration, model, working dirs, etc.