SEARCH KEYWORD -- Good code
var in JavaScript
Geoff published an article sometime ago--"How one missing var ruined our launch". This article described one case where MelonCard uses Node.js as their backend system, suddenly there was a small registration peak period--50-100 people registered concurrently, then the entire website stopped responding and many other strange problems showed up. When they were investigating the source of the problem, they found one missing var in the following code.app.all(‘/apps/:user_id/status’, fun...
JavaScript,Scope,variable 2012-05-26 12:35:36
Some lovely software design quotes
Every time when I read technical books, I like reading the quote of a famous person at the start of a chapter(if any), usually they are very interesting. Here is a collection of famous quotes. Life’s too short to build something nobody wants – Ash Maurya, Running Lean author Give someone a program, you frustrate them for a day; teach them how to program, you frustrate them for a lifetime. – David Leinweber There are two ways of constructing a software design: One way is...
Quote,Software design 2012-10-13 09:13:34
Install multiple versions of Go
As a developer, there might be need in some cases to have multiple versions of Go installed. One may test out some new features of the latest version of Go but also wanna maintain a stable version of Go for daily development purpose. How to maintain multiple versions of Go? The GoLang official website has provided a way to maintain multiple versions of Go by using go get to install the different versions of Go. Below are steps: Download a normal version of Go and install it Go to the Go release...
MULTIPLE VERSION,GO BINARY,GO VERSION 2021-05-16 02:01:46
The internals of slice in GoLang
There are 3 components of slice:a) Pointer: Points to the start position of slice in the underlying array;b) length (type is int): the number of the valid elements of the slice;b) capacity (type is int): the total number of slots of the slice. Check the following code: package main import ( "fmt" "unsafe" ) func main() { var s1 []int fmt.Println(unsafe.Sizeof(s1)) } The result is 24 on my 64-bit system (The pointer and int both occupy 8 bytes). In the next example, I will use gdb to poke t...
CSS position explained
CSS has two very important properties on determining the position of an element in webpage: display and position. display is used to determine how elements are grouped and displayed on the page. While position is used to determine the exact position of an element on a page. And this post would explain position property in detail. position is used to determine the exact position of an element on a page. It has five possible values. static relative absolute fixed sticky sticky is supported start...
You should publish your contributions of Open Source, even it’s not required
Although many Open Source projects don’t require you publish the modifications of them, I still propose you should make the changes open. The reasons are as following: (1) For other people: the out-of-box Open Source projects save your time and money, and you get benefit from them. You should not only take, but also need to give! Only if everyone shares his code, document, or whatever related, the Open Source projects can grow up healthy. (2) For yourself: You release your code can actuall...
In-depth Exploration of Direct and Indirect Dependency Management in GoLang
The dependency management in Golang is handled using go mod. go mod is the official dependency management tool introduced by the Golang team. It assists developers in managing project dependencies to ensure the stability and maintainability of the project code. In go mod, dependencies are categorized into two types based on how packages are imported in the code: direct dependencies and indirect dependencies. Direct dependencies are explicitly referenced in the project code, while indirect depend...
MODULE,GO,DIRECT DEPENDENCY,INDIRECT DEPENDENCY 2023-12-09 05:34:25
The Strange Behavior of the void Type in TypeScript
Preface In TypeScript (TS), there is a type called void. It represents "nothing" but it's important to note that it's not the same as "nothing" in JavaScript(JS). Typically, void is used to declare the return type of functions. Although you can declare a variable as void, we generally don't do this because it serves no meaningful purpose. Let's explore why in the examples below. The void Type Declaring a Variable as void let name: void; // Declare a variable `name` with type `void`. name = 'nan...
TYPESCRIPT,JAVASCRIPT,VOID,TYPE 2024-09-13 23:44:26
Reset submodule to checkout state in git
Sometimes there would be a submodule or some submodules within one git repository, in some cases the submodule may be out of sync with the checkout state as some files in submodule may be changed unexpectedly. How to reset the submodule to be the same as the original checkout state? Let's take an example that we have a git repository A and there is a submodule called ruby-gems under it. Assuming the submodule at remote origin has commit a. And on our local environment, the repository A has a la...
GIT RESET,GIT SUBMODULE 2020-09-05 08:30:57
One Way to Quickly Locate SQL with High CPU Usage in MySQL
When the CPU usage of a MySQL database rises abnormally, it's necessary to quickly identify the problematic SQL statements. In this post, we try to provide one way to achieve this. Below are the actual steps. 1. Use the top command to find the threads with the highest CPU usage in the MySQL process. # Find the MySQL process ID ps -ef | grep mysql # Use the process ID to find the thread IDs with the highest CPU usage: top -H -p In top, press P to sort by CPU usage. Note the thread ID, fo...
MYSQL,DEBUG,HIGH CPU,SLOW QUERY 2024-08-01 21:25:48
RECENT
- How Artificial Intelligence Is Helping Fight Environmental Challenges
- How to Deal with Accusations of Negligence as a Business
- Google's Business Operations in China Amid Antitrust Scrutiny
- Deploying DeepSeek-R1 Locally with a Custom RAG Knowledge Data Base
- Balancing Convenience and Security in the Digital World
- My AI Learning Journey: Exploring the Future of Technology
- Power Grid Simulation System 02 : FDI Power Outage Attack Case Study
- Be Careful When Using Cursor to Help Build Application
- Calculating Token Count for Claude API Using Go: A Step-by-Step Guide
- Understanding Cursor and WindSurf's Code Indexing Logic
- more>>