pythonでイベント駆動サーバー

趣味で非同期サーバーが作りたくて土日に色々調べてたんですが一旦まとめてみます。 node.jsなんか使えば苦労せずに出来るのでしょうが僕はpythonが好きなのでできればpythonでやりかったということです。予めお断りさせていただくと間違ってる情報が含まれ…

CentOS6のパーティション拡張

CentOS6.4のディスクを拡張したときのメモ。 環境はMacBookProでVMware Fusion5を使用しています。 CentOSのパーティションはLVMで設定してます。 /だけに全部割り当てている感じです。以下の手順は自己責任でお願いします。まず始めに物理的なディスクを拡…

Xcodeを5にしたらhgsubversionが動かなくなった

お久しぶりです。最近OSをMavericksにしたのでXcodeも5にしたのですよ。 そしたらhgsubversionが動かなくなっちゃって。とりあえず動くように持ってったのでメモ。まずCommand Line Toolsをインストールします。 Xcode5からPreferencesのDownloadからインス…

Django標準のjson serializerをカスタマイズする

Djangoは標準でjsonにシリアライズする関数があるんですが、 from django.core import serializers # recordsはModel.objects.all()とかの結果 data = serializers.serialize("json", records, ensure_ascii=False) # これのことです。 標準の機能だとpkとmo…

これまた久々の更新(ライブラリの紹介)

忙しいってのを言い訳にしてはいけないと思うんですがネタも特になくて更新してませんでした。以前から公開してるzz.jsというスマホ向けHTML5ライブラリなんですが、 だいぶまともになったので改めて紹介してみます。https://bitbucket.org/ta2xeo/zz.js/wik…

忙しくて更新サボっとりました。

久しぶりの書き込みになります。現在進行形の仕事が忙しくて更新サボってました。 今後も数週間はまともに更新できないことでしょうw話は変わりますが、最近Pyramidに興味を持ってて少し触ってます。 他に触ったことのあるPythonのフレームワークはDjangoが…

デバッグ機能作りました。

自分用としてzz.jsにデバッグ機能を用意しました。 細かいバグとかはありますが使えるレベルにはなっているので公開してあります。機能としては、 FPSをシームレスに変更可能。 オブジェクトのツリー表示。 各オブジェクトのプロパティを変更可能。 MCの再生…

Emacs24を入れてみました。

なぜかふとEmacsを24にしてみようと思い立ったので入れてみました。OS X用だとSourceForgeで.dmgが配布されているのでそこからダウンロードしてきました。 普通に古いのと置き換えました。起動するとinit.el内でエラーがいくつか出ていたのでとりあえず困ら…

前回ですね

canvasに変えるみたいな記事書いて、実際途中までやってたんですけどあんまりパフォーマンス変わらなかったのでそっと--close-branchしましたw

転職しました。

紆余曲折ありましたが転職しました。 知り合いの方にお誘い頂きまして、すぐにでもと言うことで実際働き始めてます。 仕事就くのもなかなか大変な時代だと思うのでとてもありがたいことです。今回もソーシャルなんですけどPHPです。 昔Facebookで出してたア…

canvasはFlashの置き換えになるのか

HTML5になっても今の状況を見る限りブラウザ依存という問題は消えないわけでして、せめてcanvasに限定するならどうだろうかと思ったわけです。今までブラウザゲームと言えば大半がFlashで作ってましたけどFlashだと依存問題があんまり無いので開発者はそれほ…

python3.3から入った__qualname__を使ってみる(前回の続き)

今回も前回のネタを引っ張ります。前回のvalidate_methodデコレータの問題点として継承して定義したクラスに使用すると継承元のメソッドまでチェックしてしまいうまく動きません。標準モジュールのクラスやサードパーティ製モジュールのクラスを継承すること…

python3の例外のfromキーワード(前回の続き)

前回の反省を踏まえて書き直しました。 #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 関数の引数型を検証します。 """ from functools import wraps from inspect import getfullargspec, getmembers, isfunction class ArgumentError(Exception): d…

クラスデコレータ使ってバリデーションしてみた。(前回の続き)

前回のやり方だと関数一つ一つにデコレータいちいち付けてらんねぇよってなるので多少楽になるようにしてみます。 と言ってもクラスのメソッドのみです。まず前回用意したtest.pyのvalidate関数に追記します。 argSpec = getfullargspec(func) + if "self" i…

python3の関数アノテーションを試してみました

ネタ的には今更なんですけど、よくわかっていなかったので試してみました。 予め言っておきますと初歩的な内容なので期待しないで下さい。引数の情報を取得する為に http://docs.python.org/3.2/library/inspect.html#inspect.getfullargspec や http://code…

zz.jsのドキュメントを書きました。

