Skip to content

Instantly share code, notes, and snippets.

View holysugar's full-sized avatar

HORII Keima holysugar

  • Aiming, Inc
  • Tokyo
View GitHub Profile
@holysugar
holysugar / table-data-gateway.md
Created August 24, 2017 07:00
poeaa, 10-1, table data gateway

Table Data Gateway

多くの開発者はSQLをうまく書けるわけではないから、DBを簡単に操作するインタフェースを Table Data Gateway で用意する。

# ex.
# Items
# id integer primary key
@holysugar
holysugar / iap-trial.rb
Last active July 12, 2017 05:48
identity-aware proxy (IAP) trial code
require 'sinatra'
require 'jwt'
require 'json'
def get_iap_key(kid)
@key_table ||= begin
require 'open-uri'
resp = open('https://www.gstatic.com/iap/verify/public_key', &:read)
JSON.parse(resp)
end
@holysugar
holysugar / hello.rb
Created March 15, 2017 12:27
print "Hello"
$><<(%<><<(%$%(/</<=)<%~~~/%>>>~<>)/>>)=)/(>%()<>~~~()<=%/=<=>)=(%=<~>(~/><<~)//)</)=$=~/$/)<<(%$<)>><%(>/()(//(=>%~<=((<=((=%/%~(((>//=<=)/=/<>(>~~<)~>~/~=~)~==%)><%=<=~(=/~//>)><%<>((<)/~)<<=>/%=<$=~/$/)<<(%$</)>(=%))%(<)=></<)~<<))/~/<<~/)//=/>~%~)((()>)/=(%)>>~/~<<()(((()<)~>%<)%%~~<%><==(()((/((><%%=%)=<%%=(%~~)$=~/$/)<<(%$=>~~>>/>>><)=<>=~=<(/%>(~%~()(~<>%)()>)(=<%)=%<>()(%==%<>/(>%~=<//%/(~)/<(%(><)>(>=%)>/~(%><=>)>~>))(<<((~%>$=~/$/)<<(%$</=(~>%~~><=~=<))/~()/(~=%(=<()/=/(~)~~~=/><)<<>>>~///=>))=(>>/(())<>/%<<<==/%(<~<~>/(%<()(/=%=))~%~(/%>==)/~>/$=~/$/))
@holysugar
holysugar / bq_query.rb
Last active November 15, 2016 14:43
bigquery v2 call sample (クエリのテーブルへの出力)
# https://github.com/google/google-api-ruby-client/blob/master/samples/cli/lib/samples/bigquery.rb
require 'google/apis/bigquery_v2'
require 'googleauth'
require 'securerandom'
# CHANGEME
project_id = 'myproject'
dataset_id = 'mydataset'
table_id = 'mytable'
@holysugar
holysugar / ltsv2csv
Created August 8, 2016 05:17
from ltsv to csv converter
#!/usr/bin/env ruby
require 'csv'
firstline = true
io = $stdout
while line = ARGF.gets
data = line.chomp.split(/\t/).map{|item| item.split(/:/,2) }.to_h
if firstline
@holysugar
holysugar / slacksay.sh
Last active July 28, 2016 15:02
slacksay
#!/bin/sh
# set ft=sh
set -e
# available variables:
#
# SLACKSAY_WEBHOOKURL
# SLACKSAY_CHANNEL
# SLACKSAY_USERNAME
@holysugar
holysugar / skype.sh
Created July 6, 2016 02:01
~/bin/skype
#!/bin/sh
rm -rf "~/Library/Application Support/Skype"
open "/Applications/Skype.app"
@holysugar
holysugar / bq_schema.rb
Last active June 10, 2016 02:06
AR::Base の columns から bq で使えるスキーマの json ファイル生成
module BQSchema
# conversion AR to BQ
# http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html#method-i-column
# https://cloud.google.com/bigquery/data-types
def to_bq_schema
self.columns.map{|c|
# FIXME decimal and time type conversion
type = \
case c.type
when :integer, :primary_key
@holysugar
holysugar / protobahamuto.rb
Last active August 22, 2016 21:15
gbf proto-bahamuto call notification
require 'slack-notifier'
require 'tweetstream'
SLACK_WEBHOOK_URL = 'https://hooks.slack.com/services/XXXXXXXXXXXXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX'
TweetStream.configure do |config|
config.consumer_key = 'XXXXXXXXXXXXXXXXXXXXXXXXX'
config.consumer_secret = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
config.oauth_token = 'XXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@holysugar
holysugar / nlsave.rb
Created February 14, 2016 20:36
nicolive ts save
#!/usr/bin/env ruby
require 'shellwords'
require 'niconico'
token = ENV['NICO_TOKEN']
id = ARGV[0]
# monkey patch