並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 208件

新着順 人気順

mypyの検索結果1 - 40 件 / 208件

  • 君には今から3時間で機械学習Webアプリを作ってもらうよ

    新人: 「本日データサイエンス部に配属になりました森本です!」 先輩: 「お、君が新人の森本さんか。僕が上司の馬庄だ。よろしく!」 新人: 「よろしくお願いします!」 先輩: 「さっそくだけど、練習として簡単なアプリを作ってみようか」 先輩: 「森本くんは Python なら書けるかな?」 新人: 「はい!大学の研究で Python 書いてました!PyTorch でモデル作成もできます!」 先輩: 「ほう、流石だね」 新人: 😊 先輩: 「じゃ、君には今から 3 時間で機械学習 Web アプリを作ってもらうよ」 先輩: 「題材はそうだなぁ、写真に写ってる顔を絵文字で隠すアプリにしよう」 先輩: 「あ、デプロイは不要。ローカルで動けばいいからね。顔認識と画像処理でいけるよね?」 新人: 😐 新人: (えぇぇぇぇぇぇぇ。3 時間?厳しすぎる...) 新人: (まずモデルどうしよう。てかもら

      君には今から3時間で機械学習Webアプリを作ってもらうよ
    • VSCodeでPython書いてる人はとりあえずこれやっとけ〜 - Qiita

      はじめに Pythonはコードが汚くなりがち(個人的にそう思う) そんなPythonくんを快適に書くための設定を紹介します。 拡張機能編 ここでは Pythonを書きやすくするため の拡張機能を紹介していきます。 1. Error Lens before 「コード書いたけど、なんか波線出てるよ💦」 記述に問題があった場合、デフォルトでは波線が表示されるだけ。。。 after Error Lensくんを入れることによって 波線だけでなくエディタに直接表示される。 はい、有能〜 2. indent-rainbow before Pythonくんは インデントでスコープを認識している。 for の f から下に線が伸びてるけど、ちょっと見にくいなぁ after 色が付いてちょっと見やすくなった! 3. Trailing Space before 一見、普通に見えるコード after 末尾にある

        VSCodeでPython書いてる人はとりあえずこれやっとけ〜 - Qiita
      • 同期エンジンの心臓部を書き換える

        0 0 719 0 この 4 年間、Dropbox では、デスクトップ クライアントの同期エンジンを白紙の状態から再構築しようと懸命に取り組んできました。同期エンジンは、デスクトップ パソコン上の Dropbox フォルダの陰に隠れた魔法です。これは、Dropbox で最も長く使われているコード部分であり、最も重要なコード部分の 1 つでもあります。今回、新しい同期エンジン(コードネーム「Nucleus」)をすべての Dropbox ユーザー向けにリリースさせていただくことを、ここに発表いたします。 同期エンジンの書き換えは本当に大変な作業で、多くの環境でマイナスともなりうる構想であったことに鑑みると、手放しで祝う気持ちにはなれません。結果的には Dropbox にとって素晴らしいアイデアであったわけですが、それは、私たちがこのプロセスにどのように取り組むべきかを熟考したからこそ、たどり着

          同期エンジンの心臓部を書き換える
        • 今時のPythonはこう書く2020 - Qiita

          はじめに システム作ってるとかライブラリ作ってるみたいなある程度Pythonを綺麗に1書くことが求められる方々に向けた記事です。 (機械学習系のライブラリを使うためにPython書いてる方とか、初学者の方にはちょっとあわないかも知れません) 綺麗に書くための作法の難しさって共有が面倒なところだと思うんですよね。その書き方は間違いじゃない、間違いじゃないけどもっといい書き方があるぞみたいなやつってなかなか指摘し辛いですし、じゃあ1人に対してレビューしたら他のメンバーにはどう伝える?そもそも伝える必要?俺の工数は?みたいになりがちです。 一番いいのはこういう時はこう書く!みたいなドキュメントを作って「ドキュメント違反です」ってレビューをしてあげることなんですが、まーそれもそれで超面倒じゃないですか。なのでこの記事がそのドキュメントの代わり、とまではいかなくとも礎くらいになればいいなと思って書き

            今時のPythonはこう書く2020 - Qiita
          • pipとpipenvとpoetryの技術的・歴史的背景とその展望 - Stimulator

            - はじめに - Pythonのパッケージ管理ツールは、長らく乱世にあると言える。 特にpip、pipenv、poetryというツールの登場シーン前後では、多くの変革がもたらされた。 本記事は、Pythonパッケージ管理ツールであるpip、pipenv、poetryの3つに着目し、それぞれのツールに対してフラットな背景、技術的な説明を示しながら、所属企業内にてpoetry移行大臣として1年活動した上での経験、移行の意図について綴り、今後のPythonパッケージ管理の展望について妄想するものである。 注意:本記事はPythonパッケージ管理のベストプラクティスを主張する記事ではありません。背景を理解し自らの開発環境や状態に応じて適切に技術選定できるソフトウェアエンジニアこそ良いソフトウェアエンジニアであると筆者は考えています。 重要なポイントのみ把握したい場合は、各章の最後のまとめを読んで頂

              pipとpipenvとpoetryの技術的・歴史的背景とその展望 - Stimulator
            • 主にVSCodeではじめるPython開発環境構築ガイド | DevelopersIO

              ファイル比較 VSCodeのエクスプローラで、ファイル2つを選択して右クリックメニューから「選択項目を比較」で比較することができます。 また右クリックで、「比較対象の選択」をした後に「選択項目を比較」でも比較することも可能です。 VSCodeのSnippetの使い方 VSCodeのSnippetも便利です。似たような構造のクラスを実装する場合などや、プロジェクト共通で使いがちな書き方というものをSnippetに登録して、効率化することができます。 また、変数を持たせておくこともできます。この場合、Snippetを呼び出した後に変数部分にカーソルがあたるので、そこで変数部分をタイピングできます。 詳細は以下のリンクをご覧ください。 Visual Studio Codeに定型文(スニペット)を登録する方法 VSCodeのUser Snippetを活用しよう! また後述するSnippet Gen

                主にVSCodeではじめるPython開発環境構築ガイド | DevelopersIO
              • 2020年5月におけるPython開発環境の選択肢 - Qiita

                はじめに インストールすればすぐに書けて動かせるのが魅力のPythonですが、 実際に業務などでキチンと書こうと思ったら Pythonのバージョン管理ツール パッケージマネージャー エディター(IDE) リンター フォーマッター 型チェッカー くらいは最低限用意する必要があります。 しかしこの界隈、怒涛の勢いで日々新しいものがリリースされていて一概に「これがベストプラクティス」を提示するのが難しいんですよね。そこで今回は上記それぞれのツールについて「こんなものがあるよ」というのをご紹介したいと思います。 TLDR バージョン/パッケージ管理はpyenv + Pipenvがスタンダードだった時代は終わった VS CodeかVimを使うなら型解析にPyrightを導入するとよい テンプレートを用意しました 1. バージョン/パッケージマネージャー プロジェクトごとに異なるPythonのバージョ

                  2020年5月におけるPython開発環境の選択肢 - Qiita
                • 【2021】モダンなPython開発環境の紹介 - Qiita

                  📌 はじめに Pythonで開発を行うにあたり、リンタやフォーマッタ、パッケージマネージャ等のツールの選定は非常に重要な問題です。一方で歴史的な経緯もあり、沢山の選択肢から何を選ぶべきか情報がまとまっていないように感じました。この記事では2021年9月時点でモダンと言えるであろう開発環境を紹介します。基本的にはシェアが高いこと、著名なパッケージで使用されていることを主な選定理由としており、また特定のエディタに依存しないことを前提とします。 本記事で紹介する内容は一つのテンプレートに近く、必要に応じてカスタマイズするもよし、そのまま使ってもよし、として参考になればと思います。(CI/CDについてはPythonとは独立した問題なので触れません。またドキュメント生成はSphinxを推しますが、必須ではないので今回は割愛します。) 📄 要約 "モダン"な開発環境を箇条で列挙すると下記の通りです

                    【2021】モダンなPython開発環境の紹介 - Qiita
                  • もうPythonの細かい書き方で議論しない。blackで自動フォーマットしよう - Make組ブログ

                    「ここで改行するほうがキレイで良いと思います」 『いや、私はこちらのほうがキレイ良いと思います』 コードレビューでこういう議論をしたことはありませんか? 大切なことだとは思いますが、生産性にはあまり直結しません。議論を避けるために書き方を決めるほうが良いでしょう (個々の問題について逐次議論するのがエネルギーを無駄にしてしまいます。一度決めて、再利用するようにしたいものです)。 今日はそのために使える black というツールを紹介します (「私はflake8を使ってるから結構です」と思われるかもしれませんが、少し違う話なので読んでみてください)。 blackを使おう Pythonのコードを自動でフォーマットしてくれる black を紹介します。 github.com blackはPythonのコードフォーマッターで、自動的にPythonプログラムの書き方を修正してくれます。 PEP8 と

                      もうPythonの細かい書き方で議論しない。blackで自動フォーマットしよう - Make組ブログ
                    • 20年でソフトウェア開発の景色はどのぐらい変わったのか? - Qiita

                      PySpa統合思念体です。 某チャットで、「今時のOSSのプロジェクト管理とかのベストプラクティスが書いてある本ないかな、陳腐化早そうだしないか」みたいな話題が投入されました。その中で、エキスパートPythonプログラミングとか、Pythonプロフェッショナルプログラミングとかは思い出して紹介したけど、他の人からはShip It、Manage It、Release It三部作とか、達人プログラマーとかも出てきました。 このあたりの源流を辿ると、そういえば今流行ってる開発の源流としてはエクストリームプログラミングの開発系のプラクティスの遺伝子を受け継いでいるのが多いよな、そういえば当時から見て今ってどう変わっているのかな、という話題に。せっかくなので20年前を思い出しつつ、当時と今でどういう風に変わってきたのか適当にまとめてみます。 20年前の状況 XP白本こと、eXtreme Progra

                        20年でソフトウェア開発の景色はどのぐらい変わったのか? - Qiita
                      • Python互換の静的型付け言語「Erg」

                        承前 Ergは私が数年前から開発を始め、つい一昨日公開したばかりのプログラミング言語です。 のはずですが、 早速、qnighyさんに捕捉していただきました。ありがとうございます。 この記事ではそのErgがどのような言語なのかざっくりと解説していきたいと思います。なお、紹介した機能の一部は未実装です。実装途中の機能を含むコードには*を、完全に未実装の機能を含むコードには**をつけておきます。 はじめに Pythonは概ね素晴らしい言語です。 オフサイドルールを世に知らしめた(?)、その可読性の高い文法。Numpy, SciPyを始めとする機械学習、科学技術計算用の膨大なライブラリ。 しかしPythonにもいくつかの弱点が存在します。 まず、動的型付け であること。それ自体は弱点というより良し悪しなのですが、明らかに動的型付けでは手に余るPythonプロジェクトが世に溢れています。 次に、一貫

                          Python互換の静的型付け言語「Erg」
                        • Pythonでの開発・CI/CDの私的ベストプラクティス2022

                          はじめに 2021年、Pythonで複数の暗号系ライブラリを開発してPyPIで公開してきました。その過程で、setuptools、flit、poetryと、幾つかのパッケージ管理をわたり歩き、GitHub上でのCI/CDも色々試す中で私的なべスプラが定まってきたので、2022年初に備忘録としてまとめておきます。 具体的には、pyenv、poetry、pre-commit、tox、GitHub Actions を活用し、低コストで(=なるべく自動で)、高品質のプロダクトをPyPIにデプロイする方法・設定を共有します。個別のツールの記事はよく目にするのですが、開発ライフサイクル全体をカバーする記事がなかなか無かったので。 開発環境の整備 - pyenvで複数のPythonバージョンでの開発環境を整備 パッケージ管理 - poetry/pyproject.tomlでの一元的なパッケージ管理 静的

                            Pythonでの開発・CI/CDの私的ベストプラクティス2022
                          • 開発やデバッグが捗るPythonライブラリ6選 - Qiita

                            目次 概要 動作環境 紹介するPythonライブラリ flake8 pyformat isort mypy bpython ipdb 最後に 概要 仕事でよくつかうパッケージからプライベートで開発するときに、必ずインストールしているパッケージをまとめて紹介してみた。 データサイエンス系の人はJupyterを使うと思うのでWeb開発向きだと思います。 DjangoなどWebフレームワークを使うときは便利な専用のパッケージもありますが本記事には記載してないです。 パッケージ管理はPipenvやpoetryなど有名なものがあるがこの記事では書いてないです。 動作環境 筆者の動作環境。 環境に依存したパッケージはないはずだが念の為。 MacOS Python 3.8.0 anyenv 1.1.1 pyenv 1.2.15-1-g49bf5952 紹介するPythonパッケージ flake8 プロジ

                              開発やデバッグが捗るPythonライブラリ6選 - Qiita
                            • PythonとType Hintsで書くバックエンド | メルカリエンジニアリング

                              こんにちは、AIチーム所属の@shidoです。CRE (Customer Reliability Engineering) 領域でMLを扱っています。 みなさんはPythonで本番コードを書くことについてどうお考えでしょうか。「研究/分析以外には使いたくない」「遅い」「動的型付け言語を本番用に使いたくない」といった声が聞こえてきそうです。 しかしながら機械学習サービス(または機械学習サービスのためのサービスなど)を作りたい場合、「学習に利用したPython用のライブラリを使用したい」「Pythonでやっていた分析と同じことを本番環境内でもやりたい」など、Pythonでバックエンドを実装したくなることがあると思います。 この記事ではtype hintsを付けながらPythonを書くことで、GoやJavaのようなサーバーサイドでよく使われる言語と可読性や保守性、場合によっては型安全性も同じレベ

                                PythonとType Hintsで書くバックエンド | メルカリエンジニアリング
                              • VS CodeによるPython開発環境のテンプレ - Qiita

                                0. はじめに sublime使いだった僕が(使い込んではいなかったけど)社内のPython開発環境を統一するためにVS Codeの色々を調べたので,そのまとめです. 以下ができるような開発環境の構築を目的としています. 複数人がローカルで開発する時に,環境を揃えたい. ローカルからリモートサーバーにアクセスして開発したい. プロジェクトごとに依存関係を整理したい. コーディングスタイルや型などのチェックを入れたい. Pythonの環境周りはPipenvで管理し,ローカルでdockerを立ち上げてその中で開発するためのテンプレです. 1. install Setting up Visual Studio Code 2. Extension 2.1. 必須 以下は必須. python Remote Development Remote SSH git lens 2.2. オプショナル その他

                                  VS CodeによるPython開発環境のテンプレ - Qiita
                                • Nimを知ってほしい2022

                                  Nimを知ってほしいという記事があり、Nimを知らなかった人々向けに最初の紹介として大変な貢献をしてくださりました。 しかしまだNimを使ったプロダクトというのも少なく、競プロではチラホラ見かけるものの、人々の中にある意識としては「気になっています」という域を越えられていないのも事実です。 そこで今回は企業での意思決定をする人や、5年以上の経歴があるエンジニア向けに、Nimを書いてみようと感じてもらうことを目的に、先日私が登壇したみんなのPython勉強会#79 『Pythonistaに伝えたいNimの魅力』に加筆して投稿してみたいと思います。 Nimって何? 2008年から開発が始まった新しいプログラミング言語です。 「Pythonに型が付いて、Goみたいに高速に、バイナリになってOSの実行環境に依存しないで動いてくれる言語ないかな〜」という全プログラマーの夢を叶えてくれる言語です。 書

                                    Nimを知ってほしい2022
                                  • Pythonについて思うこと | 雑記帳

                                    みなさん、Pythonは好きですか? この記事では、私がPythonという言語とそのエコシステムについて思うところを書いていきます。全体を通したストーリーみたいなのはなくて、トピックごとに書いています。 私のPython経験は3年弱です。Pythonについてまだまだ新米だという自覚はありますが、そこは有り余る才能でカバーしてこの記事を書いています。 静的型 Pythonには静的型がありません。型ヒントはありますが、インタープリターにとっては飾りにすぎません。 mypyとかの型チェッカーはありますが、「それさえあれば万事ハッピー」なものではなく、既存のコードを適宜書き換えないと型チェッカーでまともな結果を得るのは難しそうです。型検査を念頭に書かれていない(型ヒント付きの)コードをそのままmypyにかけても大量のエラー・警告が出てくるでしょう(ちなみに、型ヒントなしの関数はmypyのデフォルト

                                    • Building a toy browser

                                      In the last several weeks, I have been building a toy browser based on an online book, Web Browser Engineering. As someone who spent a fair share of his career on web frontend, it was eye-opening and satisfying. It felt like I had been living on one side of a wall for years and finally visited the other side of the wall. I imagine other web frontend folks would like it as well. The book Web Browse

                                        Building a toy browser
                                      • Python普及しろ協会に入会したい

                                        この記事はタナイ氏によるPython滅ぼす協会に入会したいを読んでから執筆したものです。 この記事の趣旨はPython滅ぼす協会に入会したいに対する反論という形をとりながら、タナイ氏により「バカの言語」と揶揄され、「使ってエンジニアを名乗るというのは」「滑稽」とまで言われたPythonの立場を再考することです。 追記 本記事は「Pythonはこれだけ優れた言語だからみんな使おう!」というものではなく「言うほど酷くないと思うよ」程度のものです。 型アノテーションがあるからと言って静的型付けを軽視しているわけでもなければ、map関数をもってmapメソッドを不要だと言っているわけでもありません。 この記法は嫌い〜この記法が好き〜と表明することは個人の自由ですが、同様に「この記法は実はこういう意味があって〜」という意見があればそれを聞いた上で、物事を判断して欲しいです。もちろん、聞いても意見が変わ

                                          Python普及しろ協会に入会したい
                                        • 個人開発OSSが世界に勝てなかった話

                                          ゆーすけべー氏の「OSSで世界と戦うために」にインスパイアされました。5年間pyserdeというOSSのライブラリを開発・メンテしてきた筆者が、ちょっとだけ世界と戦ってみたけど全然勝てなかったという話です。Honoとはプロダクトの規模も開発にかける情熱も全然違うけど、単純にポストモーテムは読み物として面白いかなと思ったので書いてみます。また、5年間の開発で学んだやってよかったことや失敗などもシェアできればと思います。 pyserde pyserdeは筆者が2019年から開発メンテナンスしているOSSで、RustのserdeというライブラリにインスパイアされたPython用のシリアライゼーションフレームワークです。 以下のようにクラスを定義すると、型アノテーションに基づいたデータ変換やバリデーションのコードが内部的に生成され、強い型付けのクラスを生成することができます。強い型付けのクラスはラ

                                            個人開発OSSが世界に勝てなかった話
                                          • Python の型システムの上で Immutable な Python プログラムを作る - 病みつきエンジニアブログ

                                            まえがき 今年の PyCon JP 2020 にて「Python 3.9 時代の型安全な Python の極め方」というタイトルで登壇させていただきます。本稿は、発表の補足となる「型ヒントを使って Immutable な Python を実現する方法」について紹介したものです。 Python の型ヒント Python には「型ヒント」という機能があり、型をプログラム内に宣言することができます。 age: int = 28 name: str = 'Bruce Wayne' Python は動的型付き言語であるため、この情報はランタイム(実行時)にはあまり意味がないのですが、 mypy などの型チェックツールをつかうと、型の誤りをチェックすることができます。 def check_batman(name: str) -> bool: return name == 'Bruce Wayne' a

                                              Python の型システムの上で Immutable な Python プログラムを作る - 病みつきエンジニアブログ
                                            • 動的型付き言語は素早くプロジェクトを立ち上げるのに向いており、静的型付き言語は長期間の保守にむいているという仮説 - kmizuの日記

                                              注:誤解されないように最初にこの記事の意図を書いておくと、古典的な静的型付き言語VS.動的型付き言語の論争をするつもりはありません。これまで色々なプロジェクトを観察(風聞も含む)して来たところ、そういう傾向があるのではないかという仮説です。それと、文脈として主にWebアプリケーション開発する時のことを想定しており、それ以外のケースはいったん脇に置いています。WebアプリケーションだとPHP(動的型付き言語)の方が圧倒的に事例多いのではという感想もありそうですが、その辺りを考え出すと話がこんがらがるので、これもいったん脇においています。 たとえば、色々な事例を見聞きするに、スタートアップ企業において動的型付き言語であるRubyのWebアプリケーションフレームワークであるRuby on Rails(RoR)は好まれる傾向にあります。近年のPythonの動向はさておき、未だにRoRの求人がかなり

                                                動的型付き言語は素早くプロジェクトを立ち上げるのに向いており、静的型付き言語は長期間の保守にむいているという仮説 - kmizuの日記
                                              • プロ驚き屋AIをチームのSlackに招待しタイムラインを荒らす - Qiita

                                                20XX 年、我々人類は進化著しい AI に驚くしかない日々が続いています。ソーシャルメディアに驚きがあふれインプレッションを競う様はまさに大海賊時代、いいねの海賊王に俺はなる、とばかり飛びぬけて耳目を引く超新星 ( スーパールーキー ) が頭角を現しています。 「プロ驚き屋」としばしば称されるルーキーたちは X ( 旧 Twitter ) のタイムラインに現れては情報の正確性を重んじるエンジニアや研究者を戸惑わせます。チームやコミュニティ内の Slack はそうした喧噪から離れたオアシスといえるかもしれません。そんなオアシスにプロ驚き屋を召喚しタイムラインを荒らすのが今回の目的です。次に実際の例を示します。 なかなか模倣できているのではないでしょうか。オアシスは今、ジャングルに変わりました。私たちが生きている世界では正確で吟味された情報だけにアクセスしたいという願いは実現されないので、現

                                                  プロ驚き屋AIをチームのSlackに招待しタイムラインを荒らす - Qiita
                                                • ロバストPython

                                                  Pythonはシンプルな構文で読みやすいプログラミング言語ですが、コードをロバストにする機能も備わっています。本書では、Python 3.5から導入された型ヒントを使って、ロバストなPythonコードを記述する方法にアプローチします。全4部構成のうち、Ⅰ部とⅡ部ではPythonにおける型ヒントの位置づけや組み込み型について基本的な事柄をしっかりおさえ、ユーザ定義型を使う方法、部分型、プロトコル、pydanticによる実行時型チェックなど、Pythonの型システムを最大限に活用する方法を詳しく説明します。Ⅲ部は依存関係や設計手法について、Ⅳ部はセーフティネットとして高度なテスト手法を扱います。本書の内容を理解すれば、クリーンで保守しやすいPythonコードが書けるようになります。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の

                                                    ロバストPython
                                                  • Pythonプロジェクトを快適にするために導入したツールとその設定 | DevelopersIO

                                                    start: if [ -n "${ENV}" ]; then \ .venv/bin/dotenv --file ${ENV} run -- .venv/bin/python src/main.py; \ lint: poetry run pysen run lint lint-fix: poetry run pysen run format && \ poetry run pysen run lint test-unit: poetry run pytest install-dev: poetry install install: poetry install --no-dev 本番環境のみ入れたいパッケージがある場合 IoT開発等では、開発時はMacで本番はラズパイみたいなケースの場合、アーキテクチャ依存で追加できないパッケージがあったりします。 例えばRPi.GPIOは、GPIOが

                                                      Pythonプロジェクトを快適にするために導入したツールとその設定 | DevelopersIO
                                                    • Python最新バージョン対応!より良い型ヒントの書き方 | gihyo.jp

                                                      寺田 学です。9月の「Python Monthly Topics」は、Python 3.5で導入され、多くの場面で活用されている型ヒント(Type Hints)について、より良い型ヒントの書き方を紹介します。 Pythonの型ヒントとは Pythonは動的型付け言語です。型を指定せずに変数宣言できますし、関数の引数や戻り値に型を宣言する必要はありません。 Python 3.5(2015年9月リリース)で型ヒントの仕組みが入りました。型の指定が不要なPythonですが、型ヒントを付けることで、「⁠コードの可読性向上⁠」⁠、「⁠IDEコード補完の充実⁠」⁠、「⁠静的型チェックの実行」といった静的型付け言語のようなメリットを得ることができます。 Pythonの型ヒントは以下のように記述します。 name: str = "氏名" # 変数nameをstr型と宣言 def f(arg: int) -

                                                        Python最新バージョン対応!より良い型ヒントの書き方 | gihyo.jp
                                                      • Python開発を円滑に進めるためのツール設定 Part.1

                                                        2019年9月16、17日、日本最大のPythonの祭典である「PyCon JP 2019」が開催されました。「Python New Era」をキャッチコピーに、日本だけでなく世界各地からPythonエンジニアたちが一堂に会し、さまざまな知見を共有します。プレゼンテーション「Python開発を円滑に進めるためのツール設定」に登壇したのは、Atsushi Odagiri氏。講演資料はこちら 開発を効率的に進めるためのツール設定 Atsushi Odagiri氏:この時間はビギナーセッションで、内容はPythonでの開発を効率的に進めるためのツール設定です。 まず「ツール設定」という趣旨の説明と、あとは今日説明するツールがflake8、black、mypy、pytest、toxなどがあります。そしてそれぞれを使うためにエディタ設定をするという流れになっております。 先に自己紹介させていただきま

                                                          Python開発を円滑に進めるためのツール設定 Part.1
                                                        • Pythonのコード改善のためのツール5つを試してみた - minus9d's diary

                                                          Pythonのコードを改善するためのツールについて一通り試してみました。各ツールのインストール方法や使い方については Pythonのスタイルガイドとそれを守るための各種Lint・解析ツール5種まとめ! - Sider Blog に詳細にまとまっているのでおすすめです。 サンプルコード 以下のサンプルコードを対象に、各ツールの出力を確かめてみます。 import time import sys import fractions def func1(varA,varB): '''return sum of a and b''' varC = 42 return (varA + varB) print(func1(fractions.Fraction(1, 2), fractions.Fraction(1, 3))) 3 + 5 sys.exit(0) このスクリプトをsample.pyという名

                                                            Pythonのコード改善のためのツール5つを試してみた - minus9d's diary
                                                          • Rust製コマンドでTerminal操作を快適にしよう! | DevelopersIO

                                                            はじめに CX事業本部のshuntakaです。 Terminalで作業をする人に馴染みの深いlsやfindといったOSコマンドの改善や拡張を目的としたRust製CLIが多く公開されています。 本記事は、自分がTerminal操作で利用しているRust製CLIとその利用例を紹介したいと思います。 Rust製ですが、紹介するツールは基本brewでインストール可能なので、気軽に試せます。 お盆が終わる前に入れておくと、お盆開けから一味違う自分になれます。 コマンド紹介 exa 該当するOSコマンド ls, tree 特徴 出力の色付けに加え、Gitのステータス表示もしてくれます(後述) 利用例1 lsを使う局面 exa -ahl --git aliasに登録しています alias ls='exa' alias ll='exa -ahl --git' 動作イメージ Gitのステータス上差分があるフ

                                                              Rust製コマンドでTerminal操作を快適にしよう! | DevelopersIO
                                                            • Scala で書いたマイクロサービスを Go で書き直した話 - JX通信社エンジニアブログ

                                                              この記事はJX通信社 Advent Calendar 2019 2日目の記事です。 昨日は、たっちさんの「Kubernetes Admission Webhookでリソース作成を自在にコントロールする」でした。 こんにちは、サーバーサイドエンジニアの @kimihiro_n です。 今回は長年動かしてた Scala のマイクロサービスのリビルドを行った話をしようと思います。 TL;DR 新しい言語を投入するのにマイクロサービスは便利 Scala で感じていた問題点を解消しつつ Go へ移行できた 消費メモリが大きく減って安定稼働できるようになった 予防線を貼っておきますと、Scala より Go のほうがいいよね、といった本旨ではありません。 Scala で書いたマイクロサービス 弊社のマイクロサービスの一つにカテゴリ分類専用のサービスが存在します。 カテゴリやキーワードを登録しておくとル

                                                                Scala で書いたマイクロサービスを Go で書き直した話 - JX通信社エンジニアブログ
                                                              • 「アラサーエンジニアの生存戦略」を発表しました

                                                                リードエンジニアから学ぶMedPeerのプロダクト開発という僕が所属する企業のイベントで、「アラサーエンジニアの生存戦略」というタイトルで発表しました。 発表の経緯もともとの発表の着想となったエントリはこちらになります。 技術者としてスポンジであり続けること あるいは老害回避戦略の話 エンジニアリングとは常に学習し続けることである。 思うに、コードを書かず学習意欲を失ってしまった35歳のおじさんたちが自分がコードが書けないこと・学ばないことの言い訳として言い出し始めたのがこの「35歳定年説」の真実じゃないだろうか。 この文章は僕自身が若手とは言えない年齢となり今後シニアな立場へとなっていく中で「自分は老害化していくのではないか」という危機感から自戒も込めて書いたものである。願わくば五年後十年後自分がここに書いたような老害になっていないことを祈る。 この記事のトピックとしては、「エンジニアの

                                                                  「アラサーエンジニアの生存戦略」を発表しました
                                                                • Thank you, Guido

                                                                  open search After six and a half years, Guido van Rossum, the creator of Python, is leaving Dropbox and heading into retirement. From the beginning, we knew Guido would be a great addition to our company. In fact, his contributions to Dropbox date back to day one. Our CEO Drew Houston’s very first lines of code for Dropbox were written in Python. “What I love about Python is it just works,” says H

                                                                    Thank you, Guido
                                                                  • それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md · GitHub

                                                                    それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md 前置き この記事は静的型付け言語が理解されないことに業を煮やし……いや、ブチギレてしたためたものです。そのため多少過激な表現を伴います 性質上どうしても特定の人々に攻撃的な内容になります リーナスの下品な発言の引用は非現実的です。わたしが5人くらいいれば現実的なのですが…… Pythonの機械学習分野は例外です。ですがここもいずれ静的型付け言語に取って代わられるべきであると考えています(そもそもFFIが得意と言うだけでPython使われてるだけだし) 「型」の概念が石器時代で止まっている方へ まずはこちらをお読みください。 私と型システムとポエム - The curse of λ https://myuon.github.io/posts/type-system-poem/ 特に「よくある誤解」のこ

                                                                      それでもRuby、Python、JavaScript(あるいはJava)を使う方々へ.md · GitHub
                                                                    • 効率的にリファクタリングを進めるための下準備教えます - MonotaRO Tech Blog

                                                                      はじめに ※ (2024/03/14 16:33) 「インテグレーションテストの気軽な実行・変更ができない」節にて、データのクリーンアップを teardownで行うよう修正 EC開発-B グループの岡崎と EC開発-A グループの菊川です。2人とも普段は MonotaRO の EC サイトの開発に従事しています。 今回は、昨年11月に開催した、テストとリファクタリングのためのワークショップの中で行ったライブコーディングの準備をするにあたって困ったことについて記載します。 ライブコーディングでは、参加者全員の前で実際のプロダクトのソースコードをリファクタリングする、ということにし、それにあたって研修の運営メンバーでリファクタリングに取り組んでみました。ただ闇雲にリファクタリングするのではなく、研修では参加者に「どのような流れや考え方でリファクタリングをするか」を理解してもらえるように、運営メ

                                                                        効率的にリファクタリングを進めるための下準備教えます - MonotaRO Tech Blog
                                                                      • 【全2回】AWS Lambda x FastAPIによるPythonモダンAPI開発のすゝめ 1 - RAKSUL TechBlog

                                                                        はじめに この記事を読んで得られること 対象読者 あまり説明しないこと 前提とするバージョン 参考となるレポジトリ 1. 開発環境の構築で使用したツール AWS Lambdaのコンテナサポートを採用 Poetry利用時に開発と本番環境の適切な管理でLambdaデプロイ問題を解決 Poetry利用時に起きた問題 Dockerfileを分けてデプロイできない問題を回避 Mutagen Composeを採用 Dockerの同期遅い問題 Mutagen Composeを利用 2. 開発で活用したPythonライブラリ パッケージ管理 Poetry Ryeも検討したものの採用せず ベースのライブラリ FastAPI Mangum Powertools for AWS Lambda リンター・フォーマッター Ruff Mypy 型アノテーション自動生成ツールの活用 Black テスト Pytest p

                                                                          【全2回】AWS Lambda x FastAPIによるPythonモダンAPI開発のすゝめ 1 - RAKSUL TechBlog
                                                                        • Pythonのlinter/formatterを誰でも手軽に設定できるようにするためのPFN社内ツール “pysen” の紹介 - Preferred Networks Research & Development

                                                                          Home Blog Pythonのlinter/formatterを誰でも手軽に設定できるようにするためのPFN社内ツール “pysen” の紹介 Python向けのlinter/formatter設定ツール「pysen」を pypi.org および github.com で一般公開しました。 このツールは主にPython向けのlinter/formatterの設定を一元管理し、Preferred Networks社内でよく使われているツール環境を誰でも簡単に設定できるように支援するツールです。チームごとに分散しうるようなツールに関するノウハウをコードとして集約し、PFN社内での共有を促進させることを目的として開発しています。pysenは実際にPFN社内で使われており、2020年4月に開発がスタートしてから、2021年3月現在でおよそ100を超える社内リポジトリに導入されています。 上図:

                                                                            Pythonのlinter/formatterを誰でも手軽に設定できるようにするためのPFN社内ツール “pysen” の紹介 - Preferred Networks Research & Development
                                                                          • プログラミング言語Pythonの生みの親がDropboxを退社、Dropboxが語る一流プログラマーの姿とは?

                                                                            by Sagaru9535 プログラミング言語Pythonの生みの親であるグイド・ヴァンロッサム氏は、2018年7月12日に突如Python開発のBenevolent Dictator For Life(BDFL、優しい終身の独裁者)を退き、Pythonの仕様策定から離れる意向を示しました。そんなヴァンロッサム氏は2013年1月からDropboxの主任エンジニアを務めていましたが、2019年10月29日時点で既にDropboxを退社していることをDropboxの開発チームが公表。公式ブログでヴァンロッサム氏のエピソードと共に謝意が述べられています。 Thank you, Guido | Dropbox Blog https://blog.dropbox.com/topics/company/thank-you--guido ヴァンロッサム氏はアムステルダム大学で数学と計算機科学の修士号を取

                                                                              プログラミング言語Pythonの生みの親がDropboxを退社、Dropboxが語る一流プログラマーの姿とは?
                                                                            • 1日目:独学プログラマが語る「なぜPythonが世界を席巻しているのか?」 | gihyo.jp

                                                                              PyCon JPとは PyCon JPは日本国内外のPythonユーザーが一堂に会し、互いに交流を深め、知識を分け合い、新たな可能性を見つけられる場所として毎年9月中旬に開催される国際カンファレンスです。 PyCon JP 2019は2019年9月14日のスプリント(HENNGE株式会社⁠)⁠、9月15日のチュートリアル、9月16日〜17日のカンファレンス(大田区産業プラザPiO)と4日間の会期で開催されました。来場者は4日間で約1160人と昨年を上回る大盛況で、Pythonへの注目が年々増していることがわかります。 今回は16日に行われたカンファレンスの中から、注目セッションやイベントの様子と感想について運営スタッフがレポートします。 基調講演「Why Python is Eating the World」― Cory Althoff (牛窪翔) 1日目の基調講演は、Cory Altho

                                                                                1日目:独学プログラマが語る「なぜPythonが世界を席巻しているのか?」 | gihyo.jp
                                                                              • その実験、再現できますか?pyenvとpoetryによる “そんなに頑張らない” 再現可能な実験環境構築 - Gunosyデータ分析ブログ

                                                                                Gunosy Tech Lab リサーチインターンの北田 (@shunk031)です。 深層学習の論文を読んでいるときに著者実装が公開されている旨を見ると嬉しい気持ちになりますよね。 いざ公開レポジトリに飛んだ瞬間その嬉しさは無となることが多いですが、くじけずにやっていきたいです。 著者実装のrequirements.txtをベースにpythonモジュールをインストールするとよく見るやつ こちらの記事は Gunosy Advent Calendar 2020 6日目の記事です。昨日は @625 さんの goで作るfirehoseのデータ変換lambda でした。 tech.gunosy.io その実験、再現できますか? リサーチインターンでは主にGunosyのデータを使った研究をしています。 特に私は深層学習による広告クリエイティブの評価や運用支援に焦点を当てて取り組んでいます*1。 深層

                                                                                  その実験、再現できますか?pyenvとpoetryによる “そんなに頑張らない” 再現可能な実験環境構築 - Gunosyデータ分析ブログ
                                                                                • Pythonで型を極める【Python 3.9対応】 - Qiita

                                                                                  はじめに みなさん。Pythonで型書いてますか?最近は型の重要性を再認識しているので、皆さんにもぜひPythonで型を書いて頂きたいと思ってこの記事を書きました。 注意事項として今回の記事では下記の事項については言及しません。 型チェックツールの導入方法(mypy,pyrightなど) 今回の内容は以前の書いた記事の補足内容となっていますので、以前の記事ももしよければ参照ください。 実践!!Python型入門(Type Hints) そもそもPythonでなぜ型を書くのか? Pythonは動的型付き言語なので、型を書かなくてもプログラムは動きます。型を書かないことで、コードの量は少なくなりますし、初学者にとっても習得しやすい言語となっていることはメリットかと思います。 ただし、ある程度の行数のコードを書く場合、プログラムを複数人でメンテナンスする場合、型がないと以下の様な問題が発生する。

                                                                                    Pythonで型を極める【Python 3.9対応】 - Qiita