トレタで一緒に働いてくれるRails/iOSエンジニアを探しています

Posted filed under Ruby on Rails, Toreta.

(おだんみつは付いてきません 提供:geechs)  昨年末にトレタをリリースして以来、ユーザが順調に伸び、エンジニアが二人ではどうにも困ってきたので、サーバサイドのRails、クライアントのiOSエンジニア、それぞれ1名ずつ一緒に働いてくれる人を探しています。  業務内容としては、トレタの開発、運用全般になります。iOS側はプロダクトオーナーの中村やUXデザイナーと一緒にクライアントアプリの設計・開発、Rails側はサービス全体の設計・開発から運用までを行います。  Railsは私とAutoPagerize作者の沢田がいるので、教えながらもできるのですが、現在iOSエンジニアは社内にはいないので、結構一人でがんばれる人にお願いをしたいです。  いきなり面接!っていうのも堅苦しいので、軽くでも興味のある方は、豚カツか豚しゃぶでも一緒に食べませんか?  勤務地は目黒で、各種条件や開始時期などは結構柔軟に相談に乗ります。  masuidrive@toreta.inにメールか、FBで友達申請してメッセージで、「豚が食べたい」とメッセージをください。GitHubやソーシャルアカウント、自分で作った何かも一緒に貰えるとうれしいです。  とりあえず、「腹減ったから豚でも食べよう」と思っているRails/iOSエンジニアからの気軽な応募をお待ちしています。

mruby 安定版 v1.0.0について軽量Rubyフォーラムの中の人に聴いてきた

Posted filed under mruby, Ruby.

Ruby東京プレゼンテーション2014に登壇していたら、同じく登壇していたMatzがいきなり「mruby 安定版 v1.0.0をさっきリリースした」とさらっと言ってました。聞いてないwww なにがなんだかさっぱり分からないので、会場に居た軽量Rubyフォーラムの中の人に話を聞いてきました。 引っ越し準備でゆっくり書いているヒマがないので、箇条書きで失礼します。

新会社で一緒に働いてくれるエンジニアを探しています

Posted filed under Ruby on Rails.

 7月に設立した株式会社トレタでは、フルタイムのRuby on Railsエンジニアを募集しています。株式会社トレタの設立趣旨は、代表の中村の書いたブログを読んでいただけるとご理解いただけるかと思います。 私はそのトレタで、CTOという立場でバリバリとコードを書いています。(ミイルを運営するFrogAppsとは兼任となっています) トレタでは、iPadを用いたB2Bのサービスを構築中です。このサービスのサーバサイドのコードを一緒に書いてくれるノリの合うメンバーを募集しています。

個人でメモ帳アプリ wri.pe リリースしてみました。

Posted filed under Ruby, wripe.

 この1年間、ミイルとMobiRubyをコツコツと作っていて、個人としてWebサービス的なものを全く作っていなかったので、 気分転換 とRails4 + Ruby2.0のテストを兼ねて自分用に メモ帳サービス を作って wri.peとして公開しました。  私が使いたいメモ帳の要件は、こんな感じでした。 markdownをサポート gmailの様なアーカイブ機能 全文検索 カレンダーへのマッピング iPhone / iPadをサポート キーボードで操作ができる  いままで色々なメモ帳サービスを使って見たのですが、どれもしっくりきませんでした。私はメモをtodo的に使うことが多いので、終わったタスクをアーカイブしたり、文章内に書いている日付でカレンダーに表示する機能は非常に欲しい機能でした。

PS Vitaでmrubyが動いた!

Posted filed under mruby.

 布団でふと思いついたので、PS Vitaでmrubyを動かしてみました! やり方は簡単!Vitaのブラウザでhttp://bit.ly/vitamrubyを開くだけ!

軽量Ruby – mrubyとRubyの違い

Posted filed under mruby, Ruby.

