Programming Leftovers
-
Type::Tiny v2 is Coming | Toby Inkster [blogs.perl.org]
Eagle-eyed watchers of CPAN may have noticed that I've recently been releasing Type::Tiny development releases with version numbers 1.999_XYZ.
Type::Tiny v2 is intended to be compatible with Type::Tiny v1. If you've used Type::Tiny v1, you shouldn't need to change any code, but Type::Tiny v2 has a few new features which may make your code simpler, more maintainable, and more readable if you adopt them.
-
Using Python and NetworkManager to control the network - Fedora Magazine
NetworkManager is the default network management service on Fedora and several other Linux distributions. Its main purpose is to take care of things like setting up interfaces, adding addresses and routes to them and configuring other network related aspects of the system, such as DNS.
There are other tools that offer similar functionality. However one of the advantages of NetworkManager is that it offers a powerful API. Using this API, other applications can inspect, monitor and change the networking state of the system.
This article first introduces the API of NetworkManager and presents how to use it from a Python program. In the second part it shows some practical examples: how to connect to a wireless network or to add an IP address to an interface programmatically via NetworkManager.
-
Learning asynchronous programming in Rust - Martin Pitt
I recently found myself needing to write a dynamic reverse HTTP/websocket proxy. After some prototyping it is now time to write something real. To prepare myself for that, I devoted today’s Red Hat Day of Learning to another aspect of Rust: asynchronous programming, and learning about tokio. There is really no getting around tokio in the Rust world of networking.
I started with the small book “Asynchronous Programming in Rust”. Honestly I found this a bit hard to follow, as it quickly dives into a lot of technical details, which I don’t have yet. But I understand the basics now: futures, async/.await, and an overview about available runtimes. As JavaScript developer I’m of course very familiar with async programming in general (a JS Promise is more or less the same as a Rust Future), but due to Rust’s much stricter typing and borrowing rules and multi-threading capabilities there are a lot of extra details to consider.
Moving on to tokio, I found a nice blog post from Jakub Barszczewski that explains the basics of tokio on a simple web service example. That was very well written, easy to follow and understand. It only took an hour or so to work through, including copious excursions to API docs.
-
Blender 3D modeler SFS created
I downloaded the tarball and converted it to an SFS. Just click on the "sfs" icon to download. I recommend install to the main desktop, not in a container, as with the latter choice it seems to be running openGL with software rendering only.
On the main desktop, Blender runs as user 'blender'. This does create one little problem; it has menu entries to run the web browser to see online documentation, which doesn't work. I have fixed it, but that fix will be in the next release of EasyOS. You can still view online documentation of course, just not via the menu in Blender.
-
Developing Safety Application
We initially developed Qt Safe Renderer to show warning indicators in problem situations, such as car dashboards. Along the way, we have added features, and with the new upcoming 2.0 release, you can create even more complex user interfaces for safety-critical applications.
Since making safety-critical software is usually a serious business, we decided to have fun during the traditional Qt Company's Hackathon days. We made a little game with Qt Safe Render. The purpose of the demo was to test the upcoming 2.0 release and try out how end users can create applications with a safe render.
-
[Development] Qt 6.4.0 RC released
Hi all!
We have released the Qt 6.4.0 RC. As earlier you can get it via online installer. Src packages are also available in the Qt Account and download.qt.io. Delta to the beta4 attached. Please make sure you report all findings in Jira.
The target is to release Qt 6.4.0 in two weeks so please inform me immediately if you find something new which should be fixed before the release.
br, Jani Heikkinen Release Manager
-
EEPROM CH341A programmer – Read and write data to chip on Linux
In this tutorial we will use CH341A programmer to read, write and erase data/firmware on attached chip. This is your getting started guide to CH341A programmer. CH341A programmer allows users to attach variety of chips in order to read or backup firmware or overwrite the exiting firmware.
-
The Little Things: My “radical” opinions about unit tests
-
Quality Is Systemic - Jacob Kaplan-Moss
Software quality is more the result of a system designed to produce quality, and not so much the result of individual performance. That is: a group of mediocre programmers working with a structure designed to produce quality will produce better software than a group of fantastic programmers working in a system designed with other goals.