Language Selection

English French German Italian Portuguese Spanish

Programming and Administration

Filed under
  • Exception Handling in Java | Explained

    Java provides a concept of Exception Handling that makes it possible to handle the errors at run time, in this way, the normal follow of the program wouldn’t be affected. To handle the runtime exceptions Java provides multiple ways such as try-catch, finally, throw, throws. The normal flow can be preserved using any of these exception handling methods.

  • Statistics Module in Python

    If you’re in the research world, statistics is of paramount importance! And Python offers many a module for statistics, but the one that we’ll be talking about today is called the statistics module. It’s a simple module, not really for advanced statistics but for those who just need a simple and quick computation. In this tutorial, we’ll be reviewing the statistics module in Python.

  • Emulate the Do-While Loop in Python

    Most of the standard programming languages have three types of loops to iterate some statement multiple times. These are the while loop, for loop, and the do-while loop. The while and for loop are available in Python but Python has no do-while loop. The do-while loop can be implemented by using another loop. In the do-while loop, the condition is tested after inserting the loop. So, the statements of the do-loop execute at least once even if the condition may not be matched. The ways of emulating the do-while loop in Python have been shown in this tutorial.

  • [Old] “The Canary in the Coal Mine…” A cautionary tale from the decline of SourceForge

    This article tells the cautionary tale of the downfall of Allura/SourceForge. We identified both internal and external causes, both social and technical in nature. We also found evidence of sociotechnical and architectural problems in project archives. Project and community health metrics could have been used to predict and understand the downfall by tracking its early manifestations. The team reported to be aware of the technical debt in the project, yet this was insufficient to maintain the health of the project. Community managers should also measure and manage the mutual impacts of technical and social debt. Furthermore, our analysis suggests that a combination of managerial and technical flaws doomed this project: architectural flaws, power-distance, and measurable management mishaps eventually led to the forge's demise. Practitioners and maintainers of other software projects can benefit from this cautionary tale, for example, as indications of what not to do, in the scope of their community and architecture management infrastructure.

  • Dirk Eddelbuettel: RcppArmadillo on CRAN: Updates

    Armadillo is a powerful and expressive C++ template library for linear algebra and scientific computing. It aims towards a good balance between speed and ease of use, has syntax deliberately close to Matlab and is useful for algorithm development directly in C++, or quick conversion of research code into production environments. RcppArmadillo integrates this library with the R environment and language–and is widely used by (currently) 978 other packages on CRAN, downloaded over 24 million times (per the partial logs from the cloud mirrors of CRAN), and the CSDA paper (preprint / vignette) by Conrad and myself has been cited 469 times according to Google Scholar.

    This release brings a first new upstream fix in the new release series 11.*. In particular, treatment of ill-conditioned matrices is further strengthened. We once again tested this very rigorously via three different RC releases each of which got a full reverse-dependencies run (for which results are always logged here). A minor issue with old g++ compilers was found once 11.1.0 was tagged to this upstream release is now 11.1.1. Also fixed is an OpenMP setup issue where Justin Silverman noticed that we did not propagate the -fopenmp setting correctly.

  • Reversed Linked List (C++)

    When you reverse a linked list, the link path is reversed, and the head becomes the tail, and the tail becomes the head. By swapping the positions of the nodes, we can understand this quickly. In this swapping, we just change the positions of the nodes from left to right or vice-versa.

  • Gets Function in C

    Bound-checking is therefore not accomplished by the gets() method. It would not examine if the input data integrates inside the character array’s holding limit of bytes. A buffer overflow can occur when an entry exceeds the array limit. Through fgets, this restriction of the gets() method could be eliminated. The gets() method produces a string if it occurs. It reverts NULL if it starts to fail. It displays the EOF indicator on a string if an end-of-file situation generates the error. If another error triggers the failure, the error parameter is displayed on the string.

  • Getting started with Node-Red on Raspberry Pi

    Node-Red is a visual programming tool that is used to connect APIs and hardware in a more prominent and exciting way. It has a web-based editor that will allow you to control and manage your Raspberry Pi device from a remote location. The graphical user interface of the editor is excellent and pretty simple which enables a beginner to handle it quite easily. The Node-Red can easily be installed on your Raspberry Pi device and once the installation is completed you will need to acquire a basic understanding of how to use this tool on a web editor to develop different projects.

    In this tutorial, we will provide you with an easy setup guide to get started with Node-Red on your Raspberry Pi and start developing your projects with ease.

  • Impact Analysis for UTF-8 in the RIPE Database

    The RIPE Database contains the names and addresses of organisations as well as administrative and technical contacts for resources and routing in the RIPE region. The Database currently supports the Latin-1 (ISO-8859-1) character set, which can represent most characters in western European languages. However it cannot fully support characters used in other languages and alphabets that are commonly used in the RIPE service region and beyond. Currently, any unsupported characters must be transliterated into Latin-1 (or even ASCII in some cases, which is a subset of Latin-1), potentially corrupting the meaning. Switching the RIPE Database from Latin-1 to UTF-8 allows names and addresses to be properly represented for querying and display.

  • Kubernetes 1.24: Volume Populators Graduate to Beta | Kubernetes

    The volume populators feature is now two releases old and entering beta! The AnyVolumeDataSouce feature gate defaults to enabled in Kubernetes v1.24, which means that users can specify any custom resource as the data source of a PVC.

    An earlier blog article detailed how the volume populators feature works. In short, a cluster administrator can install a CRD and associated populator controller in the cluster, and any user who can create instances of the CR can create pre-populated volumes by taking advantage of the populator.

    Multiple populators can be installed side by side for different purposes. The SIG storage community is already seeing some implementations in public, and more prototypes should appear soon.

