Articles

cover of post: Using PostgreSQL as a Search Engine? Yes, You Might Not Need Elasticsearch

Using PostgreSQL as a Search Engine? Yes, You Might Not Need Elasticsearch

May 09, 2025

The inverted index originates from search engine technology and can be regarded as the cornerstone of search engines. Thanks to the inverted index technology, search engines can efficiently perform operations such as database searching and deletion. Before elaborating on the inverted index, we will first introduce the relevant forward index and compare the two.

JaJames Reed#database
cover of post: How to Unescape JSON Strings in Python, JavaScript, and Java

How to Unescape JSON Strings in Python, JavaScript, and Java

May 08, 2025

Convert escaped JSON sequences to readable text using code or tools.

DaDaniel Hayes#Engineering
cover of post: How to Convert JSON to YAML: A Practical Guide

How to Convert JSON to YAML: A Practical Guide

May 08, 2025

Practical methods to convert JSON to YAML efficiently.

GrGrace Collins#Engineering
cover of post: How to Convert JSON to XML: A Comprehensive Guide

How to Convert JSON to XML: A Comprehensive Guide

May 08, 2025

Convert JSON to XML using tools or code, with proper structure handling.

DaDaniel Hayes#Engineering
cover of post: Why Use Underscore Fields in Go Structs

Why Use Underscore Fields in Go Structs

May 08, 2025

The purpose of underscore fields in Go struct design.

DaDaniel Hayes#Engineering
cover of post: Understanding Comments in JSON

Understanding Comments in JSON

May 08, 2025

JSON lacks native comment support; use workarounds or alternative formats.

GrGrace Collins#Engineering
cover of post: How to Convert a Python Dictionary to JSON

How to Convert a Python Dictionary to JSON

May 08, 2025

Convert Python dicts to JSON with `json` module functions.

JaJames Reed#Engineering
cover of post: How to Minify JSON: A Developer’s Guide

How to Minify JSON: A Developer’s Guide

May 08, 2025

Minify JSON to boost speed and efficiency in applications.

GrGrace Collins#Engineering
cover of post: How to Convert HTML Form Data to JSON Using JavaScript

How to Convert HTML Form Data to JSON Using JavaScript

May 08, 2025

Convert HTML form inputs to JSON using JavaScript easily and reliably.

JaJames Reed#Engineering
cover of post: How to Make a JSON File

How to Make a JSON File

May 08, 2025

A beginner-friendly guide to creating and saving JSON files.

GrGrace Collins#Engineering
cover of post: Understanding JSON Path Finder: A Developer's Guide

Understanding JSON Path Finder: A Developer's Guide

May 08, 2025

Tools to visually extract and evaluate JSON data paths.

DaDaniel Hayes#Engineering
cover of post: A Complete Guide to PostgreSQL’s 9 Index Types

A Complete Guide to PostgreSQL’s 9 Index Types

May 08, 2025

PostgreSQL provides a rich variety of index types. Each index type is based on specific data structures and principles, and is suitable for different application scenarios. The following will provide a detailed introduction to these nine main index types.

GrGrace Collins#database
cover of post: Why Use a VARCHAR Field Instead of TEXT in MySQL

Why Use a VARCHAR Field Instead of TEXT in MySQL

May 07, 2025

An in-depth look at how TEXT fields work and when to avoid them.

JaJames Reed#Engineering
cover of post: Best Practices for Python Code Style and Linting

Best Practices for Python Code Style and Linting

May 07, 2025

The Python code style guide is not set in stone. It evolves continuously with the development of the language. Some old conventions are gradually phased out, and new ones keep emerging. At the same time, many projects have their own coding style guides. When there are conflicts, the project-specific guides should be followed first. However, there is an important principle to keep in mind: "The stupid persistence in consistency is the monster of ignorance", which is a profound insight from Guido. Since code is often read more frequently than it is written, the core goal of the style guide is to improve code readability and keep all kinds of Python code consistent. As PEP20 says, "Readability counts".

JaJames Reed#python
cover of post: How Many Goroutines Can Go Run? A Deep Dive into Resource Limits

How Many Goroutines Can Go Run? A Deep Dive into Resource Limits

May 06, 2025

A guide to understanding and managing Goroutine resource consumption and safe concurrency in Go.

GrGrace Collins#Engineering
cover of post: Understanding JSON Arrays of Arrays

Understanding JSON Arrays of Arrays

May 05, 2025

A guide to using and handling JSON nested arrays effectively.

GrGrace Collins#Engineering
cover of post: How to Write JSON to a File in Python

How to Write JSON to a File in Python

May 05, 2025

Writing JSON to files in Python using `json.dump()`.

GrGrace Collins#Engineering
cover of post: How to Convert JSON to CSV: A Practical Guide

How to Convert JSON to CSV: A Practical Guide

May 05, 2025

Convert structured JSON to flat, tabular CSV for analysis.

