Skip to content

Instantly share code, notes, and snippets.

Avatar

Olalekan Fuad Elesin OElesin

View GitHub Profile
@OElesin
OElesin / raspberry-pi-with-amazon-lookout-for-vision.py
Last active Mar 13, 2021
Detect Anomalies with Amazon Lookout for Vision and publish to Amazon Kinesis Data Firehose
View raspberry-pi-with-amazon-lookout-for-vision.py
from time import sleep, time
from picamera import PiCamera
from datetime import datetime, timedelta
from boto3 import client
import json
import os
firehose = client('firehose')
lookout_vision = client('lookoutvision')
@OElesin
OElesin / TikaParquetParser.scala
Created May 9, 2018
Apache Tika Parquet Parser in Scala. You can add this to your project to read parquet files with Apache Tika
View TikaParquetParser.scala
import java.io.{File, FileOutputStream, IOException, InputStream}
import java.util
import scala.collection.JavaConverters._
import org.xml.sax.{ContentHandler, SAXException}
import org.apache.tika.metadata.Metadata
import org.apache.tika.metadata.HttpHeaders.CONTENT_TYPE
import org.apache.tika.mime.MediaType
import org.apache.tika.parser.{AbstractParser, ParseContext}
import org.apache.commons.io.IOUtils
View gist:29247ec102a011f917d4f56a9f719685
def avgTime(message: String, f: => Any) {
var avg = 0L
val c = 42
1 to c foreach {
_ =>
val t0 = System.nanoTime()
f
val t1 = System.nanoTime()
avg += t1 - t0
}
View how-to-squash-commits-in-git.md

Squashing Git Commits

The easy and flexible way

This method avoids merge conflicts if you have periodically pulled master into your branch. It also gives you the opportunity to squash into more than 1 commit, or to re-arrange your code into completely different commits (e.g. if you ended up working on three different features but the commits were not consecutive).

Note: You cannot use this method if you intend to open a pull request to merge your feature branch. This method requires committing directly to master.

Switch to the master branch and make sure you are up to date:

View Sendy.md

Sendy

Sendy is a self hosted email newsletter application that lets you send trackable emails via Amazon Simple Email Service (SES).

Heroku

You can deploy Sendy on Heroku using the following instructions (I assume you've already installed the heroku toolbelt).

  1. On Heroku, create a new app.
  2. Clone that app to your desktop
@OElesin
OElesin / date.sql
Created Feb 27, 2017
MySQL Date Dimension Build Script
View date.sql
/* Adapted from Tom Cunningham's 'Data Warehousing with MySql' (www.meansandends.com/mysql-data-warehouse) */
###### small-numbers table
DROP TABLE IF EXISTS numbers_small;
CREATE TABLE numbers_small (number INT);
INSERT INTO numbers_small VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9);
###### main numbers table
DROP TABLE IF EXISTS numbers;
CREATE TABLE numbers (number BIGINT);
@OElesin
OElesin / gist:fa75903000899293cefd83c18566849e
Created Feb 6, 2017 — forked from benshimmin/gist:4088493
Scale to fit and centre-align an image with FPDF
View gist:fa75903000899293cefd83c18566849e
<?php
/* Caveat: I'm not a PHP programmer, so this may or may
* not be the most idiomatic code...
*
* FPDF is a free PHP library for creating PDFs:
* http://www.fpdf.org/
*/
require("fpdf.php");
class PDF extends FPDF {
@OElesin
OElesin / gist:d73329202559b7e3c083aadb45334729
Created Dec 13, 2016 — forked from debasishg/gist:8172796
A collection of links for streaming algorithms and data structures
View gist:d73329202559b7e3c083aadb45334729
  1. General Background and Overview
@OElesin
OElesin / springer-free-maths-books.md
Created Nov 1, 2016 — forked from bishboria/springer-free-maths-books.md
Springer made a bunch of books available for free, these were the direct links
@OElesin
OElesin / spark_mnist_mlp.py
Created Sep 1, 2016 — forked from alekseyl1992/spark_mnist_mlp.py
Apache Spark. Training MLP on MNIST
View spark_mnist_mlp.py
from __future__ import print_function
from pyspark import SparkContext, SparkConf
from pyspark.mllib.linalg import DenseVector, VectorUDT
from pyspark.sql import SQLContext
from pyspark.ml.classification import MultilayerPerceptronClassifier
from pyspark.ml.evaluation import MulticlassClassificationEvaluator
from pyspark.sql.types import StructType, StructField, StringType, DoubleType, ArrayType