沖縄Rails Hackathon に行ってきました

地域Rubyiestコミュニティのminami.rb、okinawa.rb、shibuya.rbの共催で行われた 沖縄 Rails Hackathonに参加してきました。11/17 に各地でアイデアソン。 11/23、11/24に沖縄でハッカソンという日程。今回僕は大阪ミナミ(難波周辺)の地域Rubyiest コミュニ…

[android][scala] Scala で Android アプリを作成する環境を作る

Ubuntu 11.10 リリースということで思い切ってクリーンインストールした結果、Scala + sbt で Android アプリを作る環境も作り直すことになりましたので、その時のメモを公開します。 JDK をインストール $ sudo apt-get install openjdk-6-jdk Scala をイン…

minami.rbの第9回勉強会で発表してきました。

一応僕も共同主催者だったような気がする大阪のミナミ(難波周辺をこのように呼ぶ)を中心に活動している地域rubyコミュニティ minami.rb の第9回勉強会が10/1に浪速区民センターでありまして、そこでgitのtipsについての発表を行なってきました。 発表資料「g…

[android][scala] レッッツVOAリリース

レッッツVOAというAndroidアプリをリリースしました。https://market.android.com/details?id=org.yalab.bourbon&feature=search_result 概要 レッッツVOAとは VOA News というアメリカのニュースサイトの英語初心者向けコンテンツ Special English(http://w…

[ruby] railsで古いバージョンで新しいプロジェクトを作る

$ rails _2.3.12_ PROJECT_NAMEちなみにrakeを使う時なども $ rake _0.8.7_が使えます。

RailsHackathon に行ってきました

2011年06月25日 〜 26日の日程で静岡県の伊東で開催された Yokohama.rb と Minami.rb の合同RailsHackathon に行ってきましたHachathon って何と言うかたはggrksMinami.rb 側の行程表は以下のような感じ 1日目 10:30 新大阪駅ホーム集合 10:50 新幹線乗車 移…

[scala] Scalaで画像を保存

scalaには実はファイルを書き込むAPIが存在しない。さらにscalaはバイナリデータを扱うのが苦手だったりで、画像の保存一つに偉い悩んでしまった。いろいろやった結果以下の感じに落ち着いた import java.net.URL import java.io._ val url = "http://www.go…

[rails] ActiveRecord3の connection_pool の挙動を調べた

基本的にRailsでは単一のDBを使用するように設計されています。とはいえ負荷軽減のためだったり、あるいは様々なしがらみのために複数のDBに接続しなければいけない場合がたまにあったりすると思います。しかも残念な事に違うDBに同じ名前のテーブルがあった…

[rails] 任意の位置にエラーメッセージを表示するViewヘルパー

ActionView::Helpers::FormBuilder.module_eval do def error_message(attribute) @object.errors[attribute].map{|error| '<span class="error">' + error + '</span>'}.join("<br>").html_safe end end これを使うと <%= form_for(@user) do |f| %> <%= f.label :name %> <%= f.text_field…

[rails] Rails3からSinatraを呼ぶ

Rails3からはSinatraとか他のRackベースアプリケーションが呼べるというのは様々な記事に載っているのですが、実例が見つからないので実際にやってみました。1. railsプロジェクトを作成する $ rails new rinatra2. sinatraアプリケーションを作成する $ mkd…

ruby 1.9.2p0をインストールしたらgemが使えなくなった方へ

