Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under
Development
  • How the Integrated Gradients method works? - Vincent Lequertier's blog

    For artificial intelligence (AI) transparency and to better shape upcoming policies, we need to better understand the AI’s output. In particular, one may want to understand the role attributed to each input. This is hard, because in neural networks input variables don’t have a single weight that could serve as a proxy for determining their importance with regard to the output. Therefore, one have to consider all the neural network’s weights, which may be all interconnected. Here is how Integrated Gradients does this.

  • Want a piece of GitLab? It's going to cost you: IPO price per share settles at $77

    The one-stop shop approach by DevOps darling GitLab appears to have attracted an Initial Public Offering price of $77, giving the loss-making biz a potential valuation of $11bn

    GitLab finally filed for an IPO in September and this week upped the estimated price per share to between $66 and $69. The eventual price has turned out to be $77, well above the initial $55 to $60 first estimated.

    8.42 million shares of Class A common stock are being sold. Founder and CEO Sytse Sijbrandij is selling another 1.98 million shares, according to the filing. Should that $77 price survive the start of trading today, GitLab's market value will nudge past $11bn.

  • Functional vs. object-oriented programming: The basics

    Committing to a programming paradigm is an important step in any application development effort. While they are hardly the only two options when it comes to overarching development models, the choice between functional programming and object-oriented programming is one that an increasing number of developers face today.

  • There is no 'printf'.

    Pop quiz! What will the following program return?

  • Malicious packages mitmproxy2 and mitmproxy-iframe removed from PyPI directory - itsfoss.net

    The author of mitmproxy , a tool for analyzing HTTP / HTTPS traffic, drew attention to the appearance of a fork of his project in the Python Package Index (PyPI) directory. The fork was distributed under the similar name mitmproxy2 and the non-existent version 8.0.1 (current release of mitmproxy 7.0.4) with the expectation that inattentive users will perceive the package as a new version of the main project ( typesquatting ) and wish to try the new version.

    In terms of its composition, mitmproxy2 was similar to mitmproxy, with the exception of changes in the implementation of malicious functionality. The changes were reduced to the termination of setting the HTTP header ” X-Frame-Options: DENY “, which prohibits the processing of content inside the iframe, disabling protection against XSRF attacks and setting the headers ” Access-Control-Allow-Origin: * “, ” Access-Control- Allow-Headers: * “and” Access-Control-Allow-Methods: POST, GET, DELETE, OPTIONS “.

  • Perl Weekly Challenge 134: Pandigital Numbers and Distinct Term Count
  • Sourcing vs executing in Bash

    What if, from the shell prompt, I could source the script, to bring the function definitions into my current environment, and then manually invoke the check function on a single pull request?

    Sourcing the script as it is would have the unwanted effect of running checks on all the pull requests, because the last line in the script actually invokes main, as it’s supposed to.

  • Rust-Based Cloud-Hypervisor 19.0 Released With Improved Live Migration, Faster Boot Time - Phoronix

    Cloud-Hypervisor 19.0 debuted this week as the Intel-led open-source VMM focused on supporting modern cloud workloads and written in the Rust programming language while leveraging the Linux's KVM virtualization code or the Microsoft MSHV hypervisor on Windows.

    Cloud-Hypervisor 19.0 continues to focus on only supporting 64-bit software, providing a minimal attack surface and other security improvements in part by leveraging Rust, and other modern-focused design principals.

  • Dyn async traits, part 6

    A quick update to my last post: first, a better way to do what I was trying to do, and second, a sketch of the crate I’d like to see for experimental purposes.

More in Tux Machines

