Skip to content

Instantly share code, notes, and snippets.

@bf4
bf4 / clock
Created April 3, 2019 19:12
Script to run only in the specified minute range
#!/usr/bin/env bash
# Created by Benjamin Fleischer 2019
# Distributed under the MIT license
#
# Usage:
# MINUTE_RANGES="0...10 30...40" ./clock echo 'we done it'
# DEBUG=true MINUTE_RANGES="0...10 30...40" ./clock echo 'we done it'
main() {
local ranges
@bf4
bf4 / jdbc_sample.rb
Created April 18, 2018 17:36 — forked from rwjblue/jdbc_sample.rb
Convert JDBC ResultSet into Ruby Hash with JRuby
require './lib/adsjdbc-10.10.0.28.jar'
java_import java.sql.Driver
java_import java.sql.DriverManager
java_import 'com.extendedsystems.jdbc.advantage.ADSDriver'
class AdsAdapter
def initialize(connect_string)
@connect_string = connect_string
end
@bf4
bf4 / test_schema_jsonapi.json
Last active September 8, 2017 15:53
JSON API Schema
{
"$schema": "http://json-schema.org/draft-04/schema#",
"description": "JSON:API Schema",
"type": "object",
"properties": {
"link": { "$ref": "file://schemata/link.json#" },
"meta": { "$ref": "file://schemata/meta.json#" }
}
}

A collection of Linux commands and concepts I tend to forget

@bf4
bf4 / gist:e9a7016e4c5dca2d6b8a19d6e10d23c0
Created August 9, 2017 03:20 — forked from lvnilesh/gist:e44e3dd1c97eb0467e7d71594e1e9744
How I like to run my Jupyter notebooks

Step 0. Install Docker

Step 1. For your chosen project, decide where you want to store your notebooks and files in a workingfolder.

Step 2. Open that folder in the terminal cd workingfolder

Step 3. Run this command

docker run -it --rm -v $PWD:/home/jovyan/work -p 8888:8888 jupyter/all-spark-notebook

What

A technique for writing parsers.

Why

  • Easy to understand
  • Generally applicable
  • Full power of the programming language at your disposal
  • Declarative
@bf4
bf4 / ams.rb
Created April 3, 2017 02:17 — forked from sineed/ams.rb
Upgrade AMS from 0.9.0 to 0.10.0
module AMS
module V09
class Serializer < ActiveModel::Serializer
def serializable_hash(adapter_options = nil,
options = {},
adapter_instance = self.class.serialization_adapter_instance)
object.nil? ? nil : super
end
end
@bf4
bf4 / find_relations_in_batches.rb
Created March 22, 2017 18:00
ActiveRecord Rails Find Relations in Batches
# Finds and yields relations in batches. Adapted from record.find_in_batches since that yields
# arrays and we want to operate on relationships.
# Adapted from:
# https://github.com/rails/rails/blob/4-2-stable/activerecord/lib/active_record/relation/batches.rb#L98-L115
def find_in_batches(target, batch_size: default_batch_size, start: nil)
relation = target
if logger && (target.arel.orders.present? || target.arel.taken.present?)
logger.warn("Scoped order and limit are ignored, it's forced to be batch order and batch size")
end
relation = relation.reorder(target.send(:batch_order)).limit(batch_size)
@bf4
bf4 / learn_clojure_recipe.md
Created March 14, 2017 20:40 — forked from pricees/learn_clojure_recipe.md
Recipe to Learn Clojure