Ethereum 101

Posted on

Ethereum is a decentralized blockchain platform that enables developers to build and deploy decentralized applications (dApps) on the blockchain. Ethereum was created in 2014 by Vitalik Buterin and has since become one of the most popular blockchain platforms in the world. In this article, we’ll provide a development history of Ethereum, an overview of its
Read more

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

Posted on

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

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

Posted on

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

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

Posted on

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

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

Posted on

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

Linux Kernel 5.4.72 Release

Posted on

This post summarizes Linux Kernel new features, bugfixes and changes in Linux 5.4.72 Release. Linux 5.4.72 Release contains 23 changes, patches or new features. In total, there are 126,508 lines of Linux source code changed/added in Linux 5.4.72 release compared to Linux 5.4 release. To view the source code of Linux 5.4.72 kernel release online,
Read more

Linux Kernel: Add support for using a MAX3421E chip as a host driver

Posted on

This change “Add support for using a MAX3421E chip as a host driver.” (commit 2d53139) in Linux kernel is authored by David Mosberger <davidm [at] egauge.net> on Mon Apr 28 22:14:07 2014 -0600. Description of “Add support for using a MAX3421E chip as a host driver.” The change “Add support for using a MAX3421E chip
Read more

Converting Int to String in C++

Posted on

It is common to convert an integer (int) to a string (std::string) in C++ programs. Because of the long history of C++ which has several versions with extended libraries and supports almost all C standard library functions, there are many ways to convert an int to string in C++. This post introduces how to convert
Read more

Installing R and RStudio Server in Ubuntu Linux

Posted on

R is a language and environment for statistical computing and graphics, providing a wide variety of statistical and graphical techniques. The R environment is open source software under GPL. R has rich software packages and is widely used for statistical analysis. RStudio Server is an R integrated development environment (IDE) that provides many useful features
Read more

Linux Kernel: drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11

Posted on

This change “drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11” (commit 87d855e) in Linux kernel is authored by Michal Wajdeczko <michal.wajdeczko [at] intel.com> on Fri Jul 12 11:14:44 2019 +0000. Description of “drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11” The change “drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11” introduces changes
Read more

Linux Kernel: PM / clk: Fix clock error check in __pm_clk_add()

Posted on

This change “PM / clk: Fix clock error check in __pm_clk_add()” (commit 3fc3a0b) in Linux kernel is authored by Geert Uytterhoeven <geert+renesas [at] glider.be> on Fri May 8 10:47:43 2015 +0200. Description of “PM / clk: Fix clock error check in __pm_clk_add()” The change “PM / clk: Fix clock error check in __pm_clk_add()” introduces changes
Read more

Linux Kernel: netpoll: fix netconsole IPv6 setup

Posted on

This change “netpoll: fix netconsole IPv6 setup” (commit 00fe11b) in Linux kernel is authored by Sabrina Dubroca <sd [at] queasysnail.net> on Thu Feb 6 18:34:12 2014 +0100. Description of “netpoll: fix netconsole IPv6 setup” The change “netpoll: fix netconsole IPv6 setup” introduces changes as follows. netpoll: fix netconsole IPv6 setup Currently, to make netconsole start
Read more

Linux Kernel: cifs: release auth_key.response for reconnect

Posted on

This change “cifs: release auth_key.response for reconnect.” (commit f5c4ba8) in Linux kernel is authored by Shu Wang <shuwang [at] redhat.com> on Fri Sep 8 18:48:33 2017 +0800. Description of “cifs: release auth_key.response for reconnect.” The change “cifs: release auth_key.response for reconnect.” introduces changes as follows. cifs: release auth_key.response for reconnect. There is a race that
Read more

Linux Kernel 4.19.70 Release

Posted on

This post summarizes new features, bugfixes and changes in Linux kernel release 4.19.70. Linux 4.19.70 Release contains 95 changes, patches or new features. In total, there are 101,521 lines of Linux source code changed/added in Linux 4.19.70 release compared to Linux 4.19 release. To view the source code of Linux 4.19.70 kernel release online, please
Read more

Linux Kernel: ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for ALC256

Posted on

This change “ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for ALC256” (commit d32b666) in Linux kernel is authored by Kailang Yang <kailang [at] realtek.com> on Thu Apr 23 15:10:53 2015 +0800. Description of “ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for ALC256” The change “ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for
Read more

Linux Kernel: fs: handle SEEK_HOLE/SEEK_DATA properly in all fs’s that define their own llseek

Posted on

This change “fs: handle SEEK_HOLE/SEEK_DATA properly in all fs’s that define their own llseek” (commit 06222e4) in Linux kernel is authored by Josef Bacik <josef [at] redhat.com> on Mon Jul 18 13:21:38 2011 -0400. Description of “fs: handle SEEK_HOLE/SEEK_DATA properly in all fs’s that define their own llseek” The change “fs: handle SEEK_HOLE/SEEK_DATA properly in
Read more

Linux User Group Management and Operations

Posted on

Linux allows more than one users to log into the system to run processes/programs at the same time. In order to make this multi-user system work properly, Linux provides ways to isolate and protect users from each other and manage the permissions efficiently. One of the mechanism is user groups. Linux users may be grouped
Read more

4 Features of Python 3.9 That You Can’t Take Your Eyes Off

Posted on

Python is one of the most popular programming languages in the world. It is widely popular for a plethora of tasks due to its flexible nature and ease of use. Python has also managed to beat other programming languages such as Java, which were once upon a time, the world’s favorite. In fact, the extent
Read more

Change Another Process’ Environment Variables in Linux

Posted on

Each process has its environment variables in Linux. But is it possible to change another process’ environment variable from another process in Linux? If it is possible to do so, how to do it? There is a trick which can work for some scenarios. First, find out the process ID, then start gdb and attach
Read more