-- 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 Sep 28, 2022


today's leftovers

Open Hardware: PureBoot, ESP32, and Raspberry Pi


↺ OpenSSH


Call for testing: openssh-9.1


↺ Call for testing: openssh-9.1


> OpenSSH 9.1p1 is almost ready for release, so we would appreciate testing on as many platforms and systems as possible. This is a bugfix release.



Unions in C


↺ Unions in C


> “Just like structures, Unions are also user-defined datatypes, but unlike structures, Union members share the same memory location, and they do not have different memory locations. If we declare two variables in a Structure and then check their address, we will see that both have different addresses, which means that members of a structure get different memory locations. Instead of that, we declare the same two variables in a Union and check their addresses; it will be observed that both of their addresses are the same, which proves that both of the constants share the same memory location. In the case of the structure, an integer will take four blocks, but in a union, both the integer and character will share the same memory block.


> One thing to keep in mind is that in a Union, members will share the same location of memory, which means that if changes are made in one member, they will be reflected in the other members of the union as well. The union’s size is taken according to the size of the greatest member of a union. The union members can be accessed through pointers by using the (->) operator. If we want to store information about multiple objects like Books and Stores, we will have to make two structures for each of them. It will waste a lot of memory. For that purpose, unions are used. Unions can save information to multiple objects.”



Find slow data processing tasks (before your customers do)


↺ Find slow data processing tasks (before your customers do)


> Here are some of the ways you can discover your data processing jobs are too slow:


> 1. Jobs start getting killed when they hit timeouts.


> 2. Customers start complaining about slow or failed jobs.


> 3. Your cloud computing bill is twice what it was last month.


> While these notification mechanisms do work, it’s probably best not to rely on them. Life is easier when jobs finish successfully, customers are happy, and you have plenty of money left over in your budget.


> That means you want to identify unexpected slowness or high memory usage before the situation get that bad. The sooner you can identify performance problems, the sooner you can fix them.


> So how can you identify inefficient tasks in your data pipeline or workflow? Let’s find out!



Free Rust training to FOSS programmers


↺ Free Rust training to FOSS programmers


> The course is in English using the Big Blue Button video conferencing system (accessed with a web browser). You should install the Rust toolchain before the course starts: either using packages for your operating system or using rustup. Your installation works if you can run the following commands and get the expected output.


> [...]


> This offer is limited to people who already contribute to FOSS projects via code: to meaningfully learn Rust you need to already know how to program, and I’m biased towards FOSS, sorry.



Support for Rust will be merged in 6.1 kernel, says Torvalds


↺ Support for Rust will be merged in 6.1 kernel, says Torvalds


> Torvalds added that following the initial merge in the 6.1 kernel, there was no real timetable.




gemini.tuxmachines.org

-- Response ended

-- Page fetched on Sat Jun 1 08:24:53 2024