サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
災害への備え
satococoa.github.com/blog
3/28, 29 にベルギーのブリュッセルで開催された RubyMotion Conference #inspect 2013 に参加しました。 英語力にだいぶ不安がある中、頑張って聴き取ってきた内容をメモしたいと思います。 1 日目 A Brave New World: Learning iOS for the Ruby Refugee - Nick Quaranto さん 37signals で働く Nick さんがいかにして RubyMotion で Basecamp for iPhone を作って、どういうことを感じたのか、というお話でした。 Nick さんにとっては Objective-C で開発するということは Xcode というツールを強制されることが苦痛であり、自分の好きなツールを使って自由に開発ができる RubyMotion 無くして Basecamp for iPhon
LT枠だけでの参加でしたが、Rails Girls Tokyo 2nd に混ぜてもらいました! 参加者の方が継続的に勉強を進められるコミュニティのご紹介として #p4d の宣伝をさせていただきました。 発表資料置いておきます。(スライドのページ にある Download PDF のリンクから PDF をダウンロードすればリンクも動作します。) 【私撰】次のステップとしておすすめの Ruby コミュニティ【おまけ】 個人的に僕がよく顔を出すコミュニティのうち、Rails Girls の参加者にお勧めできるコミュニティを挙げてみます。 昨日の帰り際に @yotii23 さんともお話したのですが、まずは今回のコーチのいるコミュニティ(のコーチがちょうど参加している回)に行ってみるとすんなりとけ込めるのでは。と思います。 コメントは全て僕の主観ですのでご注意を。 RailsGirls, More
Today I released RubyFriendsCamera and now available on AppStore! This application is a client app for #RubyFriends. Using RubyFriendsCamera, you can easily share your photos to twitter with #RubyFriends hashtag. RubyFriendsCamera is developed with RubyMotion and Pixate. I’d like to say thank you to @ken_c_lo and @machida. They created a great application icon, splash screen, toolbar icons, backgr
RubyMotion でアプリをつくるとき、デバッグがやはり大変です。 例えば GCD など非同期で実行されるブロック内で参照されるオブジェクトをインスタンス変数に入れていない場合、実際にそのブロックの処理が実行されるときには既にそのオブジェクトが解放されてしまっているというケースがあります。 これが RubyMotion を使う上での一番厄介なハマりどころといえると思います。 そのケースにハマった場合、何も有用なログを残さずにすとんと落ちてしまうことがありとても萎えます。 例えば以下の例はあまりに単純すぎますが、当然アプリがすとんと落ちます。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 # app_delegate.rb class AppDelegate def application(application
Dash を Sublime Text からワンタッチで引くことができる DashDoc というプラグインを入れてみた。 インストールはいつも通り Package Control からで OK。 デフォルトで ctrl+h が割り当てられてしまっていたので、変更した。 Preferences > Package Settings > DashDoc > Key Bindings - User 1 2 3 4 5 6 [ { "keys": ["ctrl+h"], "command": "left_delete"}, { "keys": ["shift+command+h"], "command": "dash_doc"}, { "keys": ["ctrl+command+h"], "command": "dash_doc", "args": { "syntax_sensitive": "
2/16(土) に万葉さんで開催された第4回 Rails Girls, More 勉強会に僭越ながらコーチ役として参加させていただきました。 勉強会のスタイルは、最初に参加者の方々に今日やりたいことを聞いて、それに合わせてコーチを割り当てて進めていくというなかなか贅沢なスタイル。 この日は参加者のみなさんの進捗が比較的揃っていて、controller, view を経て model へと進む方が多かったです。 コーチ役とはいえ、僕も初参加で何からどう教えていいかよくわかっていませんでしたが、そこは @igaiga555 先生の作られたしっかりした資料があったおかげで特に困ることもなく進めることが出来ました。 資料から脱線した部分 資料にある部分は参加者の方もあとでそちらを見直せばいいと思うので、資料にはなく、僕が脱線して話したことについて少しメモします。 Sublime Text 2 今使
ActiveRecord で Mysql2::Error: MySQL server has gone away と言われて困ったのです。 さっぱり原因がわからずに同僚の @DianthuDia 先生に聞いてみたところ、どうやら大きなデータを MEDIUMTEXT 型のカラムに保存しようとしたときに、以下の MySQL の設定にひっかかって失敗していたらしいです。 1 2 3 4 5 6 7 > show variables like 'max_allowed_packet'; +--------------------+---------+ | Variable_name | Value | +--------------------+---------+ | max_allowed_packet | 1048576 | +--------------------+---------+
先日の東京 Ruby 会議 10 では大雪のため幻のスピーカーになってしまったのですが、今日はちゃんと発表してきました。 発表内容 RubyFriendsCamera の宣伝 気軽に #RubyFriends するためのアプリを #p4d のメンバーと一緒に作っています。2/23 の Ruby 20周年パーティに間に合うように AppStore でリリースしたいと思っています。 ライブコーディング rails で scaffold したサーバサイドのデータを CRUD するクライアントアプリを RubyMotion で作りました。 本当はデータの作成 / 更新 / 削除も実装したいと思って、実際に一度最後まで作ってみたりはしていたのですが、さすがに全然たどり着かなかったです。 完成例のコードも公開してありますので参考にしていただければ幸いです。今日は見せられなかった Formotion g
Qiita 2-day Hackathon に参加しました。 このイベントはGitHub APIを使って何らかのアプリケーションを開発しよう!というハッカソンです。 詳しいテーマは当日発表され、「プログラマの問題を解決するサービス」とのことでした。 当日の様子は公式のブログを見ていただくのがいいかなと思います。 スペシャルゲストも登場して盛り上がったQiita 2-day Hackathon総まとめ! 僕の作ったもの 全くアイディアを持たずに参加したので、一日目は GitHub API を一通り眺めてターミナルからcurlや httpclient で叩いてみただけでほとんど終わっちゃいました。 全体的に GitHub API で何が出来るのかを把握できた後で、残り半日くらいで出来そうなものを考えたところ、自分の GitHub のプロフィールページを簡単に表示できて、 QR コードでシェアで
普通に rbenv install 2.0.0-preview2 したら openssl を require できなかったので以下の手順を行った。 環境は - Mac OS X 10.8.2 (10.7.xからのアップグレード) - brew - brew でインストールした rbenv, ruby-build を使用 - zsh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 $ brew install openssl $ vim .zshrc # 以下を追記 export CONFIGURE_OPTS='--with-readline-dir=/usr/local/opt/readline --with-openssl-dir=/usr/local/opt/openssl' $ rbenv install 2.0.0-preview2 $ rbenv glo
@satococoa やっぱウェブみにいくんですね、了解です。この辺も Dash とかで見れるようにしたいな— Naoya Itoさん (@naoya_ito) 1月 22, 2013 こんな話から、インストールした gem のドキュメントが見られる風な Docset が Dash にあったのを思い出してちょっと調べてみました。 以下の手順に沿ってちょこちょこっと設定をすると、RDoc で生成された gem のドキュメントが見られました。 設定方法 Preferences… -> Downloads から “Ruby Installed Gems” というdocsetをインストール Preferences… -> Docsets に Ruby Gems という docset があるので、その一番右にあるギヤのボタンからrdocが置かれているパスを設定する。gem env gempath と
2012年ももう最終日となってしまいましたので、まとめ的なブログでも書いてみようと思います。 2012年 2012年の年初に挙げた目標は「自重しない」ということでした。 ある程度はその目標通り、色んなことにチャレンジできた1年だったと思います。 特に思い出深い出来事を振り返ってみます。 みなとRuby会議01 6/2(土)に開催されたみなとRuby会議01の副実行委員長をやらせていただきました。 ほとんどのメンバーが地域 Ruby 会議の運営が初めてという状態ではありましたが、1月から何度も打ち合わせを重ね、工夫を凝らして楽しい Ruby 会議を作ることが出来たと思います。 そのときのエントリはこちらです。みなとRuby会議01 唯一の心残りは Ruby アイドルの招致に失敗したことですね。 Yokohama.rb Bu: Yokohama.rb 今年も非常にお世話になりました。 今、僕が
この記事は RubyMotion Advent Calendar 2012 の25日目の記事です。 時間がちょっと足りなくてやっつけ感が半端ないですが、Advent Calendar に登録された記事を見られるアプリを作ってみました。 ちょっと見積もりを誤ってしまい、細かい動作や見た目を調整している間がありませんでした>< (具体的には意外とカレンダーの表示に使っているライブラリの自由度が狭くて難儀してました。) リポジトリは以下です。 https://github.com/satococoa/RubyMo カレンダーの表示は Kal を使い、エントリの表示には NimbusKit を使っています。 簡単なサンプル程度のものではありますが、CocoaPods を用いたライブラリの導入や、BubbleWrap での RSS を取得する処理など、参考にしていただけるところもあると思います。 R
この記事は RubyMotion Advent Calendar 2012 の19日目の記事です。 本日(12/19)、第4回 RubyMotion もくもく会 を開催しました。 前回の様子は id:naoya さんの RubyMotionもくもく会 のエントリをご参照ください。 目的 大きな目的は、RubyMotion ユーザー間のつながりを作り、ノウハウ共有の場をつくるということです。 発売から約7ヶ月という若いプロダクトである上有料(1万円超)という高いハードルもあり、Titaniumなどと比べるとまだまだ検索などでひっかかる情報量が少ない印象です。 また、開発には Ruby と CocoaTouch の知識が必要となりますのでそのいずれかにある程度明るくないとハマる人は問題の切り分けも難しいくらいにとことんハマってしまう恐れがあります。 そういうとき気軽に相談ができる場が必要なので
Nimbus? 最近 新Google Mapsアプリ採用のフレームワーク NimbusKit がいい感じ で話題になった NimbusKit というフレームワークに興味を持ってちらっと調べてみたのですが、なんと CSS でアプリの View の定義ができるらしいということがわかりました。 しかも、CSS を変更するとリアルタイムにその変更が反映されるそうじゃないですか! デモ動画はこちらです。 さっそく、RubyMotion からも使えるか、試してみました。 インストール 普通に motion-cocoapods でインストールできます。 Rakefile にこんな感じに書いて、いつも通り$ rakeでOKです。 1 2 3 app.pods do pod 'Nimbus' end コード Nimbus CSS 関連のコードだけ貼ります。基本的には公式のドキュメントの Nimbus: Ni
この記事は RubyMotion Advent Calendar 2012 の8日目の記事です。 実際に RubyMotion を使って開発する上で、知っておくとちょっと便利かもしれない小ワザを並べてみます。 複数の iOS 機器をつないでいるときにデプロイする機器を指定する 仕事で iOS アプリの開発をしていると、Mac に複数の機器をつないでいることもしばしばあります。そういうときに rake device する際、idパラメータを指定するとでプロイする機器を選択することができます。 1 $ rake device id=hogehoge この際に使うidというのは Identifier のことで Xcode の Organizer で調べることができます。 設定を yaml ファイルにまとめる 複数のアプリの開発をしていると、毎回 Rakefile に testflight の t
この記事は RubyMotion Advent Calendar 2012 の一日目の記事です。 RubyMotion を買ってみたけれどもまだ具体的なアプリ作りまでは進んでいない方向けに、RubyMotion で手っ取り早くアプリ開発を始める手順をまとめてみます。 API リファレンスを準備する RubyMotion での開発は Cocoa Touch フレームワークを直接使いますので、Cocoa Touch の API リファレンスを常に引けるようにしておいて下さい。 RubyMotion API Reference を見るか、iOS アプリの開発を既に経験されている方は Cocoa Touch のドキュメントを見るのが良いと思います。 RubyMotion 勉強会や RubyMotion もくもく会などで聞いてみたところ、Dash を使っている人が大多数でした。 Dash用の Rub
10/27(土)に 第一回プログラマ向けデザイン勉強会 を開催しました。 この勉強会は毎月やっている デザイナー向けプログラム部 (P4D) の逆バージョンで、デザイナさんにプログラマがデザインを教わるという趣旨で開催しました。 そして講師役として、いつもP4Dの方でもお世話になっている @machida さん、@ken_c_lo さん、@saucerjp さんの3人にお願いしました。 もっともこの3人をはじめ、P4Dに参加されているデザイナさんは普通にJSやFlash、ObjCなんか書いていたりして単にデザイナと呼んでいいのかどうかは怪しいところですが。 RailsエンジニアのためのTwitter Bootstrapカスタマイズ例 まずは@machidaさんのTwitter Bootstrapのカスタマイズ例の話からでした。 このテーマはP4D参加のプログラマからしきりにリクエストの
httperf は ab (apache bench) と同じようなツールで、サーバの負荷テストに使うことができます。 もうすぐリリースのサーバーに負荷をかける目的で使ってみたのでメモします。 インストール 1 2 3 4 # Homebrew $ brew install httperf # CentOS $ sudo yum install httperf URLリストを作る URLをファイルにまとめておいて、順番にアクセスさせることができます。 実際のユーザのアクセスに近い負荷を作り出すことができますね! ちなみにファイルのフォーマットはnull文字区切りのテキストファイルです。nginxのアクセスログから作ってみます。 1 2 $ zcat /path/to/access.log-20121024.gz | awk '{ print $7 }' > urllist.txt $ tr
CentOS + chef-solo で rails が動く All in one サーバを準備する 目標 VPS を立ちあげてすぐに All-in-one (DB, Web, App 全部入り) で rails アプリケーションが動くシンプルなサーバを立ち上げる。 ローカルの VirtualBox にインストールして検証する。 ちなみに、Linux のセットアップをするときには未だに僕は slicehost のドキュメント http://articles.slicehost.com を見ています。 もっとモダンなところがあったら教えて下さい。 chef の概要については http://wiki.opscode.com/pages/viewpage.action?pageId=24019581 をざっと読んだのみで、あとは使いながら覚えていく戦法。 構成 CentOS 6.3 Ruby 1
報告が遅くなってしまいましたが、7/22(日)に無事に第1回RubyMotion勉強会を開催しましたのでご報告します。 まだRubyMotion自体の発売からあまり時間が経っていないことがあって、みんなで半日かけて勉強する内容がちゃんとあるかなぁ。。。というのが最初の不安でしたが、ふたを開けてみると発表2本、LT3本、オープンセッション2本という充実した内容で開催することができました。 発表1 RubyMotionは誰得? (+ 宣伝) 発表者: @satococoa 資料: RubyMotionは誰得? 実際にRubyMotionを使って仕事をしてみた経験から、現状のRubyMotionはどんな人にお勧めできて、どんな人は待った方がいいのか、というお話をさせていただきました。 このときにお話しした、僕が仕事でRubyMotionで開発したアプリですが、見事にAppStoreの無料トップを
RubyMotionでよく聞かれる質問をまとめてみました。 Q1. いくらですか? 現在 ¥16,354 となっています。無料版もお試し版もありません。 学生や大企業は個別に連絡することで対応してくれるそうです。 Q2. ライセンスは何年有効ですか? サポート(アップデート含む)は年間契約です。継続料は通常料金の半額だそうです。 アップデートが不要であれば一度買えばずっと使えるわけですが、現実的には毎年¥8,000ちょいを払って継続することになります。 Q3. Androidのアプリは作れる? できません。今後その予定もありません。 公式サイトでもAndroidやりたい場合は Ruboto をチェックするようにとの旨書いてあります。 Q4. オープンソースですか? 一部OSSです。RubyMotion/RubyMotion これはRubyMotionのうちllvmを使ってRubyコードをバ
最近仕事でRubyMotionを使っています。 まだまだ開発を効率化する方法を模索中なのですが、みなさんのおすすめなども知りたいと思い、まずは今自分が使っていて便利だなーと思うものを共有したいと思います。 より良い方法とか、「これ使うと効率上がるよ!」というのがあったら @satococoa まで教えて下さい。 vim エディタはTextMate 2やSublime Text 2も試しましたが、指がvimを欲してしまうので結局vimに戻ってきてしまいました。コード補完を重視する人には現時点ではSublime Text 2が一番おすすめだと思います。 ちなみに特にsnippetも使わずにtag補完だけでやっています。 Ingredients iOS SDKのリファレンスを見るのに使います。 Webで検索するよりはるかにサクサクしていて使いやすいです。 motion-testflight t
6/2(土)はみなとRuby会議01でした。 このRuby会議は僕の参加するYokohama.rbにとって初めて主催する地域Ruby会議でした。 初主催の上にネットワークが不安定だったり人数が100人超だったり、そんな中で更にコーディングまでやろう。。。なんていう、僕らにとっては相当チャレンジングな企画でした。 まだようやく気持ちが落ち着いてきたところであまりうまくまとまらないかもしれませんが、気持ちが熱いうちに少し裏側とか、企画を考えた側の気持ちとかそんなことを書き記しておこうと思います。 ソーシャルコーディングについて 正直「どこが ソーシャル コーディングなんだ!?」とDisられるのを覚悟していたのですが、TL見る限りはそんなこともなくみなさん思い思いに楽しんでいただけたようで安心しました。 この企画のスタートは半年前の第1回(?)みなとRuby会議実行委員会で行われたブレストにまで
このページを最初にブックマークしてみませんか?
『satococoa.github.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く