タグ

Pythonに関するgam-22のブックマーク (11)

  • 最近の Python-dev (2017-01) : DSAS開発者の部屋

    @methane です。 compact dict が Python 3.6 が9月(ベータになる直前)にマージされ、それのおかげで推薦をもらい 10月ごろから Python の Core Developer になりました。 「PythonのフルタイムコミッタとしてKLabに雇われている」という訳ではないのですが、 もともと自己裁量で業務時間の大半をOSSへの貢献やコードを読むことに費やし、特にこの3ヶ月位は Python ばかり触っていたので、実質的には近い状態です。 そちらでの活動をあまり日で共有する機会がないので、 Money Forward の卜部さんが書かれている 最近の ruby-core という記事をリスペクトして、 最近の Python の開発状況を紹介する記事を書いてみたいと思います。 Python 3.6 リリース 12/23 に Python 3.6 がリリースされ

    最近の Python-dev (2017-01) : DSAS開発者の部屋
  • 初心者がchainerで線画着色してみた。わりとできた。

    デープラーニングはコモディティ化していてハンダ付けの方が付加価値高いといわれるピ-FNで主に工作担当のtai2anです。 NHKで全国放送されたAmazon Picking Challengeでガムテべったべたのハンドやロボコン感満載の滑り台とかを工作してました。 とはいえ、やっぱりちょっとディープラーニングしてみたいので1,2か月前からchainerを勉強し始めました。 せっかくなので線画の着色をしたいなーと思って色々試してみました。 線画の着色は教師あり学習なので線画と着色済みの画像のデータセットが(できれば大量に)必要です。 今回はOpenCVでカラーの画像から線画を適当に抽出しています。 抽出例 → カラーの画像を集めて線画を作ればデータセットの完成です。(今回は60万枚くらい使っています) ネットワークの形ですが、U-netという最初の方でコンボリューションする時の層の出

    初心者がchainerで線画着色してみた。わりとできた。
  • CPython の Core Developer になりました - methaneのブログ

    Python 3.6 に取り込まれた dict の新実装などでコアコミッターに興味を持ってもらい、 Core Developer (要するにコミッター) に推薦しようか?という提案をもらいました。 最初はコミッターとか面倒そうだし、コミットメッセージとかNEWSエントリー(通常パッチをコミットするときにコミッターが書く)とかを英語で書くのも英語が得意な人がやったほうがいいだろうし、とりあえず github に移行するまでは様子見しておこうと思ってたのですが、 dict 関係のパッチがいくつもレビュー待ちでなかなかコミットされないのを見て「やっぱりアクティブなコミッターが全然足りてない」と考え直し、志願することに。 で、先月末にコミット権をもらった(というか push できる権限を持った hg アカウントに ssh 鍵を登録してもらった)のですが、新米コミッターは簡単なパッチでも他のコアコミ

    CPython の Core Developer になりました - methaneのブログ
    gam-22
    gam-22 2016/10/07
    すごい!👏
  • Python と Ruby と typing - methaneのブログ

    うーん、structural subtypingとダックタイピングは同じものなんだろうか。— Yukihiro Matsumoto (@yukihiro_matz) 2016年9月8日 https://t.co/5Rv86piThC wikipediaによると似て非なる物のようですね。 https://t.co/VwIg39h5M0— INADA Naoki (@methane) 2016年9月8日 この話題について補足しておきます。なお、僕はTAPL脱落組なのであまり正確性は期待しないでください。 背景 Ruby Kaigi で Matz が Ruby3 に向けて考え中の静的型について話されたようです。 少し前から、 Python でも Guido が Dropbox での大量のコードベースを改善していくために type hinting がほしいということで PEP 484 を始めました

    Python と Ruby と typing - methaneのブログ
    gam-22
    gam-22 2016/09/10
    Structural Subtypingはこういうものだったのですね
  • Python を速くする取り組み - methaneのブログ

    速い Python 実装といえば PyPy が有名ですが、 Python 3 へのキャッチアップが遅い、 CPython が持っている Python/C API のサポートがまだ弱く遅い、などの欠点があります。 また、 Google の1年プロジェクトだった Unladen Swallow もありました。これは CPython をフォークして LLVM で JIT を実装するものでした。この fork 実装は終わりましたが、この時期まだ不安定だったLLVMへの貢献は大きく、(ちゃんとおってないので憶測ですが)現代LLVMを利用したJITを実装しているプロジェクトは全部間接的に Unladen Swallow の成果の上に成り立っていると言えるかもしれません。 終了した JIT プロジェクトといえば、 psyco もありました。これはベタに CPython の JIT を実装していましたが、

    Python を速くする取り組み - methaneのブログ
  • 改めて、direnvを使いましょう! - HDE BLOG

    HDE クラウドプロダクト開発部の小です。 私のお気に入りツールdirenvを紹介します。 direnvとは・・・ シェルのcdをフックし、ディレクトリごとに環境変数を自動設定するツール pyenvなどを置き換えることができるツール Pythonistaも、Rubyistも、Gopherも、みんな使って損はないツール direnv以前の世界(pyenvはawesomeだった) Pythonには、プロジェクトそれぞれに専用の環境を作ってPythonのバージョンやライブラリを切り替えることができるツールがあります。 専用環境を作れる virtualenv 専用環境をコマンドで簡単に切り替えられる virtualenvwrappper と進化し、その最終形態がpyenvです。 pyenvはあらかじめディレクトリに環境を紐付けておくと、ディレクトリにcdしたとき、勝手に環境を切り替えてくれます。

    改めて、direnvを使いましょう! - HDE BLOG
  • ISUCON4 予選で workload=5 で 88000点出す方法 (lily white 参戦記) : DSAS開発者の部屋

    ISUCON4 予選1日目に、 lily white というチームで参戦してきました。 試合中に 62000 点は出していたのですが、最終的に提出したスコアは 60344 点でした。 以降、予選終了までと、その後に気づいたさらにスコアを上げる方法について書いていきます。 実際の提出時のコードは methane/isucon4q-go リポジトリの "final" タグを見てください。 準備 (~前日) 予選方式が発表された時点で、 isucon3 予選と同じ方式だったので、有効な作戦もほぼ同じになる事が予測できました。 具体的には以下のとおりです。 PIOPS な EBS を使わないので、性能が不安定なディスクがネックになる問題は無いでしょう。 1インスタンスのみを使うということから、ネットワーク帯域がネックになる可能性も無いはずです。 ほぼ確実に CPU ネックな問題が出るはずです。 ア

    ISUCON4 予選で workload=5 で 88000点出す方法 (lily white 参戦記) : DSAS開発者の部屋
  • Python のリスト内包表記 - Ruby や Haskell の書き方と比べながら

    0. Python の気になる機能  Python チュートリアル の目次をざっと眺め、目にとまったのは次の二つの機能。 5.1.4 リストの内包表記 9.9 ジェネレータ (generator) 両方とも耳馴れない言葉。 (@_@) まずは、リストの内包表記から調べることに。 1. リスト内包表記の基 a. リストの各要素に関数を適用する 最初は、リスト内包表記の使い方を確認する。例として、「数値のリストの各要素を 2 倍する」 print [x*2 for x in [1,2,3,4,5]] 初めて見たとき、どこから読めばいいのか検討がつかなかった。 読む順番は、 for によって、各要素を取り出し、 各々に対して、操作を加える。 というように、後ろから前へと読み進める。 b. リストの各要素から、条件にあったものを抽出する 次に、同じく数値のリストから、特定の条件に合う要素を抽出す

    Python のリスト内包表記 - Ruby や Haskell の書き方と比べながら
  • Ruby/Python Documentation

    Ruby/Python ドキュメント 目次 はじめに Ruby/Python とは? 簡単な例 Ruby から Python オブジェクトを操作する Ruby/Pythonのロード eval と exec メソッド呼び出し モジュール クラスとタイプ オブジェクトの変換 リファレンス はじめに Ruby/Python とは? Ruby/PythonRubyPythonインタプリタをライブラリとして埋め込んでしま う、Ruby の拡張ライブラリです。Ruby/Python を使うと、Ruby スクリプトから Python 用に作られたライブラリを利用することができます。 Ruby/Python は二つの言語を出来る限り透過的に繋げるように作られていま す。したがって、Python のライブラリを利用するのに、特別な配慮や面倒なコー ディングはほとんど必要ありません。Ruby 用に作られた

    gam-22
    gam-22 2013/08/04
    "Ruby スクリプトから Python 用に作られたライブラリを利用することができます。"
  • メジャーなプログラミング言語とそれらの役割を、素人でも分かるように教えてください。 - Knoh (ノウ) | The Knowledge Hub

    プログラマーたちは、使用するプログラミング言語と驚くほど密接な関係を持っています。プログラミング言語はあなたをイライラさせ、また教え導いてくれます。あなたはそのうちにプログラミング言語の内部構造や、ちょっとした変な癖を学ぶことになるでしょう。それはあなたの頭のなかにも入り込み、考え方をも変えるでしょう。 正しいプログラミング言語を選べば、新しくて美しい何かを一緒に作り上げることができます。間違った選択をすれば、もちろん面倒なことになります。 言い換えれば、プログラミング言語を選ぶことは、恋人を選ぶことによく似ているのです… (注: 私はストレートの男性です。それ以外の方は、自分の興味に合わせて自由に脳内変換してください) PHP は、あなたが高校時代のある夏、不器用ながらも付き合った初めての彼女です。もっと真剣な関係を築こうとしてはいけません。この子は複雑な問題を抱えています。 Perl

  • RPythonで書かれたRuby処理系Topazで遊ぶ

    TopazというRuby処理系が話題となっているようだ。RPythonで書かれており、CRuby(YARV)よりも高速だという。 同僚でもあるパイパニスト(語弊ある)id: rokujyouhitoma がTopazをビルドできない!と言っていた。そんなに難しいのならチャレンジしてみよう。今日はなぜかPython Tシャツを着ているし。昨日はなぜか職場でNode.jsとPerlのコードを読んでいたし。 ビルド python環境はpythonbrewで、今回はvirtualenvは使わない。OSはMountain Lion。git/Mercurial/各種ビルドツールは入っている感じで。 mkdir topazos cd topazos git clone http://github.com/topazproject/topaz hg clone https://bitbucket.org/

    RPythonで書かれたRuby処理系Topazで遊ぶ
    gam-22
    gam-22 2013/02/08
    "TopazというRuby処理系が話題となっているようだ。RPythonで書かれており、CRuby(YARV)よりも高速だという。"
  • 1