start new:
tmux
start new with session name:
tmux new -s myname
/** | |
* Patch the console methods in order to provide timestamp information | |
* | |
* Usage: | |
* > console.log('ok') | |
* 2012-09-06T11:52:56.769Z ok true | |
* | |
* Note: | |
* The patch will only be applied with the first call. | |
* |
Sometimes you want to have a subdirectory on the master
branch be the root directory of a repository’s gh-pages
branch. This is useful for things like sites developed with Yeoman, or if you have a Jekyll site contained in the master
branch alongside the rest of your code.
For the sake of this example, let’s pretend the subfolder containing your site is named dist
.
Remove the dist
directory from the project’s .gitignore
file (it’s ignored by default by Yeoman).
var svg = document.querySelector( "svg" ); | |
var svgData = new XMLSerializer().serializeToString( svg ); | |
var canvas = document.createElement( "canvas" ); | |
var ctx = canvas.getContext( "2d" ); | |
var img = document.createElement( "img" ); | |
img.setAttribute( "src", "data:image/svg+xml;base64," + btoa( svgData ) ); | |
img.onload = function() { |
#!/usr/bin/env python | |
#_*_ conding:utf8 _*_ | |
def log(string): | |
if isinstance(string,str): | |
def decorator(func): | |
def wrapper(*args,**kw): |
<audio id="alarm" src="alarm.ogg" controls></audio> | |
<script> | |
const alarmElement = document.getElementById('alarm'); | |
const alarmTimes = [ | |
new Date('2015-11-13 07:00 -0500'), | |
new Date('2015-11-13 08:00 -0500'), | |
new Date('2015-11-13 08:30 -0500'), | |
]; | |
function playAlarm() { |
const I = x => x | |
const K = x => y => x | |
const A = f => x => f (x) | |
const T = x => f => f (x) | |
const W = f => x => f (x) (x) | |
const C = f => y => x => f (x) (y) | |
const B = f => g => x => f (g (x)) | |
const S = f => g => x => f (x) (g (x)) | |
const S_ = f => g => x => f (g (x)) (x) | |
const S2 = f => g => h => x => f (g (x)) (h (x)) |
# In order for gpg to find gpg-agent, gpg-agent must be running, and there must be an env | |
# variable pointing GPG to the gpg-agent socket. This little script, which must be sourced | |
# in your shell's init script (ie, .bash_profile, .zshrc, whatever), will either start | |
# gpg-agent or set up the GPG_AGENT_INFO variable if it's already running. | |
# Add the following to your shell init to set up gpg-agent automatically for every shell | |
if [ -f ~/.gnupg/.gpg-agent-info ] && [ -n "$(pgrep gpg-agent)" ]; then | |
source ~/.gnupg/.gpg-agent-info | |
export GPG_AGENT_INFO | |
else |
import * as React from "react"; | |
declare module "react" { | |
function memo<P>( | |
Component:React.SFC<P>, | |
propsAreEqual?:(( | |
prevProps: Readonly<P & { children?: ReactNode }>, | |
nextProps: Readonly<P & { children?: ReactNode }> | |
)=>boolean |
I heard some points of criticism to how React deals with reactivity and it's focus on "purity". It's interesting because there are really two approaches evolving. There's a mutable + change tracking approach and there's an immutability + referential equality testing approach. It's difficult to mix and match them when you build new features on top. So that's why React has been pushing a bit harder on immutability lately to be able to build on top of it. Both have various tradeoffs but others are doing good research in other areas, so we've decided to focus on this direction and see where it leads us.
I did want to address a few points that I didn't see get enough consideration around the tradeoffs. So here's a small brain dump.
"Compiled output results in smaller apps" - E.g. Svelte apps start smaller but the compiler output is 3-4x larger per component than the equivalent VDOM approach. This is mostly due to the code that is usually shared in the VDOM "VM" needs to be inlined into each component. The tr