2013-01-01から1年間の記事一覧
経緯 Backbone.jsでTDD書く時に、 Model/CollectionはServerSideのようなイメージで書けるのだが、 Viewのテストがfrontend特有の事があり、結構、悩ましい。 ここでは、Backbone.Viewを中心に、 テストで悩ましい所をどう解決していくか、試行錯誤している…
※この記事は社内勉強会向けの資料の下書きです。書きなぐりの下書きで見直すと最後の方の文書がヤバいので、いつか書き直します。読み辛い所は申し訳ないです。 概要 TDD テスト自動化とTDDを整理 TDDとBDDの違い Test Framework in javascript QUnit/jasmin…
parse.comはiOS/android/Backbone.js等の各clientが準備されているが、 Restの口も準備されているので、実質、どの言語からも叩く事が出来る。 公式pageの内容をまとめて試してみて、 最後にBackboneのViewに組み込んでPluginにしてみた。 そこまでのメモ メ…
やりたい事 元々、iphoneのsafariで、写真uploadできる機能を作りたかった。 ※ちなみに、iOS6からsafariでも画像up可 upする時に、jpegに入ってる重力の方向を元に自動で画像を回転して保存したい。 概要 この記事では以下の話を書いて行く。 jpegのexif情報…
ビール飲みながらダラダラ書いてるので、おかしな所は申し訳ない。 CompositeView marionette.jsには、CompositeViewというクラスがある。 CollectionViewを継承していて、 再起的な構造を持ったviewを作れる 親側もtemplateを持つ事が出来る というのが、特…
ie8で真っ白画面 とある機能を追加改修してie8で確認したら、 ブラウザの画面が真っ白になった。 特に、エラー等も出力されなかったので、 何が起こったかさっぱり分からなかった 条件 幾つか、付けたり外したりしていくうちに、以下の条件で起きているっぽ…
※これは、社内の勉強会の資料の下書きです。 ここ数年で、js環境が整理されてきた。 js開発するなら、これらの知識は必須。無いとめっちゃ不便。 という事で、今日は、gruntとbowerとyeomanの話。 各ツール概説 Yeoman applicationのひな形を作る アプリ構築…
(この資料は、社内のBackbone入門の勉強会の為に作った物の下書きです。) これから、Backbone.Viewについての入門記事を書きます。 内容としては、Backboneを初めて学ぶ人の為の噛み砕いた入門記事にするつもりです。 Backbone.Viewの使い方 基本的な使い…
以前書いた記事の反省を元にMarionetteに移行した。 思った以上に快適! 大規模になったらMarionette.js使えとか書いているのは嘘で、普通にBackbone使うときは、初めから使うべき。 Backboneで一番恐ろしいのは、各現場/各開発者毎に異なるオレオレ実装。オ…
最近、angularが熱くて、twitter見てると、angular周りが活発に流れて来るのだが、 angularのウリにしてるデータバインディング、Backboneでも同じ様な事がpluginで出来る。 Backbone自体は、非常にミニマルに出来ているので、(おそらく今後も本体にこういう…
この記事は、Victor Savkin氏の「Contrasting Backbone and Angular」を翻訳したものです。 ※本人から翻訳の許可も頂きました。 オリジナル http://engineering.nulogy.com/posts/angular-and-backbone/ 和訳自体は自信なく、細かな所は意訳しているので正確…
チュートリアルの続き。 さんざん伸ばした挙げ句、ようやくここからが、本番。 MarionetteのViewを使う。 これから作るもの 前回、新規作成formを作ったので、 新規作成したtodoを表示するViewを作る。 liタグで、一つずつのTaskを表示する ulタグで、それら…
X)誰かと一緒に作業するには、やっぱり、template必要 X)逆引きは公式pageでなくて、生ソース追跡 X)生産性は短期的には高まらない。むしろ改悪する。 X)
普通のrailsのwebアプリにbackboneを埋め込んでみて思った事等を書く。 1)Backboneを使うべきか否か? 初めに考える事。 大規模になったら使えとか、Single Page Applicationなら使えとか、色々意見あると思うが、 今時の普通のwebアプリならjsガリガリ動…
今年5月頃jsCafeで実施したBackbone.jsの入門slideをslideshareにUPした。 よくある、todoを作っていく内容なのだが、Parse.comというクラウドサービスを使う所が特徴。 これからBackboneの勉強始める方等、良ければ、どうぞ。 introduction to Backbone.js …
marionette.jsのチュートリアルの続き。 ここからが、メインである、marionette.jsの話。 前回に引き続き、gruntを起動している状態で進める事。 もし、起動していなければ、gruntを起動する。 model ここから、クライアント側のプログラムを書いて行く。 初…
以下、GooglePlaceApi使ってみたメモ。 GooglePlaceApiとは Googleが提供する位置情報のAPI。 GoogleMapでもできるじゃんと思うかもしれないが、 GoogleMapの検索でひっかかる場所は殆ど地名。 細かな店舗/有名スポット等々はGoogleMapではひっかからない。 …
今、casperjsを公式docの通り、testすると、うまく動かない。 FAIL TypeError: 'undefined' is not a function (evaluating 'casper.test.begin') # type: uncaughtError # error: "TypeError: 'undefined' is not a function (evaluating 'casper.test.begi…
Marionette.jsのチュートリアルを書く。 特に、yeoman製のgenerator-marionetteを使って、 railsみたいに、楽しながら、進めていく。 量が多くなったので、何度かに分けて書く。 この記事は、yeomanによる準備から、node+expressによるサーバー側まで。(bauc…
最近、A/B testingの文脈で出て来るBandit algorithmsのまとめ。 Bandit Algorithms Bandit Algorithmsは、 ①機械学習の中の ②強化学習の中の ③n腕バンディット問題に対する④Algorithm。 ①機械学習 人間の学習行為を自動化して実現する方法の事。 ②強化学習 …
ずっと、やろうと思っていながら、やってなくて、 せっかくの連休なので、この気になっていた事をやった! 何をやったかと言うと、javascriptの勉強会の資料をUPした! Marionette.js Backboneのライブラリー。 まだ、日本語の情報が少ないので、色々手助け…
node.jsで環境作ろうと思って、yeomanを入れるも、 サーバーサイドからクライアントサイドまでfullstackで準備されたものが無い。 generator-backboneはclientだけ generator-expressはbackendだけ これじゃ、困る。 自分で作らないといけなくて面倒くさい。…
session storage railsのセッションはいつもどこに入れるか迷っていた。 それが、MongoDBのTTL collectionでどうにか解決されそうなので、そこまでのメモ。 1)クッキー railsのセッションは、デフォルトで クッキーにbase64エンコードされて全部入ってる。 …
概要 ReplicaSetを組んだmongodbのversionを新しいものにupgradeするやり方のまとめ。 point secondary(arbiter) -> primaryの順で、一台ずつ落としてbinを差し替えていく secondaryを落としている時、primaryが動いているので、特にアプリに影響は無い prim…
事象 IE8のjavascriptでlocation.hrefが取得できない事があった。 何度かやってみると、玉に取れたり、取れなかったり。 ※versionは、Internet Explorer 8.0.7601.17514 原因 どうやら、IE8は画面上の要素(画像とか)のロードが終わった後に、 location.href…
polymer.js Google IO 2013で発表されたweb componentを使ったjavascriptのライブラリ Video Web Components in Action 概要 Web componentに対応/非対応に関わらず利用できるようにしたjsのライブラリ。 この考え方をPolyfill(ポリフィル)と呼ぶそうです…
AWS command line interface (python) をmacで使うまで。 これなに? http://aws.amazon.com/jp/cli/ よくでてくるbash製のclientより使い易い。 出力もjsonで整理されてて綺麗。 準備 AWSの画面からSecurity Credentialsを探して Access Key ID Secret Acce…
IE8で、AJAX処理してポップアップを出す処理を動かしたら、 ウィンドウズ側からのポップアップでエラーが出てきて、 強制的にIEを終了させられてしまった。 詳細を見てみるとこんな感じ。 問題の署名: 問題イベント名: APPCRASH アプリケーション名: iexplor…
今、javascriptの勉強会用の資料を書いているのだが。 target.addEventListener(type, listener [, useCapture]); のuseCaptureについて、 jQuery内でどう使われているか調べてみたら、 面白かったので、そのまとめ。 useCaptureとは? addEventListenerを書…
Jenkins + github + rails 環境 centos 6.2 rails 3.1 jenkins 1.510 githubのpushをトリガーにして、railsのtestを実行させるまで。 jenkins installから起動まで jenkins install 公式page通りinstall https://wiki.jenkins-ci.org/display/JENKINS/Instal…