Articles

cover of post: Understanding jemalloc: A Rust Performance Booster

Understanding jemalloc: A Rust Performance Booster

Mar 16, 2025

Learn how jemalloc optimizes memory management

DaDaniel Hayes#Engineering
cover of post: How to Manage Go Versions with ASDF

How to Manage Go Versions with ASDF

Mar 16, 2025

Guide to installing and managing Go versions using ASDF efficiently.

JaJames Reed#Engineering
cover of post: Building an Efficient Web Scraper in Golang

Building an Efficient Web Scraper in Golang

Mar 16, 2025

Efficiently build responsible Go web scrapers using Colly, concurrency, and policy compliance.

DaDaniel Hayes#Engineering
cover of post: Understanding Constructors in Go

Understanding Constructors in Go

Mar 16, 2025

Go uses factory functions for struct initialization and validation.

GrGrace Collins#Engineering
cover of post: Exploring TUI Libraries in Go

Exploring TUI Libraries in Go

Mar 16, 2025

Overview of key Go libraries for developing robust and interactive TUIs.

JaJames Reed#Engineering
cover of post: Why Choose Go Over Ruby on Rails?

Why Choose Go Over Ruby on Rails?

Mar 16, 2025

Go excels in scalability and performance, while Rails suits rapid development.

DaDaniel Hayes#Engineering
cover of post: Implementing Linked Lists in Go

Implementing Linked Lists in Go

Mar 16, 2025

Guide to implementing and using linked lists in Go.

DaDaniel Hayes#Engineering
cover of post: Exploring Graphics Libraries in Go

Exploring Graphics Libraries in Go

Mar 16, 2025

Overview of Go's graphics libraries for drawing, visualization, and GUI development.

GrGrace Collins#Engineering
cover of post: How to Delete from a Map in Golang

How to Delete from a Map in Golang

Mar 16, 2025

Efficient ways to delete elements from a Golang map.

DaDaniel Hayes#Engineering
cover of post: Handling Command Line Arguments in Golang

Handling Command Line Arguments in Golang

Mar 16, 2025

Learn how to handle command line arguments in Golang using `os.Args`, `flag`, and `pflag`.

GrGrace Collins#Engineering
cover of post: How to Read Rust Source Code Effectively: A Practical Approach

How to Read Rust Source Code Effectively: A Practical Approach

Mar 16, 2025

An essential guide to navigating Rust’s source code

GrGrace Collins#Engineering
cover of post: Type-Safe SQL in Go with sqlc

Type-Safe SQL in Go with sqlc

Mar 16, 2025

The interfaces provided by the `database/sql` standard library in the Go language are relatively low-level. This requires us to write a large amount of repetitive code. This substantial amount of boilerplate code is not only cumbersome to write but also error-prone. Sometimes, if you modify the field type, you may need to make changes in many places; if you add a new field, you also need to modify the places where the `select *` query statement was previously used. If there are any omissions, it may lead to a panic during runtime. Even if you use an ORM library, these issues cannot be completely resolved! That's where sqlc comes in! sqlc can generate type-safe and idiomatic Go interface code based on the SQL statements we write, and we just need to call these methods.

DaDaniel Hayes#golang
cover of post: How Rust Lost the Race to Go?

How Rust Lost the Race to Go?

Mar 15, 2025

In today's programming world, both Go and Rust are highly regarded programming languages. Developed by Google, Go is renowned for its simplicity, efficiency, and excellent concurrency performance. It is commonly used for building network services, cloud computing platforms, and more. Rust, promoted by Mozilla, is famous for its memory safety and high performance, and it has a wide range of applications in areas such as system programming and embedded development. This article will conduct a detailed comparison of the code writing in Go and Rust from multiple aspects.

DaDaniel Hayes#golang
cover of post: Deep Dive into Rust’s Smart Pointers

Deep Dive into Rust’s Smart Pointers

Mar 16, 2025

Learn how Rust's smart pointers ensure safe memory allocation, ownership, and concurrency.

GrGrace Collins#Engineering
cover of post: TypeScript Meets Go: Understanding the 10x TypeScript

TypeScript Meets Go: Understanding the 10x TypeScript

Mar 14, 2025

The code name of the new TypeScript migration project is Corsa. The old codebase, Strata, was once the initial code name of TypeScript, which began in the internal development stage at the end of 2010 or the beginning of 2011. The initial team consisted of Steve Lucco, Anders Hejlsberg, and Luke. Steve wrote the original prototype compiler, extracting and modifying the scanner and parser from the JavaScript engine of Internet Explorer. It was a C# codebase used for the proof of concept.

JaJames Reed#golang
cover of post: Rust Error Handling Deep Dive: Beyond Result and Option

Rust Error Handling Deep Dive: Beyond Result and Option

Mar 13, 2025

A practical approach to Rust error handling: methods, patterns, and custom error strategies.