Programming Leftovers

  • Notes on packaging Krita with G’MIC

    Krita 3 and later are compatible with G’MIC, an open-source digital image processing framework. This support is provided by G’MIC-Qt, a Qt-based frontend for G’MIC. Since its inception, G’MIC-Qt was shipped as a standalone, externally built executable that is an optional, runtime dependency of Krita. Krita 5 changes the way G’MIC-Qt is consumed. In order to support CentOS and macOS, G’MIC-Qt has been converted into a dynamically loadable library that is a dependent of Krita. This file reviews these changes, and how to package Krita accordingly.

  • Qt WebAssembly clipboard

    Clipboard use on desktop platforms is ubiquitous. Most people use it without thinking. Copy, Paste, and Cut keyboard strokes are in-grained into muscle memory. On the web, it can present security issues as someone could read or write to your clipboard without you knowing. Up until now, Qt for WebAssembly's clipboard was text-only and only within the app itself. Qt 6.3 will have better clipboard support between host and app but also adds copy/pasting of images.

  • Attempting to compile Shotcut video editor
  • The Numbers: Performance benefits of the new Qt Quick Compiler

    In my previous post, the history and general architecture of the new Qt Quick Compiler technology was explained. As promised there, the performance numbers are presented in this post.

  • Monetizing cross-platform use cases faster and easier with Qt Digital Advertising Platform

    Many of you have been raising the question: when will Qt provide a full framework to monetize my Qt-based cross-platform application, implementing an advertising campaign directly on my user interface? Now all the community and Qt users in general can start in no time implementing and managing advertising campaigns targeting cross-platform use cases. We are excited to announce that Qt Digital Advertising 1.0 has been released!

  • Ads may be coming to KDE, the popular Linux desktop [Ed: Misleading clickbait. KDE and #Qt are not the same thing]
  • Qt Launches Digital Advertising Platform To Integrate Ads Into App UIs

    The Qt Company this morning announced Qt Digital Advertising 1.0 as its new ad platform that allows for developers to easily integrate advertising campaigns into Qt-based, cross-platform applications. The Qt Company devised Qt Digital Advertising as a way for the community and Qt users to integrate and manage advertising campaigns within Qt-powered programs. This is a new plug-in for the Qt toolkit for managing and monetizing campaigns for any Qt-based application.

  • Parsing PNGs Differently | Hackaday

    There are millions of tiny bugs all around us, in everything from our desktop applications to the appliances in the kitchen. Hidden, arbitrary conditions that cause unintended outputs and behaviors. There are many ways to find these bugs, but one way we don’t hear about very often is finding a bug in your own code, only to realize someone else made the same mistake. For example, [David Buchanan] found a bug in his multi-threaded PNG decoder and realized that the Apple PNG decoder had the same bug. PNG (Portable Network Graphics) is an image format just like JPEG, WEBP, or TIFF designed to replace GIFs. After a header, the rest of the file is entirely chunks. Each chunk is prepended by a four-letter identifier, with a few chunks being critical chunks. The essential sections are IHDR (the header), IDAT (actual image data), PLTE (the palette information), and IEND (the last chunk in the file). Compression is via the DEFLATE method used in zlib, which is inherently serial. If you’re interested, there’s a convenient poster about the format from a great resource we covered a while back.

Announcing the D-Installer Project | YaST

As you may know, YaST is not only a control center for (open)SUSE Linux distributions, but it is also the installer. And, in that regard, we think it is a competent installer. However, time goes by, and YaST shows its age in a few aspects. During summer 2021, the team discussed how YaST should look in the near future. Read more

Qubes OS 4.1.0-rc4 has been released!

The fourth release candidate for Qubes 4.1.0 is here! There are no major changes to report. We’ve just focused on fixing bugs that were discovered and reported in the third release candidate. If you’re currently using any Qubes 4.1.0 release candidate, a regular update is sufficient to upgrade to the latest one. Otherwise, read on for more about how to get started with testing Qubes 4.1.0-rc4. Read more

Google v. Oracle: The End of an Era - Software Freedom Law Center

The Supreme Court?s April 3rd decision of the long-running dispute between Oracle and Google brings to a last victorious conclusion the free software movement?s legal campaign, which began more than thirty years ago. Though the Justices have only now resolved the issue of API copyright, it was among the first of the legal problems with which FSF and I dealt. The heart of the free software movement?s long-term strategy was to harness the power of independent reinvention. Writing from scratch new programs that implemented both sides of all major software APIs was the technical pillar of our master plan. Licensing those programs on terms that protected the resulting commons?giving every user rights to study, copy, modify and share, with copyleft restriction on downstream licensing?was the legal pillar. The master plan of GNU was the independent reimplementation of both sides of all Unix APIs, thus allowing anything that could be done by general purpose computers to be done by software in which users had rights and free invention could flourish. When FSF and I started working together, in 1993, the Foundation?which was made possible by Richard Stallman?s 1990 MacArthur prize?was new, and the 1991 GPLv2 license brilliantly constructed for Stallman by Jerry Cohen was even newer. Gaining broad legal acceptance for GPLv2 and assessing the risk from the patenting of purely software inventions were immediate legal problems in need of my attention. But the threat posed by broad API copyright was the most urgent. The urgency arose because the issue was already headed for the US Supreme Court. Read more