Skip to content

Instantly share code, notes, and snippets.

View katryo's full-sized avatar

katryo katryo

View GitHub Profile
@katryo
katryo / file1.txt
Last active August 29, 2015 14:27
CronでRubyのBackupを使ってPostgreSQLのデータをS3にアップロードし続ける ref: http://qiita.com/katryo/items/3e3930eddeb6fe72147c
% backup generate:model
@katryo
katryo / Bond.swift
Last active November 29, 2015 15:33
お手製Swift Bondでリアクティブプログラミング ref: http://qiita.com/katryo/items/4f2473b72a629bb4257a
class Bond<T> {
typealias Listener = T -> Void
var listener: Listener
init(_ listener: Listener) {
self.listener = listener
}
func bind(dynamic: Dynamic<T>) {
dynamic.bondBoxes.append(BondBox(self))
@katryo
katryo / react_sortable.js.jsx
Last active August 29, 2015 14:23
Reactでdrag and dropでソートするサンプル。 http://webcloud.se/sortable-list-component-react-js/ をもとに作った
var AddingFeaturingButton = React.createClass({
propTypes: {
addToFeatured: React.PropTypes.func.isRequired
},
_addToFeatured: function() {
this.props.addToFeatured(this.props.position);
},
render: function() {
return(
<button className={this.props.isFeatured ? 'flat-button-success': 'flat-button'} onClick={this._addToFeatured}>
@katryo
katryo / file0.txt
Last active August 29, 2015 14:11
Vueで小説投稿サイトのフォームを改良した ref: http://qiita.com/katryo/items/1e3a47ef40ef243966d4
<%= f.text_area :body, rows:20, id:'js-storyForm__body', 'v-model' => 'body', 'v-on' => 'click: updatePreview, keydown: updatePreview, keyup: updatePreview, keypress: updatePreview' %>
@katryo
katryo / database_authenticatable.rb
Last active August 29, 2015 14:08
deviseで、パスワードを登録していないユーザーはパスワード追加、登録しているユーザーはパスワードを更新する ref: http://qiita.com/katryo/items/b3ee01758bbe72fb764d
# Update record attributes when :current_password matches, otherwise returns
# error on :current_password. It also automatically rejects :password and
# :password_confirmation if they are blank.
def update_with_password(params, *options)
current_password = params.delete(:current_password)
if params[:password].blank?
params.delete(:password)
params.delete(:password_confirmation) if params[:password_confirmation].blank?
end
@katryo
katryo / scraping.rb
Created November 7, 2014 10:06
Capybara webkitでのスクレイピング例
require 'rubygems'
require 'capybara'
require 'capybara/dsl'
require 'capybara-webkit'
class Driver
Capybara.default_driver = :webkit
include Capybara::DSL
end
d = Driver.new
@katryo
katryo / no_sprockets.md
Last active August 29, 2015 14:08
NodeでRailsのSprocketsを捨てる

NodeでRailsのSprocketsを捨てる

npmは入っている前提。

Sprocketsがやること

  • [] assets以下のファイルをpublicにコピーする
  • [] coffeeをjsにする
  • [] jsを繋げて1つのファイルにする
  • [] assets以下のファイルにハッシュ値をつける
@katryo
katryo / wn.py
Created January 18, 2014 10:29 — forked from yanbe/wn.py
#!/usr/bin/env python2.6
# encoding: utf-8
import sys
import sqlite3
from collections import namedtuple
conn = sqlite3.connect("wnjpn-0.9.db")
Word = namedtuple('Word', 'wordid lang lemma pron pos')
@katryo
katryo / convert_quotations.py
Created January 17, 2014 05:49
Convert quotations for tex.
if __name__ == '__main__':
left_double_quotation = '“'
right_double_quotation = '”'
single_quotation = '’'
result = str()
with open('word_to_tex.txt', 'r') as f:
for row in f:
row = row.replace(left_double_quotation, '``')
row = row.replace(right_double_quotation, "''")
#coding:utf-8
# http://gihyo.jp/dev/serial/01/machine-learning/0003 のベイジアンフィルタ実装をPython3.3向けにリーダブルに改良
import math
import sys
import MeCab
class NaiveBayes():
def __init__(self):
self.vocabularies = set()