@ITのDeep Insider編集長「一色」が、日ごろの情報収集や開発、執筆・編集を通じて得た“技術的な気付き”や“新たな発見”を自由気ままにつづるオピニオン連載。気になるデータ分析を試したり、AI・機械学習で迷走したり、Pythonとツール活用を語ったり。不定期更新ですが、疲れたときの息抜きにどうぞ! 次回以降の新着記事を見逃したくない方は、ぜひ以下のメール通知の登録をお願いします。 なぜ今、uvを学ぶべきか?【筆者の危機感】 長年、pipとcondaを使い、特に不満もなく作業してきた筆者ですが、最近はuvを見かける機会が急増し、「このまま知らずにいると、時代に取り残されてしまうのではないか」という危機感を強く持つようになりました。 実際、Anthropicが提供する“MCP”公式ドキュメントでも、uvを使った環境構築方法しか説明されていません(なお、MCPについては前回記事で解説して
読みやすいコードとは何か 読みやすいコードとは、脳に負荷がかからないコードである。脳に負荷がかからないコードとは、人間の脳の特性に配慮して書かれたコードである。したがって読みやすいコードを書くには、まず人間の脳の特性を把握する必要がある。読みやすいコードの特徴は、この人間の脳の特性から論理的に導かれる。 また、「コードを読む」とは過去から未来への情報伝達、または自分から他者への情報伝達であり、情報理論における以下の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
はじめに 皆さん、はじめまして。Thinkings株式会社でプロダクトエンジニアとして働いている、まろんです! 突然ですが、皆さんは「Python」をご存じでしょうか? 「空飛ぶモンティ・パイソン」というコメディ番組が由来で、今や非常に人気のあるプログラミング言語です。 Pythonはそのシンプルな文法と豊富なライブラリによって、データ分析や機械学習、バックエンド開発など、幅広い分野で活躍しています。技術系情報共有サイト(Qiitaなど)でも、常に人気上位に入る言語です。 しかし、Webアプリケーションを開発するとき、バックエンドはPython、フロントエンドはReactなどの別言語で開発することが一般的ですよね。言語が分かれることで、初心者は「なぜフロントとバックエンドで異なる言語を覚えなきゃならないの?」と苦労することもあるでしょう。 そんな方にご紹介したいのが、2022年4月にAna
What is HPy?¶ HPy provides a new API for extending Python in C. In other words, you use #include <hpy.h> instead of #include <Python.h>. What are the advantages of HPy?¶ Zero overhead on CPython: extensions written in HPy run at the same speed as "normal" extensions. Much faster on alternative implementations such as PyPy, GraalPy. Universal binaries: extensions built for the HPy Universal ABI can
In this blog post, we’ll take a high-level tour of what’s inside the Mojo SDK. First, let’s quickly review what Mojo is and how it can benefit you. Mojo: a high performance 'Python++' language for computeMojo is a new programming language for AI developers that will grow into being a superset of Python over time. It already supports integrating with arbitrary Python code seamlessly and has a scala
Python Design Patterns¶ Welcome! I’m Brandon Rhodes (website, Twitter) and this is my evolving guide to design patterns in the Python programming language. This site is letting me collect my ideas about Python and Design Patterns all in one place. My hope is that these pages make the patterns more discoverable — easier to find in web searches, and easier to read — than when they were scattered acr
Here on CheckiO we are creating games for coders. We have made py.checkio.org and js.checkio.org where you can improve your TypeScript and Python coding skills. We have also created Empire of Code - a space game with a mix of strategy, tactics and coding. In addition to the 50k monthly active Python and TypeScript players, who are constantly improving their skills by engaging in CheckiO missions a
はじめに コードは理解しやすくなければいけない。 リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice) 作者:Dustin Boswell,Trevor Foucher発売日: 2012/06/23メディア: 単行本(ソフトカバー) コードの保守性や可読性を高めるために我々エンジニアはどんなことができるでしょうか? テストを書く 推奨されているコードスタイルに準拠する コメントを書く DRY原則に則る 変更・拡張しやすく設計する ログを出力する・監視する 適切な命名をする etc... まだまだ意識すべきことはあると思いますが、上記の項目はエンジニアであれば恐らく一度は目にしたことがあるような内容であり、暗黙的に了承されたいルールです。 しかし、これらはただの心構えであり、体現するために実際には以下のような項目に落とし込む必要
Introducing App Engine Second Generation runtimes and Python 3.7 Today, Google Cloud is announcing the availability of Second Generation App Engine standard runtimes, a significant upgrade to the platform that allows you to easily run web apps using up-to-date versions of popular languages, frameworks and libraries. Python 3.7 is available today in beta on the App Engine standard environment. You
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く