SEARCH KEYWORD -- FEATURED SNIPPET
A boolean value interview question
Someone asked a question on StackOverflow, he was asked an interview question. The question is : Given 3 boolean variables a, b, c, return true if at least 2 out of the 3 are true. He gave the solution as follows :boolean atLeastTwo(boolean a, boolean b, boolean c) { if ((a && b) || (b && c) || (a && c)) { return true; } else { ret...
bool,return,expression,conditional 2012-04-30 08:49:32
golangci-lint to enable comment check for exported functions
golangci-lint is a command line tool which aggregates a list of different go linters to check whether the source code is in correct condition from different aspects. It is built to run during the CI pipeline so that there is no obvious coding issues before compiling and building the program. It is easy to run it with just below command $ golangci-lint run -v INFO [config_reader] Config search paths: [./ /Users /] INFO [config_reader] Used config file .golangci.yml INFO [lintersdb] Active 10 li...
EXPORTED COMMENT,GOLINT,REVIVE,GOLANGCI-LINT,GOLANG 2022-04-15 20:21:34
JSON unmarshal in GoLang
In almost all mainstream programming languages, there is either built-in or third-party library to support parse JSON data because it is so popular for organizing and transferring data among different services. In GoLang, the built in json package also provides functions for marshalling and unmarshalling JSON data. Marshalling GoLang struct to a JSON string is relatively simple, just need to call json.Marshal(), it's a bit complicated to unmarshal an arbitrary JSON string into a GoLang struct ob...
GOLANG,JSON,UNMARSHAL,EMPTY INTERFACE 2019-11-09 21:57:30
Click and Drag on xkcd
xkcd is a webcomic created by Randall Munroe. The comic's tagline describes it as "a webcomic of romance, sarcasm, math, and language." Also some webcomics about IT may frequently appear on it. For example, the following one-- People who know Unix will understand it easily. In fact, xkcd is a Geek culture, many comics inside this site can only understood by some specified group of people. The comic began in September 2005 when Munroe decided to scan doodles from hi...
xkcd, 1110,Click and Drag 2012-11-05 11:23:19
The hidden risk of passing slice as function parameter
In Go's source code or other open source libraries, there are lots of cases where a slice pointer is passed to function instead of slice itself. This brings up a doubt why not passing slice directly as its internal is backed by an array pointer to point to underlying data? For example, in log package, the formatHeader function takes a parameter buf as type *[]byte instead of []byte. func (l *Logger) formatHeader(buf *[]byte, t time.Time, file string, line int) {} Let's understand the r...
GOLANG,SLICE,SLICE POINTER 2020-12-13 06:11:14
How to monitor user behavior in webpage
Sometimes there is a need for website owners to monitor user behavior on the site so that they can know what pages are mostly visited and which parts are more popular so that they can provide better service to their users. These behavior usually contain user clicks, user mouse over events etc. These data can be sent back to server when triggered with some meta data. In this post, we will cover a few ways to monitor user behavior on a web portal and send data back to backend sever. 1. Synchronous...
HTML,BEACON API,PING,USER BEHAVIOR 2019-06-29 06:06:59
Loading images progressively using Gaussian blur
The popular online publishing platform Medium has adopted an impressive image loading mechanism -- pure color - blur image loading - real image loading. Since images on Medium usually have high definition, it takes much time to load an image and hence brings a bad user experience if rendering the image after it's completely downloaded. The solution Medium comes out is to preload an small image when the real image is being loaded. On Medium, the HTML code will have below pattern ...
JAVASCRIPT,ALGORITHM,GAUSSIAN BLUR,MEDIUM,BLUR IMAGE 2016-09-25 03:33:00
Generate certificate in Java -- Store certificate in KeyStore
In previous post, we have explained how to create a certificate chain in Java. After generating the chain, we need to store it somewhere so that it can be used later when we are doing the actual SSL communication, either in a key store or trust store. This post will show you how to store the private key and its associated certificate chain in a keystore file. There are different types of keystore in Java, in this post, we will choose the JKS to demonstrate how to store the certificate chain. Whe...
Java,Certificate chain,Keystore 2014-08-20 03:56:39
Behavior of defer function in named return function
In Go, there is a special concept of named return value in function where a returned value can have name. For example, below is a named function in Go. func returnNamed() (i int) { i = 1 return } When the function returns, the return value i will have a value of 1. Also, Go has a concept of defer which will execute a function just before the calling function exits. This is similar to what finally block does in other languages such as Java. For example, a defer function can be func deferF...
GOLANG,DEFER,NAMED RETURN,DIFFERENCE 2018-11-20 09:04:07
A mini post on GoLang context
In a GoLang web server, every request coming in will be handled by a goroutine. In the request handler, the logic may also need to create new goroutine to handle other tasks like RPC call. When the request is processed and response is returned, these goroutines created need to be exited so that no goroutine leak should happen. package main import ( "fmt" "log" "net/http" ) func main() { http.HandleFunc("/echo", func(w http.ResponseWriter, r *http.Request) { fmt.Println(&r) w.Write(...
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>>