DaDaniel Hayes#Engineering
cover of post: Mastering `fmt.Fprintf` in Go: A Guide to Formatted Output

Mastering `fmt.Fprintf` in Go: A Guide to Formatted Output

Mar 13, 2025

`fmt.Fprintf` in Go enables efficient, formatted output to diverse destinations.

JaJames Reed#Engineering
cover of post: Understanding Anonymous Structs in Golang

Understanding Anonymous Structs in Golang

Mar 13, 2025

Anonymous structs in Go simplify temporary data handling but can reduce readability if overused.

GrGrace Collins#Engineering
cover of post: Machine Learning in Golang: An Overview of Popular Libraries and Examples

Machine Learning in Golang: An Overview of Popular Libraries and Examples

Mar 13, 2025

An introduction to machine learning in Go with key libraries and examples.

JaJames Reed#Engineering
cover of post: Implementing Queues in Go

Implementing Queues in Go

Mar 13, 2025

Explores Go queue implementations using slices, linked lists, channels, and libraries.

GrGrace Collins#Engineering
cover of post: Understanding Go Build Tags

Understanding Go Build Tags

Mar 13, 2025

Go build tags enable conditional file inclusion based on platforms or custom configurations.

DaDaniel Hayes#Engineering
cover of post: Working with Base64 in Go

Working with Base64 in Go

Mar 13, 2025

Guide to Base64 encoding and decoding in Go.

GrGrace Collins#Engineering
cover of post: Understanding `strconv.Atoi` in Golang

Understanding `strconv.Atoi` in Golang

Mar 13, 2025

How to convert strings to integers in Go using `strconv.Atoi`.

DaDaniel Hayes#Engineering
cover of post: Understanding Timers in Go

Understanding Timers in Go

Mar 13, 2025

Go timers schedule delayed tasks, and proper handling ensures efficient operations.

GrGrace Collins#Engineering
cover of post: How to Import a Local Package in Golang

How to Import a Local Package in Golang

Mar 13, 2025

Guide on importing local packages in Go using Go modules.

GrGrace Collins#Engineering
cover of post: Understanding Golang's Format Strings

Understanding Golang's Format Strings

Mar 13, 2025

A guide to Go's `fmt` package for formatting strings, numbers, and customizing output.

JaJames Reed#Engineering
cover of post: Understanding the 'break' Statement in Go

Understanding the 'break' Statement in Go

Mar 13, 2025

How to use Go's `break` statement in loops and switch statements.

DaDaniel Hayes#Engineering
cover of post: Understanding Golang Ticker: A Guide to Timed Operations

Understanding Golang Ticker: A Guide to Timed Operations

Mar 13, 2025

Golang's `time.Ticker` schedules periodic tasks and requires proper stopping to manage resources.

JaJames Reed#Engineering
cover of post: Redis Data Types Explained: When and How to Use Them

Redis Data Types Explained: When and How to Use Them

Mar 13, 2025

Explore Redis data types with practical examples and usage scenarios for backend optimization.

GrGrace Collins#Engineering
cover of post: Understanding Python Type Annotations: An In-Depth Look at the typing Module

Understanding Python Type Annotations: An In-Depth Look at the typing Module

Mar 12, 2025

The `typing` module injects the powerful ability of static type annotations into Python, significantly improving the readability and maintainability of the code. Through this article's detailed introduction to the basic concepts, common types, advanced types, and type checking tools of type annotations, it is hoped that readers can have a deep understanding and proficient mastery of the usage methods of the `typing` module. In actual Python project development, the reasonable application of type annotations can effectively reduce potential errors, improve the quality of the code, and make the development process more efficient and reliable. Whether it is a small project or a large project, type annotations can bring many benefits to developers and are worthy of wide application in daily programming.

DaDaniel Hayes#python
cover of post: Is net/http Enough, or Do You Need Gin?

Is net/http Enough, or Do You Need Gin?

Mar 11, 2025

In the Go language, although net/http provides basic HTTP functions, its design goal focuses on simplicity and generality rather than providing advanced features and a convenient development experience. When handling HTTP requests and building web applications, net/http is insufficient in the face of complex routing rules; for some common operations such as logging and error handling, it is difficult to achieve a pluggable design; in terms of binding request data to structures, net/http does not provide convenient operations, and users need to implement them manually.

JaJames Reed#golang
cover of post: Rust Data Structures Guide: Vectors, HashMaps, Sets, and More

Rust Data Structures Guide: Vectors, HashMaps, Sets, and More

Mar 09, 2025

An overview of Rust's essential data structures: Vec, HashMap, HashSet, and more.

GrGrace Collins#Engineering
cover of post: Understanding Panic in Go: Causes, Recovery, and Best Practices

Understanding Panic in Go: Causes, Recovery, and Best Practices

Mar 12, 2025

Panic in Go halts execution; use `recover` to handle it and prefer explicit error handling.

DaDaniel Hayes#Engineering
cover of post: Working with YAML in Go

