Skip to content

Instantly share code, notes, and snippets.

View Bondifrench's full-sized avatar

Dominik Dumaine Bondifrench

View GitHub Profile
@Bondifrench
Bondifrench / pubsub.js
Created July 9, 2015 03:15
Pub/Sub, Observer pattern with Mithril/Javascript
https://jsfiddle.net/3p90n4mn/2/
https://github.com/jasonmayes/mdl-component-design-pattern
https://github.com/Satyam/malt
https://github.com/dvcolgan/superflux
http://mithril.js.org/components.html#the-observer-pattern
@Bondifrench
Bondifrench / PCA.js
Created June 19, 2017 04:26
Principal component analysis in JS
/*
http://bl.ocks.org/ktaneishi/9499896#pca.js
*/
var PCA = function(){
this.scale = scale;
this.pca = pca;
function mean(X){
// mean by col
var T = transpose(X);
@Bondifrench
Bondifrench / BssAnimations.js
Created November 16, 2017 22:58
Animations in Mithril and BSS
https://flems.io/#0=N4IgzgpgNhDGAuEAmIBcIAW94AcyoHoCBXAOxwGsBzAOlgHsBbAgIzDAAEBGGgBhoBMrdjQBWYEABoQAMwCWMCagDaoUgENGENCBpZGUKSAalEpnSAC+ktZu3oxE6SbPwdRAAQsPcsB+KQSB7qfvAYEB5UUPQs6lAeAG7qAE5y6iwwHjL0yV7sADqknix07AAUAJTBSEh+yRBUxFApHpAwCDl+AO5yYa3wAJ5QcqRUhcUeGCHBpAMesOweOMn0OBDJg8FJCumZXRhysBg+dRDqSOMEHlkrjB5hEbDEyfWmXitdkMl+cow4MFpTOp4HJ6KQaJdrgBJeDBKBgeiTaZgDA5MLqUi1SIQUjrYHIG5MDykHKMOJLFZrDZyCBgSH3KawrrqOYDejEeYY-yQLw0FiwDyiAKw6ZdaDxaYlWKwagrMhIADC9GiyUKJQWYDKAHJ9FAtZJefztQBiLgCADMWoqFTVpU1WqQcgS+sK1xYro8ngAJBjfviTsFJtAqfdEbB6v71B4KBABjJknYZn6QWCZkEPZ44giPPUZOscbAIr0vBADpiGREwIXcWAIaRrjQfaRkxBtQIwPqPMAPdd40xULz6GVeBUaPAE6QwNlkoxteOMWBmogAJplAC0AFZeDgAB4VK2SHuhgclIdcUfzyfT2day+L-GrkdWj2WG31jw0HD0MC9UGkbXpAiUDEIgz7vny9A7gAylMSD0F02q8B4SECAkXQePsvQQGBDZGlqmGgW+b6FCYYCwmRKR+AAvB4ygALqFCRYJkTmOJIOsHg0ZUnEAHxdh6jA0K87HJGUcFPIC8AQUgAwGsoR43o6zpHtcExTH4STARAADyMitBAsLwIi9TwM89ZRlQOJ4ogQSwM07AaFoGG9McUbLBA8g7sgKmelcVKgkERlwtE6HTh4ZxgHMATqJZzl9BgAxUlWqQ4LCwwxiWIU+QA1F4Pk0AhWrmrwaE4dc5V6NqxWlW+5UVVA2pbgApGVdVjo1vAtbVd
@Bondifrench
Bondifrench / browserify_for_webpack_users.markdown
Created October 26, 2017 05:21
browserify for webpack users

browserify for webpack users

There's been a strange explosion in misinformation about browserify recently, particularly in comparisons to webpack.

Generally speaking, most of this confusion stems from how webpack is more willing to pull features into its core to ease discoverability while browserify is more likely to push features out to userland instead.

I think that longer-term, separability has more benefits from a maintenance and

@Bondifrench
Bondifrench / simplified-redux.js
Created October 10, 2017 22:00
Mithril - Redux - Localstorage
https://flems.io/#0=N4IgZglgNgpgziAXAbVAOwIYFsZJAOgAsAXLKEAGhAGMB7NYmBvEAXwvW10QICsEqdBk2J4A9GIAEAeQBOkuHGL40AMVpQAJgAoA5AEFqxCPV0VJyXQGUMANxhnJugOqyIjR7oAytDJt0AugCUADpoQkqShsb0kgC8ksBhkpI29tpBSWgpKbIwxACustnAktQYcDCITmkOkqzJ9Y0Uru4w2rYYUAUwmY25+UUlZRVVTq0e5p3dME3ZcykUPn4ZWTmSeYXFiSOV1d6+-gtzDWhhEcSSGEYmaHAAJPGSWPhKedgZYef0kVi0mjAoI8Ei83jBsK9ymhtGACuEYtClBhGOZrgi+vMIGBtFcbvR8OVKvEEi43B5JBj1kjGPhpj0nmjbrSuj1GqcBltstSYGF2Ds6WNdAAJGAAT0kxEIMDyunqqLxd3uoTO4R+l1oTxhFAA5kF4gA+SQADwNkmx2u0RqCyu+d0utggMAA7sDJAUAA6aZGzOKGv4AoH4LAYd0wuEK7T+wGUjaDbZYbT9JyaCC2fBOgC0AEYAAw5-DEaj4d0YAAsREB9mM5V0SYoCd07rMugAKqL3bMlAUwGArmhNAo7LN3Lplet63pGEbiBh3vhNAAjIMYLPp7N5ogAVnwC+1GYXUGuAGt18WMABmRxrdaSAXVKNQZkzJOLegQNDugrEe-p9yEfTEMQsh6AKji0NoHpeiiUQKvgEy9GOOSsIhiwNguX7EPiKZLiWABMQaEJe5ilPQ1BQBA1BHqsL5up63o4tETK1BkFJJqwco1EOo51mhGFYRAOEYPhWCEVekikeRlHUfM6yQfRMEIvgyw6HqKH1BxBx+Nx8zKshXxoA6zr3NojI-Eqy6hsapovHk-bStomi0NQBQ4AwO7-KK5hWqxKoSJKw5YJ+eSSNqMxlP8PKYAqDwWWG8K3CZCoxliOKmWgBKjMSnH2LKMYpFATldFYmGyBg2owK8+QAJKMA2UEYI4D7GUET70oh7GAkSKW
@Bondifrench
Bondifrench / Screener.js
Created September 29, 2017 07:17
Range filter proto
var stream = m.stream
var levels = {
5: 'Daycare or Kindergarten',
12: 'Primary',
16: 'Secondary',
18: 'Senior Secondary'
};
var App = {
age: stream(0),
@Bondifrench
Bondifrench / tooltip.js
Created September 22, 2017 06:25 — forked from StephanHoyer/tooltip.js
tooltip component
'use strict';
function noop(){}
var contentView = noop;
var elPos = { left: 0, bottom: 0};
var tooltip = {
show: function(content, options) {
return function(event) {
@Bondifrench
Bondifrench / Excel2SQL
Last active September 25, 2017 16:48
Importing Excel table into Postgres
#!/usr/bin/env SQL
#Importing an Excel table into Postgres
# 1) Save Excel file in a .csv format with just 1 header
# ex:
example_file.csv
# 2) Save file in C:/PostgreSQL/9.3/data (important that this file is within "data")
# so Postgres has the right file permissions
# 3) Need to create an empty table schema capable of storing the data
# 4) ex:
@Bondifrench
Bondifrench / PromiseSeries.js
Last active May 17, 2017 00:05
if you have a list of functions that return promises, that should be applied in sequence
//Thanks @JAForbes
const chain = (p, f) => p.then(f)
const zero = Promise.resolve()
const series = xs => xs.reduce(chain, zero)
series([ getX, getY, getZ ]).then( z => ... )
@Bondifrench
Bondifrench / tabs.js
Created May 12, 2017 13:48
Ideas to avoid switch statements when choice of components
const notImplemented = { view: () => m("div", "Not implemented") };
const components = {
"WaveForm": sineBody,
"WebsocketSource" wssBody
};
// ...
return m(".card-body", m(components[vnode.attrs.type] || notImplemented, vnode.attrs));
// or
m('.card-body',