bitbucketへのリンクです。https://bitbucket.org/ta2xeo/zz.js/wiki/Homeこのzz.jsは自分が携わっているソーシャルゲームで実際に使用しているのですが Androidは端末依存、ブラウザ依存があったりでしんどいです。ですのでAndroid2.XはFlash LiteにしてAnd…

あけましておめでとうございます

あけましておめでとうございます。 今年もよろしくお願いします。地元の神社へ初詣行って来ました。おみくじ引いたら吉でした。去年は大吉だったような気がします。今年も成長できる年になりますように。

もう今年も終わり

先月26歳になったんですけど働き始めてからの年取ってる間隔が物凄く早いです。そして今年も終わりです。今年はゆっくり年末年始を迎えられそうです。ここ数年はかなり忙しかった思い出が。たまには、まったり過ごすのも良いものです。せっかくなので今年を…

裁量労働制ってあんまし良くないと思ってます。

以前所属してた会社は裁量労働制だったんです。僕自身にとっては長短あって、良い点はお店とか役所寄ってから行きたいだとか用事済ませてから行きたいとかの場合で、悪い点は、連絡取りたい人がなかなか出社して来ないとかでした。会社としてはやることやっ…

zz.jsを公開しました。

https://bitbucket.org/ta2xeo/zz.jsスマホ向けのJSライブラリです。 ソーシャルゲームのFlashを移植する為に書きました。 PCブラウザでもChromeとかだったら動きます。 ActionScript3っぽく記述できるのが特徴ですがぶっちゃけ既に似たようなものが沢山出回…

ezscroll.jsを公開しました。

https://bitbucket.org/ta2xeo/ezscroll.jsアンカータグを押した時にスクロールするスクリプトです。僕が使いたくて作ったので超手抜きです。エラー処理もしてません。面倒だったのでデフォルトだと全てのリンクが適用されるようになってます。 なので読み込…

ProxyCommandで多段SSH

自分用にメモ。具体例。 $ ssh -o 'ProxyCommand ssh -p 11122 tatz@example.com nc %h %p' tatz@192.168.0.20example.com:11122経由で192.168.0.20のマシンにログインする例。おまけでrsyncも。 -eオプションにsshを突っ込めば良いんだけど後ろの部分は外側…

djangoのadminサイトでview onlyなページにしたい

djangoのadminページはとても強力なんですが不満な点があります。 それはユーザーのパーミッションにread onlyを指定できないことです。 是非とも標準で付けて欲しいです。ググるとそれについて書いてあるサイトがちらほら出てくるんですけどAdminSiteをカス…

mercurialのhgwebをWSGIで動かす

ブログ放置しまくりでした。 久しぶりに書いてみます。僕はメインにmercurialを使っています。 ただマルチプルヘッドが増えてきたり、ブランチが複雑になってきたりするとCUIだとgraphlogが結構見辛くなってきます。なのでブラウザからgraphが見れるようにし…

easy_installでpipインストールしようとしたらエラー出た

表題の件で。新しくセットアップしたFedoraにpip入れようとしたらエラーが出てしまった。 Python headers are required to build Mercurialこんなのとか、 Command python setup.py egg_info failed with error code 1 in /root/build/mercurialこんなエラー…

softbank携帯でWJ46065Eのエラー

ソーシャルゲームの開発でsoftbank携帯だけWJ46065Eエラーが発生しました。 ファイルサイズが大きいのが問題かと思ったんですが60KBくらいで容量的には平気なはず・・・ でも確かにファイルサイズを削るとエラーは出なくなり、と謎の現象にハマってました。…

自炊はじめました

自分で電子書籍化して読むあれです。少し時代に乗り遅れた感がありますけど、先日新しいiPadを手に入れたのをきっかけに始めてみました。以前からやりたいやりたいとは思ってたんですけどiPadなどのリーダーが無かったのでなかなか踏み切れずにいました。(…

餃子は酢だけの人です

大体の人は餃子を醤油+酢+ラー油で食べると思うんですが、僕は酢だけで食べます。醤油とラー油が入っちゃうとその味になっちゃって餃子自体の味がわかりにくく感じます。じゃあ酢も付けんなって? そこは寿司に醤油を付けると同じような感覚です。 無いと…

PILをインストールしようとするとsupport not availableになってしまう件

pipでPILをインストールしようとするとJPEGとかZLIBがsupport not availableと出てしまう件の対応方法です。 $ sudo pip install PIL自分の環境はCentOSなのでyumでzlibやlibjpeg-develはインストール済みなんですが上のコマンドを打っても有効になりません…

KVMで仮想マシンが起動できなくなった

今までKVMで数台の仮想マシンを動かしていたのですが、ホストマシンからSSHで仮想マシンにログイン出来ないのを出来るようにしたかった為、ネットワーク設定を色々いじりました。 そしたら Error restoring domain: error creating macvtap type of interfac…