Articles

cover of post: Understanding Slice Passing and Append in Golang

Understanding Slice Passing and Append in Golang

Feb 10, 2025

Understanding slice passing and `append` behavior prevents unintended modifications in Go.

JaJames Reed#Engineering
cover of post: How To Check For Empty String In Golang

How To Check For Empty String In Golang

Feb 10, 2025

Check empty strings in Go using `str == ""` or `strings.TrimSpace()`.

GrGrace Collins#Engineering
cover of post: Bulletproof API Design: 18 Rules

Bulletproof API Design: 18 Rules

Feb 10, 2025

Key principles for designing secure, efficient APIs, including signing, encryption, logging, rate limiting, and error handling.

JaJames Reed#Engineering
cover of post: Mastering Rollup.js: A Deep Dive

Mastering Rollup.js: A Deep Dive

Feb 10, 2025

Rollup.js is a JavaScript bundling tool. This article will introduce its basic usage in detail.

GrGrace Collins#javascript
cover of post: Mastering Metaprogramming in Python: Control Everything You Want

Mastering Metaprogramming in Python: Control Everything You Want

Feb 09, 2025

Metaprogramming techniques such as metaclasses are somewhat obscure and difficult to comprehend for most people, and most of the time, we don't need to use them. However, the implementation of most frameworks utilizes these techniques so that the code written by users can be concise and easy to understand. If you want to gain a deeper understanding of these techniques, you can refer to some books such as *Fluent Python* and *Python Cookbook* (some content of this article is referenced from them), or read some chapters in the official documentation, such as the descriptor How - To mentioned above, and the Data Model section, etc. Or directly examine the Python source code, including the source code written in Python and the CPython source code.

DaDaniel Hayes#python
cover of post: Understanding Double-keyed Caching: Why Cache Isn't Shared Across Sites

Understanding Double-keyed Caching: Why Cache Isn't Shared Across Sites

Feb 08, 2025

Learn how Double-keyed Caching prevents cross-site resource sharing, its impact on performance, and ways to optimize it.

DaDaniel Hayes#Engineering
cover of post: Bloom Filters Deep Dive: Python Code & Explanation

Bloom Filters Deep Dive: Python Code & Explanation

Feb 08, 2025

The Bloom Filter is a highly space - efficient probabilistic data structure used to determine whether an element belongs to a set. It has wide applications in many fields:

JaJames Reed#python
cover of post: React Server Components: Community Perspectives and Conflicts

React Server Components: Community Perspectives and Conflicts

Feb 07, 2025

RSC definitely has a positive significance in enhancing modern web application development. The most obvious advantages are that it can improve the performance of large - scale applications, reduce client - side load, optimize the data acquisition process, etc. Completing these tasks through RSC is more convenient than the previous SSR solutions.

GrGrace Collins#javascript
cover of post: A Deep Dive Into Network Interfaces: localhost, Loopback Addresses, and Local Networking

A Deep Dive Into Network Interfaces: localhost, Loopback Addresses, and Local Networking

Feb 06, 2025

A comprehensive guide to localhost, loopback addresses, IPs, and networking fundamentals, including public vs. private IP differences.

DaDaniel Hayes#Engineering
cover of post: What If Redis Runs Out of Memory?

What If Redis Runs Out of Memory?

Feb 05, 2025

Handling Redis Memory Limits: Strategies & Impact

GrGrace Collins#Engineering
cover of post: Exploring ASGI: Python’s Async Protocol for Web Apps

Exploring ASGI: Python’s Async Protocol for Web Apps

Feb 05, 2025

This article mainly explores the Python web ASGI protocol through Uvicorn. ASGI is Python's asynchronous server gateway interface, integrating the asynchronous, concurrent, and multi - protocol capabilities of modern Python web programs.

DaDaniel Hayes#python
cover of post: Session, JWT, SSO, OAuth 2.0: Pros, Cons, and Use Cases

Session, JWT, SSO, OAuth 2.0: Pros, Cons, and Use Cases

