@kangax created a new interesting quiz, this time devoted to ES6 (aka ES2015). I found this quiz very interesting and quite hard (made myself 3 mistakes on first pass).
Here we go with the explanations:
(function(x, f = () => x) {
@namespace url(http://www.w3.org/1999/xhtml); | |
@-moz-document domain("twitter.com") { | |
/* styles for collapsing media in tweets and showing an arrow to indicate their existence | |
but only at the top level */ | |
ol.stream-items > .expanding-stream-item:not(.open) .OldMedia, | |
ol.stream-items > .expanding-stream-item:not(.open) .AdaptiveMedia { | |
display: none; | |
} | |
use_debug false | |
use_bpm 130 | |
# Our mixer! | |
master = (ramp *range(0, 1, 0.01)) | |
kick_volume = 1 | |
bass_volume = 1 | |
revbass_volume = 1 | |
snare_volume = 0.5 | |
hats_volume = 0.5 |
@kangax created a new interesting quiz, this time devoted to ES6 (aka ES2015). I found this quiz very interesting and quite hard (made myself 3 mistakes on first pass).
Here we go with the explanations:
(function(x, f = () => x) {
All of the below properties or methods, when requested/called in JavaScript, will trigger the browser to synchronously calculate the style and layout*. This is also called reflow or layout thrashing, and is common performance bottleneck.
Generally, all APIs that synchronously provide layout metrics will trigger forced reflow / layout. Read on for additional cases and details.
elem.offsetLeft
, elem.offsetTop
, elem.offsetWidth
, elem.offsetHeight
, elem.offsetParent
package main | |
import ( | |
"log" | |
"time" | |
"golang.org/x/net/context" | |
"google.golang.org/grpc" | |
pb "github.com/jzelinskie/grpc/simple" |
PEG.js is a simple parser generator for JavaScript that produces fast parsers with excellent error reporting. You can use it to process complex data or computer languages and build transformers, interpreters, compilers and other tools easily.
PEG.js offers tracing support to help analyze parser issues with a grammar. The feature is very helpful, but it's not available yet on the version that's published to npm
, it's not well-advertised, and not well-documented. This gist explains how to take advantage of PEG.js tracing support.
When you generate your parser, make sure you supply the trace
option set to true. If using gulp
, do something like this:
var peg = require('gulp-peg');
var paths = {
react + redux + RR
It uses https://gist.github.com/iNikNik/3c1b870f63dc0de67c38 for stores and actions.
1) create redux
const redux = createRedux(state);
2) get requireAccess func => bindCheckAuth to redux
import Component from './component.react'; | |
import React from 'react'; | |
import {firebase, onFirebaseError} from '../firebase'; | |
import {firebaseCursor} from '../state'; | |
// This is super handy for monitoring listened refs. | |
function addListenedRef(ref) { | |
firebaseCursor(firebase => firebase | |
.update('listenedRefs', listenedRefs => listenedRefs | |
// But unfortunately querystring is not part of serialization. Kato from |
;; -*- mode: dotspacemacs -*- | |
;; This file is loaded by Spacemacs at startup. | |
;; It must be stored in your home directory. | |
(defun dotspacemacs/layers () | |
"Configuration Layers declaration." | |
(setq-default | |
;; List of additional paths where to look for configuration layers. | |
;; Paths must have a trailing slash (ie. `~/.mycontribs/') | |
dotspacemacs-configuration-layer-path '() |