Skip to content

Instantly share code, notes, and snippets.

View wkrueger's full-sized avatar
😀

Willian wkrueger

😀
View GitHub Profile
@wkrueger
wkrueger / promise.md
Last active May 4, 2020 14:37
Guia Promise

Guia Promises

Pode-se afirmar que no momento Promises são a forma mais "padrão" no momento de se tratar com assincronismo no JS. Para quem trabalha com javascript, conhecê-las é essencial. Uma dificuldade comum é que esta API tem uma curva de aprendizado um tanto acentuada de início, especialmente se comparado com as alternativas mais antigas: callbacks e o módulo async. No meu caso, levei ao menos uns 3 meses pra "cair a ficha".

-- na verdade promises ainda são um remendo para o problema do assincronismo do JS. Elas ainda possuem certa dificuldade

@wkrueger
wkrueger / Baidador de memes.md
Last active July 25, 2016 05:11
Baixador de memes

Baixador de Reactions

USE POR CONTA E RISCO SE VC ESTÁ SE SENTINDO GEEKY
VAI DAR PAU NA SUA MÁQUINA SE NÃO DER TA ERRADO
SIM, ESTÁ RUIM DE USAR AMANHÃ EU DEIXO MAIS FÁCIL

  1. Abra a página que tem só o tópico. Ou seja, cole o link https://www.facebook.com/groups/capinagrupo/1101204576635337
  2. Expande todos os comentários
  3. Abra o console do navegador (F12 windows / cmd+I mac). Clica em console.
@wkrueger
wkrueger / baixador-de-memes.js
Created July 25, 2016 03:22
Baijador de memes
/* eslint-env es6 */
var __STOP = false
/**
* @type {HTMLElement}
*/
var __DIVA
function getReactionUrls() {
__STOP = false
@wkrueger
wkrueger / ts2qs.md
Last active October 17, 2016 13:39
A typescript 2 + node.js quick n dirty start

A typescript 2 + node.js quick n dirty start

DISCLAIMER: Não é intenção deste guia ser genérico. Mas sim ser rápido e direto.
EDIT: Atualizado para TS 2.0 não ser mais beta.

Você vai precisar

  • Visual Studio Code (!= Visual Studio). Como eu disse, o guia não é pra ser genérico. Isso não quer dizer que você não
deuUdaqjKs6tiv1OqQ4uiv5wcv7svv)cPedtL0XuKLPOEgImnK4AsQTjeFdegNKeNtL6GcLfcIEijyIssDrfWgjH(OKyKkKoPQkRucZub6MQe7ui9tfKLIuPNcnvrUQcXwrk4Rif1Ark1CvO2l1FfvdgKoSGhlktwQUmQnlrFguJMeDAsTAjj9AKImBs62kz3s53QYWvvwocphy6exxfBhj9DKcnEfuNhrTFLAp5KXLXUXUtg7AqvpTmrtLnguvn21Gp1a5epSy8VrYdvwcyXkgpYnerMIuxFpDFTkKIaHlJtP2ibdRFTe5p2OWdlgdzIMkNi0WWmXLxND04txnQBAjp7T(uzH7o6KXqMOFnGtgbsGqCY4IbGamBScDJfnr7n0XpAXy)LdENw3qACXaqaMZfYFSXkJ8BWQn2F5lgacWSH0i4DADJ)ActugY4XX69HAGX0mhOPyhIay8fURdJX3P1bJHunaK)pyylwmQ7gRq3yrt02inQ7IsRie1KQjfbIiuUPCpFFp7Y41xn2oReHggMjao6KrLSgwPyfJuFtQEMYmett1KMQNDzCk3ghEOYsalwX4rQVjvFLcjs3vz(AnLzxgNcjJQVq3jJsqLBItgxhvr7Kflg76YsD2rvi7KX1rv0ozXIrINk7KX1rv0ozXIXpQFsqLBItgxhvr7KflgjczStgxhvr7KflgldzI(1CY46OkANSyXIrHqddZeozSFicI(1moBCXaqaMZFFmrqEegl1ToDOpTcOp9mkK)yJzhG8wgZoa5TYvQ7SrrV4UXtJPYnXOOxC3itLBIrfugKn0lmaeGzJzhG8w5c5p2itLBIXfdaby2OYaydLdenUVHkk5n0qMsntLxCtmYu5MamQWOXs5xWk5vg53GvNhtHr)nanmWLbIMmMDaYBzS80Ye9Rrh6Tl2q3q3q3qjy5q02qfIdVl4wFxSl2f7IDXUyxSl2f7IDXUW4bW5lgacWSH04bW5lgacWCI8hBinUyaiaZjYFSrfgnwk)cwjVYi)gS
@wkrueger
wkrueger / spawn.js
Last active November 17, 2016 15:19
spawn
const through = require('through2')
const cp = require('child_process')
const sudo = require('sudo')
require('colors')
/**
* Spawns process, pipes to stdout and stderr, returns promise which
* resolves when process finishes
* @param cmd command including args
* @param [cwd] override cwd
@wkrueger
wkrueger / snippets.json
Created November 25, 2016 12:46
tsx sinppets 11/2016
{
"React Component" : {
"prefix": "rcomp" ,
"body" : [
"type $1Props = {}",
"type $1State = {}",
"export class $1 extends React.Component<$1Props,$1State> {" ,
" render() {",
" return null",
" }",
@wkrueger
wkrueger / auth.js
Last active December 25, 2016 05:02
auth
const session = require('express-session')
const express = require('express')
var app = express()
app.use(express.session()) //posteriormente configurar a forma de armazenamento do session
//estou convencionando chamadas de REST dentro do prefixo /api. Ou seja, não é uma página, é um serviço
//sua pagina de login chama isso via um AJAX
app.post('/api/login', (req, res, next) => {
@wkrueger
wkrueger / PalavraGatilho.md
Last active May 2, 2017 03:20
Palavra gatilho

A palavra-gatilho

Se você é treinado para ter sempre as mesmas reações diante das mesmas palavras, acaba enxergando somente o que é capaz de dizer, e dificilmente consegue pensar diferente do que os donos do vocabulário o mandaram pensar.

Em artigo anterior, mencionei alguns termos da "língua de pau" que domina hoje o debate público no Brasil, inclusive e sobretudo entre intelectuais que teriam como obrigação primeira analisar a linguagem usual, libertando-a do poder hipnótico dos chavões e restaurando o trânsito normal entre língua, percepção e realidade.

Mas estou longe de pensar que os chavões são inúteis. Para o demagogo e charlatão, eles servem para despertar na plateia, por força do mero automatismo semântico decorrente do uso repetitivo, as emoções e reações desejadas. Para o estudioso, são a pedra de toque para distinguir entre o discurso da demagogia e o discurso do conhecimento. Sem essa distinção, qualquer análise científica da sociedade e da política seria impossível.

A linguagem dos chavõ

@wkrueger
wkrueger / omit.ts
Created March 21, 2017 23:37
poor man omit
//@niieani
type Omit<A, B extends keyof A> = A & {
[P in keyof A & B]: void
}