news
Programming Leftovers
-
Undeadly ☛ Game of Trees 0.118 released
Version 0.118 of Game of Trees has been released (and the port updated): [...]
-
Daniel Stenberg ☛ preparing for the worst
Back in the spring of 2025 we had an exercise at our curl up meeting in Prague. Jim Fuller played up an imaginary life-like scenario for a bunch of curl maintainers. In this role played major incident we got to consider how we would behave and what we would do in the curl project if something like Heartbleed or a serious breach occur.
It was a little of an eye opener for several of us. We realized we should probably get some more details written down and planned for.
-
NVISO Labs ☛ Effective Versioning Strategies for Detection-as-Code
In software engineering, versioning is the process of assigning unique identifiers to different states or iterations of a software product. The identifiers (a.k.a version numbers) help developers and users track updates, changes, or bug fixes made to the software over time. Versioning is essential for managing software development, ensuring compatibility, and communicating changes to the end users.
In detection engineering, and especially when practicing Detection-as-Code, versioning is just as important. Versioning in the detection library helps us maintain traceability and track changes to individual detections and content packs. It can help us pinpoint the exact state of specific detections at a given point in time, provides a clear history of updates and facilitates troubleshooting and debugging by identifying which version introduced particular changes.
The two most common versioning schemes are Calendar Versioning [1] and Semantic Versioning [2]. In this part, we are going to explore how we could adapt those versioning schemes in our repository.
-
Andy Bell ☛ While you’re fixing the fun stuff, fix the important stuff too
The point I’m making is that we should be always looking at ways to improve stuff, as we work on it. A lot of codebases are large these days, so the chances are that no one will open these cards for months after we’ve worked on them.
Our job is not just to write code, but to use our critical thinking and analysis skills to make decisions outside of the scope of writing characters in a text editor. It’s what sets us apart from AI tools because this type of thinking is an inherently human behaviour.
-
Alisa Sireneva ☛ Fenwick layout for interval trees
Fenwick trees and interval trees are well-known data structures in computer science. Interval trees in particular are commonly used in bioinformatics and computational geometry, and Fenwick trees are useful for keeping statistics.
-
J Kenneth King ☛ Using Haskell in Production
During that time I also started up a live video stream where I’ve built several libraries, games, and applications in Haskell for an audience.
This post is a summary of my experiences from those 4.5 years where I worked on a team of 20-some-odd developers writing Haskell that grew into a company with over a hundred developers. A lot of my experiences are flavoured by that unique situation. Be aware that this post is more of an experience report than a broad survey of Haskell in industry.
-
Max Leiter ☛ Formatting code should be unnecessary
I had a (maybe slightly overqualified) computer science teacher back in highschool, Mr. Paige. He worked on the Ada compiler and has been programming since the early 80s.
One day I complained about linter tooling that was driving me nuts. I said something to the effect of, "it's 2016, how are we still dealing with this sort of thing?"
Turns out, that problem was solved four decades ago (well, three at that point). Back when he was working on Ada, they didn't store text sources at all — they used an IR called DIANA. Everyone had their own pretty-printing settings for viewing it however they wanted.
We've been debating some linter settings at work recently and I keep thinking back to Mr. Paige. It's 2025, how are we still dealing with this sort of thing?
-
Hackaday ☛ Was Action! The Best 8-Bit Language?
Most people’s memories of programming in the 8-bit era revolve around BASIC, and not without reason. Most of the time, it was all we had. On the other hand, there were other options if you sought them out, and [Paul Lefebvre] makes the case that Goto10Retro that Action! was the best of them.
-
Python
-
Tom's Hardware ☛ How to make graphical Python apps the EasyGUI way
Amidst a forest of GUI framework choices, EasyGUI takes its name to heart and provides an exceptionally straightforward means to create your own graphical Python applications.
-
-
R / R-Script
-
Rlang ☛ From a slow analysis script to a fast and structured program in R workshop
Description: This workshop will aim to improve the speed, compartmentalisation, and modularity of bulky analysis scripts in the R programming language. We will cover:
Loops, and general issues with memory management during control flows, affecting speed
-
Rlang ☛ Bagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?
The French government is planning to hold a confidence vote on Prime Minister François Bayrou’s fiscal plan. If a coalition of opposition parties votes against the government, as is widely expected, Bayrou will have to submit his resignation to French President Emmanuel Macron.
-
Rlang ☛ From a slow analysis script to a fast and structured program in R workshop
Join our workshop titled From a slow analysis script to a fast and structured program in R, which is a part of our workshops for Ukraine series!
-
Dirk Eddelbuettel ☛ Dirk Eddelbuettel: RcppArmadillo 15.0.2-1 on CRAN: New Upstream, Some Changes
Armadillo is a powerful and expressive C++ template library for linear algebra and scientific computing. It aims towards a good balance between speed and ease of use, has a syntax deliberately close to Matlab, and is useful for algorithm development directly in C++, or quick conversion of research code into production environments. RcppArmadillo integrates this library with the R environment and language–and is widely used by (currently) 1279 other packages on CRAN, downloaded 41.2 million times (per the partial logs from the cloud mirrors of CRAN), and the CSDA paper (preprint / vignette) by Conrad and myself has been cited 644 times according to Google Scholar.
-