DEV Community

Cover image for WeekReview#202638
Mathieu Kerjouan
Mathieu Kerjouan

Posted on

WeekReview#202638

Linkedin is a mess. While I started to write articles on dev.to, I also started to create scheduled posts on Linkedin. It was working correctly until few days ago, when the "scheduler manager" just disappears. After 2 long hours to search where I could find a similar feature, I just stopped and started to use the "newsletter" feature from them. That's crazy to see how we are dependent of those services, and how they are treating us.

My feeds were quiet this week. Not a lot of interesting link to show.

Reflexion about Dart code design. What is the best way to design a module in Dart? It can be designed in many different ways, for example, the class can embed the methods to publish a post for example or delete it. In this case, the object must be instantiated first and then the methods can be called.

class Publication {
  int id;

  Publication({required this.id});

  Publication publish() => this;
  Publication delete() => this;
}

void main() {
  var pub = Publication(id: 1);
  pub.publish();
}
Enter fullscreen mode Exit fullscreen mode

What about using a more functional way of doing that, by using the classes/objects as data-structures and passing them directly to functions outside of the class definition?

class Publication {
  int int;
  Publication({ required this.id });
}

Publication publish(Publication pub) => pub;
Publication delete(Publication pub) => pub;

void main() {
  var pub = Publication(id: 1);
  publish(pub);
}
Enter fullscreen mode Exit fullscreen mode

Which method is the best? Well, I'm currently thinking to use the second one. The reason is simple, isolating side effect from the object itself, and function composition. Then, the object created can only be used with accessors, with some part of it in read-only or totally hidden. Anyway, I think it's mostly about coding style.

After few days of testing, using a mix of the two methods can be the best way. Another important part is how to name the module and how to organize the exported functions. Erlang, I miss you.


See a rumor that Mistral got hacked

Back in May 2026, I tweeted about the next threat that will come with OpenClaws and other LLMs used to remote control platforms. ~4 months later, Mistral has been hacked and it seems this is a serious issue. Unreleased code, entire code base and so on can now be found on tor. This is only the beginning, the next step is to infiltrate all layers, inject code and take control of the code produced by LLMs. Remember Linus Torvald saying "LLMs are just kind of compilers" few months ago? Well, if you can't trust your compiler, you can't trust what it produces, see "Reflections on Trusting Trust" by Ken Thompson. What the next step after that? Control the servers where those LLMs are executing tasks, and it's only a matter of time. Good luck to all developers and admins who installed this crap on their servers, including laptops, test and dev machines. Oh, and by the way, Mistral has been integrated in Firefox recently, have fun and sleep well!

Coding

πŸ“ Dart Google Summer of Code 2026 results: a report for the Dart Google Summer of code. package:ffigen looks promising and will help to create interface from c++ to dart. The other interesting project was debugging improvements for pointers.

