Programming Leftovers
-
Qt ☛ Qt Safe Renderer 2.1 Released
We are happy to announce the full availability of Qt Safe Renderer (QSR) 2.1 release. QSR 2.1 also has been certified by TUV.
-
Elliot C Smith ☛ Barnacle processes
Barnacle processes, invented when growth is lacking, can slow and kill otherwise great startups. Tech startups have a general culture of going fast. When growth is slow in a culture like that, people often still want to move around quickly. When that happens, people need to run in circles to keep up the momentum.
-
Concurrency Freaks ☛ Concurrency is Coordination and Sharing
The other day I was watching Rob Pike's presentation on "Concurrency is Not Parallelism" where indeed he makes a good distinction between concurrency and parallelism, but I felt that something was missing. You see, what he calls Concurrency has very little to do with what Andreia and I call Concurrency. As such, I've been trying to distil why that is, and this post addresses some of these ideas.
I believe that Concurrency in shared memory can be split into two areas: coordination and sharing.
-
Karl Seguin ☛ Using SIMD to Tell if the High Bit is Set
One of the first Zig-related blog posts I wrote was an overview of SIMD with Zig. I recently needed to revisit this topic when enhancing my smtp client library. Specifically, SMTP mostly expects printable ASCII characters. Almost all other characters, including UTF-8 text, must be encoded.
-
[Old] Raul Jordan ☛ Reminiscing on my early days writing software
...when all I had to do was send a JSON POST request to my Python app, have it do its thingamajig, and respond with its recommendation data. At the time, however, I neither took a step back and framed my question in context to others, nor did I evaluate alternatives to my problem before going deep into it. Was the fact that computer science programs do not teach practical knowledge part of the problem? I'd say yes, but it's not entirely their fault compared to my own. If there's anything to takeaway from this story, it's that knowing when to ask "why" was my biggest asset in growing from a naive beginner into somebody that understands computers a little bit better today.
-
Entrapment (Microsoft GitHub)
-
Nemanja Ninković ☛ I'll think twice before using Github Actions again
Before I rant about GitHub Actions, I'd like to set the context on where this dissatisfaction comes from. My team consists of about 15 engineers constantly pushing to the main branch. Our code lives in a monorepo split per module, which, through trunk based development, gets deployed multiple times a day.
-
-
Python
-
University of Toronto ☛ A change in the handling of PYTHONPATH between Python 3.10 and 3.12
Our long time custom for installing Django for our Django based web application was to install it with 'python3 setup.py install --prefix /some/where', and then set a PYTHONPATH environment variable that pointed to /some/where/lib/python/site-packages. Up through at least Python 3.10 (in Ubuntu 22.04), you could start Python 3 and then successfully do 'import django' with this; in fact, it worked on different Python versions if you were pointing at the same directory tree (in our case, this directory tree lives on our NFS fileservers). In our Ubuntu 24.04 version of Python 3.12 (which also has the Ubuntu packaged setuptools installed), this no longer works, which is inconvenient to us.
-