Ruby

写経環境を、vagrant-berkshelf から Vagrant + knife-solo + Berkshelf へと変更した

以前、GDG信州でvagrant-berkshelfを使った写経環境構築の発表をしましたが、その数日後にvagrant-berkshelfが非推奨になってしまいました*1。 今のところは使えるものの、将来的なことも考えて、手元にある写経用の環境を Vagrant + knife-solo + Berkshelf…

Railsチュートリアル 4.0版の演習について、自分なりの解答をまとめてみた

Railsチュートリアル4.0版には各章に演習が付いていますが、模範解答みたいなものは示されていないため、この書き方で良いのかと悩むこともありました。 そのため、復習した時のことを考えて、自分の解答をまとめておきます*1。 なお、4章はsample_appと関係…

Railsチュートリアル 4.0版 の写経を完走した

「The RSpec Book」の写経を終えた後、より実践的でテストコードがあるものに手をつけてみようと考え、評判の良い「Railsチュートリアル 4.0版」の写経を行いました。 全11章ですべての章に演習が付いているという、それなりに量のあるチュートリアルでした…

The RSpec Book用にVagrant環境を作成し、写経してみた

RSpecの使い方に慣れるため、評判の良い「The RSpec Book」を写経しました。 手を動かすチュートリアルとしては、Codebreakerというゲームと、Railsの2種類あり、それぞれの作り方がとても参考になりました。 特に、リファクタリングの方法や考え方まで記載…

アルクマスケジュールをGoogleカレンダーへ登録するRubyスクリプトを、Herokuで定期的に実行する

前回の記事では、コマンドラインからアルクマスケジュールをGoogleカレンダーに登録しました。Rubyを使って、アルクマスケジュールをGoogleカレンダーへと登録する - メモ的な思考的な ただ、毎日コマンドラインから実行するのは手間なため、Herokuを使って…

Rubyを使って、アルクマスケジュールをGoogleカレンダーへと登録する

昨年、GoogleAppEngineとGoogleAppsScriptなどを使い、アルクマスケジュールでいろいろと試してみていました。 記事: GoogleAppEngineとGoogleAppsScriptでアルクマを追いかける - メモ的な思考的な デモ: アルクマップ - 今月アルクマはどこにいるかな ただ…

Windows7 + Ruby + google-api-clientで、GoogleAPI向けOAuth認証用のYAMLファイルを取得する

Windows7でRubyを使ってコマンドラインからGoogleAPIを叩くために、OAuth認証で使用するClientIDやClientSecret・トークンが記載されているYAMLファイルを取得しようとしたところ、いろいろとハマったためメモを残します。 環境 Windows7 SP1 ruby 2.0.0p353…

Sinatraを使ったAipoアプリをAipoに追加してみた

AipoにAipoアプリを追加することがあったため、やり方を忘れないようにメモを残しておきます。 環境 Aipo端末 Aipo7 Windows7 Aipoアプリを置く端末 Windows7 Ruby 1.9.3p448 Aipoアプリを置く端末での作業 Aipoアプリの作成 AipoアプリはOpenSocial準拠なの…

RubotoでAndroidアプリを開発する時の環境について

少し間をおいてRubotoを触ったところ、どのように開発をしていたのか少々忘れたことがあったため、メモを残しておきます。 ■環境 Platform JDK ant Ruby ruboto jruby-jars Device API level Windows7 x64 1.7.0_45 1.9.1 RubyInstaller 1.9.3-p448 0.15.0 1…

Rubotoを使い、Androidで「長野市バス共通ICカード KURURU(くるる)」の履歴を読んでみた

第44回NSEG勉強会に行った時に「長野市バス共通ICカード KURURU(くるる)」を手に入れました。 FeliCaということなので 以前作ったアプリ に機能を追加して読めるかどうかを試してみたところ、読むことができました。 環境 RubotoとJavaのバージョンが上がっ…

Windowsで、Ruboto製アプリ内で使われているRuboto関連ファイルをアップデートしたときのエラー

