#Development #Analyses
Why is CSS so tough for AI? · The reason Tailwind CSS is more AI-friendly https://ilo.im/168axz
_____
#Programming #Coding #VibeCoding #AI #Context #WebDev #Frontend #HTML #CSS #TailwindCSS
#Tag
#Development #Analyses
Why is CSS so tough for AI? · The reason Tailwind CSS is more AI-friendly https://ilo.im/168axz
_____
#Programming #Coding #VibeCoding #AI #Context #WebDev #Frontend #HTML #CSS #TailwindCSS
Let the little guys in: A context sharing runtime for the personalised web
#HackerNews #Let #the #little #guys #in #A #context #sharing #runtime #for #the #personalised #web #contextsharing #personalisedweb #HackerNews #techinnovation #webdevelopment
⁂ Article
Moving topics/contexts between communities
Moving contexts (aka topics/threads) between audiences (aka categories/communities) should be something that can be communicated outward.
NodeBB is experimenting with using the Move activity to communicate this to other instances.
When a context is moved from one audience to another, the object and all of its descendants go with it.
Solved! 🥳
This was a pretty "interesting" bug. Remember when I invented a way to implement #async / #await in #C, for jobs running on a threadpool. Back then I said it only works when completion of the task resumes execution on the same pool thread.
Trying to improve overall performance, I found the complex logic to identify the thread job to put on a pool thread a real deal-breaker. Just having one single MPMC queue with a single semaphore for all pool threads to wait on is a lot more efficient. But then, a job continued after an awaited task will resume on a "random" thread.
It theoretically works by making sure to restore the CORRECT context (the original one of the pool thread) every time after executing a job, whether partially (up to the next await) or completely.
Only it didn't, at least here on #FreeBSD, and I finally understood the reason for this was that I was using #TLS (thread-local storage) to find the context to restore.
Well, most architectures store a pointer to the current thread metadata in a register. #POSIX user #context #switching saves and restores registers. I found a source claiming that the #Linux ( #glibc) implementation explicitly does NOT include the register holding a thread pointer. Obviously, #FreeBSD's implementation DOES include it. POSIX doesn't have to say anything about that.
In short, avoiding TLS accesses when running with a custom context solved the crash. 🤯
A space for Bonfire maintainers and contributors to communicate