AIによって特定のソフトウェアとほぼ同じ機能を再実装させ、その結果としてライセンスまで変える、いわゆるライセンスウォッシュとも評され得る行為ができるのか?という論点は以前から繰り返し語られてきた。しかし、研究目的の再実装の議論はさておき、これまでは実際に実用的なツールで大規模な再実装が行われ、しかも同じプロジェクト名のままライセンス変更まで行われた事例はほぼなかったと思う。ところが、2026年3月、Pythonの文字エンコーディング検出ライブラリであるchardetにおいて、まさにそのような事態が起きたのである。公開文書上においてchardet 7.0.0はAI支援による「Ground-up, MIT-licensed rewrite」(MITライセンスによる最初からの書き直し)と位置付けられ、従来のGNU LGPLからMITライセンスへと切り替えられている。そして、chardetの原作者
Pythonは長年、「書きやすいが並列処理は弱い」と言われ続けてきました。その原因の一つはGIL(グローバル・インタプリタ・ロック)という仕組みにあります。CPUを本気で使いたおす処理では他言語に一歩譲るのが現実でした。しかしPython 3.13で実験的に導入された“GILなし版(free-threaded)”は、その前提を大きく変えようとしています。 その可能性をWebフレームワークという現実的な土俵で試したのが、今回紹介するBarqです。FastAPIと比較して2〜5倍という数字を叩き出したこの実験は、単なる高速化の話ではありません。Pythonが「本当に並列に動く言語」へと変わるかもしれない、その予兆を示しています。 Barqのベンチマークまずはベンチマーク結果から見ていきます。検証環境は以下です。 CPU:Apple M2 Pro(12コア) Python:3.13.0 free
なぜPythonはAIの標準になったのか ― Guido van Rossumが語るPythonのこれまでとこれから #こまPy GitHubの公式インタビュー動画で、Pythonの生みの親である Guido van Rossum 氏が、Pythonの誕生秘話から現在、そしてAI時代における未来までを語っています。Pythonはなぜ生まれ、どのように広まり、そしてなぜAI分野で中心的な存在になったのかについて、穏やかな語り口の中に、言語設計の思想とコミュニティの力、そして時代の流れが凝縮されているすばらしいインタビューです。 本記事では、そのインタビューの中でも特に「なぜPythonがAIで標準的な存在になったのか」、そして「AIが当たり前になる時代にPythonはどのような役割を担うのか」という点に焦点を当てて整理します。流行や偶然ではなく、設計思想とエコシステムの積み重ねが生んだ現在地
Python on the Edge: Fast, sandboxed, and powered by WebAssemblyWe are excited to announce full Python support in Wasmer Edge (Beta) With AI workloads on the rise, the demand for Python support on WebAssembly on the Edge has grown rapidly. However, bringing Python to WebAssembly isn't trivial as it means supporting native modules like numpy, pandas, and pydantic. While projects like pyodide made st
AI・機械学習チームブログリレー13日目の記事を三浦 (@mamo3gr) がお送りします。 Pythonで型ヒントを補足するためのサードパーティのスタブライブラリにコントリビュートしました。 それを通して入門したスタブファイルの作り方を紹介します。 便利なPythonの型ヒント 型ヒントを補助するスタブライブラリ スタブファイルの作り方入門 stubgenで下地をつくる pathlib,importlib,inspectを組み合わせたモジュール・クラスの列挙と書き換え __init__ とフィールドの追加 その他、便利そうなツール 実際どれくらい便利になるか Before After まとめ We are hiring !! エンジニア採用ページはこちら カジュアル面談もお気軽にどうぞ インターンも常時募集しています 便利なPythonの型ヒント Pythonで型ヒント、付けてますよね?
こんにちは.今回は,uv, ruff, devcontainer, Claude Code, Cursorなどのモダンなツールを使ったPythonの開発環境テンプレートを作成したので,その内容を紹介します. テンプレートは以下のリポジトリで公開しています. テンプレートの特徴・構成 本テンプレートは,シンプルで自由度の高いテンプレートを目指すため,あまり多くのツールを導入しないように心がけています.多くのツールを導入すると,学習コストも高くなるためです. uv: Rust製の高速なPythonの仮想環境・パッケージ管理ツール ruff: Rust製の高速なFormatter, Linter pytest: テストフレームワーク pre-commit: コミット前のFormat, Lintによるコード品質の担保 devcontainer: 統一された開発環境の提供 Docker, Docke
記事の趣旨 今回は、Astral社のツールを使ったモダンな環境でdiscord botを作っていこうという趣旨の記事です。 ただ、メッセージを送るbotだと単純すぎるのでModalやViewを使ったより実践的なBotを作っていきます。 対象読者 一応、Python の書き方がわかれば読めるくらいの難易度ですがデコレーターや非同期処理はちょっと難しいかもしれないです。 Astral社とは Astral社は、uvやruff、tyなど次世代のPythonツールを作っている会社です。 この会社が作っているツールのおかげで、Pythonの開発体験がかなり良くなっています。今回のbot開発を通して、それを感じてもらえたら幸いです uvとは pythonのパッケージマネージャーで、Rustで書かれています。 10-100x faster than pip と公式で書いてある通り、爆速です。 まずはuvの
読みやすいコードとは何か 読みやすいコードとは、脳に負荷がかからないコードである。脳に負荷がかからないコードとは、人間の脳の特性に配慮して書かれたコードである。したがって読みやすいコードを書くには、まず人間の脳の特性を把握する必要がある。読みやすいコードの特徴は、この人間の脳の特性から論理的に導かれる。 また、「コードを読む」とは過去から未来への情報伝達、または自分から他者への情報伝達であり、情報理論における以下の2つの数学的原理にも支配される。 頻出する情報には共通の符号を割り当てることで情報を圧縮することができる。 失われた情報を復元することはできない。 この記事に書かれた内容はプログラムに止まらず、ドキュメント、記事の執筆など、プレインテキストによって情報を伝達する際には一般に適用可能である。 もしもこの記事を読むのが面倒であれば、以下の5つだけを覚えておけばよい。 ひとつの処理の単
Python開発者向けツールRuff/uvの開発チーム(Astral inc.)がPython向けの型チェッカーを新規開発しているので紹介いたします。この型チェッカーはコードネーム"Red-knot"と呼ばれており、まだリリース前ですが将来的にはRuffに組み込まれる予定であるようです。以下ではこのプロジェクトの概略を説明したいと思います。 特徴 既存の型チェッカー(e.g. mypy, pyright)の不満点である遅さを改善すべく、徹底的にパフォーマンスに気を配った設計となっています。pyrightもそこまで遅くはないのですが、さらに高速であることを目指すようです。 Red-knotはRuffと同様Rustを用いて実装されています。Ruffが使っている諸々のデータ構造を共有しているため、フォーマット、lint、静的解析が一気通貫で行えるようになります。JavaScriptツールチェイン
TL;DR Pythonの型チェッカーを一人で作っていたらそれが仕事になりました。 私は(大学院生として物理学を専攻する傍ら)以前よりプログラミング言語やその周辺ツールのデザイン・実装に興味があり、趣味で開発したプロジェクトをOSSで公開するなどしていました。 ErgはPython APIと互換性を持つトランスパイル型の静的型付け言語で、pylyzerはこれの型検査器を流用したPython向け型チェッカーです。 ありがたいことに両方とも結構反響を受けて、公開から数年経っても未だにissueなど報告をいただいております。これはもう少し大きな話にできるのではないかと考え、Ergの開発の方で2023年度の未踏IT人材発掘・育成事業に応募し、運よく採択され、スーパークリエータにまで認定していただきました。 これだけでもかなりの僥倖ですが、それだけではなく、今年の3月からcontract softw
この記事は 2024 TSG Advent Calendar 3日目の記事です。昨日の記事は @__dAi00 さんの記事 AivisSpeechを使ったDiscordボットの作成 ①AivisSpeechをGoogle Cloud Runにデプロイする でした。12/5 公開予定の続編も楽しみです。 今回は、初日に公開した以下の記事の副産物です。 import unicodedata # Python 3.12 まで 1000000000000.0 # Python 3.13 から 1000000.0 print(unicodedata.numeric("兆")) 大変だ。Python 3.13 から「5000 兆円」が 50 億円になってしまう(?) unicodedata.numeric メソッドと Unicode 例によって Unicode が関係してきます。前編でも触れたとおり、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く