古いバージョンを使ったRubotoアプリがあるのですが、最新のRubotoへアップデートしたところエラーが出たため、対応した時のメモ。 なお、通常の流れはGithubにあるRubotoのREADME.mdに記載されています。 ruboto/README.md at master · ruboto/ruboto · Git…

Rubotoを使い、Android + nfc-felica ライブラリで、SuicaとEdyの履歴を読んでみた

以前、RubotoでNFCのIDmなどを読んでみたため、今度はSuicaやEdyの履歴などを読もうかと考えましたが、自分で実装するには時間がかかりそうでした。そのため、良いものがないかを探したところ、Kazzzさんのライブラリ「nfc-felica」がありました。ありがたい…

Rubotoを使い、AndroidでAsyncTask + ProgressDialogを使う

Rubotoで AsyncTaskとProgressDialogを使ったところ、いろいろとハマったのでメモ。 ■環境 Platform JDK ant Ruby ruboto jruby-jars Device API level Windows7 x64 1.7.0_25 1.9.1 RubyInstaller 1.9.3-p448 0.13.0 1.7.4 Nexus7 2012 android-17 ■生成 ru…

Rubotoを使い、AndroidでAsyncTaskを使う

Androidで非同期処理を行うAsyncTaskがあったため、Rubotoでサンプルを作ってみたときのメモ。 ■環境 Platform JDK ant Ruby ruboto jruby-jars Device API level Windows7 x64 1.7.0_25 1.9.1 RubyInstaller 1.9.3-p448 0.13.0 1.7.4 Nexus7 2012 android-1…

Rubotoを使い、AndroidでNFCのIDmやNFC規格ごとの情報を読み取る

RubotoではどのようにNFCを読み取ればよいかを調べ、Androidのメソッドを利用して情報を読み取ったときのメモ。 環境 Platform JDK ant Ruby ruboto jruby-jars Device API level Windows7 x64 1.7.0_25 1.9.1 RubyInstaller 1.9.3-p448 0.13.0 1.7.4 Nexus7…

Rubotoを使い、Androidで動的にTextViewなどを追加・削除する

Rubotoで画面を作る方法は分かったものの、あとからTextViewなどを追加・削除する方法が分からなかったため、いろいろと調べた時のメモ。 ■環境 Platform JDK ant Ruby ruboto jruby-jars Device API level Windows7 x64 1.7.0_25 1.9.1 RubyInstaller 1.9.3…

Rubotoを使い、AndroidのActionBar上にFragmentを使ったTabを作る

RubotoでActionBar上にTabが表示されるかを試してみたときのメモ。 ■環境 Platform JDK ant Ruby ruboto jruby-jars Device API level Windows7 x64 1.7.0_25 1.9.1 RubyInstaller 1.9.3-p448 0.13.0 1.7.4 Nexus7 2012 android-17 ■注意 前回 同様、初回起…

RubotoでActionBar上にPopupMenuを作る

RubotoのTutorials and examplesには「Tutorial: Add a menu」「Tutorial: Add a context menu」とあります。 ただ、ActionBar上のPopup Menuに関するチュートリアルがなかったため、試してみました。 ■環境 Platform JDK ant Ruby ruboto jruby-jars Device…

Ringo-Tabbetterで Padrino 0.11.2 の対応してみた

最近ニュージーランド産の新しいリンゴを食べたため、それらを追加するついでにPadrino0.11.2対応をしてみたところ、ActiveRecordまわりでハマったため、それらのメモ。 ■最終的な環境 Ubuntu 12.04 Ruby 1.9.3 Padrino 0.11.2 ActiveRecord 3.2.13 ■デモ り…

Rubotoを使い、AndroidでのGPS衛星情報をNMEA形式で取得する

Rubotoには、GPSで現在位置を取得するチュートリアルがあります。 ただ、GPS衛星情報をNMEA形式で取得するものがなかったため、Rubotoでできるかどうか試してみました。 Tutorial: get current gps position · ruboto/ruboto Wiki · GitHub なお、AndroidやX…