GrGrace Collins#Engineering
cover of post: Why Python, Go and Rust Don’t Use the Ternary Operator

Why Python, Go and Rust Don’t Use the Ternary Operator

May 05, 2025

Exploring the design choices behind conditional expressions in modern languages.

DaDaniel Hayes#Engineering
cover of post: Why MVC, MVP, and MVVM Remain the Best Architectural Patterns

Why MVC, MVP, and MVVM Remain the Best Architectural Patterns

May 05, 2025

MVC stands for Model View Controller, which is an abbreviation for model-view-controller. It is a widely applied software design paradigm. Its core idea is to organize the code by separating the business logic, data, and interface display, and centralize the business logic in one component. In this way, when improving and customizing the interface and user interaction, there is no need to rewrite the business logic. MVC has uniquely developed to map the traditional input, processing, and output functions into a logical graphical user interface structure.

DaDaniel Hayes#programming
cover of post: How to Store JSON Data in Session Storage in Angular

How to Store JSON Data in Session Storage in Angular

May 04, 2025

Storing JSON in Angular session storage using services for better structure.

GrGrace Collins#Engineering
cover of post: How to Convert JSON to Excel Using Microsoft Excel's Power Query

How to Convert JSON to Excel Using Microsoft Excel's Power Query

May 04, 2025

Convert JSON files into Excel tables using Power Query tools.

JaJames Reed#Engineering
cover of post: Understanding JSON Arrays: A Practical Guide

Understanding JSON Arrays: A Practical Guide

May 04, 2025

JSON arrays store ordered, mixed-type data for structured information exchange.

GrGrace Collins#Engineering
cover of post: Why Modern Languages (Go, Rust) Prefer Composition Over Inheritance

Why Modern Languages (Go, Rust) Prefer Composition Over Inheritance

May 04, 2025

A deep dive into inheritance pitfalls and how composition solves them in languages like Go, Rust, and even Java.

JaJames Reed#Engineering
cover of post: Advanced Python Concurrency: Multithreading and AsyncIO

Advanced Python Concurrency: Multithreading and AsyncIO

May 04, 2025

This article has deeply explored multithreading programming and asynchronous programming in Python, covering the basic knowledge of the multithreading module (`threading`), code practice, as well as the basic concepts and usage of the asynchronous programming module (`asyncio`). We started from the basics of multithreading, such as the `Thread` class, lock mechanism, thread safety, etc., and gradually demonstrated the application scenarios and precautions of multithreading in practical applications. Through an example, the process of multithreaded image downloading was shown, emphasizing the importance of thread safety and exception handling.

GrGrace Collins#python
cover of post: Go's nil Is More Complicated Than You Think

Go's nil Is More Complicated Than You Think

May 03, 2025

In the practice of Go language programming, the use of `nil` is extremely common. For example, the default type is assigned as `nil`, the `error` return value often uses `return nil`, and multiple types use `if != nil` for judgment, etc. However, regarding the knowledge point of `nil`, developers need to have an in-depth understanding of its essence and related characteristics.

JaJames Reed#golang
cover of post: Python Advanced: A Journey with Abstract Base Classes

Python Advanced: A Journey with Abstract Base Classes

May 02, 2025

Today, we are going to explore Abstract Base Classes (ABCs) in Python. Although this concept has been around in Python for a long time, in daily development, especially in development scenarios related to LeapCell, many people may not use it frequently, or they may not use it in the most sophisticated way.

DaDaniel Hayes#python
cover of post: Boosting Python Performance with Rust: A Practical Guide

Boosting Python Performance with Rust: A Practical Guide

May 01, 2025

By using Rust to optimize Python code, computational performance can be significantly improved. Although Rust has a steeper learning curve, for projects that need to handle a large number of computational tasks, rewriting the key parts of the code in Rust can save a lot of time costs. You can gradually try to use Rust to optimize existing Python projects, starting with a simple functional function and gradually mastering its usage.

JaJames Reed#python
cover of post: Getting Started with anyhow: A Practical Guide to Rust Error Handling

Getting Started with anyhow: A Practical Guide to Rust Error Handling

Apr 30, 2025

A practical guide to simplifying Rust error handling using the anyhow crate.

GrGrace Collins#Engineering
cover of post: Monolith or Microservices? The Evolution of Architecture

Monolith or Microservices? The Evolution of Architecture

Apr 30, 2025

Neither the monolithic nor the microservices architecture is a "cancer". Instead, they are technical choices in different historical stages and according to different business needs. In actual projects, factors such as business scale, team capabilities, and technical requirements should be comprehensively considered to select the architecture that is most suitable for the current development stage and maintain the flexibility and evolvability of the architecture.

JaJames Reed#programming
cover of post: How to Convert JSON to an HTML Table: A Comprehensive Guide

How to Convert JSON to an HTML Table: A Comprehensive Guide

Apr 28, 2025

Simple methods to transform JSON into readable HTML tables.

