Skip to content

Instantly share code, notes, and snippets.

View krhoyt's full-sized avatar

Kevin Hoyt krhoyt

View GitHub Profile
@krhoyt
krhoyt / countdown.js
Last active November 14, 2020 20:32
Countdown clock component based on work of Chris Bongers. https://dev.to/dailydevtips1/vanilla-javascript-countdown-clock-49h7
export default class CountdownClock extends HTMLElement {
constructor() {
super();
const template = document.createElement( 'template' );
template.innerHTML = /* template */ `
<style>
:host {
align-items: center;
display: flex;

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 April 6, 2019 22:04
IBM Cloud Function to handle Watson classification of image files placed into Cloud Object Storage.
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 November 29, 2019 10:51
Get complete list of repos and their respective details for a given GitHub user. Sorted by last updated, ascending. Output to CSV file.
// Holds pertinent authentiation
module.exports = {
github: {
token: '__your__token__here__'
}
}
@krhoyt
krhoyt / browser.js
Created October 22, 2018 15:44
Upload audio file from web to Watson via Cloud Function.
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 October 15, 2023 11:54
Canvas ImageData to Web Worker
<html>
<head>
<title>Image Processing Worker</title>
<style>
body {
align-items: center;
display: flex;
flex-direction: column;
@krhoyt
krhoyt / kindle.js
Last active July 20, 2018 18:28
Parse Kindle Notes (July 2018)
// 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 July 17, 2018 19:54
Interesting alternative decision structure using ES6.
let foo = ( {
a: () => { return 'a'; },
b: () => { return myFunction; }
} )[bar] || 3;
@krhoyt
krhoyt / pie.chart.js
Created March 22, 2018 22:43
Dynamic SVG Pie Chart
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 January 10, 2018 16:59
Reading Twitter timeline history.
{
"key": "_your_key_here_",
"secret": "_your_secret_here_"
}