タグ

ブックマーク / mopemope.hatenablog.com (11)

  • 株式会社Abby 社員募集のお知らせ - Doge log

    株式会社Abby 社員募集のお知らせ ジュリアナー!!トーキョー! こんにちわ、ジョン・ロビンソンこと半ズボンの宇宙人です。 株式会社Abbyでは業務拡大に伴い、共に働いてくれる仲間を募集しています。 以前事務所は恵比寿にあったのですが、クックパッドがくるということで逃げるように中目黒に事務所を移転しました。 事務所などは会社のサイトを参照して下さい。 株式会社 Abby エビイ 今まではシステム開発メインでやっていましたが、現在はアプリの開発にシフトしています。 http://www.abby.co.jp/service.html 社内には優秀なメンバーも揃っています。いろいろな技術的な話もできるので技術者にとっては刺激の多い環境だと思います。 @yone098 @shinsan68k @__garsue__ 先日入社した@matcha014こと通称チャランボ 社内は明るく@yone09

    株式会社Abby 社員募集のお知らせ - Doge log
    Yoshiori
    Yoshiori 2014/11/14
    “クックパッドがくるということで逃げるように中目黒に事務所を移転しました。”
  • plugpyをリリースした - Doge log

    こんにちわ、あらびきプログラマーmopemopeです。 某ライブラリをpythonに移植しようとしてて、plugin周りはなんだかかライブラリ化した方が良さそうだっだので適当に作りました。 plugpy · PyPI 基実装は以下の奴です。 Pluginシステムの実装 - def __mopemope__(self, *args, **kwargs): Pluginの書き方 制限はコンストラクタに引数を持たないといかんって事ぐらいであとは自由です。 一応デフォルトでPluginクラスを継承を推奨します。 (Pluginはコンストラクタに引数を持っています) 足し算するplugin plugins/test_plugin.py from plugpy import * class TestPlugin(Plugin): def on_test(self, x, y ): return x

    plugpyをリリースした - Doge log
  • 3.x系の移行タイミング - Doge log

    まあなんか色々言われてるようですが。 結構うわっつらな情報もあったりなかったりするので書いてみるか。 何が問題なのか? 3.x系では後方互換がないのでほとんど既存のコードが動かなくなる。 (僕の経験上100%動かない) 他にもLinuxだとpythonで書かれてるツールがたくさんあるのだが、これが 全部動かなくなる。 (これが大きい) もうひとつ言うとメンテナの負担が増えるという点がある。 処理系、あるいはパッケージのメンテナは2.x、3.x系とふたつのバージョン をメンテナンスしていくことになる。 勿論、これは2.x系のみで動くということにすればいいのかも知れない。 でも周りが黙ってないので対応せざる得ないだろう。 移行の問題 移行、移行と言っても具体的に何をすればいいのか?って話だけど。 まあ書き直せばいいってだけなんだけどね。 pythonの場合は移行ツール(2to3)が提供される。

    3.x系の移行タイミング - Doge log
  • yolkとpipは早いとこ合流して欲しいという話 - Doge log

    最近pipが少しづつ認知度があがってきてるんだけど、まあ貧弱 or 弱貧だよね。 だってsearchできないじゃんとかまあいろいろある。 なのでyolkを使うんだけどさあ。 yolkはpackage情報を色々を出力してくれるツール。 Error 404: File Not Found | Assembla まあそこに書いてあるとおりなわけで。 yolk -S name=xxxx yolk -S description=xxxx とかで名前、詳細内からヒットするパッケージを見つけ出す事もできる。 また yolk -U でupdate可能なパッケージも出力してくれる。便利! (時間かかるけどね) でもyolk自身から直でインスコとかできないっぽい。 download linkとかは取れるっぽいけど。なんだかなあ。 なんでこいつらバラバラに作るんだろうか。 一緒になってくんないかなあ、ホント。

    yolkとpipは早いとこ合流して欲しいという話 - Doge log
  • モダンPython開発環境入門 - Doge log

    今日、KevinさんところにBespinの話が出ててそいつを見てて思った。 最近のpython開発環境はこんな感じだろうと。 エディター 軽量なものが好まれてるのはまあどこもみんな同じだろう。 vim emacs TextMate MacだとTextMateを使ってる人がやはり多いっぽい。 ターミナル 素。 screen必須。 必須な理由はvirtualenvでactivateするからかな。 utilityモジュール もうほぼ鉄板でpip, virtualenvを使ってるっぽい。 pip virtualenv paver Bespinの動画ではpaver軽油で色々やってる感じだった。 いろんなタスクがpythonスクリプトでざくざく書けるので流行るかも知れない。 VCS まあこれももう鉄板かも。 git mercurial その他 環境に関係ないけど傾向。 sqlalchemyは市民権を得

    モダンPython開発環境入門 - Doge log
  • ライブラリの話 - Doge log

    http://d.hatena.ne.jp/tokuhirom/20090219/1235034086 を見て。pythonの場合ってどうするか? 最近ならばpipでbundleつくりゃあいいんじゃね?で終わりかと。 ちょうどいいエントリがあったので紹介。 http://d.hatena.ne.jp/pyxis-dev/20090219/1235012848

    ライブラリの話 - Doge log
  • Python力を高めるためのライブラリコードリーディング - Doge log

    id:yuroyoropython力を高めるとか言ってたのを聞いて、自分の場合どうだったかなあと。 思い入れがあるものを簡単に。まあ参考になれば。 pure python系 まずはpure python系 django 結構python初心者のころからdjangoのソースは読んでた。 多分、今ほど大きくなかったからだと思う。 学べることはPEP8、__import__の使い方、デコレータによるトランザクション管理などなど多岐にわたる。 但し、いきなりモデル周りに手を出すときついのでWEB側の入り口である方 django.core.handlers.base.py ぐらいがいいかなと。 middlewareってどうやって呼び出し、実行してるか、urlの解決方法などから入ると割りととっつきやすいかと。 フルスタック故カバーしてる範囲が多いのでずっと参考になる。 標準ライブラリのソース あんま

    Python力を高めるためのライブラリコードリーディング - Doge log
  • Pluginシステムの実装 - Doge log

    ちょっとPlugin的なものを実装しようとしてたら行き着いた。 http://lucumr.pocoo.org/2006/7/3/python-plugin-system importする仕組みはよくあるのでわかるんだけど。 読み込んだモジュールからPluginクラスを抽出するスマートな方法が書いてあったので紹介しておく。 class Plugin(object): pass class MyPlugin1(Plugin): pass class MyPlugin2(Plugin): pass Plugin.__subclasses__() __subclasses__()で一発でとれる。 baseのtuple(スーパークラスのリスト)はよく使うんだけどsubclassも取れるのは忘れてた。 で自分でも書いてみた。 plugin.py import sys import os import

    Pluginシステムの実装 - Doge log
  • ファイルの監視 - Doge log

    http://d.hatena.ne.jp/jYoshiori/20090121/1232526865 autotestか!っていうコードだけど。 Linuxならpyinotifyを使えばいいんじゃないかな。 from pyinotify import WatchManager, Notifier, IN_MODIFY, ProcessEvent wm = WatchManager() mask = IN_MODIFY class PTmp(ProcessEvent): def process_IN_MODIFY(self, event): print "m: %s" % event.name notifier = Notifier(wm, PTmp()) wdd = wm.add_watch('../', mask, rec=True) notifier.loop() directory

    ファイルの監視 - Doge log
  • werkzeug - Doge log

    何かと最近話題のwerkzeugですが、こいつが一体なんなのか 書いてみる。 werkzeug ドイツ語で工具を意味する。pythonistaがwebアプリケーション 開発を書くための工具であるようなライブラリ。 (あくまで工具である) 具体的にはWSGI Utilityで、粒度の小さい部品のみを提供する。 部品、部品はバラ売り状態で、基的にはWSGI対応フレームワ ークをスクラッチで組み上げるための物である。 (フレームワークを作るためのフレームワーク) 提供機能 提供してる機能は以下であるが、基的なレベルまで実装されて いる。 代表的なもの Wrapper Request Object Response Object Request Mixin Object(Reqest拡張に使う) Response Mixin Object(Response拡張に使う) Routing Syst

    werkzeug - Doge log
  • S2JDBCについてもう少し言っておくか - Doge log

    ヨシオリがDISられてるのは無視するとしても。 生産性 S2JDBCに期待されてるような人もいるけど実は言うほど生産性ってあがらないんじゃないかなと思う。 S2JDBCのドキュメントにも書いてあるんだけどあくまで"JPAに比べて"だから。 JPAは世間でなんて言われてるか知らないけど僕はクソだと思ってる。 なので"JPAに比べて"とか言われるとそりゃ生産性あがるわ!って話なのです。 ひがさんクラスの人がが低いところに標準を合わせてどうすんだと。 流れるようなインターフェイス こいつがウリのようだけどここにも少し気になるところがある。 流れるようなので思考を中断せず云々みたいな事があるようだけどホントにそうかな? 気にしてるのは"where"とかってメソッドでこれってバリバリSQL意識してるからこの名前なんだろうなって気がする。 って考えるとここで言ってる思考ってのは実は「SQLを考える」っ

    S2JDBCについてもう少し言っておくか - Doge log
  • 1