2013/05/19

社内でKnockoutJSの紹介してきたよー

GWあたりに調べて社内でKnockoutJSの紹介をしてきたときの資料貼っときます!



KnockoutJSけっこう良さそうなんですけど、個人的には"data-bind"の濫用がどうにもキモくてキモくて。。。
でも(templateじゃなくて)こういう形にしてるおかげでjsなしの状態でデザインを確認できるっていうのは、きっとデザイナーさんと協業するような場合はやりやすい感じなのだろうなぁと感じます。

今日Sapporo.jsでember.jsの話を聞いてきて、ember.jsが目的は違えど、現時点で実現できていることは近いっぽく、プログラマ的には割りとそっちの方が性にあっていそうな雰囲気は感じました!
あと、tricknotes氏が"ie8でも動くようにしたよ!"って言ってたから次はember.js試してみる!

2013/04/29

[FuelPHP]ORM利用時のvalidation使用方法

Orm¥Modelでのsave時のvalidationの設定がハマりどころだったのでメモ。
Model_Crudを利用する場合とは全く有効化する方法が違うという話。


あと、Observer_Validationはoil create model --ormした時かなにかで見かけたので、気づいたんだけど、、、それがなければわからなかった気がします。。。
Model_Crudの方ではvalidation内容を`$_rule`に記載するのですが、、、
Orm¥Modelを使う場合は全くのムダ知識・・・(白目)

そもそもOrm¥ModelとModel_Crudってまるで継承関係ないし、使い方とかも似てるようで全然違っていて、、、ダックタイピングとか・・・そういう概念は、ないの?

[FuelPHP]1.5/masterのBelongs Toでの注意メモ

FuelPHP1.5系のOrm¥Modelでバグ(だよね?)を踏んでハマったのでメモ。

再現方法と事象

  • Belongs Toのrelationを設定するモデルでkey_fromにそのモデルのPK項目を指定
  • 上のモデルに対してdelete()を実行
  • `FuelException`(Primary key on model モデル名 cannot be changed.)をくらう
  • いぇーい

対応

1.6系では修正されていたので、ORMパッケージだけ1.6系を使うことにしました。
ちなみにOrm¥Model_Softを使う場合は上の事象は発生しません。

2013/03/11

FuelPHPのgit管理にorphanブランチ使ったらどうかねぇ?

FuelPHPをgit管理したいなぁって場合にorphanブランチを使ったら割とよいんじゃないかと以前思ったのでメモ。


`oil create ほげほげ`した後に次の手順を実施。


# orphanオプションで他のコミットとのつながりのないブランチを作成できる
# ちなみにFuelPHPではmasterという名前のブランチは使用されていない
git checkout --orphan master
git add .
git commit -m"Initial commit"
git rm *.md
git commit -m"Remove unnecessary documents for application"

# 次は必要に応じて実施、この時点で一番新しいstableなバージョンがデフォルトでpullされているはず
# "1.5/master"の部分は必要に応じて変更する
git submodule foreach 'git fetch'
git submodule foreach 'git checkout 1.5/master'

# 不要なremote、元々のブランチを削除
git br -D 1.5/master
git remode rm origin

FuelPHPはgithub上で開発されていて、"FuelPHPドキュメント"の"クイックインストール"の手順とかでインストールするとFuelPHP自体をまるっとgit cloneしてしまう様になっています。
  • 別にFuelPHPの開発履歴はいらない
  • submodule管理されているfuel/coreとかは同じくsubmodule管理したい
というのがそもそもやりたかったこと。

で、ぐぐってみるといっぺんgitの管理ファイルを削除してから手作業でgit submodule addするみたいな手順が引っかかって"もやっ"としたのでちょっと解決策を考えてみました。
もやっとした上に実際一回失敗したので解決策を考えてみました。
・・・というのが背景。

ちなみに"FuelPHPを適宜updateしたいぜー"って場合は上の方法じゃなくてこちらの方法でやるといいと思う。

参考

