Ruby
新浪微博の各ポストに当たるURLを生成する必要があったので、調べました。URLはhttp://weibo.com/<user id>/<post mid>という構造になっていて、post midはpost idから計算できます。 post midを計算するAPI(Querymid)が用意されていたようですが、今の提供されていないようです</post></user>…
6月19日にTwitterがGIFアニメーションをサポート開始しました。直接GIFアニメーションを見えるようにするのではなく、投稿時にGIFアニメーションをMP4に変換してそのリンクをツイート配信する枠組みです。RMagickでGIFアニメーションを作成して投稿してみた…
「Dropboxは全部Pythonで信頼性の高いソフトウェアを作った」の中で「人生を変えた記事」として"Subject: How to duck type? - the psychology of static typing in Ruby"というメーリングリストへの投稿記事が紹介されていましたので、訳してみようかと思い…
Twitterから問いかけると、Wolfram|Alphaが答えてくれるTwitter bot @wb_botを多言語化しました。40カ国語以上です! (Microsoft Translator APIを利用させていただきました。)@wb_botにメンションする形で探索式を入力すると、答えがリプライされます。 @wb…
世界中のツイートを地図上で表示するサイト"Tweets in the World"を作りました。 http://tweets-in-the-world.herokuapp.com 具体的には、位置情報を含むツイートをマーカーでプロットし、2秒に一度、適当にツイートの中身を表示しています。Photo Filterを…
Twitterのフォロー数が多くなって、遡って読むことが多くなりました。それも一興ですが、本来、つぶやきのように流れていくのがTwitter。遡って読まなければいいじゃんと言われたらそれまでですが、それでいい情報を逃すのももったいないので、読み上げスク…
ウェブサイトのサムネイル画像を作るのに、phantomjsを使いました。サーバーサイドのJavaScriptに不慣れなため、他の処理はRubyで作りました。これをherokuにデプロイする時に少し苦労しましたので、以下、備忘録です。1. 最小限のGemfileを用意して、`bundl…
(たまたまRubyでコーディングしていたのでRubyタグを付けました。)複数行を含む文字列から先頭行を取り出す必要がありました。 最初浮かんだのは、行に分割して先頭を参照。 head = string.split(/\r?\n/)[0] これだと先頭以外も分割するという不要な演算を…
Twitterから問いかけると、Wolfram|Alphaが答えてくれるTwitter bot @wb_botを作りました。 @wb_botにメンションする形で探索式を入力すると、答えがリプライされます。Steve Jobsさんの誕生日は? @wb_bot Steve Jobs' birthday2012-09-07 12:25:35 via Ech…
【人身御供募集】青空文庫の好きな作品を毎日少しずつ配信するtwitter bot @novels_botを作りました。まだまだ使いにくくまたデバッグの最中ですが試していただけたらうれしいです。@novels_botに話しかけると使い方が返信されます。よろしくお願いします。2…
一年以上前のプロジェクトですが、要望があったのでMaxima on Web for iPadのソースを公開します。 https://github.com/y-ich/maxima-on-web 個別にサーバーを立ち上げていただく必要があります。
パソコン版では、(凝ったことを考えなければ)フォルダからツアを見ることは簡単です。スイスの有名な山々の目印を作りましたので、例にご利用ください。http://y-ich.github.io/kml/example_swiss.kmlインポートしたフォルダをアクティブにして、「場所」ペ…
Rails+RSpec+Capybaraにて。 it { page.status_code.should == 200 # success } 検索すると、response, response_code, response.code, be_ok, be_success、respond_with, ...色んなパターンが引っかかりますが、どれも通りませんでした。(CapybaraがRSpecの…
reCAPTCHAを利用するため、railsプラグインrecaptchaを使いました。 test環境、cucumber環境ではverify_recaptchaは常にtrueを返すので、モックは不要でした。 test環境でのreCAPTCHAのinvalidの確認をするには、test環境でPRIVATE_KEYとPUBLIC_KEYを設定し…
入力フォームでvalidationのエラーがあった時、フィールドを<div class="field_with_errors">タグで囲って強調してくれますが、レイアウトが壊れることがあります。その対応で<div>を<span>に置き換えるという記事をネット上で見ましたが、やはりレイアウトが乱れることがあるようです。(jQuery Mobile</span></div></div>…
Sinatra with Delayed Job on PostgreSQLがローカル(OS X Lion)で動きました。以下、備忘録です。 概要 Sinatra上のウェブアプリケーションにバックグラウンドジョブを実装しました。 バックグランドプロセスにはRailsプラグインとして有名なDelayed Job、バ…
辞書Twitter連携をちゃんと動かすべく、調査を行いました。 一般論 ウェブアプリケーションは通常、ウェブプロセス、バックグラウンドプロセス、cronプロセスを使って実装する。時間のかかる処理、時間が不定な処理(他のウェブサイトへのアクセス)などはバッ…
JavaScriptとRubyの文法対比表を作りました。 類義語 JavaScript Ruby オブジェクト ハッシュ 文字列 シンボル プロパティ 属性 対比表 項目 JavaScript Ruby ソース文字コード Unicode(UCS-2/UTF-16) ソースコードの先頭もしくはshebang行の次に以下のよう…
iPadやiPhone、Androidケータイで英語のウェブサイトを見るとき、辞書が連携してくれなくて辛くありませんか? 辞書用ブックマークレットがたくさんありますが、みんな、辞書サイトを別のページで開くか、辞書アプリを開きます。戻るのが大変で不便です。 別…
復習: 以前のバージョン(Maxima on Web グラフ出力)では、CGIを呼び出すたびにMaximaを起動していてセッションを維持することができませんでした。 バックグラウンドでMaximaのプロセスを維持しようとすると、CGIスクリプトでは難しいので、ウェブアプリケー…
maxima.html <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"> <title>Maxima on Web</title> <script type="text/javascript" src="prototype.js"></script> <script type="text/javascript"> 0) { var xmlHttp = new Ajax.R…</meta></head></html>
iPadでMaxima使いたいなと思っています。数式を扱う時って、ディスプレイ見ているよりノート見る感じのほうがいいんですよね。 てっとり早いのはブラウザでAjaxかと思い、誰かやってくれているはずと思ったのですが、なかなかMaximaを生で見せてくれるものは…