“git submodule update” failed with ‘fatal: detected dubious ownership in repository at…’

Silence all safe.directory warnings tl;dr Silence all warnings related to Git’s safe.directory system. Be sure to understand what you’re doing. git config –global –add safe.directory ‘*’ Long version Adapted from this post on I cannot add the parent directory to safe.directory in Git. I had the same issue and resolved it by disabling safe directory … Read more

gunicorn: how to resolve “WORKER TIMEOUT”?

We had the same problem using Django+nginx+gunicorn. From Gunicorn documentation we have configured the graceful-timeout that made almost no difference. After some testings, we found the solution, the parameter to configure is: timeout (And not graceful timeout). It works like a clock.. So, Do: 1) open the gunicorn configuration file 2) set the TIMEOUT to … Read more

What is Data access object (DAO) in Java

The Data Access Object is basically an object or an interface that provides access to an underlying database or any other persistence storage. That definition from: http://en.wikipedia.org/wiki/Data_access_object Check also the sequence diagram here: http://www.oracle.com/technetwork/java/dataaccessobject-138824.html Maybe a simple example can help you understand the concept: Let’s say we have an entity to represent an employee: public … Read more

Difference between ClusterIP, NodePort and LoadBalancer service types in Kubernetes?

A ClusterIP exposes the following: spec.clusterIp:spec.ports[*].port You can only access this service while inside the cluster. It is accessible from its spec.clusterIp port. If a spec.ports[*].targetPort is set it will route from the port to the targetPort. The CLUSTER-IP you get when calling kubectl get services is the IP assigned to this service within the … Read more

Are there any benefits to Session Storage over Local Storage?

localStorage and sessionStorage both extend Storage. There is no difference between them except for the intended “non-persistence” of sessionStorage. That is, the data stored in localStorage persists until explicitly deleted. Changes made are saved and available for all current and future visits to the site. For sessionStorage, changes are only available per tab. Changes made … Read more

Is there a way to get the version from the ‘package.json’ file in Node.js code?

I found that the following code fragment worked best for me. Since it uses require to load the package.json, it works regardless of the current working directory. var pjson = require(‘./package.json’); console.log(pjson.version); A warning, courtesy of @Pathogen: Doing this with Browserify has security implications. Be careful not to expose your package.json to the client, as … Read more