よしだメモ このページをアンテナに追加 RSSフィード

2011-10-14

[android][scala] ScalaAndroid アプリ作成する環境を作る

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

JDKインストール

$ sudo apt-get install openjdk-6-jdk

Scalaインストール

$ cd /tmp
$ wget http://www.scala-lang.org/downloads/distrib/files/scala-2.9.1.final.tgz
$ sudo tar -C /opt -zxvf scala-2.9.1.final.tgz
$ cd /opt
$ ln -s scala-2.9.1.final scala
$ echo 'export SCALA_HOME=/opt/scala' >> ~/.zshrc
$ echo 'export PATH=$PATH:$SCALA_HOME/bin' >> ~/.zshrc
$ source ~/.zshrc
$ scala -version
Scala code runner version 2.9.1.final -- Copyright 2002-2011, LAMP/EPFL

Android SDKインストール

$ cd /tmp
$ wget http://dl.google.com/android/android-sdk_r13-linux_x86.tgz
$ sudo tar -C /opt -zxvf android-sdk_r13-linux_x86.tgz
$ echo 'export ANDROID_SDK_HOME="/opt/android-sdk-linux_x86"' >> ~/.zshrc
$ echo 'export PATH="$PATH:$ANDROID_SDK_HOME/tools"' >> ~/.zshrc
$ source ~/.zshrc
$ sudo /opt/android-sdk-linux_x86/tools/android
[Available Packages] 
↓
[Android Repository] のすべてのSDK、[Third party Add-ons] のGoogle API をチェック
↓
[Install Selected]
↓
[All accept] 
↓
[Install] #だいぶ時間かかります
$ sudo mkdir -p /opt/android-sdk-linux_x86/.android/avd
$ sudo chmod 777 /opt/android-sdk-linux_x86/.android/avd
$ android avd
[Virtual devices]
↓
[New]でEmulatorを作成する。作成したEmulatorは[Start]で起動しておく

sbt のインストール

$ cd /usr/local/bin
$ sudo wget http://typesafe.artifactoryonline.com/typesafe/ivy-releases/org.scala-tools.sbt/sbt-launch/0.11.0/sbt-launch.jar
$ sudo vi /usr/local/bin/sbt
java -Xmx512M -jar `dirname $0`/sbt-launch.jar "$@" 
$ sudo chmod 755 /usr/local/bin/sbt
$ sbt about | grep This
[info] This is sbt 0.11.0

android-plugin のインストール

$  curl https://raw.github.com/n8han/conscript/master/setup.sh | sh
$ ~/bin/cs n8han/giter8
$ cd /tmp
$ git clone https://github.com/jberkel/android-plugin.git
$ cd android-plugin
$ sbt publish-local

sample アプリを作る

$ cd /tmp
$ ~/bin/g8 jberkel/android-app -b sbt-0_11
Template for Android apps in Scala

package [my.android.project]: com.android.test
name [My Android Project]: Test
main_activity [MainActivity]: #ブランクのままEnter
api_level [10]:                    #EmulatorのAPIレベルに合わせる
$ cd test
$ sbt
> android:package-debug
> android:start-emulator #Emulator 内で Hello world と表示するだけのアプリが立ち上がれば成功

Android アプリScala で作っててうれしい点というのはまず何といっても Scala が使える点でありEclipse を使わなくてもいい点です。

ただ、Android 端末はなんといってもモバイル端末でメモリCPUもそれほど潤沢ではないので速度的な問題で関数型言語恩恵はなかなか受けられません。Better Java として Scala を使っている感じです。

はいえ数値化されにくい「書いていて気持ちいい」という点でJavaを使うより生産性が高いように思います。この辺は僕がrubyプログラマだからというのもあるでしょうけど。

あと emacs の ensime なんかが意外に強力ですし一度やってみられてはいかがでしょうか?

2011-10-03

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

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


発表資料「gitの使い方あれこれ」: http://www.slideshare.net/yalab/git-9518230


ちなみに宣伝ですが minami.rb は rails を中心としてその周辺技術(git、coffee-scriptjQuery、デザイン、SQL...etc)をなんでもやろうというコミュニティです。レベル的にはrailsscaffold やってみたんだけどそこから先に進めないぐらいの人が対象です。中の人のレベルは様々ですが...。


大阪周辺にお住まいRailsに興味をお持ちの方は是非一度いらしてください。


minami.rb のMLへ参加したいというかたは rudeboyjetあっとまーくgmail.com までご連絡ください。

2011-09-03

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

レッッツVOAというAndroidアプリリリースしました

https://market.android.com/details?id=org.yalab.bourbon&feature=search_result

概要