Windows7にRubotoをセットアップして、RubyによるAndroidアプリの作成を試してみた

前回はRhoMobileの開発環境を構築してみましたが、同じようにRubyで書けるRubotoというフレームワークもあったため、こちらの開発環境も構築してみました。 そんな中、Windows環境で構築する時にいろいろとあったため、メモを残しておきます。 構築する環境 …

Windows7にRhoMobile(Rhodes)をセットアップして、RubyによるAndroidアプリの作成を試してみた

手持ちのNexus7にてGPSを扱うAndroidアプリを作りたいなと考えて、Rubyで書く方法を探してみたところ、RhoMobileというフレームワークがあったため試してみました。 なお、インストール後にAPIを読んだところ、現時点ではGPSのNMEA0183形式データを取得するA…

第40回NSEGにて、Ruby + Sinatra + Twilio + Herokuのデモを作った時の参考資料

第40回NSEGにて、Rubyを使ったTwilioのデモを作りましたが、その際に調べたことをまとめておきます。 リンク先にはお世話になりました。ありがとうございました。 ■Twilio関係 公式ドキュメント 英語のほか、日本語訳もあります。ホスト名を「www」「jp」を…

Ruby技術者認定試験Silverに合格しました

5/18(土)に、Ruby技術者認定試験Silverを受けてきました。 86/100で合格したことから、メモを残しておきます。 受験した経緯 今年に入ってからRubyに触れ始め、いろいろと作っていたところへ、 NSEG #37 のコードゴルフでは、一番短いコードがRubyのコードだ…

Ruby + Heroku + Highchartsで食べたリンゴを月別にグラフ化してみた

以前、リンゴ全体の食べた割合をグラフ化してみました。 Ruby + Heroku + Highchartsで食べたリンゴの割合をグラフ化してみた - メモ的な思考的な ただ、これではどの時期に何のリンゴを食べたのか、つまり旬のリンゴは何なのかが分かりづらい状態でした。 …

Ringo-TabberでローカルにPostgreSQLを入れる + Padrino0.11.0への対応を行う

HerokuとローカルでDBでDBを合わせようと考え、ローカルにPostgreSQLを入れてみました。 その上でデータを投入しようとしたところ、Padrino0.11.0対応が必要になったため、いろいろと修正しました。 そこで、その時のメモを残します。 ■環境 Ubuntu 12.04 Ru…

Padrinoを0.10.7から0.11.0へとアップデートし、Herokuへアップする

少し前の話になるのですが、Padrinoの公式Blogにて、バージョン0.11.0が発表されました。 Blog Padrino 0.11.0 Released - Padrino Lives! - Padrino Ruby Web Framework ということで、手元のPadrinoをアップデートし、Herokuへとアップしましたので、その…

Ruby + Heroku + Highchartsで食べたリンゴの割合をグラフ化してみた、時に悩んだことのまとめ

前回はグラフ化をしてみましたが、その実装をする時に色々と悩んだため、忘れないようにメモとリンクを残しておきます。 ■良くない設計:リンゴの種類をYAMLファイルに持たせたこと 本来ならDBにマスタとして入れておくのが正解なのでしょうが、YAMLファイル…

Ruby + Heroku + Highchartsで食べたリンゴの割合をグラフ化してみた

特産地付近に住んでいると、産直所などでおいしい旬のものが安価に手に入ったりします。 例えば自分の場合には、リンゴの産地が近いので、Twitterでも食べたリンゴをつぶやいていたりします。 そんな中、半年もつぶやいていると食べたリンゴの履歴がたまって…

RubyでFromTo表現のテキストファイルを、カウントアップ表現に変換する

タイトルが分かりづらいのですが、以下のようなファイルがありました。 0001-0005 それを x0001x x0002x x0003x x0004x x0005x 5件 のように、数字部分は4桁のゼロ詰めとし、先頭と末尾に「x」を付け、全体の件数を知りたいとのことでした。 それだけだった…