Skip to content

Instantly share code, notes, and snippets.

View wsargent's full-sized avatar

Will Sargent wsargent

View GitHub Profile
@wsargent
wsargent / service-checklist.md
Created September 12, 2016 17:27 — forked from acolyer/service-checklist.md
Internet Scale Services Checklist

Internet Scale Services Checklist

A checklist for designing and developing internet scale services, inspired by James Hamilton's 2007 paper "On Desgining and Deploying Internet-Scale Services."

Basic tenets

  • Does the design expect failures to happen regularly and handle them gracefully?
  • Have we kept things as simple as possible?
"play-dev-mode-akka.actor.default-dispatcher-3@12379" prio=5 tid=0x4c nid=NA waiting for monitor entry
java.lang.Thread.State: BLOCKED
waiting for application-akka.actor.default-dispatcher-5@17283 to release lock on <0x473f> (a play.core.server.DevServerStart$$anon$1)
at play.core.server.DevServerStart$$anon$1.get(DevServerStart.scala:122)
at play.core.server.AkkaHttpServer.modelConversion(AkkaHttpServer.scala:184)
at play.core.server.AkkaHttpServer.handleRequest(AkkaHttpServer.scala:190)
at play.core.server.AkkaHttpServer.$anonfun$createServerBinding$3(AkkaHttpServer.scala:107)
at play.core.server.AkkaHttpServer$$Lambda$383.1818878724.apply(Unknown Source:-1)
at akka.stream.impl.fusing.MapAsync$$anon$23.onPush(Ops.scala:1172)
at akka.stream.impl.fusing.GraphInterpreter.processPush(GraphInterpreter.scala:499)
@wsargent
wsargent / doc.md
Created June 8, 2017 20:06 — forked from retronym/doc.md
Scripts for convenient access to Scala pre-release builds
[error] com.typesafe.play#sbt-plugin;2.6.0-SNAPSHOT!sbt-plugin.jar origin location must be absolute: C:\Users\wsargent\.ivy2\local\com.typesafe.play\sbt-plugin\scala_2.10\sbt_0.13\2.6.0-SNAPSHOT\jars\sbt-plugin.jar
java.lang.IllegalArgumentException: com.typesafe.play#sbt-plugin;2.6.0-SNAPSHOT!sbt-plugin.jar origin location must be absolute: C:\Users\wsargent\.ivy2\local\com.typesafe.play\sbt-plugin\scala_2.10\sbt_0.13\2.6.0-SNAPSHOT\jars\sbt-plugin.jar
at org.apache.ivy.util.Checks.checkAbsolute(Checks.java:57)
at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.getArchiveFileInCache(DefaultRepositoryCacheManager.java:387)
at org.apache.ivy.core.cache.DefaultRepositoryCacheManager.download(DefaultRepositoryCacheManager.java:851)
at org.apache.ivy.plugins.resolver.BasicResolver.download(BasicResolver.java:835)
at org.apache.ivy.plugins.resolver.RepositoryResolver.download(RepositoryResolver.java:282)
at org.apache.ivy.core.resolve.ResolveEngine.downloadAr
export DEFAULT_USER=wsargent
source $HOME/.antigen/antigen.zsh
# Load the oh-my-zsh's library.
antigen use oh-my-zsh
# Bundles from the default repo (robbyrussell's oh-my-zsh).
antigen bundle git
antigen bundle pip
# Usage: gh-clone lagom lagom to checkout lagom/lagom
function gh-clone() {
OWNERNAME=$1;
PROJNAME=$2;
cd $WORKDIR;
mkdir $PROJNAME;
cd $PROJNAME;
hub init -g
hub clone $OWNERNAME/$PROJNAME master;
cd master;
package backend
import akka.actor.{Actor, ActorRef, Cancellable}
import scala.concurrent.duration.FiniteDuration
import scala.util.control.NoStackTrace
private case class SchedulerException(msg: String) extends akka.AkkaException(msg) with NoStackTrace
/**
@wsargent
wsargent / worktree.sh
Created October 5, 2016 15:27
Git worktree script
export WORKDIR=$HOME/work
# Creates a working tree to check out a branch locally.
# This is useful when you have multiple branches on origin,
# and want to pull work work with them
function worktree() {
# We assume we're always under $WORKDIR somewhere.
# Go down the tree until we know what project we're in.
while [[ "$(dirname "$PWD")" != $WORKDIR ]] ; do
find "$PWD"/ -maxdepth 1 "$@"
@wsargent
wsargent / README.md
Created September 8, 2016 00:37 — forked from loicknuchel/README.md
Missing features in Play i18n
import akka.actor.ActorRef;
import akka.actor.ActorSystem;
import akka.util.Timeout;
import scala.compat.java8.FutureConverters;
import scala.concurrent.Future;
import java.util.concurrent.CompletionStage;
import java.util.concurrent.TimeUnit;
public class JavaActorLookup {