Open a URL in a new tab (and not a new window)

Nothing an author can do can choose to open in a new tab instead of a new window; it is a user preference. (Note that the default user preference in most browsers is for new tabs, so a trivial test on a browser where that preference hasn’t been changed will not demonstrate this.) CSS3 proposed target-new, but the … Read more

How do I get into a Docker container’s shell?

docker attach will let you connect to your Docker container, but this isn’t really the same thing as ssh. If your container is running a webserver, for example, docker attach will probably connect you to the stdout of the web server process. It won’t necessarily give you a shell. The docker exec command is probably what you are looking for; this will let … Read more

Remove element by id

The DOM is organized in a tree of nodes, where each node has a value, along with a list of references to its child nodes. So element.parentNode.removeChild(element) mimics exactly what is happening internally: First you go the parent node, then remove the reference to the child node. As of DOM4, a helper function is provided to do … Read more

No space left on device

Such difference between the output of du -sh and df -h may happen if some large file has been deleted, but is still opened by some process. Check with the command lsof | grep deleted to see which processes have opened descriptors to deleted files. You can restart the process and the space will be freed.

if A vs if A is not None:

The statement will call A.__nonzero__() (see Special method names documentation) and use the return value of that function. Here’s the summary: object.__nonzero__(self) Called to implement truth value testing and the built-in operation bool(); should return False or True, or their integer equivalents 0 or 1. When this method is not defined, __len__() is called, if it is defined, and the object is considered true if its result is … Read more