$ sudo rm -rf /usr/local/lib/ruby/site_ruby/1.9.1/*ubygem* $ cd PATH/TO/RUBY_SRC $ sudo make install

[rails] Rails3.0 beta3のmailでiso-2022-jp

世の中だいぶUTF-8が浸透して文字化けもあまり見なくなった昨今ですが、 未だUTF-8化してない悩ましいものの一つに日本語メールがあります。 rails3のActionMailer(というよりかはmail gem)はだいぶ良くなったのですが、 まだそれができなかったのでモンキー…

[android] Softbank MMS On Froyo with ?.vodafone.ne.jp

モペログさんがせっかくMms.apkのUser-Agentを書き換えてSoftbankで使えるようにしてくれたのだけれど。未だに@k.vodafone.ne.jpのアドレスを使っている僕は残念ながら上手くMMSを使うことができなかった。 仕方がないので「ChimCity: Nexus Oneをアップデー…

[server] nginxのinitスクリプト

httpdのinitスクリプトを参考にnginxのinitスクリプトを書いた。 環境はCentOS 4.6なのでRedhat系なら使えます。 #!/bin/bash # Startup script for the Nginx Web Server # # chkconfig: - 85 15 # description: Nginx is a Light weight World Wide Web se…

[server] apache + passengerを捨ててnginx + thinにしてみた

nginx と thinの組み合わせが速いらしいので変更してみることにした。現在運用しているのは Railsアプリ x 2 Sinatraアプリ x1 Webdav (git) webdavについては別途書くとしてとりあえずrailsアプリとSinatraアプリをthinに。リバースプロキシをnginxにしてみ…

[ruby][twitter] TwitterStreamAPIで遊んでみた

先日アンカンファレンス関西とはこぶ忘年会で使用したTwitterStreamAPIのLTの資料とコードをアップしました。http://github.com/yalab/shooting_twitter/ http://www.slideshare.net/yalab/twitter-2795668サンプルアプリケーションはまだ複数人が同時にアク…

[emacs][haskell] anything.elでhrefを引けるようにした

id:rubikitchさんのRuby リファレンスマニュアルを Emacs で参照・ anything.el との連携(改訂版) - http://rubikitch.com/に移転しましたを参考にして、Haskellの日本語マニュアルhrefをanything.elで使えるようにしてみました。.emacsに以下のように書い…

[ruby] anything.el + refe2 のDBとindexを自動生成するようにした

id:rubikitch のRuby リファレンスマニュアル(通称るりま)と ReFe2 をインストール・ Emacs で参照する・ anything.el との連携 - http://rubikitch.com/に移転しましたを参考にanything.elとrefe2を使えるようにした。 ただ気がつけば(とっくに)安定版は1…

canvas要素で遊んでいる

canvas要素を使ってみたくてとりあえず画像がウロウロするスクリプトを書いてみた 実行してみる window.onload = function(){ var canvas = document.createElement('canvas'); canvas.width = '1000', canvas.height = '250'; document.getElementById('con…

githubに間違えたタグをつけちゃったので削除

git

満を持してgitでタグをつけてgithubにpushしたのだけれど実は誤ってブランチのほうにタグをつけてた!!という時の対処方 $ git tag -d version-0.3 $ git push git@github.com:yalab/shichimi.git :version-0.3git pushの第一引数には該当のプロジェクトのY…

[ruby] Sequelでのmigration用Rakefile

require 'rubygems' require 'rake' require 'sequel/extensions/migration' namespace :db do desc "migrate database" task :migrate do DB = Sequel.connect('sqlite://db/development.sqlite3') Sequel::Migrator.apply(DB, './db/migrate') end end

[ssh] SSHトンネリングしてみた

$ sudo ssh -Nf -L 3333:192.168.111.5:3389 rudeboyjet@222.222.222.222(IPアドレスはダミー)このようにするとlocalhostの3333ポートへの接続が222.222.222.222サーバーを経由して192.168.111.5の3389番ポートへつながるようになる。 ということで $ rdeskt…

[bash][unicode]BOMをgrepで検出する

Bash限定 $ egrep -r $'\xef'$'\xbb' *

バックアップスクリプトを書く

/usr/local/bin/backupに以下のスクリプトを作成 #!/bin/sh USAGE=`cat <

[ubuntu] ubuntu9.04の3Dデスクトップ 9.04にアップグレードするとxorgがフリーズしたり落ちたりということが相次いだ。 ということでいろいろ調べてvideoカードのバージョンを下げたりいろいろやった。 $ sudo echo "deb http://ppa.launchpad.net/siretart…

Ubuntu8.10を9.04にアップグレード

Ubuntuを8.10から9.04にアップグレードした。 するとしっかりとXwindowが立ち上がらなくなった。 とりあえずxorg.confをリネームしてxorgをリインストールしたらxが立ち上がるようになった。 手順は以下のとおり $ sudo mv /etc/X11/xorg.conf /etc/X11/xorg…

第33回Ruby勉強会@関西やります

今回はディレクターをやらしてもらいますので告知します。 http://jp.rubyist.net/?KansaiWorkshop33ちなみに奥さんや子供さん連れでも問題ありませんのでご家族で参加ください。

arguments.calleeで無名関数再帰

js

window.openで開いたサブウインドウをどのボタンをクリックして開いたかによって挙動を変えたくなったので以下のようなコードを書いてみた。 window.onload = function(){ var open_func = function(){ var label = this.innerHTML; var w = window.open('/w…

: Ngramしてみた

なんとなくNgramを実装してみたくなったのでやってみた #!/usr/bin/ruby require 'pp' require 'open-uri' $KCODE = 'u' String.class_eval do def ngram(n) analyzed = Hash.new(0) self.split(//).each_cons(n) do |cons| next if cons.include?("\n") ana…

: SVNで使ってたコマンドのGitバージョン

//svn log -v $ git log --name-status //svn cat -r REV path/to/file $ git cat-file -p REV:path/to/file //svn cat -r REV path/to/file > path/to/file $ git checkout REV path/to/file // rm path/to/file; svn update $ git checkout path/to/file他…