help-circle
rss
vague posting for profit and fun
im really tempted to quit my job and make this thing that has no potential for income. 50% of it is dissatisfaction with my day job. It pays the bills but i spend all of my time cleaning up after devs that are long gone. 50% is i want this project idea to exist. honestly i just want to make things. i dont remember the last time i just made a thing.
fedilink

What's a good way to configure git with multiple providers using the conditional clause?
I have forge accounts from three respective sites: GitHub, GitLab and Codeberg. In all of these forges, I've opted to use secret e-mail. The reason for this is that when I had my original e-mail, I was spam-bombed job roles by a company from Shanghai within the Linux foundation, called Zilliz. Apparently, they extracted emails from git patches or something, I don't know much about it. I want it to be configured, such that when I clone projects from respective sites, I will use their respective secret emails. However, the issue with this is that it is only configured for SSH, and not HTTPS-based URL - when I forget to fork and clone, and instead directly clone the repo from where it originally was, that is where I start to have problems - I can no longer commit, because I did not associate HTTPS URLs with an e-mail. I could, but the git config becomes really messy. So far, I've come up with a setup that makes use of the if-clause supported by git. But the worst thing about configuring this is that it is so damn painful - I have to setup three different SSH keys, followed by setting up the config, and then also make sure that the keys are working for each sites individually, as well as check that the if-clause is working properly for email. Finally, I also have to create another set of SSH keys for signing commits, and at last, a allowed signer's file so that I can verify my own commits locally, all of this process is so damn frustrating. And again, the same mess on another desktop. Is there an easier way to go about this?
fedilink


Is modern C (C11, C17 and C2x) strongly typed compared to C99?
I saw the video for C23 by ACCU, and I couldn't help but feel that C2x has gotten a bit stricter than what I had learnt. Since this is based on my intuition, and that is not reflective of the reality, I was wondering if modern versions of the language post C99 is a little bit strongly-typed?
fedilink

Embedding the Servo Web Engine in Qt
While the task of writing a brand new standard-compliant browser engine is infamous as being almost unachievable nowadays (and certainly so with Chromium coming in at 31 million lines of code), the Rust ecosystem has been brewing up a new web rendering engine called Servo. Initially created by Mozilla in 2012, Servo is still being developed today, now under the stewardship of the Linux Foundation. At KDAB they managed to embed the Servo web engine inside Qt, by using their CXX-Qt library as a bridge between Rust and C++. This means that we can now use Servo as an alternative to Chromium for webviews in Qt applications.
fedilink

Khronos Releases OpenXR 1.1 to Further Streamline Cross-Platform XR Development
The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, announces the immediate availability of the OpenXR™ 1.1 specification. This release evolves the widely adopted OpenXR open API standard for high-performance, cross-platform access to VR, AR, and mixed reality (MR) — collectively known as XR—platforms and devices. OpenXR 1.1 consolidates widely used API extensions into the core specification to reduce fragmentation and adds new functionality to streamline the development of more powerful and efficient XR applications. In particular, OpenXR 1.1 consolidates multiple vendor extensions for key functionality to reduce differences in application code across multiple platforms, while still remaining flexible and extensible to foster innovation in a rapidly growing and evolving market. The OpenXR Working Group will focus on managing a pipeline of extensions to develop and seek feedback on new functionality, while proactively integrating proven technology into the core specification to provide developers with robust cross-platform XR capabilities. Today, most major XR platforms have transitioned to using OpenXR to expose current and future device capabilities. Vendors with conformant OpenXR implementations include Acer, ByteDance, Canon, HTC, Magic Leap, Meta, Microsoft, Sony, XREAL, Qualcomm, Valve, Varjo, and Collabora’s Monado open source runtime. OpenXR is also supported by all the major game and rendering engines, including Autodesk VRED, Blender, Godot, NVIDIA’s Omniverse, StereoKit, Unreal Engine, and Unity. The OpenXR 1.1 specification can be found on the Khronos website and on GitHub OpenXR Registry.
fedilink

Where do I look out for an accountability partner or a mentor?
I am trying to complete a few web-based projects as well as a developer portfolio. I am also learning C from scratch. I would appreciate it if I had an opportunity to take part in an open-source project that is based on system programming, or something like that.
fedilink

Trying to understand how project isolation works in a SAAS platforms.
By project, I am talking about a "virtual" instance. I get to use a computer on their server, but how? Are those virtual machines, or containers? If the former, then why - given how virtual machines have a large overhead? If the latter, then containers have a low degree of isolation compared to VMs, right? I've also heard about K3 and K8 before, but I don't know exactly what they are, and what role they place here. And speaking about either of them - how are they introduced through a backend - by using bindings? Or is there a port-equivalent to pass instructions, similar to how we connect to a database?
fedilink

Where does arena allocator fail, when it comes to memory safety?
I've recently come across arena allocator, and I can already see how they are a big improvement to the standard heap allocator present in C. What are the other areas it fails to address, when it comes to memory safety?
fedilink

