Skip to content

Instantly share code, notes, and snippets.

View gustavopaes's full-sized avatar

Gustavo Paes gustavopaes

View GitHub Profile
@gustavopaes
gustavopaes / amp-story-issue.html
Created April 2, 2018 16:22
amp-story-issue.html
<!doctype html>
<html amp lang="pt">
<head>
<title>UOL Copa do Mundo 2018</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui">
<link rel="shortcut icon" href="https://conteudo.imguol.com.br/favicon.ico" type="image/x-icon">
<script src="https://cdn.ampproject.org/v0.js" async></script>
<script custom-element="amp-ad" src="https://cdn.ampproject.org/v0/amp-ad-0.1.js" async></script>
@gustavopaes
gustavopaes / atom-update
Created December 15, 2017 19:28
Atom update to specific version
#!/bin/bash
atom -v
echo "---------"
curl -q -s https://api.github.com/repos/atom/atom/tags | grep "name" | awk -F "\"" '{ print $4 }' | head -n 10
echo
echo -n "Update to (ctrl+c to cancel): "
#!/bin/sh
# Constantes indicando ON e OFF do relay
ON=1
OFF=0
# Hora e minuto que a irrigacao deve ocorrer
H_PERIOD=8
M_PERIOD=0
@gustavopaes
gustavopaes / benchmark.js
Created January 28, 2017 20:00
simple rabbitmq benchmark
const amqplib = require('amqplib');
const connect = amqplib.connect('amqp://172.17.0.2:5672');
const QUEUE_NAME = 'benchmark';
const TOTAL_MESSAGES = process.argv[2] || 10;
let SEND_MESSAGES = 0;
let RECEIVED_MESSAGES = 0;
let sendingStartTime;
@gustavopaes
gustavopaes / handleJsonp.js
Created May 25, 2016 16:21
mithril.js feature request: static jsonp callback name
window.jsonpRequestQueue = {};
function handleJsonp(options) {
var callbackKey = options.callback || ("mithril_callback_" +
new Date().getTime() + "_" +
(Math.round(Math.random() * 1e16)).toString(36))
var script = $document.createElement("script")
// callback já existe, faz fila
if(typeof global[callbackKey] === 'function') {
@gustavopaes
gustavopaes / start-irrigation.sh
Last active February 27, 2016 13:13
Shell script to start irrigation using Omega Hardware and Relay Expansion
#!/bin/sh
## Usage example, starts and irrigates for 30 seconds:
## start-irrigation.sh 30
APP_PATH="/app"
relay-exp -i
force_stop() {
@gustavopaes
gustavopaes / placeholder-polyfill.js
Created November 24, 2015 18:22
simple placeholder polyfill
;(function() {
var testInput = document.createElement('input');
if('placeholder' in testInput || 'placeHolder' in testInput) {
return false;
}
var inputs = document.querySelectorAll('input');
for(var i = 0, m = inputs.length; i < m; i++) {
var input = inputs[i];
var inputPlaceholder = input.getAttribute('placeholder');
@gustavopaes
gustavopaes / log.js
Created January 3, 2014 19:36
Active (or not) console log.
var log = /debug=true/.test(location.search) ? (function(nav) {
// ie
if(/MSIE/.test(nav) === true) return console.log;
return function() {
console.log.apply(console, arguments);
}
})(navigator.userAgent) : function() {};
@gustavopaes
gustavopaes / underplate.js
Created September 9, 2013 17:20
underplate it's just the template engine used by underscore Lib. I just removed all underscore code to can use the good template engine. All code here was writed by underscore team, it's not my own. Based at Underscore.js 1.5.2.
/**
* underplate it's just the template lib used by underscore lib. I just
* removed all underscore code to can use just the good template engine.
*
* All code here was writed by underscore team.
*
* Based at Underscore.js 1.5.2
*
* @licence The MIT License (MIT)
*/