StoryEdit 開発日誌

ウェブアプリ StoryEditを作ってましたが延期。普通のブログ。

2013-01-01から1年間の記事一覧

Go言語、ビルド編。

Go

Scala, Erlang, Go, などなど、様々な新言語がひしめいてきた2013年。4年前の登場から、話題性が高かったGO言語だが、久々に触ってみた。 ビルドがgo buildになってる。 '6g'とか、アーキテクチャにあわせたコンパイラがいくつもついてきた、リリース当初。…

Gitでサブディレクトリのみをマージする。git filter-branchで。

git

タイトル通り。あるサブディレクトリだけブランチ間でマージしたい。というとき。いろいろ方法はあるが、以下の方法をとった。1. git filter-branchでそのディレクトリだけのリポジトリを作る(切り出し) 2. マージする。 3. パッチを作成する。 4. 元のリ…

Erlang の上で動くElixir

Elixirという言語があるらしい。 http://elixir-lang.org/Erlang VMで動く、Rubyライクな言語だということ。Rubyは、唯一、”嫌い”な言語。これは、なぜかというと、いちいちendをかかねばならないからである。制御構造のterminationに}ではなく、endを選んだ…

Erlang試す

Erlangを触ってみた。とりあえず難解。http://www.erlang.org/course/course.html から、まずはSequential programmingについて。 関数定義 まずはともあれ、関数を定義する。 add(X) -> X + 1. まず、ドットがややこしい。ブロックの終わりにはドットをいれ…

jarから、シンボルを見つける

あるjarに、どんなクラスが入っているか見つけたい時はないだろうか?C言語であれば、soやdllに入っているシンボルを見つけるのと同じ機能がjavaにもほしい。 $ jar -tf servlet-api.jar META-INF/ META-INF/MANIFEST.MF javax/ javax/servlet/ javax/servle…

Apache tomcatを起動する

なぜこうもエントリが少ないのか不明だが、Apache Tomcat 6を起動するまでの流れメモ。バイナリディストリビューションに含まれる、RUNNING.txtに起動手順が書いてあるが、これがサクっとウェブに上がってないのは、なぜだろうか。Javaはネットではラフに取…

邪バ

久々にはまった。workaroundはかけたが、意味がわかってないのでメモ。以下のような、ファイルのパスをURLで受け付けるコードがあった。 private final static String DEFAULT_CONFIGURATION = "config.yaml"; private URL getConfigURL() throws Configurat…

UIColor で 16進数を使う

なぜかObjective-Cにも手をだす。viewがaddできることに気づいてからは、InterfaceBuilderなどに頼らないため、サクサクと作業がすすむ。ところで、UIColorは、16進数指定ができないという謎仕様らしい。Stack overflowにナイスなマクロがあったのでそのまま…

urllib? urllib2? いやいや、requests?

久々に簡単なスクリプトを書いていたが、httpアクセスできるPythonのライブラリを探してみた。 はじめにurllibがひっかかる。直訳調で、かつクオリティが高いため、少し読むのがめんどくさいでおなじみのIBM Developersのリソースだ。 urllibの関数名で再度…

Windows XP (English version)で日本語を読む

Microsoftがウェブサイトなどの閲覧確認のために、無料のVMを配布しているのはご存知のとおりだろう。LinuxからでもMacからでも、VirtualBoxさえあれば、WindowsXPとかWindows Vistaとかが試せる。 http://www.microsoft.com/en-gb/download/details.aspx?id…

Google Guavaいい。

ランダムにJavaでも。 List<String> strings = new ArrayList<String>(); なんて書くのはだるい。そこで、Guava.jarを参照させて、使うと、あら簡単。 List<String> strings = Lists.newArrayList(); Genericsの二度書きを防いで、可読性をあげます。Javaにもこういう遊び心がある文</string></string></string>…

日本語版WordNetから、英語 --> 日本語の翻訳を探す。

お盆休み!、ということで興味の赴くまま、また別のウェブアプリをつくってます。 英単語勉強アプリ。Coffee Script + nodejs で作成中です。このメイン機能で、英単語いれたら、その意味をだしてくれる必要があるんですが、そのときに、翻訳が必要。翻訳API…

class Hoge:と、class Hoge(object):の違い

定義は以下のとおり。 class Hoge: def __init__(self): self.x = 'hoge' class Hoge(object): def __init__(self): self.x = 'hoge' これをhelp()で比較してみた。 Help on class Hoge in module __main__: class Hoge | Methods defined here: | | __init_…

TODO: class Hoge: と、class Hoge(object): の違い

表題がわからない。とりあえず、どっかのOSSに従って、class Hoge(object):と書いていたんだが、 vars()が使えないことがあり、class Hoge: にしたら、使えた。ここはどっかで調べる必要がある、ということで、TODO。

tmux 1.8 on MacOSX

