-- Leo's gemini proxy

-- Connecting to gemini.tuxmachines.org:1965...

-- Connected

-- Sending request

-- Meta line: 20 text/gemini;lang=en-GB

Tux Machines


Programming Leftovers


Posted by Roy Schestowitz on Dec 23, 2022


Kodi Nexus RC 2

Proprietary and Security Leftovers



Kiwi TCMS: Program for Testing and Automation devroom, FOSDEM'23


↺ Kiwi TCMS: Program for Testing and Automation devroom, FOSDEM'23


> Attention testers! On behalf of Testing and Automation devroom we'd like to announce that the final program for the devroom is ready!


> We received over 30 submissions this year and the entire collection of topics was extremely good. During FOSDEM we are going to see topics around functional testing for the Linux kernel, growing testing infrastructure for Linux, testing of new networking protocols, observability-driven development, the testing history behind the GNOME desktop environment, property-based testing and mutation testing.



NVIDIA releases CUDA 12.0


↺ NVIDIA releases CUDA 12.0


> The update allows users to target architecture-specific features in the NVIDIA Hopper and NVIDIA Ada Lovelace architectures with enhanced libraries, developer tools, and CUDA custom code. The new update also supports revamped CUDA dynamic parallelism APIs, enabling performance improvements and also enhancing CUDA Graphs API.



Code longevity of the R programming language


↺ Code longevity of the R programming language


> The problem is that you have to find old code laying around. Some people have found old code they wrote a decade or more ago and tried to rerun it; there’s this blog post by Thomas Lumley and this other one by Colin Gillespie that I find fascinating, but ideally we’d have more than a handful of old scripts laying around. This is when Dirk Eddelbuettel suggested this: [...]



Bugs that literally cost money


↺ Bugs that literally cost money


> That got me interested in the class of bugs where the cost is direct and obvious. And the most obvious case of “obvious cost” is when the bug prevents me from spending money. In October I started recording instances of this I’ve run into. Here’s what I got so far: [...]



Rust 2023 (By Yosh)


↺ Rust 2023 (By Yosh)


> The core team used to put out a yearly call for blog posts. My colleage Nick published their "Rust in 2023" post last week, and encouraged others to do the same. I like the idea of taking a moment to reflect on larger topics, and so well, why not write a post!


> I want to do this a bit differently from the usual formula though. Rather than writing something with the specific intent to build some sort of "Rust 2023 roadmap", I want to instead take this as an opportunity to reflect on the state, values, and priorities of the Rust project. More of a snapshot of my current perspectives, than a concrete list of action items I think should be tackled. Here goes!



Challenging algorithms and data structures every programmer should try


↺ Challenging algorithms and data structures every programmer should try


> Well, back when I was a student, my algorithms courses regularly put me to sleep. This is unfortunate because there are some really interesting algorithms and data structures out there. Not only have they come up during job interviews, but learning them changed how I think about problems. Plus they're useful even if you don't work on Google-scale problems.



Unit test this


↺ Unit test this


> I saw a decent answer to my question which makes sense for C. Another decent (if a bit vague) answer was: [...]



Backward Compatibility


↺ Backward Compatibility


> I think that many of us take backward compatibility for granted. It's so ingrained in our daily life that we don't even question it.


> Backward compatibility is a spectrum – some systems are more compatible than others. But, at the end of the day, it's often one of the few reasons why we can use old software and hardware in new environments.


> Why is backward compatibility important?



Fast and accurate syntax searching for C and C++


↺ Fast and accurate syntax searching for C and C++


> The naive approach to searching for patterns in source code is to use regular expressions; a better way is to parse the code with a custom parser, but both of these approaches have limitations. During my internship, I prototyped an internal tool called Syntex that does searching on Clang ASTs to avoid these limitations. In this post, I’ll discuss Syntex’s unique approach to syntactic pattern matching.



Continuous Fuzzing for Open Source Software #OpenSource @Google


↺ Continuous Fuzzing for Open Source Software #OpenSource @Google


> Fuzz testing is a well-known technique for uncovering programming errors in software. Many of these detectable errors, like buffer overflow, can have serious security implications. Google has found thousands of security vulnerabilities and stability bugs by deploying guided in-process fuzzing of Chrome components, and we they want to share that service with the open source community.



Detecting missing or bad Go modules and module versions


↺ Detecting missing or bad Go modules and module versions


> However, this will not help you if the upstream has removed the module entirely, or removed a version without doing the right retract directive magic in go.mod. And using fgrep here counts on the Go authors not changing the format of the output for retracted or deprecated modules; as we've all found out in the module era, the Go tools are not a stable interface.



Systems design and being bitten by edge-triggering


↺ Systems design and being bitten by edge-triggering


> Let's try a thought experiment: we're going to design a little program that provides a service on a vaguely Unix-flavored box. It's designed to periodically source information over the Internet from hosts that may be close or far away, and then it keeps a local copy for itself and others to use.



How to Work with YAML in Python


↺ How to Work with YAML in Python


> If you’d like to learn how to work with YAML in the Python programming language, then this tutorial is for you. This tutorial will cover creating, writing, reading, and modifying YAML in Python.



How to copy linked list in Python?


↺ How to copy linked list in Python?


> Linked Lists are a type of ‘Abstract Data Types‘ in Python. These data structures are linear in nature. Linked Lists are different from Lists as Linked Lists are stored in non-contiguous (non-continuous) memory whereas lists, in contrast, are stored in contiguous (continuous) memory blocks. The elements stored in Linked Lists are in the form of ‘Nodes‘. Each node consists of two parts: Data and Pointer to the next node.



have a happy hannukah with a circuitpython menorah


↺ have a happy hannukah with a circuitpython menorah


> we spent this evening updating this cute menorah project we’ve had for over a decade, from an Arduino UNO to run on a RP2040 QT Py board (https://www.adafruit.com/product/4900) with our prototype “IoT Button BFF” board to increment through the nights. we used PaintYourDragons’ LED candle flicker code from this halloween project (https://learn.adafruit.com/circuit-playground-jack-o-lantern) and sorta mixed it with Liz’s NeoPixel menorah project from last year (https://learn.adafruit.com/neopixel-menorah). this project predates NeoPixels – all we had were WS2801’s at the time! we think it looks pretty nice now, and its a lot more compact 🙂 – video.




gemini.tuxmachines.org

-- Response ended

-- Page fetched on Sat Jun 1 08:43:56 2024