Language Selection

English French German Italian Portuguese Spanish

Programming Leftovers

Filed under
Development
  • Kiwi TCMS: Call for participation: Testing and Automation devroom, FOSDEM'22

    Attention testers! On behalf of Testing and Automation devroom we'd like to announce that call for participation is now open.

  • LLVM Clang 14 Lands An "Amazing" Performance Optimization - Phoronix

    While the performance of LLVM/Clang has improved a lot over the years and for x86_64 and AArch64 can be neck-and-neck with the GCC compiler, the fierce performance battle is not over. With LLVM/Clang 14.0 due out in the early months of 2022 will be more performance work with one recent commit in particular showing a lot of promise.

    LLVM developer Djordje Todorovic recently landed an improvement to LLVM's Loop Invariant Code Motion (LICM) Pass for being able to hoist a LOAD without STORE. The patch explains, "When doing load/store promotion within LICM, if we cannot prove that it is safe to sink the store we won't hoist the load, even though we can prove the load could be dereferenced and moved outside the loop. This patch implements the load promotion by moving it in the loop preheader by inserting proper PHI in the loop. The store is kept as is in the loop. By doing this, we avoid doing the load from a memory location in each iteration." The improvement to this pass helps to address this bug report around missed opportunities for register promotion.

  • Dirk Eddelbuettel: tidyCpp 0.0.6 on CRAN: Package Maintenance

    Another small release of the tidyCpp package arrived on CRAN this morning. The packages offers a clean C++ layer (as well as one small C++ helper class) on top of the C API for R which aims to make use of this robust (if awkward) C API a little easier and more consistent. See the vignette for motivating examples.

    This release makes a tiny code change, remove a YAML file for the disgraced former continuous integration service we shall not name (yet that we all used to use). And just like digest five days ago, drat four days ago, littler three days ago, RcppAPT two days ago, and RcppSpdlog yesterday, we converted the vignettes from using the minidown package to the (fairly new) simplermarkdown package which is so much more appropriate for our use of the minimal water.css style.

  • Takao Fujiwara: gnome-remote-desktop

    Seems Vino is deprecated in Fedora 35 because of the security issue and gnome-remote-desktop is the replacement but there are a few document to setup the VNC server and let me summarize the setup and differences.

  • No easter eggs in curl

    There are no Easter eggs in curl. For the good.

    I’ve been asked about this many times. Among the enthusiast community, people seem to generally like the concept of Easter eggs and hidden treasures, features and jokes in software and devices. Having such an embedded surprise is considered fun and curl being a cool and interesting project should be fun too!

    With the risk of completely ruining my chances of ever being considered a fun person, I’ll take you through my thought process on why curl does not feature any such Easter eggs and why it will not have any in the future either.

  • Tricked-Out Breadboard Automatically Draws Schematics Of Whatever You Build | Hackaday

    When it comes to electronic design, breadboarding a circuit is the fun part — the creative juices flow, parts come and go, jumpers build into a tangled mess, but it’s all worth it when the circuit finally comes to life. Then comes the “What have I done?” phase, where you’ve got to backtrack through the circuit to document exactly how you built it. If only there was a better way.

    Thanks to [Nick Bild], there is, in the form of the “Schematic-o-matic”, which aims to automate the breadboard documentation process. The trick is using a breadboard where each bus bar is connected to an IO pin on an Arduino Due. A program runs through each point on the breadboard, running a continuity test to see if there’s a jumper connecting them. A Python program then uses the connection list, along with some basic information about where components are plugged into the board, to generate a KiCad schematic.

  • Multiplication by Halving and Doubling in AARCH64 Assembly | Adam Young’s Web Log

    While multiplication is defined in the context of repeated addition, implementing it that way algorithmically is not nearly as efficient as some other approaches. One algorithm for multiplication that is an order of magnitude faster is to halve one number while doubling the other. I gave myself the challenge of implementing this algorithm in AARCH64 Assembly, and it was not too hard.

  • The Apache Weekly News Round-up: week ending 3 December 2021

    Welcome, December --we're opening the month with another great week. Here's what the Apache community has been up to...

  • Website Load Testing with Apache JMeter on Ubuntu 20.04

    In this article, I will show you how to install Apache JMeter and how to use it to do load testing on websites. JMeter is an open-source Java-based load testing tool. It is useful to check and improve the performance after developing a new website. With load tests, it checks the performance of the system and helps to stimulate the weight of the load. As it is mainly focused on testing web applications, one can make a better website for all the users. But now, it is also used for different other purposes like functional testing and database testing.

    Now let’s see how to install the Apache JMeter and use it on Ubuntu 20.04.

  • gfldex: MAIN course

    On IRC vasko asked how to handle a --verbose-flag. This is quite simple.

  • Rakudo Weekly News: 2021.49 Adventing Is On!
  • Bash Shell Scripting for beginners (Part 3)

    Welcome to part 3 of Bash Shell Scripting at a beginner level. This final article will look at a few more items that will get you primed for your continued personal development. It will touch on functions, using comparisons with if/elif statements, and will wrap up with looking into the while loop.

