2014-01-01から1年間の記事一覧

チームメンバーが何をしてどういうアウトプットを出しているかわからない

オレたちが目指す”最強のエンジニアドリブン” レポート を見た。 エンジニアドリブンな開発の進め方(以下"この発表")@株式会社ヒトメディアの発表にあったように、最近は情報共有ツール(Qiita:Teamとか)を使うのがブームなんだなぁ、という感じ。 この発表…

boot2dockerとみかん

Macでdockerを使えるというboot2dockerというのを使ってDocker触ってる。とりあえずDockerすごいなという感じ。 それでboot2docker使ってチュートリアル的なものをやってるところで、docker runにはホストにコンテナをマウントするvオプションがあるんだけど…

キャッシュ

ちょっと前にsinatra VS rails ってスライドが見て、Railsが遅いのはGCが多いからって書いてた気がする。 フラグメントキャッシュってデータベースへのアクセスを抑えるために使うっていう印象が強かったんだけど、CPUコスト抑えるために他の場所でも使って…

傍観者効果

今呼んでる本に「複数の人を指す言葉を開発現場から排除しろ」と書いてる。 なんでも、傍観者効果というのが起きるとのこと。開発チーム宛のメールに対して、まあ誰か対応するだろうとか思っていつの間にか記憶からどっかいく感じとか、誰か返信しろみたいな…

職業体験

クラウドソージング的なサービスで簡単なソフトウェア作ります的っていうのをここ1年くらいやってる。フリーランスの職業体験っぽい感じ。 依頼数は10いってないくらいで2ヶ月に1人くらい依頼が来る。 でも依頼の7割くらいは何を作って欲しいのかさっぱりわ…

社内文化

ドリコ○ではgem作る勉強会的な生産的な社内イベントやってるのをrubykaigi2014で知った。 うちの会社そういうのない。思い返せば社内勉強会はことごとく自然消滅してた。 一時期自分が主催していたことあったけどネタ切れ感あるのと段々めんどくなった記憶。…

gemつくった

https://github.com/jiikko/huwahuwa_state作ったのは状態遷移をサポートするgem。 ActiveRecord::Enumの上に乗っているのでhuwahuwa_state本体のコードは少ない。また、学習コスト(?)が低い気がする。アプリに乗るテストコード減るので外だしできるものはge…

ruby require more than once

写経している時にコードはエディタで書いて、irbで実行してソースを弄るみたいなケースよくありそう。 requreだと一度しか読み込まれなくてirbを再起動しかないと思うんだけどそういう時はloadを使えとのこと。 2.1.0 :005 > require "~/work/crawler/app.rb…

最近のプログラミングの所感

メンテナブルなアプリって、modelsディレクトリ配下にあるクラスにメソッド定義が少ないかつミックスインが少ない感じがする。 クラスへ抽出(コンポジションって言うらしい)ができていたり、いい感じに関連使ってるとインスタンスメソッドあんま書く必要がな…

XCode6

会社でハッカソンをすることになった。テーマは事前に発表されていたので、自分はiPhoneアプリを使ったサービスを作ることにした。 今まで動機が弱かったりストーリーボードとか構文とか慣れなくて投げ出してちょっとやっての繰り返しだったんだけど、会社の…

to_param

http://locahost/users/1/working_days/1/activities/newlink_toにARインスタンスを渡すとこういうURLを組み立ててくれる。たまにめんどいけど概ね便利。この機能、デフォで引数になってるARインスタンスのidを使って組み立てられるんだけど、idの代わりに日…

ジャバスクリプトは難しい

ネストされたフォームをジャバスクリプトで隣カラムにある一覧から追加したり削除したり、削除したのを戻したりする画面を作りたい、というのがあって、 ライブラリを使わないで最初考えてた設計方針だとたぶんできるんだけど、項目名要素に対して値のゲット…

httpsなURLへHTTPリクエストを投げる時けっこうめんどう

ruby2.0rubyからhttpsなURLへHTTPリクエストを投げる時けっこうめんどう。 タイムアウトになったりサイトによっては下記ようなExceptionが投げられる。 SSL_connect SYSCALL returned=5 errno=0 state=SSLv2/v3 read server hello A SSL_connect returned=1 …

find_each

バッチ処理する時はメモリを使い切らないように、#eachじゃなく#find_eachを使うと思う。 そのバッチ処理をローカルとかサーバ上で件数を絞ってテストをしたい時は、#limitを使うことがあると思う。 User.limit(10).find_each do |user| ...... でも、これだ…

UNIXネットワーク管理ガイド読んだ

