Skip to content

Instantly share code, notes, and snippets.

View hoshinotsuyoshi's full-sized avatar
🍫
alive

hoshino tsuyoshi hoshinotsuyoshi

🍫
alive
View GitHub Profile
@hoshinotsuyoshi
hoshinotsuyoshi / kakezan.rb
Created August 5, 2012 04:11
配列同士の中身の掛け算(適当メモ)
class Array
def *(arr)
self.each_with_index.map{|e,i| e*arr[i] }
end
end
[3,4,5] * [6,-7,8] #=> [18,-28,40]
[[1,2],[3,4]] * [[-2,-3],[-3,-4]] #=> [[-2, -6], [-9, -16]]
@hoshinotsuyoshi
hoshinotsuyoshi / encoding_default_external.rb
Created August 31, 2012 06:37
invalid byte sequence in Windows-31Jが出たときの大体の対処
Encoding.default_external = "utf-8"
@hoshinotsuyoshi
hoshinotsuyoshi / telnet
Created September 23, 2012 13:55
Windows7Homeでtelnetを受け付ける
net localgroup TelnetClients <username> /add
@hoshinotsuyoshi
hoshinotsuyoshi / telnet-inuse.rb
Created September 23, 2012 15:18
rubyのTelnetライブラリはwindowsとPrompt部分の相性が悪い気がする
telnet = Net::Telnet.new("Host" => "localhost","Prompt" => /[$%#>]\z/n,"Output_log" => "Output_log.txt") {|c| print c}
#Promptはデフォルトを使わない
@hoshinotsuyoshi
hoshinotsuyoshi / OpenWFEru スケジューラー使いたい
Created September 26, 2012 04:01
OpenWFEru スケジューラー使いたい
gem install openwferu-scheduler
@hoshinotsuyoshi
hoshinotsuyoshi / Schedulefile.rb
Created September 26, 2012 04:21
Schedulefile(openwfe/util/scheduler)
#!ruby
# coding: utf-8
require 'openwfe/util/scheduler'
include OpenWFE
#schedulerインスタンスを作成しスタートさせる
scheduler = Scheduler.new
scheduler.start
# Cronでの記述ができる
# 毎分に実行する例
@hoshinotsuyoshi
hoshinotsuyoshi / mock_and_stub.rb
Created November 19, 2012 13:40
RSpecのモックとスタブの自分で作った
# coding: utf-8
#まずクラス定義
class MyClass
def hook
square(3)
end
def square(n)
n * n
end
@hoshinotsuyoshi
hoshinotsuyoshi / commit.rb
Created November 25, 2012 13:28
エラーが出るかもしれない任意のメソッドを最大n回試行するメソッド
def commit(symbol,*arg)
c = 0
begin
return self.send(symbol.to_sym,*arg)
rescue
c += 1
retry if c < 5
end
"get less than 90 5 times..."
end
@hoshinotsuyoshi
hoshinotsuyoshi / time_watch.rb
Created November 25, 2012 14:42
ある処理の実行時間を計る
def time_watch(&b)
t1 = Time.now
yield
t2 = Time.now
t2-t1
end
time_watch{sleep 4}
#=> 4.000228
@hoshinotsuyoshi
hoshinotsuyoshi / worker-daemonize.rb
Created February 10, 2013 07:44
worker-daemonize
#!/usr/bin/env ruby
#
# usage:
# ruby worker-daemonize start
#
require 'daemon_spawn'
require File.expand_path('../job',__FILE__)
WorkingDir = File.expand_path('../wd',__FILE__)
class ResqueWorkerDaemon < DaemonSpawn::Base