More in Tux Machines

Review: UBports on the PinePhone

At the end of 2021 I posted a review about the PinePhone and what it was like running the device's default operating system: Manjaro Linux featuring the Plasma Mobile interface. While I've had decent experiences with Plasma Mobile in the past, the combination of Manjaro, the PinePhone, and this interface left a lot to be desired. It was slow, it was unstable, and there were issues with the battery charge indicator. To make matters worse, the default applications were not polished or well named. It was a rough experience and, though I can see where there is hope for Manjaro on the PinePhone, I was eager to try something different. In the past I have had mostly good experiences with the UBports distribution. UBports is a community project which has continued Canonical's Ubuntu Touch operating system for smart phones and tablets. Since I've run UBports on devices which didn't have any more memory or processing power than the PinePhone, I was optimistic about trying out the PinePhone with this alternative distribution. Read more

Switching from OpenNTPd to Chrony

A friend recently reminded me of the existence of chrony, a "versatile implementation of the Network Time Protocol (NTP)". Read more

today's howtos

  • How to Enable MySQL/MariaDB Query Logging

    In this short and easy to follow guide, we cover how to enable MySQL/MariaDB query logging and save queries to a file. When using a database, it often happens that developers want to know what’s going on behind the scene. Whether it is for troubleshooting, performance tuning, or out of sheer curiosity. General query logs remain one of the most popular sources of auditing and diagnostic information in MySQL/MariaDB databases. After logging is enabled, the database server will write information to the log file when clients connect or disconnect, and it will log each SQL statement.

  • How to install Zotero on Ubuntu 22.04 or 20.04 LTS - Linux Shout

    Zotero is a reference management system and academic network, here we learn the steps to install Zotero in Linux such as Ubuntu 22.04 Jammy JellyFish or Ubuntu 20.04 Focal Fossa. Zotero is an open-source and free tool that helps in collecting, organizing, citing, and sharing research. It consists of two components: Zotero standalone (Mac, Windows, Linux) with a plugin for Firefox, Google Chrome, and Safari; Zotero web application: computer-independent access to your library, finding and setting up groups on specific topics (see collaboration), making contacts with others. The two components of this tool can be synchronized with each other. If you are often involved in extensive projects at work or have to write a large-scale work during your studies, you quickly lose track of the sources used. With Zotero, you keep all information together and create a clear library for your project without much effort. It is particularly suitable for literature research on the Internet and the direct transfer of the researched data and works in groups that want to manage literature together.

  • How to Copy Directory in Linux: (Beginner to Advance)

    While working in several operating systems, we use to add files and folders, cut, copy, edit and delete them as per our choice. Just like all these, the Linux system provides us the opportunity to copy a single folder to another folder even though the folder is empty or not. Therefore, we will discuss some easy methods to copy one directory to another in Ubuntu 20.04 system. Let’s have a fresh start by using the different ways to copy a directory from one place to another in Linux. For this particular purpose, we must open up the terminal shell as we are going to do all things in it. There are two ways to open it. One is from the activity search area and the other is the shortcut key “Ctrl+Alt+T”. Practice one of the mentioned methods to open it and start implementing the commands in it one by one.

  • How to Change Default Torrent Client for Magnet Links in Ubuntu 20.04+ | UbuntuHandbook

    When clicking a magnet link in Chrome browser, it pops-up with “Open xdg-open” option allows to launch the default app to start the downloading. Unlike Firefox, Google Chrome does not offer an option to choose which app to handle the link. Instead, it launches the default app directly. For those want to change this default app to handle magnet links, here’s how to do the trick in Ubuntu.

  • How to install Microsoft Fonts on Elementary OS 6.0 - Invidious
  • How to install VCV Rack 2 on a Chromebook

    Today we are looking at how to install VCV Rack 2 on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below.

  • How to Install Papirus Icon Theme on Ubuntu - OMG! Ubuntu!

    Changing the icon theme on Ubuntu is an easy way to give your desktop a new look and feel. In this post we show you how to install Papirus icons on Ubuntu from a PPA. Why use the Papirus icon set? Because it’s good — in fact, it’s one of the best icon themes for Ubuntu not to mention other Linux distros like Linux Mint, Zorin OS, and Manjaro. Thousands of users use this set, and several Linux distributions ship it as their default.

  • Exploring GIT Commit Hashes & Generating Cryptographic Zeros – Jon's FOSS Blog

    So I was trying to research what goes into generating a GIT commit hash and I thought I would try to personalize the cryptographic hash output a little bit. My computer isn’t that powerful but it may be possible to generate more zeros!

Keyboards and Open-Source - Ignorance is bliss..

.

In my Keyboard Fun post from last year I talked a bit about my interest in mechanical keyboards. Since then, I played around with a few more keyboards/switches/keycaps/… Interesting enough, beside the actual hardware, naturally there is some software component to all these keyboards, too. Whereas most commercial keyboards still come with proprietary firmware, there is the trend within the keyboard enthusiast scene to go for open-source firmware. This allows you to properly update the firmware even from your Linux machine and do proper configuration of e.g. the keymap, too. Read more