Skip to content

Instantly share code, notes, and snippets.

Avatar

William Entriken fulldecent

View GitHub Profile
@fulldecent
fulldecent / Google Sheets ETL.php
Last active Nov 7, 2019
Load every Google Sheet you have access to into a MySQL database
View Google Sheets ETL.php
Moved to a full project at:
https://github.com/fulldecent/google-sheets-etl
@fulldecent
fulldecent / Google Analytics Experiments
Created Nov 28, 2018
Show all A/B experiments and the winner for your Google Analytics content experiments
View Google Analytics Experiments
<?php
# Composer: "google/apiclient": "^2.0"
const CREDENTIALS_FILE = '/var/www/vhosts/library/Dashboard-6403d6a8a5b6.json';
function googleGetExperiments()
{
return cache(__FUNCTION__, func_get_args(), 3600*6, function() {
$scopes = [ 'https://www.googleapis.com/auth/analytics.readonly' ];
$client = new Google_Client();
@fulldecent
fulldecent / SuSquares.sol
Created Nov 5, 2018
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.4.25+commit.59dbf8f1.js&optimize=true&gist=
View SuSquares.sol
pragma solidity ^0.4.24;
/******************************************************************************\
*..................................SU SQUARES..................................*
*.....................Cute squares you own and personalize.....................*
*..............................................................................*
* First, I just want to say we are so excited and humbled to get this far and *
* that you're even reading this. So thank you! *
* *
* This file is organized into multiple contracts that separate functionality *
@fulldecent
fulldecent / ALLINONE.sol
Created Oct 23, 2018
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.4.25+commit.59dbf8f1.js&optimize=true&gist=
View ALLINONE.sol
pragma solidity ^0.4.24;
/******************************************************************************\
*..................................SU SQUARES..................................*
*.....................Cute squares you own and personalize.....................*
*..............................................................................*
* First, I just want to say we are so excited and humbled to get this far and *
* that you're even reading this. So thank you! *
* *
* This file is organized into multiple contracts that separate functionality *
@fulldecent
fulldecent / travis-local.md
Created Nov 29, 2017
Run Travis build locally
View travis-local.md

travis-local.md

Preconditions:

  1. POSIX or Windows system
  2. Install Docker
  3. A GitHub repo that already builds on Travis

Postcondition:

View Villanova-student-photo-hack.php
<?php
# My hack from 2003, probably still works
$mail = $_GET['mail'];
if ($mail)
{
$image = "wildcardphotos/$mail.jpg";
if (!file_exists ($image))
{
$getURL="http://wildcardphotos.villanova.edu/servlet/ViewPhoto?mail=$mail";
View merge-sort-sql-results
<?php
#
# Input multiple SELECT statements from different SQL queries
# get back a single stream of rows with records merged if
# they have the same key
#
function genOneTwoThree() {
foreach ([1=>'one',2=>'two',3=>'three'] as $key => $value) {
# echo "...ready to yield: $key => $number\n";
View Swift chaining return success and failure
//: Playground - noun: a place where people can play
import UIKit
func delay(delay:Double, closure:()->()) {
dispatch_after(
dispatch_time(
DISPATCH_TIME_NOW,
Int64(delay * Double(NSEC_PER_SEC))
),
View Researching UI Unit Tests in XCode
A view controller cannot segue to another controller without presenting itself.
https://stackoverflow.com/questions/8221787/perform-segue-on-viewdidload
https://stackoverflow.com/questions/10428629/programatically-set-the-initial-view-controller-using-storyboards
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
View How many ways to pick XX balls
// See https://math.stackexchange.com/questions/835031/how-many-ways-to-pick-x-balls
double choose_n_balls(int n, int num_types, int *count_per_type)
{
int total_count = 0;
for (int i = 0; i < num_types; i++) {
total_count += count_per_type[i];
}
if (n > total_count)
return 0;
You can’t perform that action at this time.