コンパイルエラーがでたので、解決法メモ。EVBUFFER_LENGTHがどうのこうの、というエラーが発生。libevent2.0.xを使っていたのだが,libevent-2.0.5だということが発覚。最新は、2.0.21.stable。したがって、libeventを更新したら、うまくインストールできま…

nginx、つれづれリーディング。

ウェブサーバの仕組みを知る為に、とりあえずnginxを読む。 だらだらと読みながらのログとなるので、解説と間違わないように。 nginx.c main関数がある。 いろんな機能をinitしたあとに、init_cycleというのがある。どうやら、ここで、ウェブサーバの起動が…

weighthttp

これが、先日ふれたサーバに使われているベンチ。 たしかに、apacheのテストではいまいちだったので、こっちで性能図ってみる。http://www.iij.ad.jp/company/development/tech/activities/weighttp/

parseIntとvalueOfの違い

Integer.parseIntは、プリミティブ。Integer.valueOfは、インスタンスをそれぞれ返す。

混沌としてきた。

4月から仕事はじまりまして。まったくコードかけなかった。笑いろいろ投げ捨てて、とりあえず、javaの並列を知りたいと言う事で、 web serverを書くことに。現在のウェブサーバの潮流は二つあるらしい。一つは、マルチスレッドで受付を待つもの。そして、も…

CoffeescriptでHello World

わけあって、coffee scriptで開発しております。登場当時から気になってはいたのですが、計らずしも使う事になってしまいました。 CoffeeScriptとは JavaScriptを生成する為の上位言語です。 一般的なJava(コーヒー豆)とCoffee(抽出されたコーヒー飲料)…

StoryEditに戻る決心。

RuieはだいたいRPGらしく動作したので、とりあえずペンディング。さて、Javaはおいといて、今日はStoryEditに戻ります。 DBの再設計と、そのラッパークラスの再設計でけっこうめんどくさい思いをしており、 そこでストップしておりました。そして今日あるこ…

EclipseのEmacsバインドについて

EclipseのEmacsバインドで、C-x C-fでファイルを開けるのはありがたいんだが、 画面分割している際、既に開いているファイルをC-x C-fで開くと、そのファイルのある側でしか開けない。この微妙な差異が無性にストレス。笑なんかいい方法ないんかな。。。

Slick2dでRPG風 Transition画面遷移

State Transition example from welovy on Vimeo.動画とってみました。QuickTimeの画面録画って音はとれないのですね。まぁまだ著作権うんぬんがあやしいので、音はなくてヨシとしましょう。今回はSlick2の画面遷移について。StateBasedGame.enterState(int …

githubアカウントを使い分ける

git

仕事用と、個人用。本名と匿名。気分で切り替えたい時もあるでしょう。 そんなときは、githubアカウントを使い分けましょう! やり方は前から知ってたんですが、なぜかうまくいかなくて諦めていたのですが、もう一回やってみたところ、rsaのスペルミスだった…

VectorとArrayList

描画にベクトル計算を使おうとおもって、Vectorで調べていたら、java.util.Vectorを発見。しかし、Vectorは「オブジェクトを格納できる配列」だったわけで、ベクトル計算をするためのものではなかった。(結局、javax.vecmath.Vector2dを使ってる)しかし、…

jconsoleでプロセスモニタリング

おおおー。おもしろいもの見つけました。jconsoleというJava VMのライブモニタリングツールを発見。きっと基本事項なんだろうが。これで確認すると、ふむふむ、メモリ使用量とかがわかる。 これはRuieへ接続させたもの。起動時になにやらどかっとメモリを食…

Slick2DでRPG風 タイトルスプラッシュを作成

StateBasedで作成してみた。まだStateTransitionを使ってないのでなんともいえないが、 シンプルにいえば以下のような感じで作る。(チュートリアルより噛み砕く) StateBasedGameをextendしたメインクラス public class Ruie extends StateBasedGame { publ…

Slick2DでRPG風 GameStateを使う

マップ移動画面ができたので、タイトルスプラッシュでもいれるか、と思い、シーンの管理クラスを作ってた。ここで、ふと、ゲームのライブラリなら、シーンマネージャーくらいありそうだな、と思い、Javadocをながめていると、おぉ、やっぱりあった♪GameState…

Slick2dでogg再生 〜その1〜

Musicクラスを使ってみよう。というわけで、 Music m = new Music("music/hoge.ogg"); m.loop(); なんと。楽勝。とおもってたら、以下のエラー。 Mon Jan 21 19:46:19 JST 2013 INFO:Initialising sounds.. Mon Jan 21 19:46:19 JST 2013 INFO:- Sound works…

Slick2DでRPG風

ここのチュートリアルがだいたいベーシックを網羅している。http://thejavablog.wordpress.com/2008/06/08/using-slick-2d-to-write-a-game/フリーの素材を適当に拾ってきて、いまこんな感じになってます。主人公は動かせます。まずはカメラのパンが必要。Sl…