レッッツVOAとは VOA News というアメリカのニュースサイト英語初心者向けコンテンツ Special English(http://www.voanews.com/learningenglish/home/) で英語勉強をするためのアプリケーションです。

スクリプトを読みながらリスニングができ、単語タップすると英辞郎 on the web(http://www.alc.co.jp/)で単語意味を調べる事ができます

その他

レッッツVOABeta版です。今後も機能追加をしていきます

具体的に考えていることとして

などを予定しています

またレッッツVOAscala で書かれており、完全なソースコードgithub で公開しております

https://github.com/yalab/bourbon

ソースコードライセンスGPLですので、勝手にcloneして配布したり売ったりしても問題ありません。しかしその際は変更点を含む全てのコードGPLライセンスで公開する義務が発生しますのでご注意ください。

不具合などを発見された場合はまたは何かしらの要望がある場合はこの記事にコメントいただくか、あるいはTwitterで @yalab までご連絡ください。

2011-08-03

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

$ rails _2.3.12_ PROJECT_NAME

ちなみにrakeを使う時なども

$ rake _0.8.7_

が使えます。

2011-06-29

[] RailsHackathon に行ってきました

2011年06月25日 〜 26日の日程で静岡県の伊東で開催された Yokohama.rb と Minami.rb の合同RailsHackathon に行ってきました

Hachathon って何と言うかたはggrks

Minami.rb 側の行程表は以下のような感じ

1日目

10:30新大阪駅ホーム集合
10:50新幹線乗車 移動中もハッカソンです!ということでみんなコード書いたりお弁当を食べたり
14:30伊東駅到着先に高速バスで移動していた @fukajun に迎えに来てもらい宿へ移動
14:50宿到着
 f:id:rudeboyjet:20110625153829j:image:left旅館廊下
15:00先にチェックインしていた Yokohama.rb の部屋で自己紹介などをする。ここからは自由行動、地元スーパーに買出しに行ったりコードを書いたりお風呂にはいったり
18:00夕食開始
19:00再び自由行動。僕はこの時間の間にお風呂にはいったりコードを書いたりうろうろしたり
23:00品評会開始(ustも行ったけど録画はしてません。あしからず)
00:15品評会終了宴会開始
 f:id:rudeboyjet:20110626003451j:image:leftすげー量のお酒があった...主にMinami.rbが持参
02:30Tiger & Bunny の ust 配信を視聴(部屋が暗くなったため半数が討ち死にする)
03:30(@yalab討ち死に)

2日目

08:30朝ご飯
09:30朝のお散歩
10:00チェックアウト
10:30東海見学 ここで不幸にもはぐれた人がいたり前日の深酒がたたってふらふらになる人がいたりとなかなかのおもしろい事象が発生する
 f:id:rudeboyjet:20110626103342j:image:left東海館正面
12:00見学終了
13:00伊東駅で昼食
13:40Yokohama.rb とわかれる
13:50熱海駅へ移動
14:20MOA美術館見学
16:30見学終了バスで熱海駅へ移動
16:50自由行動で熱海の商店街でお土産を買う
17:10新幹線乗車 途中浜松駅でひかりに乗り換える
20:00京都組が京都駅でおりる
20:30新大阪到着
20:40大阪駅到着、大阪組焼肉へ、のち解散

Github リポジトリ(わかってるやつだけ)

攻略油長https://github.com/Minamirb/TaleOfAburacho@to_ueda @satomicchy
たらいhttps://github.com/Minamirb/TARAI@fukajun @koko_u
がぞちずhttps://github.com/Minamirb/horai@yalab @1syo

当日のつぶやき

http://twitter.com/#!/search?q=%23railshackathon

以下感想などを散文的に

Minami.rbとしては2回め、Yokohama.rb との共同開催ははじめて(というかYokohama.rb とのイベント自体が初)のハッカソンだった。

しかし前回と比べるとアイデアソンからの一週間のコミットがとても多くてわりと驚いた。Github で公開リポジトリにしてると「おお、なんかみんなけっこうコミットしてるやん」て感じで変に競争意識も芽生えていい感じということがわかった。


当日の顔合わせはしかしながら予想通りそれなりによそよそしい感じはした。

とはいっても宴会を越えた後次の日にはなんかやっぱり仲良くなっていたりでやっぱりいっしょに何かやるってのはいいことだね。


今回の事をきっかけに Yokohama.rb にも rails ブームが訪れたりしないからしら。


2日目の観光も古い建物とか美術品とかを堪能できてなんかとてもよかった。


毎日ハッカソンならいいのに...


ちなみに僕のチームの作品「がぞちず」はもう少し継続して開発してそのうちサービスとして公開しようとは思います。(時期未定)


最後にですがこんな素晴らしいイベント実施していただいた @dan5ya @1syo @satomicchy にあらためてお礼を申し上げます。ありがとうございました!