MobiRubyで書いた”さめがめ”  去年の春からずっとコツコツと作っているmrubyでiOSアプリが書けるMobiRubyが久々に動く様になったので、1年近くmrubyを触ってきて気になった所を少し書いてみます。  以下、mrubyと区別しやすくするために、普段みなさんがお使いのRubyをCRubyと書いています。 mrubyって?  mrubyはMatzが去年発表した省メモリ版のRuby実装です。CRubyの機能を全て実装している訳ではなく、JIS/ISOの規格をベースに設計・実装されたものです。JIS/ISOの規格書は有料なのですが、最終ドラフトがIPAのサイトから確認できます。  mrubyの経緯や概要は、日経ITProによるMatzへのインタビューが分かりやすく、内部などについては、IIJさんや東芝情報システムさんがまとめている記事が参考になります。  現在の所リリース版はなく、GitHubのmruby/mubyで開発が進められています。報告・議論などはメーリングリストやIRCではなく、IssuesやTwitterが使われています。

Ruby 1.9で文字コードの自動判別を行う

Posted filed under Ruby.

 たまにRubyの話題でも。  Ruby 1.9で文字コードの自動判別をさせようとおもったら、意外に良いライブラリが見つからなくて苦労しました。 結局ICUをbindingした、charlock_holmesがちゃんと使えたので、メモです。  OSXで使う場合は、下記の様にしてICUライブラリをインストールします。Linuxでは適当なパッケージシステムを使ってインストールしてください。 curl -O http://download.icu-project.org/files/icu4c/4.8.1.1/icu4c-4_8_1_1-src.tgz tar xvzf icu4c-4_8_1_1-src.tgz cd icu/source ./runConfigureICU MacOSX –with-library-bits=64 –disable-samples –enable-static make sudo make install  charlock_holmes自体はgemで提供されています。 gem install charlock_holmes  文字列をUTF-8に変換する場合は、iconvと組み合わせて下記の様に書きます。 encode = CharlockHolmes::EncodingDetector.detect(str)[:encoding] str.encode(“UTF-8″, encode) 【変更 2012/1/6 19:37】 コメントを頂いたので、iconvからString#encodeに切り換えました。 【変更 2012/1/6 18:52】 ICUのバージョンを4.8.1.1に上げました。

Geohashのアルゴリズム

Posted filed under Ruby.

Photo by Ludovico Cera  前回、最後にGeohashのエンコード・デコード方法を解説、とか書いたのですが、私が書く前にyuroyoroさんがブログで解説していました。しっかり解説されているので、ぜひ、そちらをご覧ください。  Geohashのミソは、座標を2進数にして、それを交互に並べる所にあります。そしてそれをBASE32でエンコードすることで、座標を文字列にして表現しています。  BASE32は、5ビットで1文字なので、Geohashの長さが奇数の場合は、経度の方がビットが短くなります。 (例: 5文字の場合 全25ビット 緯度が13ビット、経度が12ビット)  そのため、グリッドの大きさが、Geohashが奇数の場合は縦長、偶数の場合は横長になります。

緯度経度を文字列で表すGeoHash

Posted filed under Javascript, Ruby.

 なんか世間的に位置情報アプリが流行ってるらしいし、Google App Engine(GAE)も楽しそう。どうせだから、GAEでなんか位置情報アプリでも作ってみよう!と思ってTwitterに書き込んだところ、Geohashという、位置情報のプロトコル?を教えてもらいました。  これは、その名の通り、位置情報をハッシュで表す規格なのですが、いろいろおもしろい特徴があり、調べているうちに楽しくなってきたので、勢い余ってPure Rubyのライブラリまで書いちゃいました。  そのあと、結局ライブラリを作ったところで満足して、アプリは何も作らなかったので、せめてGeohashの解説でも書いておこうと思います。

DataMapper 0.10.1をmerbで使う為のパッチ

Posted filed under Ruby on Rails.

先日、DataMapper 0.10.1がリリースされました。 DataMapperを使う上で致命的だった、count問題も直っているようです。 しかし、そのままだとmerb 1.0.12ではエラーが出て動きません。 そのときは、下記のコードを適当な所で実行してください。 class Merb::Orms::DataMapper::Associations < Merb::BootLoader def self.run DataMapper::Model.descendants.each do |model| include DataMapper::Resource touch_child_keys(model) end end def self.touch_child_keys(model) model.relationships.each_value { |relationship| relationship.child_key } end end 引用元