Feb 04, 2025

A comparison of four authentication methods: Session, JWT, SSO, and OAuth 2.0, covering their workflows, pros, and cons.

JaJames Reed#Engineering
cover of post: How to Install Golang on Different Platforms

How to Install Golang on Different Platforms

Feb 04, 2025

Installing Go requires downloading, setting environment variables, and verifying installation.

DaDaniel Hayes#Engineering
cover of post: How to Connect to MySQL Database Using DSN in Golang

How to Connect to MySQL Database Using DSN in Golang

Feb 04, 2025

Golang’s MySQL DSN format is key to establishing structured and customizable database connections.

DaDaniel Hayes#Engineering
cover of post: How to Convert Milliseconds to time.Time in Golang

How to Convert Milliseconds to time.Time in Golang

Feb 04, 2025

Convert between milliseconds and `time.Time` easily using Go’s `time` package.

DaDaniel Hayes#Engineering
cover of post: Golang Context Deep Dive: From Zero to Hero

Golang Context Deep Dive: From Zero to Hero

Feb 04, 2025

# 1. What is Context? Simply put, Context is an interface in the standard library introduced in Go version 1.7. Its definition is as follows:

GrGrace Collins#golang
cover of post: RESTful API: Principles, Design, and Best Practices

RESTful API: Principles, Design, and Best Practices

Feb 04, 2025

Learn RESTful API fundamentals: HTTP methods, resource naming, status codes, and response standards.

JaJames Reed#Engineering
cover of post: Playwright Amazon Scraper: Products & Reviews (Javascript)

Playwright Amazon Scraper: Products & Reviews (Javascript)

Feb 03, 2025

Playwright is a library for testing and automating web pages, supporting browsers like Chromium, Firefox, and WebKit. Developed by Microsoft, it is efficient, reliable, and fast, enabling cross - browser web automation tasks.

JaJames Reed#playwright
cover of post: What is a Preflight Request

What is a Preflight Request

Feb 02, 2025

Understanding preflight requests: Why browsers send them, how they work, and how to configure servers properly.

GrGrace Collins#Engineering
cover of post: Playwright vs. Puppeteer: Should You Make the Switch?

Playwright vs. Puppeteer: Should You Make the Switch?

Feb 02, 2025

Although migrating from Puppeteer to Playwright requires us to spend some time and energy to learn and adapt to new changes, in the long run, it is well worth it. Playwright has obvious advantages in terms of performance, stability, and new features, which can bring higher efficiency and a better experience to our testing and automation tasks. As long as we master the key points of migration, pay attention to various details during the migration process, and optimize the code after migration, we can successfully complete this migration and make our project reach a new level with the help of Playwright!

JaJames Reed#playwright
cover of post: Go Prepared Statement: Guide and Examples

Go Prepared Statement: Guide and Examples

Feb 01, 2025

Prepared statements enhance security, efficiency, and resource management in Go's database operations.

JaJames Reed#Engineering
cover of post: How to Download Specific Version of Go?

How to Download Specific Version of Go?

Feb 01, 2025

Methods to install and manage specific Go versions efficiently.

GrGrace Collins#Engineering
cover of post: Go vs. Rust: Which Should You Learn in 2025?

Go vs. Rust: Which Should You Learn in 2025?

Feb 01, 2025

Go is best for cloud applications; Rust is best for performance and security-focused development.

JaJames Reed#Engineering
cover of post: Sandboxing in JavaScript: A Deep Dive

Sandboxing in JavaScript: A Deep Dive

Feb 01, 2025

Explores JavaScript sandboxing techniques to securely isolate code execution and prevent security risks in web applications.

DaDaniel Hayes#Engineering
cover of post: Why Python’s Sort Is Faster Than You Think

Why Python’s Sort Is Faster Than You Think

Feb 01, 2025

