They worry because this is clearly true. The D political machine is ignoring the risks, or burying them, out of fear of rocking the boat and losing the election.
Nothing But the Truth?
Politico has a medium-length article out today that reports testimonies and verified emails that contradict President Biden’s stronger denials regarding his relationships with the family businesses.
None of it would be the smoking gun that congressional Republicans are looking for to impeach Biden. However, it does cast a negative light on Joe Biden and will impeach the character that he and Democrats more broadly have built up of himself.
The allegedly false denials will cause way more of a headache than the actual events denied1. I think he could have come clean in 2020 and these things would 1000 news cycles ago, nearly forgotten. It isn’t just Joe Biden’s denials: the long-term insistence that the stolen Hunter Biden laptop is a big nothing-burger is appears untrue.
I don’t imagine that there is any Democrat who went on record refuting the importance of that laptop care to revisit those statements now.
Drip drip drip of small-lies and half-truths are a problem for any campaign2 but it is potentially disastrous for a campaign where the winner will be chosen by those on the margins. The handful of Americans who — somehow — have not made up their mind up either candidate.
I think Joe Biden is poor candidate for president and the Democrats would fare better if he decided not to run again and endorsed someone else.
The Difference Between Israel and Hamas
WSJ quoting Robert Habeck:
“After the Holocaust, the founding of Israel was the promise of protection to the Jews—and Germany is compelled to help ensure that this promise can be fulfilled,” Habeck said in a speech posted on X. “Of course, Israel must abide by international law and international standards. But the difference is this: would someone ever frame such expectations of Hamas?”
Digital Ocean simply doesn’t support multiprocessing on their app platform.
I use used Digital Ocean’s App Platform for a docker run application. I also use celery
for asynchronous processing and cronjobs inside of this application. For months it worked without issue, and then one day my logs started filling up things like Errno 38
above, all with celery
, billiard
and SemLock
errors.
I wasted a lot of time troubleshooting so now let me save you time.
Digital Ocean simply doesn’t support multiprocessing on their app platform.
At least as far as I can tell, this thread finally made it click for me: https://github.com/Koed00/django-q/issues/522
The ultimate fix was to run a separate instance of the app in docker on a VM instead of the app platform (which yes, defeats the purpose of having the IaaS app platform in the first place).
Hopefully I got enough keywords in here that you, dear reader, can save yourself a day of development work.
CRITICAL/MainProcess] Unrecoverable error: OSError(38, 'Function not implemented') Traceback (most recent call last): File "/usr/local/lib/python3.10/site-packages/celery/worker/worker.py", line 202, in start self.blueprint.start(self) File "/usr/local/lib/python3.10/site-packages/celery/bootsteps.py", line 116, in start step.start(parent) File "/usr/local/lib/python3.10/site-packages/celery/bootsteps.py", line 365, in start return self.obj.start() self.on_start() P = self._pool = Pool(processes=self.limit, File "/usr/local/lib/python3.10/site-packages/celery/concurrency/asynpool.py", line 464, in __init__ super().__init__(processes, *args, **kwargs) File "/usr/local/lib/python3.10/site-packages/billiard/pool.py", line 1045, in __init__ self._create_worker_process(i) File "/usr/local/lib/python3.10/site-packages/celery/concurrency/asynpool.py", line 482, in _create_worker_process return super()._create_worker_process(i) File "/usr/local/lib/python3.10/site-packages/billiard/pool.py", line 1141, in _create_worker_process on_ready_counter = self._ctx.Value('i') File "/usr/local/lib/python3.10/site-packages/billiard/context.py", line 179, in Value return Value(typecode_or_type, *args, lock=lock, File "/usr/local/lib/python3.10/site-packages/billiard/sharedctypes.py", line 81, in Value lock = ctx.RLock() File "/usr/local/lib/python3.10/site-packages/billiard/context.py", line 108, in RLock return RLock(ctx=self.get_context()) SemLock.__init__(self, RECURSIVE_MUTEX, 1, 1, ctx=ctx) File "/usr/local/lib/python3.10/site-packages/billiard/synchronize.py", line 70, in __init__ sl = self._semlock = _billiard.SemLock( OSError: [Errno 38] Function not implemented
Inbox Zero Doesn’t Work — Here’s What I Do
Years ago I endeavored to hit inbox zero, the zen state where your inbox either stays at zero1 all day long, or at least ends at zero. A decade ago, this was not unreasonable: if you filtered out spam and newsletters you could respond to most emails quickly, even if some of the responses were along the lines of “I need more time to answer this thoroughly.”
And it felt like I accomplished something — all my things were done for the day, nothing outstanding!
Today, most of us are a long way from being able to empty out our inbox at any point in the day. It’s not possible. Too many emails come in as I’m processing email. It also no longer feels like an empowering accomplishment, all I did was file 100 emails and send replies to people that didn’t need to email me in the first place.
I tried a couple of different methods, but still found it impossible to stay on top of it. Around the same time, I started on Getting Things Done (GTD), a framework for collecting and prioritizing your todo list, without going overboard. I didn’t do great there, either.
I found that half-implementing inbox zero and half-implementing GTD meant that I missed important things and then I distrusted my systems — so I went back into my inbox and GTD even more to make sure I didn’t miss something, which I now I was guaranteed to do because there was no one place I was storing things to do. There were in my email, my todo list, my head, sometimes stickies.
Here is the current solution:
- I go through all emails — both personal and work — at the end of each day, and clear out all of yesterday’s emails. If today is Thursday, by EOD there will not be any emails remaining from Wednesday. This doesn’t mean I won’t take care of any emails from today, but yesterday’s email must get done.
This is also possible, because on Thursday I can’t get any more emails from Wednesday. That also means I can finish it! There is a finish line I can see!
Note: this doesn’t mean I don’t process any of today’s emails, just that I don’t have to. - Emails that need a longer response or an action I can’t take now get put into my GTD Inbox (todo list), but no email is left unturned.
- Every morning I go through my GTD inbox (despite the name, this isn’t like email) — this was not an easy habit to start. The real key for me was to give myself permission to not work on that thing today. If it’s important but not urgent, it doesn’t make today’s must do list, which frees up my mental capacity to process the GTD inbox.
When I do all three of these daily I, (1) don’t miss important communications, (2) feel freedom to really end the work day, because I know I didn’t miss any important communications, (3) trust my systems.
So, “inbox zero,” now means “no emails left from yesterday,” which in turns means it is no longer impossible.
- Not zero unread, zero messages, full stop. Everything is deleted, archived or filed. ↩︎