萌えるシリーズ 萌え萌えうにっくす! UNIXネットワーク管理ガイド2003年の本なのでジェネレーションギャップによるイタタ感があったんだけどすごくわかりやすかった。 サーバに繋がらないという具体的な障害を想定した対応手順が丁寧に書いてあってなるほど…

ActiveRecord::Enumを使って状態遷移するやつを自作した話

RailsにはAASMというモリモリした状態遷移ライブラリがあるみたいなんだけど、 ActiveRecord::Enum(4.1から)と一部被ってるし多機能すぎる印象があったので作ってみた。 自分の欲しかった機能 ある状態の時に遷移する時は、特定の状態からでしか遷移できない…

ActiveRecord::Enumを使って状態遷移するやつを自作した話2

gem化しました!!! https://github.com/jiikko/huwahuwa_stateActiveRecord::Enumを使って状態遷移するやつを自作した話moduleに切出したら汚物が目に入りにくくなっててよくなった。でもARべったりなのでテストめんどくて最悪。 module AiState extend Ac…

画面フィルムを新しくしよう

スマホの画面フィルムって1年とか使ってるとかなり黄ばんでいるので画面フィルムを買い替えるだけで画面がすごく奇麗になる。(奇麗すぎてワロタ。) 奇麗すぎるので特に不満なくiPhone5s使っている人がiPhone6を買おうとしていることがどれだけ贅沢であること…

親子モデル同時更新でバリデーションエラーになった時、順序を持つ子モデルの並び順をなんとかしたい

rails4順序を持つ子モデル(猫クラス)はpositionカラムが持っていて、親モデル(人間クラス)には次みたいなに関連が定義されると思う。 class Human < ActiveRecord::Base has_many :cats, -> { order(:position) } accepts_nested_attributes_for :cats end D…

thinreportsでテーブルオブジェクトのpage_footerにあるテキストブロックに値を直接埋め込む

thinreportsとは 環境 thinreports (0.7.7) ぃみゎかんなぃ。。。。 もぅマヂ無理。。 アイテム一覧を作る必要があったので、 thinreportsエディターからテーブルオブジェクトを配置して、ページフッターにrubyで加工した文字を表示しようとすると、 下記みた…

名前付けする時にやること

直訳する http://www.alc.co.jp/ 直訳すると連想しにくい意味不明な名前になりやすい。その時は気づかなくても後になって意味不明な名前をつけたことに気づいて悶絶することが多い。 Githubにあるコードから調べる 選択中の要素のclassにactiveという文字を…

テンプレートエンジンをslimにしてよかったこと

インデントちゃんとしてください、とデザイナに言う必要がなくなったこと。

Apple初売りについて

2014年の初売りを北海道で前日から並んだんだけど雪降ってたりで普通に地獄だった。 起きてても寒かったので寝たらたぶん死ぬ。そしてiPod nanoゲット。 若いうちに経験しておいたほうがいいと思う。

1つのテンプレートでしか使わないジャバスクリプト

特定のテンプレートでしか使わないジャバスクリプトの置き場所について。 「テンプレートに書く」のと、「assets/javaasctips以下に書く」どちらがいいんだろう?使わないjsを毎回配信しなくていいからテンプレートに書いておくはメリットがあると思ったが、…

ssh経由のポート転送

sshコマンドはリモートでコマンドを実行をできるが、別の使い方でTCPポートのトラフィックをもう一方へ転送することができる。 信用できないネットワークからリモートサーバ間に限ってメールやWebを暗号化する、みたいな使い道があると本に書いている。 http…

ssh経由のX

クライアントはMavericks サーバ側で必要なこと # sshd_config X11Forwadnig yesservice sshd restart クライアント側で必要なこと X11のインストール http://macperson.net/mac-x11-xquartz/ sshのオプションに-Xをつける もしくは、~/.ssh/config に Forwa…

設定ファイル

rails newする時よくつけるオプションを設定ファイルに書いておくと便利らしい。 # cat ~/.railsrc -T --skip-bundleこのくらいタイプしろボケという感じがないわけでもない。

webサーバのログから存在しないファイルへリクエストされた回数を数えてくれるシェルスクリプト

for x in `cat error.log | grep "No such file or directory" | awk '{print $7}' | sort | uniq`; do \ grep $x error.loged | wc -l | tr -d '\n'; echo ": $x"; \ done | sort -rn | head -20d定期実行したい。

HHKBの持運び用ケースを作った

段ボールの耐久性を信じている。

HHKBデビューしました

いままでAppleの純正キーボードを愛用していたんだけど、 いつの間にかキートップが1つだけどこか行ってしまったので、 これを機会に新しいの買い替えたいと思った。さっきHHKB Proが届いた。(キーに2色ついているので白にしたよ。) 使った感じ、手がApple慣…