Timsort is a sorting algorithm that combines merge sort and insertion sort, and it has good efficiency in practice. Tim Peters designed this algorithm in 2002 and it is used in Python (TimSort is the default implementation of list.sort in Python). The algorithm finds sorted blocks - partitions in the data, where each partition is called a run, and then merges these runs according to certain rules. Python has been using the Timsort algorithm for sorting since version 2.3. Now, Java SE7 and Android also use the Timsort algorithm to sort arrays.

DaDaniel Hayes#python
cover of post: Multi-threading in Node.js

Multi-threading in Node.js

Jan 31, 2025

Master Node.js multi-threading strategies: child processes, worker threads, and clusters for parallel execution.

DaDaniel Hayes#Engineering
cover of post: Golang Reflection: Is It Slow?

Golang Reflection: Is It Slow?

Jan 31, 2025

First, we need to understand what benefits reflection can bring. If it doesn't bring any advantages, then in fact, we don't need to use it and don't need to worry about the impact on performance.

DaDaniel Hayes#golang
cover of post: Understanding the infer Keyword in TypeScript

Understanding the infer Keyword in TypeScript

Jan 30, 2025

Explore TypeScript’s infer keyword for advanced type inference.

JaJames Reed#Engineering
cover of post: Functional Programming in Python: A Deep Dive

Functional Programming in Python: A Deep Dive

Jan 30, 2025

Functional programming refers to a style where every part of the code is immutable and consists of pure functions. A pure function is one that is independent of others and, given the same input, always produces the same output.

DaDaniel Hayes#python
cover of post: Python Performance Tips You Must Know

Python Performance Tips You Must Know

Jan 29, 2025

Python, as a dynamically typed interpreted language, may indeed have a slower execution speed compared to statically typed compiled languages like C. However, through certain techniques and strategies, we can significantly enhance the performance of Python code.

DaDaniel Hayes#python
cover of post: Inside libuv: Understanding CPU-Bound and I/O-Bound Workloads in Node.js

Inside libuv: Understanding CPU-Bound and I/O-Bound Workloads in Node.js

Jan 29, 2025

Understanding CPU-bound and I/O-bound tasks

JaJames Reed#Engineering
cover of post: Zap: Unlock the Full Potential of Logging in Go

Zap: Unlock the Full Potential of Logging in Go

Jan 28, 2025

Zap is a very fast, structured, and log-leveled Go logging library developed by Uber. According to the Uber - go Zap documentation, it performs better than similar structured logging packages and is also faster than the standard library. Specific performance tests can be found on GitHub.

DaDaniel Hayes#golang
cover of post: How CSS Loading Affects DOM Parsing and Rendering

How CSS Loading Affects DOM Parsing and Rendering

Jan 28, 2025

Explores how CSS impacts DOM parsing, rendering, and JavaScript execution.

DaDaniel Hayes#Engineering
cover of post: Go's http.ServeMux Is All You Need

Go's http.ServeMux Is All You Need

Jan 27, 2025

"Which router library should I choose?" has always been a common question faced by Go beginners. After the release of Go 1.22, the answer to this question may change. Many developers will find that the new standard library mux is sufficient to meet their needs, eliminating the need to rely on third - party packages. Of course, some developers will continue to choose the familiar third - party libraries, which is also reasonable. Routers like gorilla/mux still have more functions than the standard library. In addition, many Go programmers will choose lightweight frameworks like Gin because it not only provides a router but also additional tools required to build a web backend.

GrGrace Collins#golang
cover of post: A Brief History of Frontend Engineering: From Basics to Modern Practices

A Brief History of Frontend Engineering: From Basics to Modern Practices

Jan 26, 2025

The transformation of frontend development through engineering, modularity, Node.js, and modern build tools.

GrGrace Collins#Engineering
cover of post: Python Logging: loguru vs logging

Python Logging: loguru vs logging

Jan 26, 2025

Both `loguru` and `logging` have their advantages and disadvantages. For most Python projects, the concise syntax and powerful features of `loguru` make it the first choice for rapid development. For larger projects, the compatibility and flexibility of the standard library `logging` are more suitable. I hope this article can help you choose the appropriate logging tool for your project.

