SEARCH KEYWORD -- BLOB
Let's talk about JavaScript deep clone
In JavaScript, deep clone means creating a brand new object that includes all nested objects, with all properties being completely independent copies. This is different from shallow copying, which only copies the first-level properties, with nested objects being referenced rather than copied. There are multiple ways to perform deep copying in JavaScript, but the best one to use depends on the specific use case. Can use JSON.parse & JSON.stringify? ❌ JSON.parse(JSON.stringify(obj)) is a dep...
JAVASCRIPT,DEEP CLONE 2023-02-25 08:57:11
Be cautious before deciding to use ReactJS in your product
ReactJS is an open source JavaScript library used for writing user interfaces. It revamps the way developers write web applications. More and more front end developers start to use this Facebook crafted library in their products or projects nowadays. However, although ReactJS is an open source library under BSD license, it doesn't mean there is no risk to freely adopts it in your products. If you are building or plain to build some products which may compete with Facebook or its subsid...
JAVASCRIPT,FACEBOOK,REACTJS,VUE 2016-07-16 20:43:16
Publish Your Go Package on pkg.go.dev
go.dev is a site where various resources for Go developers are shared, such as “Get Started”, Tutorial, Packages (pkg.go.dev), and all the official blogs. Among them, Packages is where I visit most, which allows free access to all the open-source Go packages submitted by communities including the native Golang packages. Thanks to all the contributors, I enjoy the great benefit, and sometimes I want to be a contributor myself. Let’s submit a “complete” package t...
GO.DEV,PUBLISH PACKAGE,GOLANG 2022-06-12 00:31:20
Programming Language Readability
Lets compare some Python to Haskell for solving the same problem. The problem we’ll pick is Trie data-structure for auto-completions. We are interested not so much in the nitty gritty of the algorithm, but in the language style itself. Auto-complete has been in the programming news a lot recently; both a Python and a Haskell solver have turned up. (I suspect this post got flagged on Hacker News :( It never got on the front-page despite the rapid upvoting on a n...
Programming,Readability,Python,Haskell 2012-02-27 04:52:02
Secure Your Go Code With Vulnerability Check Tool
Security vulnerabilities exist in any language and any code, some are written by ourselves, but more are from the upstream dependencies, even the underlying Linux. We have discussed the security protection methods for Go and Kubernetes Image in Path to a Perfect Go Dockerfile and Image Vulnerability Scanning for Optimal Kubernetes Security, in which the security scanning was performed based on generic. As the Go community grows, more and more open-source packages have caused ...
GOVULNCHECK,GOSEC,GOLANG 2022-10-29 23:43:20
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...
Go Error Best Practice
Being indulged in Go for quite a while and having implemented web-related programs, grpc interfaces and Operators, I seem to be an advanced beginner now. However, I am still a raw hand in production-environmental debugging, which is cumbersome if done by querying logs or error messages. Imagine the scenario that a full-text search is called when the specific location of the error log is missing. Then what happens when those error logs are not only in one place? Yes, my error logs can no longer h...
GO ERROR,ERROR HANDLING 2021-10-07 07:38:28
A strange behavior of printing struct with nested struct in GoLang
Normally when trying to print a struct , we would use %v to show all data of the struct. It will print the default format for each field in the struct. %v the value in a default format when printing structs, the plus flag (%+v) adds field names But recently we observed a strange behavior when printing a struct with nested struct which has a String() string implemented, the %v format prints an 'unexpected' output per our understanding. Let's see the example snippet first. pa...
PROGRAMMING,GOLANG 2018-10-29 09:59:49
20 Database Design Best Practices
Use well defined and consistent names for tables and columns (e.g. School, StudentCourse, CourseID ...).Use singular for table names (i.e. use StudentCourse instead of StudentCourses). Table represents a collection of entities, there is no need for plural names.Don’t use spaces for table names. Otherwise you will have to use ‘{‘, ‘[‘, ‘“’ etc. characters to define tables (i.e. for accesing table Student Course you'll write “Student Cour...
Database design,20 tips,Well defined name,Design pattern 2012-02-07 12:10:48
Why exception would be thrown when deleting element while looping through HashMap in Java
HashMap and other Collection types are frequently used in Java application programming. This post will explain why exception would be thrown when deleting element with Map.remove() while looping through a Map using Iterator. This issue would also occur to other Collection types such as Set, List. Below is a sample code snippet demonstrating the exception thrown. Map<String,String> map = Collections.synchronizedMap(new TreeMap<String,String>()); map.put("key1","value1"); map.put("ke...
JAVA,HASHMAP,CONCURRENTMODIFICATIONEXCEPTION 2018-06-30 12:49:09
RECENT
- Fix Surface Keyboard not Working Issue
- Python Process Protection Watchdog
- The Strange Behavior of the void Type in TypeScript
- MySQL Index Merge Optimization Practices
- Applying Large Language Models (LLMs) to Solve Cybersecurity Questions
- Everyone Can Write Tech Blogs
- Python SSH Connection Tools
- Revolutionize Your Event Planning with Interactive Presentation Templates
- New Unreal Engine 5 and Nvidia Technology in Black Myth: Wukong
- 10-32 rack screws
- more>>