Hatena::ブログ(Diary)

ブログタイトル入力



ブログタイトル入力
 

2011年12月12日

githubを使ってるscalaを一部紹介 23:57

この記事はScala Advent Calendar jp 2011 - [PARTAKE]の12日目の記事です。

12/14追記:

xuweiさんからツッコミ&補足をいただきました。クゥエルァラス!

Scalaのライブラリについてごちゃごちゃと適当に説明 - scalaとか・・・

合わせて読んでくださいというか先に読んでください。

最近githubのページを見てる事が多いんですけど、Most Watched Scala Repositories - GitHubを見てたら結構知らないプロジェクトがあったので簡単なリストにしてみました。僕は、勉強会とかで「○○を知ってる人?」って聞かれたときに知らないけど見栄張って挙手して後ろめたい気持ちになることが多いので、みなさん名前だけでも覚えておくといいかと思います。

flockdb
twitterで使っているライブラリで、ソーシャルグラフのデータ(誰が誰をフォローしてるとか誰が誰をブロックしているとか)を扱うのに適しているらしい。
Kestrel
メッセージキューを扱うライブラリです。
Gizzard
分散フレームワーク。これもtwitter。githubのページに画像付きで説明があるのでそれ見ると早いです。
akka
分散処理のためのフレームワーク。分散処理以外にもいろいろあるとのこと。(すみません、全然わかってないです)。JavaのAPIも用意されてるのでJavaからも使えそう。
xsbt
Scalaのビルドツールsbt。日本語訳がありがたい。
scalatra
RubyのwebフレームワークSinatraからインスパイアされたフレームワーク。Example見るとかなりSinatraっぽい。
Play 2.0
フルスタックのwebフレームワーク。READMEには「beta」と書いてあります。playはバージョン1の時はプラグインを入れるとscalaをサポートという形だったのに、2.0は最初からscalaをサポートしているらしいです。
finagle
Asynchronous(非同期)でRPCクライアント&サーバーを作れるライブラリ。Asynchronousって単語は最近よく聞く。例として載っているのはHTTP、Thrift。その他HTTP streaming (Comet)、Memcached/Kestrelなどもサポート。
goose
HTMLコンテンツを解析して記事を抽出するライブラリ。元々Javaで書いてたっぽく「Regarding the port from JAVA to Scala」ってあるので後で訳したい。
Snowflake
またまたtwitterさん。「MysqlからCassandraに移行したんだけど、Cassandraってシーケンスを生成する仕組みが無かった。だからその部分を新しく作った。」って読める。
scalaz
Scalaのコアな部分を拡張するライブラリと聞いています。一人Scalaz Advent Calendar - [PARTAKE]面白いです。
Lift Framework
フルスタックのwebフレームワーク。MVCじゃなくてView Firstだよってことで独特の考え方したフレームワークでした。
blueeyes
Webフレームワーク。ただ「BlueEyes is intended only for creating RESTful web services」。RESTfulなサービスを作るのに特化していてHTML,、CSSやJavaScriptを生成するようなことには向いてない方向性。
spark
「iterative and interactive cluster computing」。HP見たらHadoopとの性能比較グラフが載ってたんで、それに対応しているっぽい。
spray
これもRESTfulなweb services作るもの。Akkaの上に作られてるのかな(on top of Akkaをどう訳すかという問題)。

時間が迫ってきたので飛ばします。

rogue
MongoDBにアクセスするするためのライブラリ。Liftの一部という位置づけなのかな。Liftの一部ではない。
unfiltered
webフレームワーク。これもRESTfulなサービス作るのに向いていそう。
sbt-idea
sbtでcreating IntelliJ IDEA project filesを作る。
scala-query
DBアクセス。2日目にありました。
android-plugin
Androidのプラグイン。
Squeryl
O/Rマッパー。
querulous
これもO/Rマッパー。読み方わからない。
scala_school
ドキュメント。これを読んでscalaの勉強してねって。
configgy
simple config and logging setup for scala
scala-json
JSONパーサー。パースだけじゃないです。Odersky著Programming Scala bookをベースに作ったとか。twitterさん。
sjson
これもJSONパーサー。パースだけじゃないです。
scalate
テンプレートエンジン。「JSPみたいなもんだけどScalaのクールさを忘れてないよ!」
casbah
Officially supported Scala Driver for MongoDB
scala-time
俺の大好きJodaTimeのScalaラッパー。
dispatch
JavaのHttpClient的にどこかのデータを取ってくる時に使いますが、それ以外にもOauthできたりtwitterのAPI叩けたり機能が豊富。

まだまだたくさんあります。マイナーどころまで全然たどりつけなかった。あと、間違い等ありましたらご指摘下さい。

2011年11月29日

テーブル構成 00:59

CREATE TABLE reblogs (
  reblog_key varchar(10) NOT NULL,
  posttype int(1) NOT NULL DEFAULT 0,
  lastdate datetime NOT NULL DEFAULT '1970-01-01 09:00:00',
  count int(11) NOT NULL DEFAULT 0,
)

CREATE TABLE posts (
  reblog_key varchar(10) NOT NULL,
  user varchar(32) NOT NULL,
  postid bigint(20) NOT NULL,
)

例えば、http://eri-eri-kamei-eri.tumblr.com/post/13395547613http://mcsgsym.tumblr.com/post/13501396948のデータをAPIから取得するとreblog_keyが一緒になっている。そのため、1つのreblog_keyに複数のポストが紐づいているような感じで。reblogsとpostsは1対多になる。

2011年11月28日

プレゼン資料 01:26

まだ途中ですが

picture-showってやつ使ってます。アウトプットがHTMLとcssとjsの組み合わせなのでネットにアップしやすく、当日はブラウザをそれで見るだけってなると楽ですね。あと十字キーでスライドショーの操作できるのがかっこいいです。

2011年11月26日

Homebrewをインストールしてみた 04:02

今までMacのソフト管理はMacPortsを使っていたんだけれどもHomebrewに変えてみた。新しいMySQLを使ってみたかったってのが理由で、MacPortsの場合、

mysql5 @5.1.59 databases/mysql5

mysql5-devel @5.5.2-m2 databases/mysql5-devel

mysql5-server @5.1.59 databases/mysql5-server

mysql5-server-devel @5.5.2-m2 databases/mysql5-server-devel

って感じで、5.5系の新しめのに対応してない感じだったので。Homebrewだと5.5.15が入りました。

2011年11月25日

スピーカー 18:06

tumblr developer's meetup jp 2011 on Zusaarでしゃべります。15分です。

@gkojax, reblog bot developer

ruby+mysqlの組み合わせでtumblrのbotを作ってるのでそれについてです。

技術的にはそれほど難しいことはしてなくて、

  1. APIを叩いてデータを取得する。
  2. ローカルのmysqlに貯める。
  3. 条件にあったものをリブログする。

の繰り返してるです。

過去にReblogされたものを掘り起こし再度Reblogしています。Tumblrに流れてくるポストって時事ネタを抜かせば、いつ見ても面白い物は面白いかなと。例えば1年前にポストしたものを今リブログしたら、最近始めた人は新鮮な気持ちでリブログするだろうし、1年前からtumblrやってた人は懐かしい気持ちで改めてリブログするだろうし。

picture-showというscalaのツールでプレゼン資料を作っている最中です。

tumblrのbotをscalaで書き直そうという試み 18:57

https://github.com/gkojax/tumblr-bot-gkojax

 

2008 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 |
2010 | 10 | 11 | 12 |
2011 | 01 | 07 | 08 | 11 | 12 |