Language Selection

English French German Italian Portuguese Spanish

Programming and Administration

Filed under
Development
Server
  • 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 0.11.1.1.0 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

digiKam 7.7.0 is released

After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. Read more

Dilution and Misuse of the "Linux" Brand

Samsung, Red Hat to Work on Linux Drivers for Future Tech

The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. Read more

today's howtos

  • How to install go1.19beta on Ubuntu 22.04 – NextGenTips

    In this tutorial, we are going to explore how to install go on Ubuntu 22.04 Golang is an open-source programming language that is easy to learn and use. It is built-in concurrency and has a robust standard library. It is reliable, builds fast, and efficient software that scales fast. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel-type systems enable flexible and modular program constructions. Go compiles quickly to machine code and has the convenience of garbage collection and the power of run-time reflection. In this guide, we are going to learn how to install golang 1.19beta on Ubuntu 22.04. Go 1.19beta1 is not yet released. There is so much work in progress with all the documentation.

  • molecule test: failed to connect to bus in systemd container - openQA bites

    Ansible Molecule is a project to help you test your ansible roles. I’m using molecule for automatically testing the ansible roles of geekoops.

  • How To Install MongoDB on AlmaLinux 9 - idroot

    In this tutorial, we will show you how to install MongoDB on AlmaLinux 9. For those of you who didn’t know, MongoDB is a high-performance, highly scalable document-oriented NoSQL database. Unlike in SQL databases where data is stored in rows and columns inside tables, in MongoDB, data is structured in JSON-like format inside records which are referred to as documents. The open-source attribute of MongoDB as a database software makes it an ideal candidate for almost any database-related project. This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the MongoDB NoSQL database on AlmaLinux 9. You can follow the same instructions for CentOS and Rocky Linux.

  • An introduction (and how-to) to Plugin Loader for the Steam Deck. - Invidious
  • Self-host a Ghost Blog With Traefik

    Ghost is a very popular open-source content management system. Started as an alternative to WordPress and it went on to become an alternative to Substack by focusing on membership and newsletter. The creators of Ghost offer managed Pro hosting but it may not fit everyone's budget. Alternatively, you can self-host it on your own cloud servers. On Linux handbook, we already have a guide on deploying Ghost with Docker in a reverse proxy setup. Instead of Ngnix reverse proxy, you can also use another software called Traefik with Docker. It is a popular open-source cloud-native application proxy, API Gateway, Edge-router, and more. I use Traefik to secure my websites using an SSL certificate obtained from Let's Encrypt. Once deployed, Traefik can automatically manage your certificates and their renewals. In this tutorial, I'll share the necessary steps for deploying a Ghost blog with Docker and Traefik.