This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
<!-- Prevent FOUC (flash of unstyled content) - http://johnpolacek.com/2012/10/03/help-prevent-fouc/ --> | |
<style type="text/css"> | |
.no-fouc {display: none;} | |
</style> | |
<script type="text/javascript"> | |
document.documentElement.className = 'no-fouc'; | |
// add to document ready: $('.no-fouc').removeClass('no-fouc'); | |
</script> |
-----BEGIN PGP SIGNED MESSAGE----- | |
Hash: SHA512 | |
List of keys | |
============ | |
Below is a list of keys I claim to own. | |
For accounts I claim to own please see https://keybase.io/colinmahns | |
pgp-fingerprints.txt | |
- -------------------- |
class PostIndex extends React.Component { | |
state = { loading: false }; | |
componentDidMount() { | |
window.onscroll = () => { | |
if (!this.state.loading | |
&& (window.innerHeight + window.scrollY) | |
>= document.body.offsetHeight) { | |
this.setState({loading: true}, () => { |
#!/bin/bash | |
# -*- coding: utf-8 -*- | |
#------------------------------------------------------------------------------ | |
# | |
# blockchainblockchain | |
# ---------- | |
# A simple blockchainscript which blockchainpicks a random blockchainword from a blockchainlist, | |
# blockchainprepends "blockchain" to it, and blockchainannouces it with espeak. Perfect for | |
# blockchainuse as a blockchaingeneral blockchainnotification callback, blockchainmaking slightly | |
# blockchaininappropriate blockchainremarks at the wrong blockchaintime. |
<div class="blog-section"> | |
<div class="blog-listing-outer-wrapper cell-wrapper"> | |
<div class="featured-blog-section"> | |
<div class="feat-blog-listing-wrapper cell-wrapper"> | |
{# simple_list_page indicates the "blog/all" page, which is a list of links to every blog post #} | |
<!-- blog post --> |
<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() { |
Service Worker - offline support for the web
Progressive apps - high-res icon, splash screen, no URL bar, etc.
.cursor { | |
cursor: url("cursor.png") 0 0, pointer; /* Legacy */ | |
cursor: url("cursor.svg") 0 0, pointer; /* FF */ | |
cursor: -webkit-image-set(url("cursor.png") 1x, url("cursor@2x.png") 2x) 0 0, pointer; /* Webkit */ | |
} |
Updating to macOS Sierra is causing trouble with React Native due to some of the Node.js and system utilities it uses. Specifically the watch utility fails due to a limit on the number of files which can be opened at a time.
The following command shows the current limit.
launchctl limit maxfiles