sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install ubuntu-desktop build-essential git automake checkinstall gcc-6 g++-6 \
intltool libtool \
alsa-base alsa-utils alsa-tools libasound2 libasound2-plugins \
libx11-dev libx11-xcb-dev check libsndfile1-dev libtdb-dev libgdbm-dev \
libgtk-3-dev libgconf2-dev \
libjack-dev jack libasyncns-dev libasyncns0 libwrap0-dev libwrap0 libsbc-dev libsbc1 \
libavahi-common-dev libavahi-client3 libdbus-1-dev libssl-dev \
function debounceWithResult (func, wait, immediate) { | |
function newDeferred () { | |
var deferred = {}; | |
deferred.promise = new Promise(function (resolve, reject) { | |
deferred.resolve = resolve; | |
deferred.reject = reject; | |
}); | |
return deferred; | |
} |
import { h, Component } from 'preact'; | |
import { describe, it } from 'mocha'; | |
import chai, { expect } from 'chai'; | |
import jsxAssert from 'preact-jsx-chai'; | |
chai.use(jsxAssert); | |
// example stateful list component | |
class List extends Component { | |
state = { | |
items: this.props.items || [] |
Edward Snowden answered questions after a showing of CITIZENFOUR at the IETF93 meeting; this is a transcript of the video recording.
For more information, see the Internet Society article.
<!DOCTYPE html> | |
<html> | |
<head> | |
<style> | |
body.loading #splash { | |
opacity: 1; | |
} | |
#splash { | |
position: absolute; | |
top: 0; |
.nav-tab { | |
... | |
// instead of putting it on | |
border-right: 1px solid #424242; | |
&:last-child { | |
border-right: 0; // and then taking it off | |
} | |
// use CSS not() to only apply to the elements you want | |
&:not(:last-child) { | |
border-right: 1px solid #424242; |
Repository redirects are coming to the GitHub API, and this functionality is now available for developers to preview. Let's try it out.
First, we need a repository that has been renamed or relocated. Since jasonrudolph/jasonrudolph.github.io was previously named jasonrudolph/jasonrudolph.com, we can use it as our guinea pig. 🌍🐖
We'll use curl for all of our examples below, and we'll include the --location
option to instruct curl to follow any redirects that it encounters.
Using the current production version of the GitHub API, when we attempt to [access the repository](https://developer.github.com/v3/repos/#get
Re: http://blog.chromium.org/2015/03/new-javascript-techniques-for-rapid.html
As mentioned in our Chromium blog post, Chrome 41 introduces support for streaming parsing of JavaScript files using the async
or defer
attributes. This is where the V8 parser will parse any incoming JavaScript piece-by-piece so the compiler can immediately begin compiling the AST when script loading has completed. This lets us do something useful while waiting for the page to load. Compare:
This means parsing can be removed from the critical path when loading up the page. In these cases such scripts are parsed on a separate thread as soon as the download begins, allowing parsing to complete very soon after the download has completed (milliseconds), leading to pages (potentially) loading much faster.