news
Programming Leftovers
-
Linuxiac ☛ Lua 5.5 Released With Incremental Garbage Collection and Compact Arrays
One of the key additions is explicit global variable declarations, enabling developers to define globals more clearly and avoid common errors associated with implicit globals. In addition, variables in for-loops are now read-only, reducing unintended side effects in loop constructs.
Memory usage for arrays has been significantly optimized in Lua 5.5. According to devs, implementing more compact arrays reduces the memory footprint of large tables by approximately 60 percent, improving performance for data-intensive applications.
-
Groot Koerkamp ☛ Asymptotic elevators
I was listening to an episode of the well there’s your problem podcast about pencil towers (youtube), and it had a section on how elevators are a problem because they require a lot of space. So here’s a mathematical version of that.
-
Connor Tumbleson ☛ The OIDC Future
Lets imagine you have an access key that expires every 90 days and is probably hardened to the specific permissions that key needs. Maybe that's uploading a file and triggering a new deploy or something like that, but that is still a possible vector if it leaks. If you had a key that was ephemeral for the state of the action and auto-generated at the time it was needed that is basically what OIDC is under the hood.
-
Rlang ☛ A practical introduction to multiple imputation of missing data with the R-package mice workshop
Join our workshop on A practical introduction to multiple imputation of missing data with the R-package mice, which is a part of our workshops for Ukraine series!
-
[Repeat] Daniel Lemire ☛ Performance trick : optimistic vs pessimistic checks
Strings in programming are often represented as arrays of 8-bit words. The string is ASCII if and only if all 8-bit words have their most significant bit unset. In other words, the byte values must be no larger than 127 (or 0x7F in hexadecimal).
A decent C function to check that the string is ASCII is as follows.
-
Perl / Raku
-
Python
-
Seth Michael Larson ☛ PEP 770 Software Bill‑of‑Materials (SBOM) data from PyPI, Fedora, and Red Hat
This year I authored PEP 770 which proposed a new standardized location for Software Bill-of-Materials (SBOM) data within Python wheel archives. SBOM data can now be stored in (package)-(version).dist-info/sboms/. You can see the canonical specification on packaging.python.org.
-
NVIDIA Corporation ☛ Reducing CUDA Binary Size to Distribute cuML on PyPI
PyPI limits binary size to keep costs for the Python Software Foundation (PSF) under control and protect users from downloading unexpectedly large binaries. The complexity of the cuML library has historically required a larger binary than PyPI could host, but we’ve worked closely with PSF to overcome this by reducing binary size.
This post walks you through the new pip install path for cuML and a tutorial on the steps the team used to drop the CUDA C++ library binary size, which enabled the availability of cuML wheels on PyPI.
-
Jose Zarazua ☛ I’m a former CTO. Here is the 15 sec coding test I used to instantly filter out 50% of unqualified applicants.
The logic of course is that for a good programmer it would be more of a hassle to copy, open an interpreter or ChatGPT, paste it, run it, then answer, than just run the code in their head.
-
-
Shell/Bash/Zsh/Ksh
-
Rich Trouton ☛ Using printf to write variable values to JSON strings in Bash scripts
However, that didn’t work right and the asset_tag_number_goes_here variable’s value wasn’t being read correctly. Why? Because the JSON string uses single quotes to enclose it and in Bash, enclosing characters in single quotes means every character is being sent exactly as it is written.
-