タグ methane
人気順 5 users 10 users 100 users 500 users 1000 userspyenvを初心者に薦めるのはもうやめよう - methaneのブログ
Pythonのパッケージ・プロジェクト管理ツールはまだ乱立状態にあって、どれを使えばいいのかわからないから慣れたpyenv+pipを使おうという判断をする人がいるかもしれない。その判断自体は別に否定しないけれども、初心者に教える時にpyenvを教えるのはもうそろそろやめてほしい。 Pythonをソースからビルドするので、コ... 続きを読む
タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ
とあるプロジェクトでナノ秒からミリ秒への変換で四捨五入してきた人がいて、時刻を扱うときは保存精度未満は切り捨てるべきというのが常識になっていないなーと思ったので。 2023-10-01 を、何年か表示する時に、2024年に丸める人はいないだろう。 13:45 が何時か表示する時も、13時と表示するだろう。(口頭で何時?と... 続きを読む
Goのerrorがスタックトレースを含まない理由 - methaneのブログ
Twitterでこんな記事を見かけたので。 zenn.dev ジェネリクスの件もそうですが、Goの言語設計は現実主義なのになにか特別なポリシーによるものだと宗教化されてしまって、ファンには勝手に崇拝されてアンチにはディスられがちだなーと感じます。 Goのエラー処理を改善する実験プロジェクトxerrorsがGo本体のerrorsにマー... 続きを読む
構造化ログのフォーマット logfmt vs JSON lines - methaneのブログ
構造化ログのプラクティスをあちこちで調べていたら、logfmtを推奨する記事を見つけたので調べてみました。 先に結論を言うと、JSON linesを使っておくのが良さそうです。 logfmt について logfmtとはスペース区切りで key=value を並べたフォーマットです。文字列にはクォートとエスケープによってスペースや改行を含め... 続きを読む
Python 3.15からデフォルトのエンコーディングがUTF-8になります - methaneのブログ
Pythonがファイルを開くときなどに使われるエンコーディングはロケール(WindowsではANSIコードページ)依存でした。 Unixの世界ではどんどんUTF-8ロケールが一般的になっている一方、WindowsのANSIコードページはなかなかUTF-8になりません。 そのために、Unixユーザーが open(filepath) のようにエンコーディングを指... 続きを読む
PEP 8騒動について - methaneのブログ
今週PEP 8の小さい変更についてMLで騒動が起こってしまいました。 該当のコミットはこれです。 PEP 8: Change requirement to adhere to Standard English (#1470) · python/peps@0c6427d · GitHub 変更点はごくごくシンプルなものです。 - When writing English, follow Strunk and White. + Ensure that your comments... 続きを読む
バグがあっても接触確認アプリをインストールしてほしい理由 - methaneのブログ
サマリー:アプリではなくOSが接触履歴を取るので、今はとりあえずOSの機能を有効にするためだけにアプリをインストールしよう とうとう接触確認アプリが公開されました。これで今までよりも圧倒的に効率的に、陽性者の接触者に検査を受けてもらうことができるようになるかもしれません。ワクチンが開発されるまでの間、... 続きを読む
RHEL 7.5 で Python 2.7 が deprecated になりました - methaneのブログ
2018 - 04 - 11 RHEL 7.5 で Python 2.7 が deprecated になりました python Tweet Red Hat Enterprise Linux 7.5 がリリースされ、そのリリースノートで " Python 2 has been deprecated" とアナウンスされました。 Chapter 54. Deprecated Functionality ... 続きを読む
Homebrew の Python で何が変わって何がもとに戻ったのか - methaneのブログ
2018 - 03 - 11 Homebrew の Python で何が変わって何がもとに戻ったのか python rcmdnk.com 大分混乱した状態になってしまったので、今年何が変わってきたのか、今回の変更でどこまでもどったのかを整理しておきます。 1/19 python という formula が python コマンドをインストールしなくなりました。 python コマンドを起動すると、... 続きを読む
3月1日、Homebrew のデフォルトの Python が Python 3 になります。 - methaneのブログ
2018 - 02 - 28 3月1日、Homebrew のデフォルトの Python が Python 3 になります。 python 以前からアナウンスされていた 通り、 3/1 (日本時間では 3/2 になるかも)にデフォルトの Python が Python 3 に切り替わる予定です。 現在そのプルリク エス トがレビュー中です。 github.com 具体的には、今まで " python... 続きを読む
ISUCON7 予選問題の公開と解説 : ISUCON公式Blog
出題担当の @methane です。今年の予選問題について解説します。 問題の公開 予選問題のベンチマーカーと参照実装のコードと、Ubuntu 16.04 上に予選問題を動くようにするための手順を公開します。感想戦にご利用ください。 予選問題のリポジトリ 複数台構成について 今年のISUCON予選では、予選としては初めて複数台構成を利用してみました。 倍率が高くなった現代のISUCONにおいては、... 続きを読む
Go が for ループをやめるために足りないもの - methaneのブログ
2017 - 09 - 24 Go が for ループをやめるために足りないもの golang ジェネリクス の話題になると常に出てくるのが、 for ループの代わりに関数型スタイルで書きたいという要望です。 for ループで書くのは、可読性が悪く、筋力がいるとまで言う人もいます。 しかし、 ジェネリクス が追加されても、このスタイルのプログラミングは実用的にはなりません。 ジェネリクス 以外にも... 続きを読む
Re: Re: Go にジェネリクスがなくても構わない人たちに対する批判について - methaneのブログ
2017 - 09 - 22 Re: Re: Go にジェネリクスがなくても構わない人たちに対する批判について golang kmizu.hatenablog.com Twitter である程度レスをしたのですが、やはり繰り返される話題なので残る形で書いておきたいと思います。 Goユーザーの中で、 ジェネリクス がなくても構わないと主張するユーザーへの批判はしたけど、Goユーザー全てがそうだと思っ... 続きを読む
Re: Go にジェネリクスがなくても構わない人たちに対する批判について - kmizuの日記
2017 - 09 - 21 Re: Go にジェネリクスがなくても構わない人たちに対する批判について 先日自分がGoについてつぶやいたものが、 id:methane さんに捕捉されていて、それに対する反論記事 methane.hatenablog.jp があがっていたので、それに対する所感を書いてみました。 前置き Goや言語批判に関するスタンスを誤解されると嬉しくないので、最初に書いておきます... 続きを読む
Go にジェネリクスがなくても構わない人たちに対する批判について - methaneのブログ
2017 - 09 - 19 Go にジェネリクスがなくても構わない人たちに対する批判について golang なんども繰り返される話でうんざりなんだけど、繰り返されるたびに反論するのもアレなので、URL貼れるように記事にしておく。 Goが頑なに ジェネリクス いらないというだけ他の言語勢から失笑買ってるというのは自覚して — {{alert()}} (@mizchi) 2017年9月19日 頑なに... 続きを読む
Windows では2020年を待たずに Python 2.7 が使い物にならなくなっていく - methaneのブログ
2017 - 02 - 21 Windows では2020年を待たずに Python 2.7 が使い物にならなくなっていく python 昨日 mysqlclient 1.3.10 をリリースしました。 今までは Windows 版の wheel は Python 2.7 だけに提供していたのですが、 1.3.10 からは 3.5 と 3.6 だけに提供して 2.7 はドロップしました。 そもそも... 続きを読む
Python 3.6 の(個人的に)注目の変更点 - methaneのブログ
2016 - 09 - 12 Python 3.6 の(個人的に)注目の変更点 python Python 3.6b1 がリリースされましたね。(フライング) beta1 ということで、 3.6 に向けた新機能の追加は (provisional package を除いて) 終了です。ただし、仕様が確定したと言うわけではなくて、beta版に対するフィードバックを元に新機能を修正したり、最悪 reve... 続きを読む
Python と Ruby と typing - methaneのブログ
2016 - 09 - 09 Python と Ruby と typing うーん、structural subtypingとダックタイピングは同じものなんだろうか。 — Yukihiro Matsumoto (@ yukihiro _matz) 2016年9月8日 https://t.co/5Rv86piThC wikipedia によると似て非なる物のようですね。 https://t.co/V... 続きを読む
prompt_toolkit がアツい - methaneのブログ
2016 - 03 - 02 prompt_toolkit がアツい python とりあえず mycli と aws-shell のスクリーンキャストを見てください。 prompt_toolkit はこのようなリッチコンソールアプリを作るためのライブラリです。 Windows でも動きます。 Jupyter (ipython notebook) を切り離した、コンソール版の ipython も次... 続きを読む
「Go による Web アプリケーション開発」書評 - methaneのブログ
2016 - 02 - 20 「Go による Web アプリケーション開発」書評 golang Go による Web アプリケーション開発 を読みました。 (まだ後半はパラパラめくっただけですが) この本は Go の チュートリアル では無いです。 A Tour of Go とか The Go Programming Language で基本的な文法などは抑えた状態で読むべきでしょう。 この本で最... 続きを読む
Python を速くする取り組み - methaneのブログ
2016 - 02 - 02 Python を速くする取り組み 速い Python 実装といえば PyPy が有名ですが、 Python 3 へのキャッチアップが遅い、 CPython が持っている Python /C API のサポートがまだ弱く遅い、などの欠点があります。 また、 Google の1年プロジェクトだった Unladen Swallow もありました。これは CPython をフ... 続きを読む
CPython の GC チューニング - methaneのブログ
2015-10-13 CPython の GC チューニング python ISUCON は Go で参戦しているんだけど、複数のチームが Python で予選通過したらしいので、応援のために Tips を公開していこうと思う。 CPython の GC について CPython のGCは参照カウント+循環参照コレクタだ。そして参照カウント方式は(幾つかの欠点はあるものの)Webアプリのボトルネッ... 続きを読む
Python の新しいプロファイラ vmprof が面白い - methaneのブログ
2015-06-09 Python の新しいプロファイラ vmprof が面白い PyPy 2.6 と同時に、 vmprof という CPython/PyPy 用のプロファイラが登場しました。 私はまだ PyPy では使っていませんが、CPythonのプロジェクトをこれでプロファイル取ってみたらなかなか面白かったので紹介します。 概要 Python にはもともと標準ライブラリとしてプロファイラ (... 続きを読む
Unix Domain Socket において keep-alive が性能に与える影響 (Gazelle vs Meinheld) - methaneのブログ
2014-12-22 Unix Domain Socket において keep-alive が性能に与える影響 (Gazelle vs Meinheld) id:kazeburo さんが Gazelle という高速な Perl 用の Web アプリケーションサーバーを公開されました。 Gazelle - Plack Handler for performance freaks #yokohamap... 続きを読む
DSAS開発者の部屋:ISUCON4 予選で workload=5 で 88000点出す方法 (lily white 参戦記)
ISUCON4 予選1日目に、 lily white というチームで参戦してきました。 試合中に 62000 点は出していたのですが、最終的に提出したスコアは 60344 点でした。 以降、予選終了までと、その後に気づいたさらにスコアを上げる方法について書いていきます。 実際の提出時のコードは methane/isucon4q-go リポジトリの "final" タグを見てください。 準備 (~前... 続きを読む