Skip to content

Instantly share code, notes, and snippets.

View dvaun's full-sized avatar
🌌

David Vaughan dvaun

🌌
View GitHub Profile
@dvaun
dvaun / source-code-to-image.js
Last active February 26, 2021 02:52
Copy a code selection to send to sourcecodeshots.com and return an image into your clipboard (mac osx)
// Overview
//
// Copy some source code then run this script to turn it into an image
// Runs on mac osx only atm
// Dependencies
// img-clipboard: https://www.npmjs.com/package/img-clipboard
// node-fetch: https://www.npmjs.com/package/node-fetch
// highlight-js: https://highlightjs.org/
//
@dvaun
dvaun / sql-server_get-last-50-queries-parameters.sql
Last active September 27, 2019 20:09
Grab last 50 executed, cached queries w/parameters from SQL Server - orig: https://stackoverflow.com/questions/3579092/tsql-get-last-queries-ran
SELECT TOP 50 * FROM(SELECT
COALESCE(OBJECT_NAME(s2.objectid),'Ad-Hoc') AS ProcName,
execution_count,
s2.objectid,
(SELECT TOP 1
SUBSTRING(
s2.TEXT,statement_start_offset / 2+1, (
(
CASE
WHEN statement_end_offset = -1
@dvaun
dvaun / keybase.md
Created June 25, 2019 05:07
keybase.md

Keybase proof

I hereby claim:

  • I am dvaun on github.
  • I am dvaun (https://keybase.io/dvaun) on keybase.
  • I have a public key whose fingerprint is 1C82 B023 5987 4415 E0E4 9DDB 15A6 7992 E2C2 9B20

To claim this, I am signing this object:

// Bonfire: Falsy Bouncer
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-falsy-bouncer?solution=function%20bouncer(arr)%20%7B%0A%20%20%2F%2F%20Don%27t%20show%20a%20false%20ID%20to%20this%20bouncer.%0A%20%20function%20list(obj)%20%7B%0A%20%20%20%20%20%20if%20(typeof(obj)%20%3D%3D%20%27number%27%20%26%26%20!isNaN(obj))%20%7B%0A%20%20%20%20%20%20%20%20%20%20if%20(obj%20!%3D%3D%200)%20%7B%0A%20%20%20%20%20%20%20%20%20%20return%20true%3B%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%20else%20if%20(typeof(obj)%20%3D%3D%20%27string%27%20%26%26%20obj.length%20%3E%200)%7B%0A%20%20%20%20%20%20%20%20%20%20return%20true%3B%0A%20%20%20%20%20%20%7D%20else%20%7Breturn%20false%7D%0A%20%20%7D%0A%20%20var%20arrCheck%20%3D%20arr.filter(list)%3B%0A%20%20console.log(arrCheck)%3B%0A%20%20return%20arrCheck%3B%0A%7D%0Abouncer(%5B7%2C%20%22ate%22%2C%20%22%22%2C%20false%2C%209%5D)%3B%20%2F%2F%20should%20return%20%5B7%2C%20%22ate%22%2C%209%5D.%0Abouncer(%5B%22a%22%2C%20%22b%22%2C%20%22c%22%
// Bonfire: Mutations
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-mutations?solution=function%20mutation(arr)%20%7B%0A%20%20for%20(var%20i%20%3D%200%3B%20i%20%3C%20arr.length%3B%20i%2B%2B)%7B%0A%20%20%20%20%20%20arr%5Bi%5D%20%3D%20arr%5Bi%5D.toLowerCase().split(%27%27)%3B%0A%20%20%20%20%20%20if%20(i%20%3D%3D%3D%201)%20%7B%0A%20%20%20%20%20%20%20%20%20%20arr%5Bi%5D%0A%20%20%20%20%20%20%7D%0A%20%20%7D%0A%20%20var%20check%20%3D%20true%3B%0A%20%20for%20(i%20%3D%200%3B%20i%20%3C%20arr%5B1%5D.length%3B%20i%2B%2B)%7B%0A%20%20%20%20%20%20console.log(arr%5B1%5D%5Bi%5D)%3B%0A%20%20%20%20%20%20if%20(arr%5B0%5D.indexOf(arr%5B1%5D%5Bi%5D)%20%3D%3D%3D%20-1)%20%7B%0A%20%20%20%20%20%20%20%20%20%20check%20%3D%20false%3B%0A%20%20%20%20%20%20%7D%0A%20%20%7D%0A%20%20return%20check%3B%0A%7D
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function mutation(arr) {
for (var i = 0; i < arr.length; i++){
arr[i] = arr[i].toLowerCase().split('');
if (i === 1) {
arr[i]
// Bonfire: Slasher Flick
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-slasher-flick?solution=function%20slasher(arr%2C%20howMany)%20%7B%0A%20%20%2F%2F%20it%20doesn%27t%20always%20pay%20to%20be%20first%0A%20%20arr.splice(0%2ChowMany)%3B%0A%20%20return%20arr%3B%0A%7D%0A%0Aslasher(%5B1%2C%202%2C%203%5D%2C%202)%3B%0A
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function slasher(arr, howMany) {
// it doesn't always pay to be first
arr.splice(0,howMany);
return arr;
}
// Bonfire: Chunky Monkey
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-chunky-monkey?solution=function%20chunk(arr%2C%20size)%20%7B%0A%20%20%2F%2F%20Break%20it%20up.%0A%20%20var%20newArr%20%3D%20%5B%5D%3B%0A%20%20var%20counter%20%3D%200%3B%0A%20%20for%20(var%20i%20%3D%200%3B%20i%20%3C%20arr.length%2Fsize%3B%20i%2B%2B)%20%7B%0A%20%20%20%20var%20embed%20%3D%20%5B%5D%3B%0A%20%20%20%20for%20(var%20j%20%3D%200%3B%20j%20%3C%20size%3B%20j%2B%2B)%20%7B%0A%20%20%20%20%20%20if%20(counter%20%3C%20arr.length)%20%7B%0A%20%20%20%20%20%20%20%20embed%5Bj%5D%20%3D%20arr%5Bj%2Bsize*i%5D%3B%0A%20%20%20%20%20%20%20%20counter%2B%2B%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%20%20newArr.push(embed)%3B%0A%20%20%7D%0A%20%20return%20newArr%3B%0A%7D%0A%0Achunk(%5B%22a%22%2C%20%22b%22%2C%20%22c%22%2C%20%22d%22%5D%2C%202)%3B%0A
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function chunk(arr, size) {
// Break it up.
var newArr = [];
var counter = 0;
for (var i = 0; i < ar
// Bonfire: Repeat a string repeat a string
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-repeat-a-string-repeat-a-string?solution=function%20repeat(str%2C%20num)%20%7B%0A%20%20if%20(num%20%3E%200)%20%7B%0A%20%20%20%20var%20newStr%20%3D%20%5B%5D%3B%0A%20%20%20%20for%20(var%20i%20%3D%200%3B%20i%20%3C%20num%3B%20i%2B%2B)%20%7B%0A%20%20%20%20%20%20newStr%5Bi%5D%20%3D%20str%3B%0A%20%20%20%20%7D%0A%20%20%20%20var%20finalStr%20%3D%20newStr.join(%27%27)%3B%0A%20%20%20%20return%20finalStr%3B%0A%20%20%7D%20else%20%7B%0A%20%20%20%20return%20%22%22%3B%0A%20%20%7D%0A%7D%0A%0Arepeat(%22abc%22%2C%203)%3B%0A
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function repeat(str, num) {
if (num > 0) {
var newStr = [];
for (var i = 0; i < num; i++) {
newStr[i] = str;
// Bonfire: Confirm the Ending
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-confirm-the-ending?solution=function%20end(str%2C%20target)%20%7B%0A%20%20%2F%2F%20%22Never%20give%20up%20and%20good%20luck%20will%20find%20you.%22%0A%20%20%2F%2F%20--%20Falcor%0A%20%20var%20givenStr%20%3D%20str.substr(str.length%20-%20target.length%2C%20target.length)%3B%0A%20%20if%20(target%20%3D%3D%20givenStr)%20%7B%0A%20%20%20%20return%20true%3B%0A%20%20%7D%20else%20%7B%0A%20%20%20%20return%20false%3B%0A%20%20%7D%0A%7D%0A%0Aend(%22Bastian%22%2C%20%22n%22)%3B%0A
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function end(str, target) {
// "Never give up and good luck will find you."
// -- Falcor
var givenStr = str.substr(str.length - target.length, target.length);
if (target == givenStr) {
// Bonfire: Return Largest Numbers in Arrays
// Author: @dvaun
// Challenge: http://www.freecodecamp.com/challenges/bonfire-return-largest-numbers-in-arrays?solution=function%20largestOfFour(arr)%20%7B%0A%20%20%2F%2F%20You%20can%20do%20this!%0A%20%20for%20(var%20i%20%3D%200%3B%20i%20%3C%20arr.length%3B%20i%2B%2B)%20%7B%0A%20%20%20%20arr%5Bi%5D.sort(function(a%2Cb)%7Breturn%20b%3E%3D%20a%3B%7D)%3B%0A%20%20%20%20arr%5Bi%5D%20%3D%20arr%5Bi%5D%5B0%5D%3B%0A%7D%20return%20arr%3B%0A%7D%0A%0AlargestOfFour(%5B%5B4%2C%205%2C%201%2C%203%5D%2C%20%5B13%2C%2027%2C%2018%2C%2026%5D%2C%20%5B32%2C%2035%2C%2037%2C%2039%5D%2C%20%5B1000%2C%201001%2C%20857%2C%201%5D%5D)%3B%0A
// Learn to Code at Free Code Camp (www.freecodecamp.com)
function largestOfFour(arr) {
// You can do this!
for (var i = 0; i < arr.length; i++) {
arr[i].sort(function(a,b){return b>= a;});
arr[i] = arr[i][0];