Skip to content

SysTutorials

  • Tutorials
  • Linux
  • Linux Manuals
  • Systems
  • Programming
  • Software
  • Subscribe
  • Search
SysTutorials

  • Programming | Tutorial

    Resource Acquisition Is Initialization (RAII) in C++ with Detailed Examples

    ByEthan Ainsworth Jun 3, 2023

    In this post, we will discuss Resource Acquisition Is Initialization (RAII), a programming idiom in C++ that helps manage resources such as memory, file handles, and network connections. By leveraging constructors, destructors, and scope-bound resource management, RAII enables the creation of more reliable and maintainable C++ code. RAII can not only achieve mostly what a…

    Read More Resource Acquisition Is Initialization (RAII) in C++ with Detailed ExamplesContinue

  • Programming | Tutorial

    Run-Time Type Identification (RTTI) in C++ with Detailed Examples

    ByEthan Ainsworth Jun 3, 2023Jun 3, 2023

    In this post, we will discuss Run-Time Type Identification (RTTI) in C++, a feature that allows us to obtain type information for objects at runtime. We will explore how RTTI works, its applications, and provide detailed examples to demonstrate its usage using snake_case naming convention. What is Run-Time Type Identification (RTTI)? Run-Time Type Identification (RTTI)…

    Read More Run-Time Type Identification (RTTI) in C++ with Detailed ExamplesContinue

  • Programming | Software | Tutorial

    Visualizing CMake Project Dependencies with Graphviz

    ByEthan Ainsworth May 26, 2023

    When working on a large-scale C++ project with multiple dependencies, it can be challenging to understand the relationships between different components and libraries. Thankfully, CMake provides a nifty feature to visualize these dependencies using Graphviz, a widely-used open-source graph visualization software. Using CMake’s –graphviz option and the dot command from Graphviz is a powerful way…

    Read More Visualizing CMake Project Dependencies with GraphvizContinue

  • Linux | Tutorial

    Disabling the Emoji Hotkey in Linux Using GSettings

    ByEthan Ainsworth May 20, 2023

    If you often find yourself accidentally triggering the emoji picker in Linux by CTRL + Period (CTRL + .), you may want to disable the hotkey that brings it up. In this post, we will show you how to disable the emoji hotkey using the gsettings command. The emoji picker in Linux is typically activated…

    Read More Disabling the Emoji Hotkey in Linux Using GSettingsContinue

  • Programming | Tutorial

    Splitting a String by Another String in C++: A Flexible Utility Function

    ByEthan Ainsworth May 1, 2023

    In this post, we will explore a flexible utility function for splitting a string based on a given delimiter using C++ and the standard library. This allows us to break down complex strings into smaller parts that are easier to process and manipulate. The C++ Utility Function to Split a String by Another String Background:…

    Read More Splitting a String by Another String in C++: A Flexible Utility FunctionContinue

  • Linux | Systems | Tutorial

    Installing Zlib in Ubuntu 24.04 and 22.04 LTS

    ByEthan Ainsworth Mar 24, 2023Mar 30, 2026

    Zlib is a widely-used open-source compression library that implements the DEFLATE algorithm. It underpins gzip, PNG images, HTTP compression, and many other formats. Ubuntu provides zlib through its official repositories, making installation straightforward with apt. This guide covers installing zlib on Ubuntu 24.04 LTS (Noble) and Ubuntu 22.04 LTS (Jammy). If you need a version…

    Read More Installing Zlib in Ubuntu 24.04 and 22.04 LTSContinue

  • Programming | Tutorial

    Why std::vector is the Optimal Choice for Data Structures for Performance in C++

    ByEthan Ainsworth Mar 21, 2023Mar 24, 2023

    In C++ programming, data structures are essential for organizing and manipulating data. When it comes to storing and manipulating data, one data structure stands out above the rest – the std::vector. Efficient Memory Allocation One of the primary benefits of std::vector is its efficient memory allocation. std::vector uses contiguous memory allocation, which means that the…

    Read More Why std::vector is the Optimal Choice for Data Structures for Performance in C++Continue

  • Blockchain | Insights | Systems

    Decentralized Exchanges (DEX) vs. Centralized Exchanges (CEX): A Technical Comparison

    ByEthan Ainsworth Mar 19, 2023Mar 19, 2023

    Cryptocurrency exchanges have revolutionized the way we trade digital assets, with two main types of exchanges dominating the market: decentralized exchanges (DEX) and centralized exchanges (CEX). In this article, we’ll compare the DEX and CEX from a technical perspective. Decentralized Exchanges (DEX) DEX operate on a decentralized blockchain network, such as Ethereum, and are built…

    Read More Decentralized Exchanges (DEX) vs. Centralized Exchanges (CEX): A Technical ComparisonContinue

  • Linux | Software | Tutorial

    Generating ECDSA K1 and R1 keys using OpenSSL in Linux

    ByDavid Wong Mar 18, 2023Mar 19, 2023

    ECDSA keys are commonly used in various areas like blockchains. OpenSSL is a commonly used tools in Linux for handling signature/encryption/decryption. This post introduces how to generate ECDSA keys using OpenSSL in Linux. Generate keys for K1 secp256k1 elliptic curve We start with K1 (secp256k1) as the example. To generae ECDSA keys using other curves,…

    Read More Generating ECDSA K1 and R1 keys using OpenSSL in LinuxContinue

  • Blockchain | Insights

    The Impact of Blockchain and Crypto Technologies on Global Financial Markets

    ByBtcman.io Mar 18, 2023Mar 19, 2023

    Welcome to the groundbreaking world of cryptocurrency and blockchain technologies! These cutting-edge technologies are shaking up the global financial environment and paving the path for a more transparent and decentralized future. Consider blockchain technology to be a digital counterpart of a ledger book. It is a secure and immutable digital ledger that records all transactions…

    Read More The Impact of Blockchain and Crypto Technologies on Global Financial MarketsContinue

  • Programming | Tutorial

    Sorting Two Lists Together According to The Order of One List in Python

    ByDavid Yang Jul 23, 2022Jul 23, 2022

    We may use two lists to store the values of two properties of a list of elements in Python. Under such data structure arrangement, when we need to sort the properties from one list, we may want to also make sure the other list will be also re-ordered following the same order as the first…

    Read More Sorting Two Lists Together According to The Order of One List in PythonContinue

  • Software | Tutorial

    Synchronizing Thunderbird Calendar with Apple iCloud Calendar

    ByDavid Yang Feb 27, 2022Feb 27, 2022

    Thunderbird is a nice email client and calendar management software. iCloud calendar is the native calendar cloud service in Apple devices such as iPhone. So far there is no native support from Thunderbird to support iCloud calendar, excepting reading the read-only public iCloud calendars which has privacy concerns as long as lacks of editing functionalities….

    Read More Synchronizing Thunderbird Calendar with Apple iCloud CalendarContinue

  • Network | Systems | Web

    SPF, DKIM and DMARC to Stop Email Sender Fraud: Intro and How to

    ByDavid Yang Oct 31, 2021Oct 31, 2021

    Email sender fraud is an annoying problem. Malicious email senders send spam emails with email senders that are under non-authorized domain names. This may affect the reputation of the domains used by the fraud sender. On another hand, lots emails will be rejected and reverted back, which causes lots additional work to the domain administrators….

    Read More SPF, DKIM and DMARC to Stop Email Sender Fraud: Intro and How toContinue

  • Linux | Software | Tutorial | Virtualization

    Running Ephemeral Docker Containers – Automatically Remove a Docker Container After Running It

    ByDavid Yang Sep 19, 2021Sep 19, 2021

    Docker is a convenient tool to quick create containers from different Linux images. If we use the common way to start a docker container like docker run image bash, after the the process exists, the container is still stored there. That is, the docker container persists after it has exited. Sometimes, we would like to…

    Read More Running Ephemeral Docker Containers – Automatically Remove a Docker Container After Running ItContinue

  • Linux | Software

    Configuring Fonts for Thunderbird snap to Display Fonts Nicely

    ByDavid Yang Sep 18, 2021Mar 30, 2026

    snap is a software app bundle with dependencies included so that it can works in different Linux distributions. However, as most other software, snap has compatiblity issues. An app in the snap format is not 100% the same and compatible with the native version. One of the problem I find is that Thunderbird from snap…

    Read More Configuring Fonts for Thunderbird snap to Display Fonts NicelyContinue

  • Software | Tutorial

    Starting Page Number from the Second Page in MS Word

    ByDavid Yang Sep 14, 2021Sep 14, 2021

    For document, we may use the first page as the title page. Then the page number 1 should start from the second page. In this post, we will look at how to make MS Word count the page number from the second page. That is, making word treat the second page as page number 1….

    Read More Starting Page Number from the Second Page in MS WordContinue

  • Linux | Software | Tutorial

    GNONE 3 Screenshot Keyboard Shortcuts

    ByDavid Yang Jun 13, 2021Jun 13, 2021

    GNONE 3 provides screenshot tools and utils and also provides keyboard shortcuts which are convenient and quick to use. With the GNOME 3 screenshot keyboard shortcuts, users can make screenshots without having to open the Screenshot app. In general, there are 2 major categories of screenshot shortcuts: those to save the screenshot as a file,…

    Read More GNONE 3 Screenshot Keyboard ShortcutsContinue

  • Linux | Linux Kernel

    Linux Kernel 4.19.178 Release

    ByTony Mar 7, 2021

    This post summarizes Linux Kernel new features, bugfixes and changes in Linux 4.19.178 Release. Linux 4.19.178 Release contains 248 changes, patches or new features. In total, there are 239,909 lines of Linux source code changed/added in Linux 4.19.178 release compared to Linux 4.19 release. To view the source code of Linux 4.19.178 kernel release online,…

    Read More Linux Kernel 4.19.178 ReleaseContinue

  • Linux | Linux Kernel

    Linux Kernel 4.14.223 Release

    ByTony Mar 7, 2021

    This post summarizes Linux Kernel new features, bugfixes and changes in Linux 4.14.223 Release. Linux 4.14.223 Release contains 176 changes, patches or new features. In total, there are 277,921 lines of Linux source code changed/added in Linux 4.14.223 release compared to Linux 4.14 release. To view the source code of Linux 4.14.223 kernel release online,…

    Read More Linux Kernel 4.14.223 ReleaseContinue

  • Linux | Linux Kernel

    Linux Kernel 5.4.102 Release

    ByTony Mar 7, 2021Mar 7, 2021

    This post summarizes Linux Kernel new features, bugfixes and changes in Linux 5.4.102 Release. Linux 5.4.102 Release contains 338 changes, patches or new features. In total, there are 160,715 lines of Linux source code changed/added in Linux 5.4.102 release compared to Linux 5.4 release. To view the source code of Linux 5.4.102 kernel release online,…

    Read More Linux Kernel 5.4.102 ReleaseContinue

Page navigation

Previous PagePrevious 1 2 3 4 5 … 70 Next PageNext

© 2026 SysTutorials

  • Tutorials
  • Linux
  • Linux Manuals
  • Systems
  • Programming
  • Software
  • Subscribe
  • Search