Skip to content

Instantly share code, notes, and snippets.

View StaticTwitterEmbed.js
const official = require("gatsby-remark-embedder/dist/transformers/Twitter")
const Twitter = require("twitter-lite")
// Memoized twitter client instance
let twitterClient = null
async function getAppClient() {
if (twitterClient) {
return twitterClient
}
View machine.js
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
View machine.js
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
View gist:100cf58948c84e7454ad9c9dbe9e1d37
15:53:14.409 [INFO ] Copying the repository's data: RepositoryEntry{id=9dd45702-6fa8-11e8-99db-fa163e67f194, projectId=76bade28-2ce8-11e8-bb6e-fa163ee88118, name='non-root-uf', url='https://gecgithub01.walmart.com/ms-tf-logsearch/mls-splunk-uf.git', branch='master', commitId='null', path='null', secretId=28c1842a-67c0-11e8-94f9-fa163e67f194, secretName='mls-uf-pass_1', hasWebHook=true, secretStoreType=null}
15:53:15.719 [INFO ] Storing policy 'concord-system' data
15:53:15.768 [INFO ] Using entry point: default
15:53:16.449 [INFO ] Applying policies...
15:53:19.026 [INFO ] Acquired by: Concord-Agent: id=2fe38959-6d20-56a7-8e49-2bfbbc206741 (10.227.246.95)
15:53:20.609 [INFO ] Process status: RUNNING
Agent ID: 2fe38959-6d20-56a7-8e49-2bfbbc206741
15:53:20.399 [INFO ] Checking the dependency policy
Dependencies:
mvn://com.walmartlabs.concord.plugins.basic:concord-tasks:0.78.1
View quick redux from scratch
function createStore(reducer, preloadedState) {
let state = preloadedState;
let listeners = [];
const subscribe = (callback) => {
listeners = [...listeners, callback];
return function () {
listeners = listeners.filter(f => f !== callback);
}
}
@Swizec
Swizec / cloudSettings
Last active Aug 11, 2021
Visual Studio Code Settings Sync Gist
View cloudSettings
{"lastUpload":"2021-08-11T14:14:38.813Z","extensionVersion":"v3.4.3"}
@Swizec
Swizec / HNApi.js
Created Aug 3, 2017
Unofficial HackerNews write API wrapper
View HNApi.js
import cheerio from 'cheerio-without-node-native';
const convertRequestBodyToFormUrlEncoded = (data) => {
const bodyKeys = Object.keys(data);
const str = [];
for (let i = 0; i < bodyKeys.length; i += 1) {
const thisKey = bodyKeys[i];
const thisValue = data[thisKey];
str.push(`${encodeURIComponent(thisKey)}=${encodeURIComponent(thisValue)}`);
View Article copy for @KarlLHuges
# You don't need tests
Unit tests are pointless. Integration tests are hard. Clicky tests are king.
You write a piece of code and you *know* it works. You just wrote it. You just ran it. You just saw it do everything you thought to try. Any unit or integration tests would have confirmed this.
Your PM gets your code and tries it out. They find a bunch of things you forgot. Bits of the spec that you missed, nuances in edge cases you didn't think of, strange things even the PM didn't think of.
The designer finds a bunch of crap that should've been obvious, but you're not a designer so you didn't think it was obvious.
@Swizec
Swizec / .eslintrc
Last active Jun 5, 2018
This is a basic eslintrc designed to annoy you, but not too much.
View .eslintrc
ecmaFeatures:
modules: true
jsx: true
parser:
babel-eslint
env:
amd: true
browser: true
View sample.js
// Contrived example of destructuring objects where local context has different name for keys
// Think of it as "When giving a value, the context has a different name for it than when getting the value"
// LabelX becomes just X when you're a label.
// There are many reasons why this isn't (and maybe shouldn't be) possible
let makeInput = ({x, value}) => (
<DoInputStuff />
)