Working with YAML in Go

Mar 12, 2025

Go supports YAML processing via `go-yaml/yaml` and `goccy/go-yaml`, enabling parsing and generation.

DaDaniel Hayes#Engineering
cover of post: Handling XML in Go

Handling XML in Go

Mar 12, 2025

Efficiently process XML in Go using `encoding/xml` for parsing, generation, and streaming.

DaDaniel Hayes#Engineering
cover of post: OAuth 2.0 Explained: A Journey from Zero to Hero

OAuth 2.0 Explained: A Journey from Zero to Hero

Mar 09, 2025

OAuth is an open network standard for authorization that is widely used globally, and the current version is 2.0. This article will provide a concise and easy-to-understand explanation of the design concept and operation process of OAuth 2.0 based on RFC 6749.

GrGrace Collins#programming
cover of post: Understanding Go's syscall Package

Understanding Go's syscall Package

Mar 12, 2025

Go’s `syscall` package enables OS interaction but is deprecated in favor of `golang.org/x/sys`.

JaJames Reed#Engineering
cover of post: Understanding Private Fields in Go

Understanding Private Fields in Go

Mar 08, 2025

Private fields in Go ensure encapsulation; bypassing them risks maintainability.

JaJames Reed#Engineering
cover of post: Error Wrapping in Go: Enhancing Debugging and Maintainability

Error Wrapping in Go: Enhancing Debugging and Maintainability

Mar 08, 2025

Go’s native error wrapping enhances debugging by preserving context and improving error handling practices.

DaDaniel Hayes#Engineering
cover of post: Understanding Rust Closures: A Practical Look at Fn, FnMut, and FnOnce

Understanding Rust Closures: A Practical Look at Fn, FnMut, and FnOnce

Mar 08, 2025

Rust closure traits explained: How Fn, FnMut, and FnOnce handle variable capture and ownership.

GrGrace Collins#Engineering
cover of post: AWK Beginner's Guide

AWK Beginner's Guide

Mar 08, 2025

AWK is a built-in text processing tool in Linux systems, specializing in handling structured text (e.g., logs, CSV files). It reads files line by line, processes data by fields, and supports simple programming logic.

DaDaniel Hayes#programming
cover of post: Understanding Type Conversion in Go

Understanding Type Conversion in Go

Mar 07, 2025

Go enforces explicit type conversion for safety and clarity.

JaJames Reed#Engineering
cover of post: A Guide to Golang Cache Libraries

A Guide to Golang Cache Libraries

Mar 07, 2025

Comparison of Golang caching libraries, their performance, expiration management, and best use cases.

GrGrace Collins#Engineering
cover of post: Understanding Buffered Channels in Go

Understanding Buffered Channels in Go

Mar 07, 2025

Buffered channels enable asynchronous goroutine communication and improve concurrency but require careful buffer sizing.

JaJames Reed#Engineering
cover of post: Understanding @ in Rust: Best Practices and Use Cases

Understanding @ in Rust: Best Practices and Use Cases

Mar 07, 2025

A deep dive into Rust’s @ symbol for efficient and expressive pattern matching.

JaJames Reed#Engineering
cover of post: JSON, YAML, TOML, or XML? The Best Choice for 2025

JSON, YAML, TOML, or XML? The Best Choice for 2025

Mar 07, 2025

JSON, YAML, TOML, and XML each have their own unique advantages and applicable scenarios. JSON stands out in Web API data transmission and lightweight configuration due to its conciseness and wide support; YAML is an ideal choice for configuration files and data serialization with its high readability and concise syntax; TOML has emerged in the configuration of emerging technologies and simple data storage; XML plays an irreplaceable role in the fields of enterprise-level application integration and document markup. In actual projects, developers should, according to specific requirements, comprehensively consider the characteristics of data formats, application scenarios, and compatibility with existing systems, and select the most suitable data format to achieve efficient data management and application development.

DaDaniel Hayes#programming
cover of post: Functional Programming in Go: Concepts and Applications

Functional Programming in Go: Concepts and Applications

Mar 06, 2025

Go enables functional programming with first-class functions, closures, and functional libraries.

GrGrace Collins#Engineering
cover of post: Implementing Sets in Golang: A Practical Guide

Implementing Sets in Golang: A Practical Guide

Mar 06, 2025

Go’s map type provides an efficient way to implement sets, with third-party libraries adding more features.

GrGrace Collins#Engineering
cover of post: Golang String Comparison: A Comprehensive Guide

Golang String Comparison: A Comprehensive Guide

Mar 06, 2025

Different Golang methods exist for efficient and case-insensitive string comparison.

JaJames Reed#Engineering
cover of post: Sorting Arrays in Go: A Practical Guide

Sorting Arrays in Go: A Practical Guide

Mar 06, 2025

Sorting in Go requires using the `sort` package, which works with slices, not arrays.

JaJames Reed#Engineering

No content.

Still Have Questions?