DaDaniel Hayes#python
cover of post: Type, or Interface, That Is the Question (in TypeScript)

Type, or Interface, That Is the Question (in TypeScript)

Jan 25, 2025

The similarities and differences between TypeScript's type and interface.

JaJames Reed#Engineering
cover of post: 2025's Top 10 Python Web Frameworks Compared

2025's Top 10 Python Web Frameworks Compared

Jan 25, 2025

- Comprehensive: Django - Small and Elegant: Flask, sanic, bottle - Asynchronous and High - Concurrency Support: fastapi, tornado, sanic, aiohttp - Front - Backend Separation (API Development): fastapi, django - rest - framework, falcon, hug

GrGrace Collins#python
cover of post: How to Run Whisper in Node.js With Word-Level Timestamp

How to Run Whisper in Node.js With Word-Level Timestamp

Jan 25, 2025

Use Whisper in Node.js for accurate word-level timestamped transcriptions.

DaDaniel Hayes#Engineering
cover of post: How to Read .aspx Files in Node.js

How to Read .aspx Files in Node.js

Jan 25, 2025

How to use Node.js to read `.aspx` files as static HTML.

DaDaniel Hayes#Engineering
cover of post: How to Get a Timestamp Using Moment.js in Node.js

How to Get a Timestamp Using Moment.js in Node.js

Jan 25, 2025

Retrieve and format timestamps in Node.js using Moment.js.

JaJames Reed#Engineering
cover of post: Why .editorconfig Still Matters in the Age of Prettier

Why .editorconfig Still Matters in the Age of Prettier

Jan 24, 2025

.editorconfig complements Prettier in many ways

GrGrace Collins#Engineering
cover of post: Mastering Flask: A Deep Dive

Mastering Flask: A Deep Dive

Jan 24, 2025

Flask is a lightweight web framework. It is a Python web application used to build web services and APIs. Its design philosophy is "minimal dependencies", which means Flask only depends on two components: the Werkzeug WSGI toolkit and the Jinja 2 template engine. Flask is an open - source Python web application framework that provides a simple way to create web services and APIs. Its design philosophy of "minimal dependencies" results in it relying only on the Werkzeug WSGI toolkit and the Jinja 2 template engine. The core concepts of Flask include application, routing, request, response, context, configuration, etc. These concepts will be introduced in detail later.

DaDaniel Hayes#python
cover of post: Lifecycle of HTML

Lifecycle of HTML

Jan 23, 2025

Learn about HTML's lifecycle events, from DOM construction to full resource loading and cleanup.

DaDaniel Hayes#Engineering
cover of post: Express 5.0.0: New Features and Updates

Express 5.0.0: New Features and Updates

Jan 23, 2025

Express.js, a highly popular web application framework for Node.js application development, has always been in the spotlight of developers. Recently, the Express.js team officially released version 5.0.0. Since the launch of the first major version in 2014, a full 10 years have passed. During this long period, Express.js has gone through numerous iterations and optimizations, and version 5.0.0 comes with new features and improvements, bringing a different experience to developers.

GrGrace Collins#javascript
cover of post: Do Function Components Mean Functional Programming?

Do Function Components Mean Functional Programming?

Jan 21, 2025

The real story behind React’s function components and functional programming.

DaDaniel Hayes#Engineering
cover of post: Mastering JWT (JSON Web Tokens): A Deep Dive

Mastering JWT (JSON Web Tokens): A Deep Dive

Jan 21, 2025

JSON Web Token (abbreviated as JWT) is currently the most popular cross - domain authentication solution. This article introduces its principles and usage.

DaDaniel Hayes#web
cover of post: Easy Guide to Single Sign-On (SSO)

Easy Guide to Single Sign-On (SSO)

Jan 20, 2025

Guide to SSO with cookie, token, and OAuth 2.0-based implementation methods.

DaDaniel Hayes#Engineering