はじめに 一昨日、FIFA15 でサイドバックが前線に放ったフィードが直接入って80m強の超ロングシュートとなって困惑しました。 さて、話は変わりますが、2014年12月時点の TIOBE Programming Community Index によると、昨年と比較して最もランクアップしているプログラミング言語は、Visual Basic なんですね。 そんなプログラミング言語上位20位ですが、Webアプリケーションを構築するにあたって、どの言語を採用するかというのと同じく悩ましいのがどのフレームワークを採用するかということ。 フレームワークの選定基準はアプリケーションの要件はもちろんのこと、環境や開発者、その他にも様々な条件や制約を踏まえつつ、フレームワークの特性も踏まえて適切な選択をする必要があるものです。 そして、今年も各言語において様々なフレームワークにおいて動きがありました。人気
Python パッケージ管理技術まとめ (pip, setuptools, easy_install, etc) Python のパッケージ管理関係の情報がオフィシャルには整理されてなく、 またパッケージ管理まわりででてくるキーワードもいくつもあって分かり難いので完結にまとめてみました。 このドキュメント自体は少し長いですが、結論としては2015年1月時点では 原則 pip を使ってパッケージの管理を行う setuptools も広く使われているので入れておくとよい。そもそも pip のインストール時に自動的ににインストールされる distribute は 2013年に setuptools にマージされたので不要 という方針でよいと思います。 ただ少し古い情報ソースやパッケージのドキュメントを読んでいると distribute の利用が勧められていたり、 site-packages, e
In this talk, we provide an introduction to Python Luigi via real life case studies showing you how you can break large, multi-step data processing task into a graph of smaller sub-tasks that are aware of the state of their interdependencies. Growth Intelligence tracks the performance and activity of all the companies in the UK economy using their data ‘footprint’. This involves tracking numerous
PythonJSというPythonからJavaScriptへのトランスレーターで変換されたコードが、元のCPythonコード1よりも高速になったという 記事が出ました 。ちょっと興味が湧いたので、PythonJSについて調べてみました(この記事はプログラマ向けです)。 PythonJSとは PythonJS は、正確に言うと、Pythonから、JavaScriptを含む各種プログラミング言語(現状、JavaScript,Dart,Lua,CoffeScript)へのトランスレーターです。 このトランスレーター自体はPythonで書かれていますが、empythoned を使ってNode.jsから実行することもできます(empythoned自体もPythonJSに同梱されてます)。Node.js用のライブラリとしてのインターフェイスもありますので、Node.jsアプリケーションから、Pytho
Dropboxが手がける独自のPython実装「Pyston」開発チームは2月24日、最新版「Pyston 0.3」を公開した。互換性、性能にフォーカスした改善が図られている。性能ではCPythonに匹敵するレベルになったと報告している。 Dropbox社内ではPythonが利用されているが、問題の規模が大きくなるにつれてパフォーマンス的な問題が見られるようになったという。そのため、独自に高速なPython実装を開発することになったそうだ。Pystonは高い性能と互換性を目標とし、LLVMやJIT(Just In Time)などの技術を採用する。Python 2.7と互換性があり、Pythonの標準実装(CPython)のC拡張モジュールをネイティブでサポートする。対応プラットフォームはx86_64のみ。ライセンスはApache License 2.0。 2014年4月にプロジェクトを発表
利用できるコネクションと使ってるコネクション _available_connections で利用できるコネクションのlist _created_connections で今まで作ったコネクションの総数 _in_use_connection で今使っているコネクションのset get_connectionメソッドで_available_connectionsから利用できるコネクションがあればpopでとってくる。ないならmake_connectionで新規コネクションをつくり、_in_use_connectionにaddする releaseメソッドでコネクションをpookに返却する。(_in_use_connectionからremoveし、_available_connectionsとappend) disconnectでpoolの開放 実際でどうつかわれるかは StrictRedisクラス
プログラマーのための確率プログラミングとベイズ推定¶PythonとPyMCの使い方¶ベイズ推定(Bayesian method)は,確率推論のためのもっとも適切なアプローチであるにもかかわらず,書籍を読むとページ数も数式も多いので,あまり積極的に読もうとする読者は少ないのが現状である.典型的なベイズ推定の教科書では,最初の3章を使って確率の理論を説明し,それからベイズ推論とは何かを説明する.残念ながら多くのベイズモデルは解析的に解くことが困難であるため,読者が目にするのは簡単で人工的な例題ばかりになってしまう.そのため,ベイス推論と聞いても「だから何?」と思ってしまうのである.実際,著者の私がそう思っていたのだから. 最近の機械学習のコンテストで良い成績を収めることができたので,私はこのトピックを復習しようと思い立った. 私は数学には強い方である.しかしそれでも,例題や説明を読んで頭の中で
inforno :: Python: パターンマッチしてみる にインスパイアされて作ってみた。 再実装してみたのと、 dict とのパターンマッチがあれば最高!と思ったので追加してみた。 object とのパターンマッチは dict とのパターンマッチに一本化してしまった。 そんなに困らないだろうし、まあいいんじゃないかな。 ※複数回マッチができなかったのを修正 ソースコード #-*- coding:utf-8 -*- import itertools class MatchProxy(object): def __init__(self, obj, name): self.name = name self.obj = obj def setvalue(self, value): self.obj._matchResult[self.name] = value def check(typ,
In this article I'm going to introduce an authentication scheme known as two factor authentication. As the name implies, this method requires the user to provide two forms of identification: a regular password and a one-time token. This greatly increases account security, because a compromised password alone is not enough to gain access, an attacker also needs to have the token, which is different
SQL でテーブル同士が n:n (Many-to-Many) の対応を作る時は、必ずテーブル同士を外部キーでつなぐ中間テーブルが必要になる。 では、この中間テーブルに外部キー以外のカラムを追加するにはどうすればいいのか、という話。 公式のサンプルを見ても中間テーブルには外部キーしか載っていない。 http://docs.sqlalchemy.org/en/rel_0_9/orm/basic_relationships.html#many-to-many 結論から先に書くと、モデルに関しては単純に中間テーブルを表すオブジェクトに外部キーを指定しないカラムを追加するだけで良い。 ただし、次は中間テーブルにあるその値をどう指定すれば良いか?という話になる。 その点も、中間テーブルを起点にしてモデルを永続化すれば解決する。 先に中間テーブルを表すモデルを作って値を入れた上で、外部キーになってるテ
予選の時間内では足りてないことばかりだったので、もう少し試行錯誤することにしました。 #isucon 2014の予選をほぼ一人で戦うハメになった話 - orangain flavor 目標は50000点、できれば60000点出したい。 予選終了時 Python実装 DBはRedisのみを使う Cookieがないときだけnginxで静的ファイルを返す Gunicornを使ったマルチプロセスモデル ワーカー数10、ワークロード10 最終提出スコア: 32710 細々とした改良 nginxの設定を追加。 redis-pyのパーサーをhiredisに置き換え。 テンプレートエンジンを使わないよう変更。 アプリを見なおして、RedisのRead/Write数を削減。 スコアはあまり上がらず 32912。 Gunicornのワーカーをmeinheldに置き換え 前回のエントリのコメントで id:met
Mike Bayer is the creator of many open source programming libraries for the Python Programming Language, including SQLAlchemy, Alembic Migrations, Mako Templates for Python, and Dogpile Caching. Dilly and Posy were dedicated members of the team. Dilly and Posy were best of friends, and after a few years in different worlds are together again. We will always love and miss you Dilly and Posy! Catego
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く