Skip to content

Instantly share code, notes, and snippets.

@goodwill
goodwill / cloud-sql-proxy.service
Last active December 15, 2023 06:37
Example Systemd file for starting cloud sql proxy at system start
[Install]
WantedBy=multi-user.target
[Unit]
Description=Google Cloud Compute Engine SQL Proxy
Requires=networking.service
After=networking.service
[Service]
Type=simple
FROM ruby:2.3.5
LABEL MAINTAINER william@tofugear.com
ARG GOTANDA_LINE_DIR
# Install apt based dependencies required to run Rails as
# well as RubyGems. As the Ruby image itself is based on a
# Debian image, we use apt-get to install those.
RUN apt-get update && apt-get install -y \
build-essential \
libssl-dev \
@goodwill
goodwill / node-app-manager.conf
Created April 7, 2016 10:11
Running multiple node app, the puma manager way
description "Manages the set of node-app-server processes"
# This starts upon bootup and stops on shutdown
start on runlevel [2345] and started mongod
stop on runlevel [06]
# Set this to the number of Puma processes you want
# to run on this machine
env NODE_LIST="/etc/node-app-manager.list"
@goodwill
goodwill / digibyted.conf
Created September 7, 2015 09:46
Proper way to start digibyted in upstart
description "digibyted"
start on filesystem
stop on runlevel [!2345]
oom score -500
expect fork
respawn
respawn limit 10 60 # 10 times in 60 seconds
script
@goodwill
goodwill / autoreconf.log
Created November 3, 2011 21:02
rvm --trace pkg install libyaml
[2011-11-04 04:58:38] autoreconf -is
++ /scripts/functions/utility : __rvm_run() 159 > autoreconf -is
Putting files in AC_CONFIG_AUX_DIR, `config'.
libtoolize: `config.guess' exists: use `--force' to overwrite
libtoolize: `config.sub' exists: use `--force' to overwrite
libtoolize: `ltmain.sh' exists: use `--force' to overwrite
[2011-11-04 04:26:04] make
make all-recursive
make[1]: Entering directory `/usr/local/rvm/src/yaml-0.1.4'
Making all in include
make[2]: Entering directory `/usr/local/rvm/src/yaml-0.1.4/include'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/usr/local/rvm/src/yaml-0.1.4/include'
Making all in src
make[2]: Entering directory `/usr/local/rvm/src/yaml-0.1.4/src'
if /bin/sh ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -g -O2 -MT api.lo -MD -MP -MF ".deps/api.Tpo" -c -o api.lo api.c; \
Compiling yaml in /usr/local/rvm/src/yaml-0.1.4.
ERROR: Error running 'make ', please read /usr/local/rvm/log/ruby-1.9.2-p290/yaml/make.log
Installing yaml to /usr/local/rvm/usr
ERROR: Error running 'make install', please read /usr/local/rvm/log/ruby-1.9.2-p290/yaml/make.install.log
def pdf_test
content="自從陳生有品味咖啡(不是老廉那一杯…) 大家開始對精品咖啡 (Speciality Coffee)產生興趣了。不過,相信大家都有試過買到一杯無 Crema,無 Body,難飲至極的Espresso (筆者當然沒有例外)。其實,有一些基本的觀察可以讓大家知道那一間 Espresso Bar 的水平可不可能做到好的 Espresso 咖啡。(注意,現在我們針對的是 Espresso(當然也包括 Espresso Base 的牛奶咖啡如Latte/Cuppucino),其他的咖啡 Serve 方法不一定可以用同樣的方法評估的)。
一定要有一部磨式磨豆機 (Burr Grinder)。常見的有 Mazzer Mini/Super Jolly, Compak K series, 小一點的有 Rancilio Rocky。如果你見到刀式磨豆機 (Blade Grinder)你可以走了…. 刀式磨豆機磨不到粗幼一致的咖啡粉,又因為轉速太高會加熱咖啡使咖啡油揮發,所以並不是一個可用的選擇。
Mazzer Super Jolly。大部份磨式磨豆機都有一個儲豆漏斗(Hopper),因為它們需要用豆的重量把豆推入平刀磨/圓錐刀磨內。
刀式磨豆機(又被戲稱為砍豆機),用高速刀把豆砍散,不能控制磨豆的粗幼,又產生大量熱力,任何情況下都不應用來磨咖啡。
現時大部份Espresso Bar 都會用手動量份器 (Manual Doser),不過有不少的咖啡店會先磨大量的咖啡。事實上咖啡豆被磨成粉之後30分鐘已經有相當大的分別,所以除非你見到那一間咖啡店其門如市,否則… 要不要光顧就自己衡量了….
一個半滿的 Doser…
/*
Sample Code for Ankoder API called via .NET C#
Written by William Yeung @ Gearbox Software (http://www.gearboxsoft.com)
*/
const string PrivateKey = "YOUR_ANKODER_KEY";
var ascii = Encoding.ASCII;
var date = DateTime.Now.ToUniversalTime().ToString("ddd, dd MMM yyyy HH:mm:ss") + " GMT";
var action_url = "video.xml";
string token=string.Format("-{0}-GET-/{1}-", date, action_url);
using System.Threading;
using System.Collections.Generic;
using System;
namespace AutoLoader.Loader
{
public interface IAutoLoadUnit
{
void Abort();
int CurrentThreadNumber { get; }