DaDaniel Hayes#Engineering
cover of post: How to Convert Parquet to JSON in Python

How to Convert Parquet to JSON in Python

Apr 28, 2025

Convert Parquet to JSON easily in Python using Pandas, PyArrow, or DuckDB.

GrGrace Collins#Engineering
cover of post: How to Open a JSON File: A Comprehensive Guide

How to Open a JSON File: A Comprehensive Guide

Apr 28, 2025

Ways to open, view, and edit JSON files easily.

JaJames Reed#Engineering
cover of post: Choosing the Right Rust Error Handling Tool: anyhow, thiserror, or snafu?

Choosing the Right Rust Error Handling Tool: anyhow, thiserror, or snafu?

Apr 28, 2025

An overview of Rust error handling tools: anyhow, thiserror, and snafu, with usage examples.

DaDaniel Hayes#Engineering
cover of post: Node.js Logging Tools: A Detailed Analysis and Comparison

Node.js Logging Tools: A Detailed Analysis and Comparison

Apr 28, 2025

The rich logging tools in the Node.js ecosystem provide developers with a variety of choices, making it easy to implement logging functions in actual projects. However, choosing the right logging library is crucial. It is necessary to comprehensively consider factors such as the specific requirements of the application, performance requirements, deployment environment, and the complexity of log management. Developers should select a logging tool that can accurately record the required data, is easy to analyze and troubleshoot problems, and at the same time does not have too much impact on the application performance, so as to provide strong support for the stable operation and continuous optimization of the project.

JaJames Reed#javascript
cover of post: Introduction to Redis CLI

Introduction to Redis CLI

Apr 27, 2025

Quick guide to using Redis CLI for server interaction and management.

DaDaniel Hayes#Engineering
cover of post: Redis Commands: A Comprehensive Overview

Redis Commands: A Comprehensive Overview

Apr 27, 2025

Essential Redis commands for efficient data management and operations.

GrGrace Collins#Engineering
cover of post: Getting Started with Redis and Python

Getting Started with Redis and Python

Apr 27, 2025

Simple guide to using Redis efficiently with Python.

GrGrace Collins#Engineering
cover of post: Thiserror: Effective Error Management in Rust

Thiserror: Effective Error Management in Rust

Apr 27, 2025

Learn how to simplify Rust error handling by creating custom errors with the thiserror crate.

JaJames Reed#Engineering
cover of post: Why Some Developers Prefer Go Without Generics

Why Some Developers Prefer Go Without Generics

Apr 27, 2025

The introduction of Go generics is an important step in the development of the language, improving code reusability and type safety. However, compared with other languages, Go generics still have gaps in functionality and expressive power. The current design is more like a transitional solution and still needs further improvement in the future.

JaJames Reed#golang
cover of post: How to Show Databases in PostgreSQL

How to Show Databases in PostgreSQL

Apr 27, 2025

Different ways to list databases in PostgreSQL using CLI, SQL, or GUI tools.

GrGrace Collins#Engineering
cover of post: Understanding PostgreSQL Data Types

Understanding PostgreSQL Data Types

Apr 27, 2025

PostgreSQL offers versatile, performance-driven data types for effective database design.

DaDaniel Hayes#Engineering
cover of post: Understanding and Managing the PostgreSQL Port

Understanding and Managing the PostgreSQL Port

Apr 27, 2025

Manage PostgreSQL ports safely by configuring, verifying, and securing connections.

DaDaniel Hayes#Engineering
cover of post: Rust Essentials: Core Concepts and Practical Examples

Rust Essentials: Core Concepts and Practical Examples

Apr 26, 2025

Explore Rust’s unique approach to memory safety, concurrency, and efficient programming.

GrGrace Collins#Engineering
cover of post: Deep Dive into Docker Images

Deep Dive into Docker Images

Apr 26, 2025

As the foundation of containers, Docker images essentially represent the content of the container's file system. It is a read-only template used to create Docker containers. From a technical perspective, Docker images adopt a layered structure design. Except for the base image, other images are generated by overlaying new content on top of existing images. The metadata of each layer of the image is stored in a `json` file. This metadata not only describes the static content of the file system but also contains dynamic data information, such as the creation time of the image, build instructions, and so on.

DaDaniel Hayes#programming
cover of post: How to List Users in PostgreSQL

How to List Users in PostgreSQL

Apr 25, 2025

Quick guide to listing and checking users in PostgreSQL.

JaJames Reed#Engineering
cover of post: How to Show Tables in PostgreSQL

How to Show Tables in PostgreSQL

Apr 25, 2025

Different ways to list PostgreSQL tables using `psql`, SQL, or GUI.

DaDaniel Hayes#Engineering
cover of post: Understanding the MySQL `SUBSTRING()` Function

Understanding the MySQL `SUBSTRING()` Function

Apr 25, 2025

Extract specific text using MySQL `SUBSTRING()` for flexible data handling.

JaJames Reed#Engineering