新規登録ページに reCAPTCHA を導入しました
こんにちは。 Bot によるユーザーのスパム登録が増えているため、reCAPTCHA を導入しました。
導入したのは reCAPTCHA v3 で、クライアントのリクエストが正しいか (人間か) のスコアを reCAPTCHA から取得します。 スコアが一定以上の場合は、新規登録を行います。ほとんどの場合、ユーザーは何もする必要はありません。
しかし、通常のユーザーであっても低いスコアになる可能性があるため、その場合は reCAPTCHA v2 にフォールバックし、チェックボックスによる確認を行います。
ほとんどの方には関係ないと思いますが、ご協力をよろしくお願いします。
メールアドレスを確認するまでログインできないようにしました
もう一点、変更を行いました。
新規登録後、メールアドレスにメールを送信し、正しいメールアドレスか確認するために URL のクリックをお願いしています。
これまでは、メールアドレスを確認していなくても、数日はログインできる状態になっていましたが、メールアドレスを確認するまでログインできないように変更しました。
スパム登録と関連しますが、メールアドレスを確認できないままサービスを使えるのは、セキュリティーの面で問題があるためです。
もしメールが届いていない場合は、以下のページから再送信できますので、ご確認ください。
Tumblr からはてなブログに移行しました
こんにちは。
このブログは Tumblr を使っていましたが、中の人がはてなブログを使っていて慣れていることや、Tumblr の先行きが不安なこともあり、はてなブログに移行しました。
移行にあたり、以下の記事を参考にさせていただきました。
上記の記事にもありますが、データのエクスポートについては以下のツールを使いました。
http://tumblr2hatenablog.herokuapp.com/
「Tumblr Account」に Tumblr の URL を入力し「Exported Content Format」に「Raw Input (preserving Markdown)」を選択してエクスポートしました。 その他のオプションについては変更していません。
ダウンロードしたファイルを、はてなブログの管理画面で読み込めば簡単にインポートできます。 記事の画像については、はてなブログが Tumblr からの移行に対応しており、記事内の URL も書き換えてくれるため、非常に便利でした。
旧 URL のリダイレクトは設定していません。 申し訳ありませんが、古いリンクは 404 Not Found になってしまいます。
どのお店に行くか迷ったら?CurryBu におまかせしてみよう!
こんにちは!涼しくなってきましたね。
最近は CurryBu の Rails を 5.0 系にアップデートしたいなと思いつつ、 mobylette gem を ActionPack Variants に切り替えるのが大変そうで手が止まっている今日この頃です。
さて、僕は近くに色々なカレー屋があると、どこに行こうか毎回迷ってしまいます。渋谷の場合は迷った結果 C&C に行く事が多いです。 それだともったいないので、CurryBu に任せてみましょう。CurryBu が近くのカレー屋からあなたにおすすめのカレー屋を選びます! (現在スマートフォン版のみで使えます)
おまかせ機能を使うにはメニューから「おまかせ!」をタップします。
近くにお店があればお店のページを表示します。 近くにお店がない場合は、申し訳ないのですが表示できません... 良かったらカレー屋を登録してみてくださいね :)
ぜひ使ってみてください!
最近の開発の様子をお知らせします。
開発環境の一部を Docker で動かすようにした
アプリ以外の DB サーバー (PostgreSQL, Elasticsearch, Redis) や mailcatcher gem を Docker で動かすようにしました。以前は Homebrew で必要なミドルウェアをインストールしていたのですが、docker-compose up
を叩くだけなので導入や起動が楽になりました。Docker は Docker for Mac で動かしています。
アプリ自体もコンテナで動かすとスッキリするのかもしれませんが、あまり困っていなかったので今回は見送りました。 依存するライブラリが大幅に増えるなど、開発環境を作るのが大変になってきたら検討するかもしれません。
また、AWS S3 についても FakeS3 などのクローンを使用してローカルでテストできるようにしたいのですが、 CarrierWave や fog との相性が悪いのかアップロードしたオブジェクトが壊れてしまうので難航しています...
Elasticsearch を 2.3 にアップデート
1.7 から 2.3 にアップデートしました。以下の記事が参考になりました。
Rails を 4.2.7.1 にアップデート
Ruby を 2.3.1 にアップデート
ではでは。
気になるカレーやお店を探そう!
こんにちは!
CurryBu に新しい機能を追加しました。
カレーやお店を探す
カレーやお店、部員を検索できるようになりました。
ページ上部の検索フォームから、検索したい語句を入れて Enter キーを押すことで検索できます。
現在はシンプルですが、カレーの種類やトッピングなど、便利に検索できるようにしていきたいと思います。
近くのカレー屋を探す
スマートフォンや PC の位置情報を使用して、近くのカレー屋を探せるようになりました。
ぜひ、あなたの近くのカレー屋を探してみてください。カレー屋への大体の距離も表示されます。
フィードバック
フィードバックのリンクを、PC ではページの下部、スマートフォンではメニュー部分に追加しました。
今回紹介した検索機能についての感想や、ここが使いにくい、こういう機能があったらいいな、など気軽に送っていただけると嬉しいです。
頂いたフィードバックは CurryBu の改善の参考にさせていただきます。
以上です。ぜひご利用ください!
以下、開発ブログらしく技術系の話を少々...
Elasticsearch
以前から使いたいと思っていたのですが、今回投入しました。
カレーやお店を探す機能で全文検索を、近くのカレー屋を探す機能で地理情報を扱っています。
プラグインは日本語の形態素解析に elasticsearch-analysis-kuromoji を使用しており、 elasticsearch-model gem, elasticsearch-rails gem, elasticsearch-persistence gem を使用して Rails に組み込んでいます。
Rails 4.2.1.rc4
Rails 4.2 でサポートされたいくつかの機能を使ってみました。
- Foreign Key Support: 外部キー制約をマイグレーションで追加できるようになりました。foreigner gem から移行しました。
移行については
create_table
ブロック内でt.foreign_key
という記述が出来ない以外、add_foreign_key
のインターフェイスが同じなので特に変更は必要ありませんでした。 - Active Job:
sidekiq_options
のようにオプションを渡せず、リトライの設定ができなかったので、しばらくは見合わせです。
もうすぐバージョン 4.2.1 の正式版がリリースされるかと思います。
Ruby 2.2.1
Symbol GC のメモリリークが解消されたとのことです。
Ruby 2.2.1で解決されたSymbol GC のメモリリーク問題について - Qiita
http://qiita.com/Peranikov/items/784ab53b772ff7914ffa
jQuery 2
jquery-rails gem のアップデートで jQuery のバージョンを 1 系か 2 系かで選択できるようになったので、jQuery 2 を使用するようにしました。
以下のように jquery2
を指定します。
//= require jquery2
//= require jquery_ujs
その他
Gem のバージョン指定について、固定する必要があるもの以外は固定しないようにしました。
また、Gem のアップデートについてこれまではひとつずつ行なっていましたが、ある程度のテストを書いているので、
CHANGELOG や diff に目を通しつつ、まとめてアップデートするようにしました。
ではでは。
CURRYBU に Yo を送ってカレー情報を受け取ろう!
こんにちは。お盆ですね。
CURRYBU に Yo を送ることで、 カレーが投稿された時に Yo を受け取ることができます。
良かったらどうぞ。
最近のアップデートでアプリから URL が付加できるようになった
らしいです。
API でも URL を付加できるようになることを期待しています。
2014/08/15 15:00 追記: URL を付加するようにしました!通知を開くことで、投稿されたカレーにアクセスできます。 iOS 版 Yo アプリのバージョン 1.1.0 で確認しています。
お店のページに地図が表示されるようになりました
CurryBu 開発月報 2014 年 3 月号
こんにちは。4 月ももうすぐ中盤です。
3 月は色々と忙しくてリリースした機能はありません。4 月中に何らかの機能をリリース出来ればいいなと思っています。
どうぞよろしくお願いします。