なんかメモだけ残ってたので思い出して書く

active_support関連で。 require 'active_support/all' def a return [1] end def b return nil end c = b || a d = b.presence || a この場合cもdも、aの結果である[1]になる。次、 def a return [1] end def b return [] end c = b || a c = b.presence ||…

Mongoid

ここ見ながら、使い方に迷っていたので。 class Person include Mongoid::Document embeds_one :name attr_accessible :name end class Name include Mongoid::Document field :vorname, type: String field :nachname, type: String embedded_in :person en…

coffeescriptも勉強中だしjqueryも勉強中だし

ってことでjqueryの本に載ってることをcoffeescriptで書き直してます。で、実際に動かしてみるときはRailsで環境を作ってます。coffeescriptからjavascriptへの変換はRailsに任せましょう。 generateまで rails new cs cd cs rails generate controller Cafe…

coffeescript

coffeescriptのシンタックス・ハイライトは無さそうなのでjavascriptでやってみる。 $ -> $("#click_here_button") .click -> $("li#2").prependTo $("li#1") .click -> $("li#3").prepend $("li#1").html() + " " 今jqueryの勉強してるのですが、jqueryの本…

githubを使ってるscalaを一部紹介

この記事はpartake.inの12日目の記事です。 12/14追記: xuweiさんからツッコミ&補足をいただきました。クゥエルァラス! Scalaのライブラリについてごちゃごちゃと適当に説明 - xuwei-k's blog 合わせて読んでくださいというか先に読んでください。 最近gi…

テーブル構成

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,…

プレゼン資料

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

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

今まで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 …

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

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

スピーカー

http://www.zusaar.com/event/158051でしゃべります。15分です。@gkojax, reblog bot developerruby+mysqlの組み合わせでtumblrのbotを作ってるのでそれについてです。 技術的にはそれほど難しいことはしてなくて、 APIを叩いてデータを取得する。 ローカル…

今日書いたbuild.sbt

libraryDependencies ++= Seq( "org.slf4j" % "slf4j-api" % "1.6.1", "ch.qos.logback" % "logback-classic" % "0.9.29", "commons-httpclient" % "commons-httpclient" % "2.0.2" )

テーブルのバックアップとリストア

mysqldump5 -u user -p database --default-character-set=binary --tables table > backup.sql mysql5 -u user -p database --default-character-set=binary sql

mysqlのユーザー追加

GRANT ALL PRIVILEGES ON *.* TO ユーザー名@localhost IDENTIFIED BY 'パスワード' WITH GRANT OPTION; GRANT ALL PRIVILEGES ON *.* TO ユーザー名@'%' IDENTIFIED BY 'パスワード' WITH GRANT OPTION;

MacBook Air 11インチ欲しい! http://d.hatena.ne.jp/keyword/MacBook%20Air%2011%A5%A4%A5%F3%A5%C1%CD%DF%A4%B7%A4%A4%A1%AA 欲しい!欲しい!欲しい! 今年のブログ生活にかけるあなたの想い ここのところプログラミングのことしか書いてないけど、今年…

jarファイルの実行

毎回忘れるので。 sbtで「package」と打つと、target/scala_(build.scala.versions) 配下にjarファイルが作成される。で、 java -classpath /opt/local/share/scala-2.8/lib/scala-library.jar:jarファイル メインのあるクラス 文章がわかりづらいな。

テキストファイルをオープンして内容を出力する

(この記事は Scala Advent Calendar jp 2010 : ATND の8日目です。) 「scala.io.Source.fromFile」というのがあってそれが使えそうだった。 val filename = "test.txt" scala.io.Source.fromFile(filename).getLines.foreach(println) おおお簡単!と思っ…

build配下のプロジェクトクラス import sbt._ class MyProject(info: ProjectInfo) extends DefaultProject(info) { override def libraryDependencies = Set( "net.databinder" %% "dispatch" % "0.7.7" ) ++ super.libraryDependencies } 検索するサンプル…

Mapの初期化

var map = Map("k1"->"v1", "k2"->"v2") ちなみに「"k1"->"v1"」の部分はタプルと言うらしい。 値の追加 map += "k3"->"v3" 取得 map.get("k1") res1: Option[java.lang.String] = Some(v1) map.get("k1").get res2: java.lang.String = v1 map.getOrElse("k…

Liftにライブラリを追加

project/build/LiftProject.scalaに追加 override def libraryDependencies = Set( "net.liftweb" %% "lift-webkit" % liftVersion % "compile->default", "net.liftweb" %% "lift-mapper" % liftVersion % "compile->default", "org.mortbay.jetty" % "jett…

main関数が複数ある場合

runを実行するときにどっちのmainを使うか選択肢が出る。 TODO:CustomActionsなどを使って複数のmain関数をきれいに使いこなせるようにしたい。

sbtにライブラリを追加

そもそもsbtにライブラリを追加するのがこのやり方 DefaultProjectを継承したクラスを記述して、project/build配下におけばいい。

バックアップ

mysqldump -u root -p --all-database --single-transaction > /tmp/all-database.dump

Enumerableのzip

プログラミング言語 Ruby リファレンスマニュアル 引数に渡した配列の各要素からなる配列の配列を生成して返します。 p [1,2,3].zip([4,5,6]) => [[1, 4], [2, 5]]

ここのスペースはメモ代わりに使うことしたので、これからこういう更新ばっかりになると思います。ソースコードの断片を含んだ文章をブログに書くときははてなが一番適してる気がしますね。

Arrayのcompact

プログラミング言語 Ruby リファレンスマニュアル compact は self から nil である要素を取り除いた新しい配列を返します。

liftwebからダウンロードしたもの

Lift :: Download からダウンロードしたもの #Project properties #Fri Apr 23 11:24:20 PDT 2010 project.organization=Lift project.name=Lift SBT Template sbt.version=0.7.4 project.version=0.1 def.scala.version=2.7.7 build.scala.versions=2.8.0 p…

liftのインストール手順

Lift :: Home Then cd into lift_sbt_prototype and type: sbtAt the sbt prompt, type: updateThen: jetty-runPoint your browser to: http://localhost:8080/

文字列を分割してリストにする

scala> "1 2 3" res0: java.lang.String = 1 2 3 scala> res0.split(" ") res2: Array[java.lang.String] = Array(1, 2, 3) scala> res2.toList res3: List[java.lang.String] = List(1, 2, 3) splitで分割したらArrayになって、toListでListになる。

テスト

書き込みテスト

ちょうど一ヶ月放置してしまいましたね。 とりあえず、明けましておめでとうございます。