mizzsugar’s blog

日々感じていることや学んだことを書きます。エンジニアリング以外にも書くかもしれません。

PyCon APAC 2023参加ログ

4年ぶりに現地参加しました! 2023-apac.pycon.jp 1日目と2日目に参加しました。1日目は夕方からの参加でしたが、2日目は1日中いました。 久しぶりにお会いできた人、はじめましての人、よく会う人とお話して大変元気をもらいました! 1日目 会場についたの…

「単体テストの考え方/使い方」を読んで

この本の概要 ソフトウェアの品質改善とプロジェクトの成長のための単体テストの戦略を解説しています。 良い単体テストとはなにかから、リファクタリング戦略・モック戦略、単体テストと結合テストの違いまでテストの考え方について幅広く扱っています。 ht…

SQLAlchemy2.0でPostgreSQLを使うメモ

SQLAlchemy2.0でPostgreSQLを動かす際、driverどれにするか迷ったのでメモ。 結論 その時はasync使う必要がなかったのでpsycopgにした。FastAPIなどasyncをモリモリ使う場合はasyncpgにするとDB接続以外のところでasync使って速度出そうとしているのをうまく…

pyconf2022の感想

プロダクトマネージャーのカンファレンス「pmconf2022」をオンライン視聴したので感想をざっくりと。 2022.pmconf.jp 全体的な感想 プロダクトマネージャーの仕事の一部を担い始めたので初参加してみましたが、どのセッションも学びが大きかったです。各現場…

「エンジニアリングマネージャーのしごと」を読んで

この本の概要 エンジニアリングマネージャーの仕事や、必要なスキルや考え方についてまとめられています。 物語形式で書かれており、新しい会社で初めてマネジメント職についた主人公が仕事を進めていく内容になっています。親近感をもてたのでサクサク読み…

「失敗から学ぶRDBの正しい歩き方」を読んで

この本の概要 RDBを使って開発する上で、よく起こる問題とその解決策が書かれています。 テーブル設計からMySQL/PostgreSQLの違いを踏まえたロックの仕組みなど、内容は多岐に渡ります。 1章あたりが短いため、サクサク読めます。「やりすぎたJSON」「聞かな…

近況報告と自己紹介

最後にブログ書いたの、2021年12月とか書かなすぎだろ… ってことで重い腰を上げて書くことに。 久々に書くことにしたきっかけ 最近、Meetyというカジュアル面談のプラットフォームで会ったことない方々とお話するのを楽しんでいます。 カジュアル面談する前…

「実装で知るasyncio」を聴いてコルーチンを全く分かっていないことに気づいた

本記事は「PyCon JP 2021 Advent Calendar」に5日目に掲載する記事です。 qiita.com PyConJP2021で「実装で知るasyncio -イベントループの正体とは- 」を拝聴しました。 https://2021.pycon.jp/time-table/?id=272959 正直、「何も分からん」という感想でし…

DjangoでPytestやるTips

仕事でDjangoやる時に、参画したての人が最初から知っておいた方が良さそうな事柄がまとまってきたので残しておきます。 pytest-djangoの機能 --no-migrations これは、テスト用のテーブルを構築するためのオプションです。このオプションをつけると 定義さ…

「 RDRA2.0 ハンドブック」を読んで

要件定義がうまくいかず憤っていた所、一緒に仕事している人から紹介してもらいました。 影響範囲の調査にヌケモレがあって手戻りが多いことが悩みでした。 読んで見た結果、「なんか要件定義うまくいかない」状態から 具体的に何が良くなくて次はどうすべき…

「実践Django」を読んで

このたび、「実践Django」を著者の芝田さんからいただきました! ありがとうございます DjangoでWEBアプリケーションを作りたい方に強くおすすめしたいです! どんな人におすすめか、本書のおすすめポイントを紹介したいと思います。 実践Djangoの見本誌いた…

FastAPIでDI(Dependency Injection)したい

最近、FastAPIを使った開発をしたので、そこでやったことを書きます。 この記事は2020年のAdvent Calendarで書く予定の記事でしたが、間に合わず、2020年12月31日に投稿したものです…涙 使用技術 Python 3.8 FastAPI 0.61 gunicorn 20.0.4 uvicorn 0.12.2 py…

PyConJP2020で登壇させていただきました。

ちょっと遅くなってしまいましたが… PyConJP2020にて、「unittest.mockを使ってテストを書こう 〜モックオブジェクトを使ってより効率的で安定したテストに〜」という題で発表させていただきました。 長々とした45分間の発表で、スライドの枚数は合計で83枚…

【読書録】リーン・スタートアップ

技術書ではないですが、技術的なことを含め意思決定の判断軸になる話でした。 リーン・スタートアップ | エリック・リース, 伊藤 穣一(MITメディアラボ所長), 井口 耕二 |本 | 通販 | Amazon 読んでみようとした経緯 仕事で感動させた人が2人もこの本の考え…

Python Charity Talks in Japan でLTしました。

Python Charity Talks in Japan とは Python Software Foundation (略称 PSF) に100万円程度の寄付をすることを目的にしたイベントです。 pyconjp.connpass.com PSFとは、Pythonの発展に尽力してくれている組織で、日本と関連することだとPyConJPを支援して…

【読書録】失敗から学ぶRDBの正しい歩き方

