news
Programming Leftovers
-
Bozhidar Batsov ☛ Rediscovering Vim
I’m already at the point where I feel pretty comfortable with the basics and I probably know about Vim than I ever did. Still, I definitely not as productive as I want to be and I often have to pause and think how to adjust my work habits to match the Vim way. One of the areas that I struggle the most with is that it’s very hard to work on multiple projects with the same Vim instance. I know that’s not how most people use Vim, but it’s something I’m quite used to and it’s taking some time to adjust. I’m also struggling with the weird (and very central) file plugin and figuring out how to tweak various settings for different file types. I know that’s subjective, but right now Emacs’s notion of major and minor modes seems pretty fantastic to me in comparison. Oh, well… perhaps I’ll see the light one day!
-
Sandor Dargo ☛ Constructing Containers from Ranges in C++23
I’ve written plenty on this blog about standard algorithms, but far less about ranges. That’s mostly because, although I’ve had production-ready compilers with C++20 ranges since late 2021, the original ranges library lacked a few key capabilities.
-
Julik Tarkhanov ☛ UI Algorithms: A Tiny Promise Queue
I’ve needed this before - a couple of times, just like that other thing. A situation where I am doing uploads using AJAX - or performing some other long-running frontend tasks, and I don’t want to overwhelm the system with all of them running at the same time. These tasks may be, in turn, triggering other tasks… you know the drill. And yet again, the published implementations such as p-queue and promise-queue-plus and the one described in this blog post left me wondering: why do they have to be so big? And do I really have to carry an NPM dependency for something so small?
-
Akshay ☛ Tales From Mainframe Modernization
At my last workplace, I wrote transpilers (or just compilers if you prefer) from mainframe languages (COBOL, JCL, BASIC etc.) to Java (in Rust!).
Legacy code is full of surprises. In the roughly 200k lines of COBOL that I had the (dis)pleasure of working with, I saw some wonderful hacks to get around the limitations of the system. Mainframes are also chock full of history.
-
Rlang ☛ Security blind spots in Shiny: why your app is more vulnerable than you think
“Shiny is well-designed”! By default, inputs in Shiny return (almost) only character strings. As long as the input content is not evaluated, we are relatively safe.
For example, this simple application that simply displays the content entered by the user is secure: [...]
-
Julia Programming Language ☛ From Simulation to Hardware: JuliaHub’s End-to-End Workflow for Embedded Control Systems
Designing embedded control systems typically involves a fragmented workflow—engineers model and simulate control logic in one environment, while developers manually rewrite and deploy that logic in another. This “two-culture problem” slows down development, introduces errors, and makes iteration costly.
JuliaHub is changing that with a unified, model-based workflow that takes you from simulation to embedded deployment seamlessly—using JuliaSim and the new JuliaC compiler.
-
YLE ☛ TikTok explains why it's establishing a data centre in Finland
The other Project Clover data centres are located in Norway and Ireland and serve the same purpose — storing TikTok users' data.
-
Collabora ☛ What if C++ had decades to learn?
In this second article of a three-part series, I look at how Matt Godbolt uses modern C++ features to try to protect against misusing an API that deals with destructive state transition based on a talk he gave on making code easy to use and hard to misuse.
-
Education
-
Plone Conf 2025 ☛ Call for Papers
The conference organizers encourage a broad range of submissions. Whether you have extensive experience with Plone and Python or are new to these communities, your insights and perspectives are valuable. Proposals are welcomed in English.
-
Rlang ☛ Forwards To Offer R Package Development Workshops Online
The Forwards teaching team is hosting two workshop series beginning next month to teach participants how to build their own R packages. No prior package building experience is required.
-
-
Python
-
ID Root ☛ Create Candlestick Chart Plot using Python
In the realm of financial analysis, candlestick charts represent one of the most powerful visualization tools available. Their ability to display price movements, trends, and potential reversals makes them indispensable for traders, analysts, and financial enthusiasts. This comprehensive guide explores how to create effective candlestick charts using Python, from basic implementations to advanced customizations.
-
-
Java
-
Ubuntu Handbook ☛ NetBeans 26 Added Java SE 25 Support for Tomcat, TomEE & GlassFish
After 3 months of development, Apache NetBeans announced the new 26 release today. The new release updated its UI with better HiDPI support. It now displays the dragged tab image and ensures to render SVG icons at full resolution on HiDPI screens.
-
-
Rust
-
Rust Weekly Updates ☛ This Week In Rust: This Week in Rust 600
Hello and welcome to another issue of This Week in Rust!
-