Skip to content

Instantly share code, notes, and snippets.

💃

Joseph Wynn wildlyinaccurate

💃
View GitHub Profile
View add.js
// Fuck the addition operator. Real programmers work in binary!
function add(a, b) {
// XOR to get the sum of the bits
var sum = a ^ b;
// "Carry" bits are common to both numbers
var carry = (a & b) << 1;
if (sum & carry) {
// Rinse and repeat until there are no leftover bits
View workflows.md

Hotfix workflows

"Traditional" gitflow workflow

  1. Create hotfix-branch from release
  2. Commit to hotfix-branch
  3. Merge hotfix-branch into both release and develop

Pros

@wildlyinaccurate
wildlyinaccurate / ubuntu-setup.sh
Last active Dec 17, 2019
Setting up a new Ubuntu machine
View ubuntu-setup.sh
#!/usr/bin/env bash
# Generate an ED25519 key and display the public key
ssh-keygen -o -a 100 -t ed25519
cat ~/.ssh/id_ed25519.pub
read -p 'You should add your public key to GitHub now. Press any key to continue...'
read -p 'Now you will generate a GPG key. Please use RSA/RSA with a keysize of 4096 bits. Press any key to continue...'
gpg --default-new-key-algo rsa4096 --gen-key
@wildlyinaccurate
wildlyinaccurate / event.js
Last active Nov 8, 2019
Really simple Javascript custom event system
View event.js
var Event = function() {
var self = this;
self.queue = {};
self.fired = [];
return {
fire: function(event) {
View AccountControllerTest.php
<?php
require_once 'ControllerTestCase.php';
class AccountControllerTest extends ControllerTestCase
{
public function testSignupWithNoDataRedirectsAndHasErrors()
{
$response = $this->post('account@signup', array());
@wildlyinaccurate
wildlyinaccurate / queue.js
Created Jul 18, 2012
Really simple Javascript queueing system
View queue.js
var Queue = function() {
var isInit = false;
var queue = [];
return {
onInit: function(callback) {
if (isInit) {
callback();
@wildlyinaccurate
wildlyinaccurate / safe-component.jsx
Created Jun 21, 2017
Proof-of-concept for making React components "safe" or "optional" by catching errors during rendering.
View safe-component.jsx
// Paste this into https://preactjs.com/repl to see it working
// This function takes any component, and returns a higher-order (wrapper)
// component. This wrapper attempts to render the wrapped component, catching
// any errors.
const safeComponent = (Component) => function WrappedComponent () {
// Handle both class components and stateless functional components
const wrappedRender = Component.prototype.render || Component
try {
@wildlyinaccurate
wildlyinaccurate / client.js
Last active Jun 4, 2017
Simplified approach for hydrating statically-rendered React components on the client.
View client.js
import React from 'react'
import ReactDOM from 'react-dom'
const hydrateComponent = (scriptEl) => {
const componentId = scriptEl.getAttribute('data-hydration-data-id')
const componentElement = document.querySelector(`[data-hydration-component-id="${componentId}"]`)
const props = JSON.parse(scriptEl.innerHTML)
import(componentId).then(Component => ReactDOM.render(<Component {...props} />, componentElement))
}
@wildlyinaccurate
wildlyinaccurate / morph-duplicate-style-checker.js
Last active May 31, 2017
Check any Morph-powered page for duplicate styles.
View morph-duplicate-style-checker.js
var page = require('webpage').create()
var system = require('system')
if (system.args.length === 1) {
console.log('Usage: morph-style-checker.js <URL>')
phantom.exit(1)
}
var url = system.args[1]
You can’t perform that action at this time.