2013/02/10

Backbone.jsで今日覚えたこと

最近Backbone.jsをいじっていることが多いのですが、今日気づいた点を2つメモ。

`parse`をオーバーライドするとfetch時のモデルの復元方法をカスタマイズできる

`Backbone.Model#parse`もしくは`Backbone.Collection#parse`をオーバーライドすることで`fetch`実施時の復元方法をカスタマイズできるようでー。
ちゃんと公式ページに書いてあったけど今日気づいた!

Backbone.View#removeはDOMをdeleteするよ

どうやらremoveを行うと`el`として登録していたDOMをdelete(ここはソース見ていないのでdetachの方かも・・・)してしまうようで。ふむふむ。

2013/01/30

count-matches覚えた

emacsの`count-matches`を使うとバッファ中に出現している単語とかの出現数を調べられる。・・・ことを覚えました。


grepかけてから行数を数えるとかしなくてもいいはずだーとは思ってたんですが、、、見つけたんでメモ。

そういえばEmacs Lispテクニックバイブルをずっと積んでいる。。。

2013/01/16

東京Ruby会議10に参加して来ました! #tkrk10

先日からごりごり調査エントリーを書いていた通り、2013/1/13, 14に千葉で開催された東京Ruby会議10に参加してきました!

これが千葉の景色w
千葉は遠かった!大雪のために2日目は残念ながら14:00で中止となってしまいました。ずっと準備してきたスタッフの方々にとってはかなり辛い決定だったのではないかと思います。。。本当におつかれさまでした!

中村涼さん(@r7kamamura)の話が面白かった!

Ruby+twitter bot(IRCだったかも・・・)からスマートリモコンを使って家電その他を自動 or 半自動で操作して色々捗るようになったよーっていう話でした。1日目の発表の中ではひときわ会場からの反応が大きいセッションだったように思います。
自分的には調査時の予想があたったのでもう完全ににやにやしながら見てました!スマートリモコンとかArduinoとか使うの楽しそう!

自分とか人が捗るプログラミング、いいですよね!

鳥井雪さん(@yotti23)の話が面白かった!

句会アプリをリリース、運営の話をしていて、かわいい女の子からかまぼこをもらって嬉しかったよーって話をしていました!(ちょっと違う)
とても緊張なさっていたのですが、ステキな話でした!特に"システムを育てることはつながりを育てること"といっていたのが印象的でした!
自分が捗るようになる開発もよいですが、こういう開発もまた素敵ですのぅ。。。

こんな感じで"コタれん"の開発話も聞いてみたいです・・・!どうですかねぃ・・・? > @volpe_hd28vさん

黒Ruby会議面白かった!

  • 内容は言えないあの会議
  • 多分あの雑誌を見るたびに@june29さんを思い出す気がするw
  • @yoshioriさんのはなるほどうまい手だなぁと感心

    アンチぼっちランチ/ディナーありがたい!

    • 2日連続でアンチぼっちランチに参加してきました
      • これならぼっち参加でも大丈夫やー!ステキ!
      • ご一緒してくださった方々ありがとうございましたー
    • たまたま@hokacchaさんと一緒のグループになってびっくりw
    会場内にwimaxの電波が入らなかったので僕はほとんどツイートしていないです。ほとんど唯一のツイートがこれ。Qiitaの@yaottiさんがstarseeker.soの話しててびっくりしてテンションあがったのです!やったねりゅうのすきー!!


    沖縄ハッカソンの話聞けなくてちょっと残念だなぁとか、Matzの話を聞きそこねて(寝坊しました。。。)ちょっと残念とかあるのですが、全体を通してとても配慮の行き届いたすてきな会議だったなぁと感じています!
    おかげでそこまで知り合いの多くない自分でもバッチリ楽しむことができました。準備されてきたスタッフの方々本当にありがとうございました!


    まあ、なんて言うか。。。ほんとだわー、そんな感あるわー・・・。
    残念ながらこればっかりは・・・ねぇ。。。