この本は著者の方の経験から得たプラクティスが書かれていて実用的かつわかりやすくてとても勉強になりました! Amazon CAPTCHA 読んでみようとした経緯 良書だと聞いて MySQLとPostgreSQLで意識すべきところを知りたい 読むモチベーション チーム開発で説得…

html/CSSをESlintのルールに寄せてCI走らせた

背景 今作っているWEBサービスでは UI/UX(look and feelと言われるところ)を担当するデザイナーさんが、look and feelのデザインを考えHTML/CSSに落とし込みます。 JavaScriptで実際に動きをつける部分は別の人が担当します。※1 我々は、Nuxt.jsを使ってい…

【読書録】ドメイン駆動設計入門 ボトムアップでわかる!ドメイン駆動設計の基本

前回の読書録で「現場で役立つシステム設計の原則」を扱い、その「この本と一緒に読むと面白そうな本」欄でこの本を書きました。「現場で役立つシステム設計の原則」を読んでからこの本を読みましたので、早速読書録を書き残したいと思います。 Amazon CAPTC…

【読書録】現場で役立つシステム設計の原則 〜変更を楽で安全にするオブジェクト指向の実践技法

この本の読書会、途中で抜けちゃったけどちょくちょく読み進めていたので読書録残します。 www.amazon.co.jp 同じ読書会のメンバーのkassyiさんが毎回記録を残してくださったので こちらもぜひ。 読書会中に話題になった本に関連することもあって面白いです…

【Python】【TypeHint】ImmutableなオブジェクトにProtocolを使った時にmypyがエラーとなった

普段mypyを使って開発をしているのですが、Immutableなオブジェクトにtyping.Protocolを使ったらmypyがエラーを出して困ったので備忘録として記事を書きます。 Protocolとは Wikipediaには「複数の者が対象となる事項を確実に実行するための手順について定め…

PyCon mini Shizuokaでオンライン登壇しました。

先日、PyCon mini Shizuokaで「unittest.mockを使ってテストを書こう 〜モックオブジェクトを使ってより単体テストの目的に沿ったテストに〜」という題で30分の発表をさせていただきました。 shizuoka.pycon.jp この発表をすると決めた経緯 もともと、去年の…

PythonとTypeScriptで学ぶGenerics初めの一歩

Twitterで Genericsの話が浮上しているのに影響されて、Generics使うと何が良いのか落とし込みました。 なお、この2つの言語にしたのは、普段自分が使うからです。 Genericsとは 「総称型」とか「汎用型」と言われます。 型定義にGenericsを使うことで文字列…

【TypeScript】型定義のためだけにimportしたクラスやインターフェースがno-unused-vars扱いされて困った話

原因を知れば大したことなかったんですけど解決まで苦戦したので備忘録を残します。 linterはeslintを使っています。 Typescript 3.7 Typescript-eslint-plugin 2.3 pages/user/registration <template> <div class="container"> <user-edit :on-submit-callback="onSubmit" /> </div> </template> <script lang="ts"> import { Vue, Component } from 'vue-property-decorat…

そのif文、Enumにしてみませんか。

これは、Python Advent Calendar 17日目の記事です。 Python Advent Calendar 2019 - Qiita この記事では、私が好きな標準モジュールのうちの一つenumモジュールの基本的な使い方と enumモジュールを使ってリファクタリングする例を紹介します。 enumモジュ…

DjangoORMでウィンドウ関数を使おう

この記事はDjango Advent Calendar 2019の記事です。 Django Advent Calendar 2019 - Qiita そして私の初のアドベントカレンダーです! 最近仕事でBigQueryで分析関数を使うことが多いので、 そのなかでもウィンドウ関数をDjangoのORMでも使えないかなと思い…

「データアーキテクト(データ整備人)を”前向きに”考える会」参加レポート

ブログ枠はブログが書くまでが勉強会ということで書きました! イベントページ analytics-and-intelligence.connpass.com 「データアーキテクト(データ整備人)の概観とこれからの展望と課題」 しんゆう さん (フリーランス) 発表資料 speakerdeck.com 概…

djangoでタイムゾーンとうまく付き合う

Djangogirls Tutorialで今まで何気なく書いていた、Postモデルのpublished_dateとcreated_dateで使うdjango.utils.timezone.now。これについて疑問に思ったことがあったので調べました。 対象 (レベル感)Djangoチュートリアルくらいの複雑さのものを自力で作…

Stapy50回記念で登壇しました

10/9(水)に行われた「みんなのPython勉強会」で登壇した振り返りをします。 startpython.connpass.com 「みんなのPython勉強会」とは、Python初学者からベテランまでいろんな層を対象にしてWebから科学までいろんな題材を扱う「みんな」のための勉強会です。…

ざっくりPyConJP2019のSprint Dayの感想とDjangogirlsTutorial翻訳の感想

PyConJP本体の前にSprintに参加しました。 Sprintは、Pythonの何かしらの開発をする短期集中型イベントです。Sprint Dayに開発したいテーマを提案する人と、それをお手伝いする人で構成されています。 https://pycon.jp/2019/sprint 機械学習・Web・Core Pyt…

ざっくりPyConJP2019の2日目感想

ざっくり2日目の感想を書き残します。 Pythonで始めてみよう関数型プログラミング Twitter twitter.com スライド Pythonで始めてみよう関数型プログラミング - Speaker Deck YouTube www.youtube.com 安全でわかりやすいコードを書くためのプログラミングの…