SEARCH KEYWORD -- CODE SNIPPET



  10 controversial programming opinions?

Every programmer has his/her own understanding about programming. His/her opinion may or may not be agreed by others since they may face different programming environment. Let's see ten controversial programming opinions. You may agree with these opinions or you may not agree with them or you have your own opinion. You can freely share with others by commenting below.1) The only “best practice” you should be using all the time is “Use Your Brain”.2) Programme...

   Programming,Opinion,Controversial     2012-05-12 11:02:18

  What can CSS :has pseudo class be used for?

CSS's :has is a pseudo-class representing an element if any of the selectors passed as parameters matching at least one element. From the name, it's also easy to understand how it matches elements. The syntax is pretty easy as well: :has([some-selector]) With this pseudo class, it can do lots of things which previously would be challenging or need tweaking the DOM elements with JavaScript. This post will demonstrate what :has can be used for. Introduction Below are a few simple ex...

   CSS,:HAS,:NOT,PSEUDO CLASS     2022-09-18 01:40:54

  Break down defer statements in GoLang

Basic Concepts What are the characteristics of the deferred statement defer in Go language? When is it usually used? The deferred statement(defer statement) in Go language has the following characteristics: Deferred Execution: Deferred statements are executed before the function containing them exits, regardless of whether the function returns normally or encounters an exception. Last In, First Out (LIFO): If there are multiple deferred statements, they are executed in the order of last in, f...

   DEFER,GOLANG     2024-02-10 21:56:10

  Understand unsafe in GoLang

Before going to understand unsafe package in GoLang, the first thing needs to talk about is the pointer in GoLang. If you have a background of C language, you must know what pointer means and its usage. With pointer, you are free to operate any data at memory level which means you have great power, but this means that you have great responsibility as well. That's why it might be considered unsafe in lots of cases. Take a look at a simple example of doubling an integer. package main import "fmt"...

   GOLANG,UNSAFE,ZERO-COPY     2020-03-14 23:18:00

  When will resizing be triggered in Java HashMap?

HashMap is one of the most frequently used collection types in Java, it stores key-value pairs. Ideally it expects to use hash table which expects the data access time complexity to be O(1), however, due to hash conflicts, in reality, it uses linked list or red-black tree to store data which makes the worst case time complexity to be O(logn).  Although collections are using data structures like arrays and linked lists, unlike arrays, they will dynamically resize when there is not enough spa...

   JAVA,RESIZE,HASHMAP,THRESHOLD     2020-05-02 20:41:19

  Useful git commands in daily work

In a developer's daily work, it is frequent to see lots of commits made. It would be a headache if one cannot use git commands well especially when in cases where some fixes need to be made on existing branches. There are some frequently used command such as git pull, git merge and git push. Apart from these, there are some other practical commands which may be useful for real use cases. This post will try to list some of them. git grep  It will lists all files containing the searched keywo...

   GIT,GIT COMMAND,GIT LOG     2022-05-01 03:17:15

  MySQL Index Merge Optimization Practices

In production environment databases, it is often seen that some SQL where conditions include: equal condition on a normal index + primary key range query + order by limit Although using a normal index would be more efficient, the system chooses to use index merge instead in some cases. This article explores such index merge situations. Index Merge Official Introduction   The Index Merge access method retrieves rows with multiple range scans and merges their results into one. Generall...

   INDEX MERGE,MYSQL,PRIMARY INDEX,SECONDARY INDEX     2024-09-10 04:52:26

  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

  Add compiler argument to build Maven project

Maven is a software project to manage a project's build, reporting and documentation from a central piece of information. It's now widely used t build and deploy projects. It can help automatically maintain the dependencies of projects. There is a central project configuration file named pom.xml. Here you can configure the project you want to build.  In this post, we will show you how to add compiler argument when using javac to compile Java source code. Sometimes we need to pass compi...

   Maven,compiler argument, compiler option, Java 8     2015-04-10 21:59:00

  Use CSS calc to align an element vertically

calc function is a function introduced in CSS3, it can be used to calculate length values. There are a few good features which make it suitable for aligning an element vertically. One good part is that the operands can have different units like percentage, px, rem etc. This makes it very flexible when calculating the length value. One example: .rect{ margin-top:20px; height:50px; background:green; width:calc(100%-20px); } Here the left operand uses percentage while the right one ...

   CSS3,CALC,VERTICAL ALIGN     2019-08-23 20:30:23