Skip to content

Instantly share code, notes, and snippets.

View fedesilva's full-sized avatar
👁️‍🗨️

federico silva fedesilva

👁️‍🗨️
View GitHub Profile
@fedesilva
fedesilva / SimplePartitionSample.scala
Created July 6, 2018 19:46 — forked from johanandren/SimplePartitionSample.scala
Sample of using partition to split up incoming elements over multiple outgoing streams
import akka.actor.ActorSystem
import akka.stream._
import akka.stream.scaladsl._
import scala.io.StdIn
import scala.util.Random
object SimplePartitionSample extends App {
implicit val system = ActorSystem()
#!/bin/sh
sed -i.default "s/^zend_extension=/;zend_extension=/" /usr/local/etc/php/7.1/conf.d/ext-xdebug.ini
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.php71.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.php71.plist
sudo brew services restart php71
echo "xdebug disabled"
@fedesilva
fedesilva / refinedMonoid.scala
Last active April 13, 2018 20:46
A `Monoid` for `Refined` refinement types.
package we.sg.data
import cats.kernel.Monoid
import eu.timepit.refined.{W, refineMV, refineV}
import eu.timepit.refined.api.Refined
import eu.timepit.refined.boolean.Not
import eu.timepit.refined.string.MatchesRegex
object RefinementTypes {
@fedesilva
fedesilva / a-very-simple-typeclass-example.scala
Last active January 30, 2018 22:14
Very basic type class example.
//
// While testing the Elasticsearch 6.x http client works for me, using circe for json,
// I added a silly `Entity` type class which describes how to get an ID from an entity.
//
import java.util.UUID
import org.apache.http.HttpHost
import org.elasticsearch.action.index.IndexRequest
@fedesilva
fedesilva / pre-commit-hook-install.sh
Created January 7, 2018 03:30 — forked from cvogt/pre-commit-hook-install.sh
git pre-commit hook for Scala compile and format checking (put both in your git project root, needs to be installed in each clone)
#!/bin/sh
cd "$(dirname "$0")"
touch .git/hooks/pre-commit
rm .git/hooks/pre-commit
ln -s ../../pre-commit-hook.sh .git/hooks/pre-commit
@fedesilva
fedesilva / Main.hs
Created November 15, 2017 11:06 — forked from jkachmar/Main.hs
Just Do the Right Thing
module Main where
--------------------------------------------------------------------------------
-- | This is the `Maybe` data type:
-- |
-- | > data Maybe a
-- | > = Nothing
-- | > | Just a
-- |
-- | `Maybe` is a sum type that can be parameterized over a given `a` type, such
@fedesilva
fedesilva / README.md
Created July 1, 2017 01:32 — forked from polvi/README.md
HDFS of Kubernetes

Easiest HDFS cluster in the world with kubernetes.

Inspiration from kimoonkim/kubernetes-HDFS

kubectl create -f namenode.yaml
kubectl create -f datanode.yaml

Setup a port-forward to so you can see it is alive:

@fedesilva
fedesilva / admin.json
Created June 21, 2017 15:30
kong cosomojo
{
timers: {
running: 0,
pending: 4
},
configuration: {
admin_error_log: "logs/error.log",
cassandra_lb_policy: "RoundRobin",
admin_access_log: "logs/admin_access.log",
cassandra_port: 9042,
@fedesilva
fedesilva / gist:979311b30a10de04f86678d8b2341315
Created December 29, 2016 20:47 — forked from juanje/gist:3797297
Mount apt cache of a Vagrant box in the host to spin up the packages installation

This is a little trick I use to spin up the packages instalation on Debian/Ubuntu boxes in Vagrant.

I add a simple function that checks if a directory named something similar to ~/.vagrant.d/cache/apt/opscode-ubuntu-12.04/partial (it may have another path in Windows or MacOS) and create the directory if it doesn't already exist.

def local_cache(basebox_name)
  cache_dir = Vagrant::Environment.new.home_path.join('cache', 'apt', basebox_name)
  partial_dir = cache_dir.join('partial')
  partial_dir.mkdir unless partial_dir.exist?
 cache_dir
@fedesilva
fedesilva / elasticsearch.yml
Last active December 28, 2016 23:20
ES 5.1 java client fails to connect to single node cluster in localhost
# ======================== Elasticsearch Configuration =========================
#
# NOTE: Elasticsearch comes with reasonable defaults for most settings.
# Before you set out to tweak and tune the configuration, make sure you
# understand what are you trying to accomplish and the consequences.
#
# The primary way of configuring a node is via this file. This template lists
# the most important settings you may want to configure for a production cluster.
#
# Please see the documentation for further information on configuration options: