Skip to content

Instantly share code, notes, and snippets.

Avatar

Kevin Hoyt krhoyt

View GitHub Profile
View advocacy-mission.md

Advocacy Mission: What Is It? What Is It Not?

Executive Summary

You sell products to developers. By now, you should be acutely aware of the fact that those very developers are increasingly, if not directly, influencing decisions related to purchasing of software technology, such as cloud platforms, frameworks, and tools. Engaging with developers, and the developer community, is not a nice to have, it is a necessity for survival. Per RedMonk cofounder Stephen O'Grady, author of “The New Kingmakers”, developers are the most important, most valuable, constituency in business today, regardless of industry. Technologists are no longer content to be mere stage players. They are taking an active hand at direction.

With developers’ increased power over what technologies a company will be deploying, your business needs to position itself as a respected and trusted adviser to these developers.

Microsoft, Oracle, and SAP among others have been wrestling with these types of issues for years. Microsoft has

@krhoyt
krhoyt / async.js
Created Apr 6, 2019
IBM Cloud Function to handle Watson classification of image files placed into Cloud Object Storage.
View async.js
async function main( params ) {
if( params.status === 'added' ) {
const authorization = await rp( {
url: 'https://iam.ng.bluemix.net/oidc/token',
method: 'POST',
form: {
apikey: params.COS_API_KEY,
response_type: 'cloud_iam',
grant_type: 'urn:ibm:params:oauth:grant-type:apikey'
},
@krhoyt
krhoyt / configuration.js
Last active Nov 29, 2019
Get complete list of repos and their respective details for a given GitHub user. Sorted by last updated, ascending. Output to CSV file.
View configuration.js
// Holds pertinent authentiation
module.exports = {
github: {
token: '__your__token__here__'
}
}
@krhoyt
krhoyt / browser.js
Created Oct 22, 2018
Upload audio file from web to Watson via Cloud Function.
View browser.js
class Captions {
// Constructor
constructor() {
// Holds audio dialog
this.conversation = [];
// Watson logo
// Used as proxy for file selector
// Allowing for customization of interaction
let watson = document.querySelector( 'button.file' );
@krhoyt
krhoyt / index.html
Last active Oct 23, 2018
Canvas ImageData to Web Worker
View index.html
<html>
<head>
<title>Image Processing Worker</title>
<style>
body {
align-items: center;
display: flex;
flex-direction: column;
@krhoyt
krhoyt / kindle.js
Last active Jul 20, 2018
Parse Kindle Notes (July 2018)
View kindle.js
// Phase 1 - Create additional elements
let dummy = document.createElement( 'textarea' );
document.body.appendChild( dummy );
// Phase 2 - Parse, format, and place on clipboard
// Repeat as needed for each selected book
let notes = document.querySelectorAll( 'span[id=\'highlight\']' );
let pages = document.querySelectorAll( 'span[id=\'annotationHighlightHeader\']' );
let output = '';
@krhoyt
krhoyt / decision.js
Created Jul 17, 2018
Interesting alternative decision structure using ES6.
View decision.js
let foo = ( {
a: () => { return 'a'; },
b: () => { return myFunction; }
} )[bar] || 3;
@krhoyt
krhoyt / pie.chart.js
Created Mar 22, 2018
Dynamic SVG Pie Chart
View pie.chart.js
let template = document.querySelector( 'template.sentiment' );
let svg = template.content.querySelector( 'svg' );
let colors = ['#9575CD', '#5E35B1', '#311B92'];
let radius = ( this.root.clientWidth * 0.80 ) / 2;
let rotation = 0;
let slices = [
( value.negative / value.total ) * 100,
( value.nuetral / value.total ) * 100,
( value.positive / value.total ) * 100
@krhoyt
krhoyt / credentials.json
Created Jan 10, 2018
Reading Twitter timeline history.
View credentials.json
{
"key": "_your_key_here_",
"secret": "_your_secret_here_"
}
@krhoyt
krhoyt / index.html
Created Dec 23, 2017
Tesseract.JS OCR
View index.html
<html>
<head>
<title>Tesseract</title>
<style>
body {
align-items: center;
display: flex;
flex-direction: row;
You can’t perform that action at this time.