More in Tux Machines

9 Top Free and Open Source Elixir Web Frameworks

One of the types of software that’s important for a web developer is the web framework. A framework “is a code library that makes a developer’s life easier when building reliable, scalable, and maintainable web applications” by providing reusable code or extensions for common operations. By saving development time, developers can concentrate on application logic rather than mundane elements. A web framework offers the developer a choice about how to solve a specific problem. By using a framework, a developer lets the framework control portions of their application. While it’s perfectly possible to code a web application without using a framework, it’s more practical to use one. Read more

Games: Valve, Kingdoms and Castles, and a Lot More

today's howtos

  • How to Install and Configure HAProxy on Ubuntu 22.04

    In this post, we will demonstrate how to install HAProxy on Ubuntu 22.04 (Jammy Jellyfish) step by step. We will later configure it to act as a load balancer by distributing incoming requests between two web servers.

    HaProxy, short for High Availability Proxy, is a free and open-source HTTP load balancer and reverse-proxy solution that is widely used to provide high availability to web applications and guarantee maximum possible uptime.

  • How to use DNF Software Package Manager with Examples - TREND OCEANS

    The dandified yum (DNF) command is the next-generation version of the YUM package manager for Fedora, CentOS, AlmaLinux, and other RHEL-based distributions. This command was first implemented after the Fedora 22, CentOS 8, and RHEL 8 release. The launch was to remove the bottleneck involved in the YUM command.

  • How to Install FFmpeg on CentOS 9 Stream

    FFmpeg is the leading free, open-source multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter, and play nearly all multimedia files that have been created on any platform. FFmpeg compiles and runs on Linux, Mac OS X, Microsoft Windows, BSD systems, and Solaris. The following tutorial will teach you how to install FFmpeg on CentOS 9 Stream using the RPM Fusion free repository command line terminal.

  • How to Install ClamAV on Arch Linux

    ClamAV is an open-source and free antivirus toolkit that detects many types of malicious software, including viruses, trojans, malware, adware, rootkits, and other malicious threats. One of its primary uses of ClamAV is on mail servers as a server-side email virus scanner or file hosting servers to periodically scan to ensure files are clean, especially if the public can upload to the server. ClamAV supports multiple file formats (documents, executables, or archives), utilizes multi-thread scanner features, and receives updates for its signature database daily to sometimes numerous times per day for the latest protection. The following tutorial will teach you how to configure ClamAV on Arch Linux desktop or server and some basic scan commands using the command line terminal.

  • Linux su vs sudo: what's the difference? |

    Both the su and the sudo commands allow users to perform system administration tasks that are not permitted for non-privileged users—that is, everyone but the root user. Some people prefer the sudo command: For example, Seth Kenlon recently published "5 reasons to use sudo on Linux", in which he extols its many virtues. I, on the other hand, am partial to the su command and prefer it to sudo for most of the system administration work I do. In this article, I compare the two commands and explain why I prefer su over sudo but still use both.

today's howtos

  • A Detailed Guide on How to Work with Documents in Nextcloud

    Nextcloud is an open-source content collaboration platform that makes it possible to create secure file storage with sharing and synchronization features. It’s not too much to say that Nextcloud is an ideal solution for file management, as this platform allows you to share files and folders on your computer, and instantly synchronize them with your Nextcloud server.

  • How to Reset Forgotten Root Password in Fedora

    The only way any Linux user can boldly claim to have full control of their operating system environment is if they can be identified as root or Sudoer users.

  • How to Change the Default Interface in Linux?

    “Almost everything productive we can do in Linux requires us to have a network connection. Whether developing apps, installing software, scripting, sharing files, or even watching movies, we need a working network connection. Hence, “I require a network connection” is simply an understatement. The only way to enable network connection on a machine is through a network interface. A network interface is a device or a point of connection between a device and a private or public network. In most cases, a network interface is a physical card such as a wireless adapter, a network card, etc. However, this does not necessarily mean that a network interface should be a physical device. For example, a loopback adapter that is not physically visible is implemented by software and available on all devices.” This quick tutorial will show you how to set the default interface in Linux.

  • CoreOS in VirtualBox

    Three Fedora CoreOS (FCOS) update streams are available: stable, testing, and next. In general, you will want to use stable, but it is recommended to run some machines on testing and next and provide feedback. Each stream has a canonical URL representing its current state in JSON format, known as “stream metadata.” For example, the stream metadata URL for stable is: For automating Fedora CoreOS installations, it is expected that you will interact with stream metadata. While Fedora CoreOS does automatic in-place updates, it is generally a good practice to start provisioning new machines from the latest images.