πŸ“ libsodium/Finite field arithmetic: white searching a good cryptographic library for Dart (yeah, the ones available don't fit my needs), I read the libsodium documentation, especially the part on valid points.

πŸ“ Pear Docs: yet another p2p system. This time, it has been mostly done in javascript, by Holepunch. Some note on the protocol can be also found on github from libudx.

πŸ“ The "Clockwise/Spiral Rule": did not know this method to mentally parse C.

🌐 cdecl: an online tool to decipher C language notation, also available as CLI.

πŸ“ OpenBSD vmm/vmd SMP support: nice! We will be able to set the number of CPUs for a VM on OpenBSD, thanks to Bryan Steele for the news.

System

πŸ“ Void Linux Maintainer Orphans 100+ Packages Over AI Policy Dispute: the reason why I like Void Linux.

πŸ—οΈ turbocrypt: A fast, easy-to-use, and secure command-line tool for encrypting and decrypting files , git repositories and directory trees.

πŸ“ Crash-Safe & Copy-On-Write GEFS As The "Good Enough File-System" For OpenBSD: more than 10 years ago, HAMMER2 from DragonFlyBSD was planned to be ported to OpenBSD, but it never happened. This filesystem could be a good candidate to replace that. The specifications are looking good. The snapshot feature is really what is missing on many filesystems, including UFS.

Database

πŸ—οΈ pgassistant project: A PostgreSQL assistant for developers Understand, optimize, and improve your PostgreSQL database with ease.

Network

πŸ“ Overview of Passive Optical Networks (PONs) Security: a deep introduction to optical network security, a lot of information there.

Mathematics

πŸ“ Finite time blowup with smooth forcing term for the incompressible porous medium, Boussinesq, and incompressible Euler equations

Embedded

πŸ“ The Great Pi Zero Showdown: if you want to see benchmarks comparing different kind of Pi Zero implementation.

Security

πŸ“ The Hitchhiker's Guide to Online Anonymity (and Privacy)

πŸ“ From APK to Source: Complete Android Reverse Engineering Workflow: a succinct post containing the essential procedure to reverse engineer an android package (apk).

πŸ“ Android APK Reverse Engineering: From APK to Source: another post listing the essential procedures to reverse an android package.

🌐 Quarklabs' blog: lot of interesting articles about modern security (and programming).

πŸ“ Devil’s advocate? Uncensored Luciferus AI service advertised underground: underground actors are selling uncensored LLMs. Good to know.

πŸ“ The XSS inside your favorite iOS app: XSS can also be found in mobile application via WebView for Android and MKWebView for iOS. Good to know because one of my project is using WebView, hardening this part could be a good idea.

πŸ“ HEIF Heist, One image parser to pwn them all: the story behind libheif library vulnerability exploitation. Announced by Harsh Jaiswal (@rootxharsh) on X/Twitter.

πŸ“ Browser Forensics: Analyzing Suspicious Extensions with ExtAnalysis

Security/cryptography

πŸ“ It's 255:19AM. Do you know what your validation criteria are?: when I was looking for an up to date list of invalid or low-order public keys, I found this post. It seems most of the ed25519 on the market are not compatible with the RFC8032 (Edwards-Curve Digital Signature Algorithm (EdDSA)), mostly due to design issue and also because the RFC came after all implementations. That's actually a huge portability problem and a security issue as well.

Security/RedTeam

πŸ“ Advanced Techniques for Bypassing Modern Web Application Firewalls: a very long list of attacks for bypassing WAF.

πŸ“ JSON Interoperability Vulnerabilities: A Deep Dive: we tend to think JSON is secure because of its simplicity, portability and its presence everywhere. This article list different kind of vulnerabilities that can be found on JSON serializers. interesting.

Guesttohost:escapingDocker'shypervisor: docker hypervisor escape on MacOS, due to virtio-fs. ingenious way to get out of a container.

Update/Upgrade

πŸ”„ Phoenix 1.8.14: bug fixes

πŸ”„ RabbitMQ 4.3.6: bug fixes and enhancements.

πŸ”„ Erlang/OTP 29.1: many bug fixes and security issues. No new features.

πŸ”„ OpenSMTPD 7.9.0p0 released: bugs fixes and hardening.

Embedded

πŸ“ Biodegradable PCBs – The Future of Sustainable Electronics: good to know, we can now create biodegradable PCBs. Not sure if it's a good thing for the environment (e.g. heavy metals, polymers), but it's a first step.

Misc

🌐 BOB Conf

πŸ“ On-device intelligence for every product

πŸ›οΈ Tools for Thought

πŸ“‘ Theory Is All You Need: AI, Human Cognition, and Causal Reasoning: Here a part of the abstract.

Scholars argue that artificial intelligence (AI) can generate genuine novelty and new knowledge and, in turn, that AI and computational models of cognition will replace human decision making under uncertainty. We disagree. We argue that AI’s data-based prediction is different from human theory-based causal logic and reasoning. We highlight problems with the decades-old analogy between computers and minds as input–output devices, using large language models as an example. Human cognition is better conceptualized as a form of theory-based causal reasoning rather than AI’s emphasis on information processing and data-based prediction.

πŸ“ Iran strikes on Amazon data centers caused permanent loss of customer data: the cloud during war becomes foggy.

πŸ“ Intel Appears To End Its Bug Bounty Program: if it's the case, why? It could be due to the amount of false-positive bugs found with LLMs, it can have a really huge impact on developers team. Curious to know more about the reason.


Not quite my frequency

Chad third-party scraper

A matrix timeline


Cover Image by Sunira Moses on Unsplash

Top comments (1)

Collapse
 
henry_brown_0ea4e11e505c8 profile image
Henry Brown

Another great WeekReview! The Dart discussion around keeping data structures separate from functions is especially interesting, I’ve found that separating side effects often makes code much easier to reason about.

And the security section is a good reminder that the more infrastructure we hand over to automated systems, the more important trust boundaries and isolation become. Lots of interesting links this week! πŸ‘