Open-source project ZLUDA lets CUDA apps run on AMD GPUs
Andrzej Janik has released ZLUDA 3, a new version of his open-source project that enables GPU-based applications designed for NVIDIA GPUs to run on other manufacturers’ hardware. The wrapper technology is designed to enable existing applications to run on new hardware unmodified, without the need for any work on their developers’ part.
fedilink

Steam Audio SDK and all included plugins now opensource under Apache-2.0 license
We are excited to announce that with the latest release of Steam Audio, the complete source code of the Steam Audio SDK is now available as open source. With this release, our goal is to provide more control to developers, which will lead to better experiences for their users, and hopefully valuable contributions back to the wider community of developers using Steam Audio.
fedilink


GDB 14.2 released
Release 14.2 of GDB, the GNU Debugger, is now available. GDB is a source-level debugger for Ada, C, C++, Fortran, Go, Rust, and many other languages. GDB can target (i.e., debug programs running on) more than a dozen different processor architectures, and GDB itself can run on most popular GNU/Linux, Unix and Microsoft Windows variants. GDB is free (libre) software. GDB 14.2 brings the following fixes and enhancements over GDB 14.1: * PR symtab/31112 (DLL export forwarding is broken) * PR c++/31128 (gdb crashes when trying to print a global variable stub without a running inferior) * PR tdep/31254 ([gdb/tdep, arm] FAIL: gdb.threads/staticthreads.exp: up 10) * PR gdb/31256 (Crash with basic 'list .') * PR python/31366 (Frame.static_link() segfaults)
fedilink

Vulkan 1.3.279 Brings New NVIDIA Extension Co-Engineered By Valve
Vulkan 1.3.279 debuted on Friday with many fixes/clarifications to the specifications plus one new extension. The VK_NV_raw_access_chains extemsion should allow for more efficient shaders compiled from HLSL sources.
fedilink

RISC-V extensions: what’s available and how to find them
Extensions available in RISC-V enable the customizations that make it ideal as a basis for open innovation. Here’s the extension situation as it stands today.
fedilink

Improving filtering for the Vulkan hardware database
Eight years after launching the Vulkan database to the public, it’s approaching 30,000 uploaded reports from more than 3,300 different devices across Windows, Linux, Android, MacOS and iOS. With that much data available, good filtering capabilities are crucial.
fedilink

Opinions on this implementation of perfect square root finder?
This is a small program I've come up with, with the intention of finding the root of a perfect square. I wanted some comments on the performance impact, as well as the use of resources. ::: spoiler **square_root.c** ```c #include "square_root.h" static uint64_t power(uint8_t base, uint8_t exp) { uint64_t result = 1; while (exp--) { result *= base; } return result; } static uint64_t seed(uint64_t radicand) { uint64_t a = radicand; uint64_t n = 0; while (radicand /= 100) { a = radicand; ++n; } return ((a < 10) ? ((0.28 * a) + 0.89) : ((0.089 * a) + 2.8)) * power(10, n); } static uint64_t heron(uint64_t x, uint64_t s) { while (s != power(x, 2)) { x = (x + (s / x)) / 2; } return x; } uint16_t square_root(uint64_t radicand) { return heron(seed(radicand), radicand); } ``` ::: ::: spoiler **square_root.h** ```c #ifndef SQUARE_ROOT_H #define SQUARE_ROOT_H #include <stdbool.h> #include <stdint.h> #include <stddef.h> uint16_t square_root(uint64_t radicand); #endif ``` :::
fedilink

Qt 6.7 released
Qt 6.7 is out with lots of large and small improvements for all of us who like to have fun when building modern applications and user experiences. Several additions are released as technology previews, and we are looking forward to your feedback so that we can get everything ready for the next LTS release!
fedilink

As a C beginner, should I be bothered by not being able to understand this?
Most of the stuff went over my head, Why should I care that C is no longer low-level? What exactly is considered close-to-metal in today's time, apart from binary and assembly?
fedilink

Is this an efficient version of RNA Transcription in C?
Here's the program: **rna_transcription.c** ```C #include "rna_transcription.h" #include <malloc.h> #include <string.h> static const char lookup[] = { ['A'] = 'U', ['C'] = 'G', ['G'] = 'C', ['T'] = 'A' }; char *to_rna(const char *dna) { if (!dna) return NULL; char *rna = calloc(strlen(dna) + 1, 1), *start_rna = rna; if (rna) { for (; *dna; dna++, rna++) { if (!(*rna = lookup[(int)*dna])) { free(rna); return NULL; } } } return start_rna; } ``` **rna_transcription.h** ```C #ifndef RNA_TRANSCRIPTION_H #define RNA_TRANSCRIPTION_H char *to_rna(const char *dna); #endif ``` I can't help but wonder how much of a waste of space the array would be. Surely, using a map is better, right?
fedilink