PyCon JP 2022に参加しました

2022/10/14-15に開催されたにPyConJp2022 に参加しました!

2022.pycon.jp

コロナ禍で開催できるのかという不安が多かった中での久しぶりの現地開催。大変な状況の中で、準備や調整、当日の対応など安全に開催していただいたこと、スタッフの皆様に感謝です! また、そんな状況の中でもスポンサーとして協力してくださった企業にも感謝です。 久しぶりの現地参加はとても楽しく、パワーをもらい、何か新しいことにチャレンジする気力湧いてきたー!と楽しかった余韻に浸りながら帰宅しました。

聞いたトーク(1日目)

  • Keynote: Mark Shanonn さん

    • CPythonの高速化に現在貢献されている方
    • Pythonを高速化しようとこれまでに試みた歴史を紹介してくれ、そのプロジェクトがなぜ失敗したのか等を分析
    • 現在、CPythonの高速化に関心があつまり、お金も集まってきたのでこれまでの失敗をいかし高速化実現に向けて進めていくとのこと
    • GitHubには4年間で5倍の高速化を目指すとあり楽しみ。開発に携わりたい方は、まずissueをみて何をしているか、なにかできそうなことはないかみるのがよいとのことだった
  • 業務改善の面白さ ~毎日更新されるビジュアルコンテンツの差分をわかりやすくするためのプロトタイプを作るまで~ :まりーな さん

    • 日本経済新聞社で配信しているコンテンツのデータに間違いがないように、間違いがあった際に表示をわかりやすく、気づきやすくした取り組み
    • reg-suit が要件にはあわず Pythonや他ツールを使って自作したとのこと
    • 記者というエンジニアでないチームでもわかりやすく、日々の業務で使えるようにいろいろな試行錯誤と工夫と知見が詰まっていて面白かった
  • イベント駆動アーキテクチャについて: Masataka Arai さん

    • イベント駆動アーキテクチャについて実用的なTipsを交えて解説。
    • イベント駆動型プログラミングの例がとてもわかりやすかった。
    • Celeryを使った実例など、詳しいTipsがたくさんあり、こういった実運用で使用している例でのパターンはあまり見かけないので、とても貴重などのでは!と思った
  • Pythonに上級テクニックは要らない(そして正しい付き合い方):清原弘貴さん

    • Pythonの文法や使える技術がそれぞれどういった場面に適しているか、使うべきでないかを⭐️5段階でレベルを分けて明示してくれた
    • こういう指標ってめちゃありがたい!やっぱりそうだよね、とうなづきながら聞き(自分だけ?と考えると自信がなかったとこなど)、自分がうまく言語化できなかった例なども明確に理由も説明してくれたので、チームメンバーにも共有したい。
  • AST(Abstract Syntax Tree)に入門する: 安本雅啓さん

    • ASTの概要と、astモジュールの活用事例に関する紹介
    • ASTの構造がわかるとPythonのコードがどのように実行されているか、動作の中身も理解することができてとても面白いと思った
    • 普段の開発であまり意識することはないかもしれないが、なにかちょっとしたことがあった時に、動作原理がわかっていると助かる場面がある気がする

聞いたトーク(2日目)

  • 基調講演: 西内 啓氏さん

    • 1日目の疲れで間に合わず。めちゃおもしろそうだ!なんで起きれなかったんだ!!とTwitterを見ながら会場へ向かう。あとでYouTubeでみようと思う
  • Pythonで公的統計APIのオープンデータ活用: Ryo YOSHI さん

    • 公的統計APIPythonで扱うノウハウを紹介してくれた
      • e-StatAPIのデータ構造がめちゃ複雑で加工するのが大変なので、ライブラリを作ったとのこと
        • jpy-datareader 複雑な処理を1行でしてくれる。めちゃ便利そう。課題もあるのでメンテなー募集とのこと
    • 公的データを使って世間と自分を比較して、視覚的にみれるの面白そうでやってみたい。(「自分が何にお金使っているか==自分にとって大切なこと」って確かにー!となった)
  • Pythonではじめる地理空間情報:小俣 博司 さん

    • Google ColaboratoryやJupyter Notebookを使った、地理空間情報の可視化手法に関してのトーク
    • 地理情報全く疎かったので、Google Colabでたった3行で地図データ表示できててまじか!となった。
    • 初心者がまず触るなら、leafmapが良いとのことで、ちょうど地図を使って作りたいものがあったので試してみようと思った
    • 緯度経度⇔住所間変更 表記ゆれ対応などに、東大のgithubや無料ツールもあるようなので探してみよう
  • SQL クエリ解析による E2E データリネージの実現: Toshifumi Tsutsumi さん

    • PythonOSS Stairlight を開発したお話
    • データリネージって言葉を知らず、なんだろう?という純粋な興味からみにいったが、その定義や、背景にある問題などから説明してくれたので、その後の理解がスムーズだった。
    • 開発にあたって、大変そうなSQLのパースの部分はすでにあるロジックを参考にしてカスタマイズしたり、再起的な探索で問題にぶち当たった際に、フロイドの循環検出法というものを見つけて使用したり、すでにあるものをうまく利用しているの良いなと思った
  • はじめての量子コンピューター:濵村 一航 さん

    • ちょうどトークが始まる前に登壇者の方と話して、全然量子コンピューターのことわかりません、といったら、そういう人向けのセッションですよ、と教えてくれ参加。
    • 本当に名前だけは知っている程度の知識だったが、どういう原理で演算しているのか、量子コンピュータを呼び出すインターフェイスPythonで提供されることが多いことを知ることができた。
    • 量子コンピューターって、すごく遠い存在だと思っていたが少し身近に感じることができたし、こういう機会がないと興味を持つことがなったと思うので聞けてよかった

アフターパーティ

  • 感染症対策で飲み物も缶、ペットボトル、料理も全て個別になっていた
  • LTめちゃ盛り上がった!
  • いつも自分は同じところでじっーといるタイプだが、今回久しぶりのオフラインパーティだし、いろいろ話しかけてみよう!と後半に気付きまわってみた
  • Raspberry Piもくもく会でオンラインでしかお会いしたことのないメンバーに初対面できた
  • 香港Pyconで一緒になった、そして私が英語ができないのをみかねて通訳をしてくれたIskandarさんと再会できたの嬉しかった
  • 聞いたセッションの登壇者の方に勇気を振り絞って話しかけれた
  • もっと話しかけたい人がたくさんいたが、あっという間に終了の時間がきてしまった。。。それがとても心残り。。ただ、今回自分にしては頑張って話しかけれた気がする!

全体としての感想

  • 今回欲張ってほぼ全ての回のトークを聞いた。人が何かに情熱をもってやっているのを見ていると自分でも色々やってみたくなった。
    • 全ての回を全力で聞いたため、今日はディズーランド2日間回った後くらいの半端ない疲労
  • 企業ブースを巡ってシールを集めるとTシャツgetできるというイベントがモチベーションにもなりブースをたくさん回れた。
    • 実際に回ってみるとそれぞれの会社でやっていることや、どのようにPythonが使われているかを知ることができて楽しかった。
  • 当日機材トラブル等で場所を移動しなくてはならない場面があったが、皆温かく見守っていた雰囲気がよかった。
  • 何回か英語で話す機会があったが、全く話せず。。毎回言ってる気がするが今度こそ英語話せるようになりたい。そしてみんな英語話せてすごい。(今度こそ!せめて自己紹介!)
  • 登壇者の方がマスクをしていたこともあり、アフターパーティでなんの発表をした人なのか識別できず....。spekerの方は首から下げる自己紹介カードに発表内容がかいてあるとうれしいと思った
    • というか自分の目が悪すぎるのかも。人の顔も間近でみないとぼやけて識別しづらかったのでコンタクト変えるかな..
  • 聞きたいトークが重なってみれないトークがあったので、あとでYouTubeでみるぞ。
  • 書籍のレビューでお世話になった方に御礼を直接言うことができてよかった。
  • Python実践レシピの共著者が初めて全員揃って写真撮れたの地味に嬉しかった!
  • お久しぶりの方もオンラインでしかお会いしていなかった方もはじめましての方もたくさん話せたのが楽しかった。

オンラインのよいとこもあるけど、やっぱりオフライン楽しい!となったカンファレンスでした。

最後に戦利品たち。ありがとうございました!

冬の函館に行ったら最高でした

1月に妹と2泊3日で函館に行ってきました。 あまりにも楽しかったので、忘れないうちに旅の記録を。

妹と旅行計画時に函館に行きたい!と言われ、冬の函館?寒すぎない?と一瞬躊躇しましたが、思えば冬の北海道、スキーではよく行きますが観光目的で行ったのは札幌に1度のみ。海鮮が苦手な友人二人と行ったため、海鮮を全く食べなかった思い出が。 よし、海鮮リベンジじゃー!ということで胃薬を持って出発しました。

泊まったホテル

JR函館駅や、赤れんが倉庫へのアクセスもよく、なんといっても朝食にシャンパンが飲める!ということで、センチュリーマリーナ函館 ホテルに宿泊しました。

f:id:electricSheep:20220201112030j:plain
部屋はこんな感じ
f:id:electricSheep:20220201112217j:plain
部屋からの眺め最高!目の前は函館山、右は海だー。

f:id:electricSheep:20220201112304j:plain
朝からシャンパン飲み放題。
f:id:electricSheep:20220201112117j:plain
お刺身をとって海鮮丼を自分で作れる

温泉宿・ホテル総選挙2021で、朝食部門全国1位だそうです。

f:id:electricSheep:20220201130616j:plain
自分好みの枕とアロマが選べる
枕はなくなり次第終了ということで、早めに。そういえば友人が最終的にそばがらの枕に落ち着いたといっていたことを思い出し、そばがらの枕で寝てみました。 が、私には固かった。。私に合うまくらは果たして見つかるのか...

f:id:electricSheep:20220201134447j:plain
温泉の混雑情報が部屋のTVで見れる

温泉は、14Fに広い内風呂、ミストサウナ、露天風呂があり、15Fに函館山や海を見渡せる広ーい露天風呂がありました。 とにかく広くて眺めも良くて最高すぎた。滞在中4回も温泉に入りました。ドライヤーがダイソンなのも良かった。

1日目

夜は行きたいと思っていたうにで有名な「むらかみ」に。

f:id:electricSheep:20220201130737j:plain
念願のうに丼屋さんへ

f:id:electricSheep:20220201130823j:plain
ウニ入り2食丼 S サイズ

f:id:electricSheep:20220201131222j:plain
ウニとホタテのバター焼き

その他、タコ刺し、イカゲソなど好きなものを好きなだけ食べ&飲みました。

2日目

午前中はのんびりホテルで温泉に入ったり、本を読んだりしてお昼前に赤れんが倉庫へ。

f:id:electricSheep:20220201114154j:plain
ホテルから歩いて10分くらい。

f:id:electricSheep:20220201114255j:plain
お昼はラッキーピエロ

私も妹もELLEGARDENが好きなのですが、ボーカルの細美さんが絶賛していたというチャイニーズチキンバーガーを。 ボリューム半端ない!そしてめちゃ美味しい!

f:id:electricSheep:20220201114503j:plain
人気No1のチャイニーズチキンバーガー

f:id:electricSheep:20220201151659j:plain
海が目の前にある席へ(店内はとても広い)

海を見ながら食するハンバーガー、青春じゃない?高校生だったら青春じゃない?と謎に盛り上がりました。(もちろん高校生ではない)

赤れんが倉庫からさらに奥に向かうと、函館山がありますが、その裾野には19の坂があり、それぞれに魅力的な景観を誇っているとのことで、全制覇!!(結局4つくらい)とまでは行きませんでしたが、てくてく散歩しました。

f:id:electricSheep:20220201115118j:plain
八幡坂
チャーミーグリーンのCMに使われた場所だよと、妹が3回くらい教えてくれたw

写真が下手なのでこの場所の良さを伝えきれていないのですが、坂の上から海へとつながる景色は最高でした。人っ子一人いなかった。

f:id:electricSheep:20220201115651j:plain
日和坂

f:id:electricSheep:20220201115517j:plain
重要文化財-旧函館区公会堂-

前でうろうろしていたら、タクシーの運転手さんがせっかくだからと私と妹の二人で写真を撮ってあげるよ、と声をかけてくれました。優しい。

f:id:electricSheep:20220201164428j:plain
元町公園。

f:id:electricSheep:20220201115852j:plain
旧イギリス領事館(ラム酒入り紅茶が美味しかった)
しかし、歩いても歩いても人がいない。こんな寒い中歩く人はいないのかな?

ただ雪がチラチラと降ったり止んだりしている完全なる静寂の中で、黙々とひたすら雪道を歩くのはとても素敵な感じでした。

そして、メインイベント、函館の夜景を見るためにロープウェイ乗り場へ。

するとなんと、16:00始発。15:30分開場とあるではないですが。現在時刻15:00...

まじか、寒くて死ぬ、と愕然と妹と二人突っ立っていたら、ちょうど反対側の道路のバス停に停車したバスの運転手さんが運転席の窓から顔を出して、

「今日はまだそこは開かないから、この道を下ったところに神社があるからそこへ行ってみるといいよ」

と声をかけてくれました。優しい。

f:id:electricSheep:20220201130258j:plain
雪の中での赤い鳥居が映える

そして、16:00。函館山に登るころには、なぜか吹雪に。。。何も見えん。 とりあえず、雨雲レーダーをみるともう少しで止みそうなので、頂上で待ちました。1時間待って雪はやんだけど、ガスっていてやはり何も見えない。。。

f:id:electricSheep:20220201130341j:plain
後ろに夜景が見えるはずか真っ黒...

さらに1時間待てば見れそうな気もしたのですが、諦めて真っ黒な夜景で記念撮影をして、下山しました。無念...。

さて、ロープウェイを降りた後ホテルまでどうやって帰るかな、とまた建物の前で、ぼーっと突っ立っていたら警備員のおじさんが

「どうしたの?タクシー呼びたいの?」と声をかけてくれました。

「タクシーで帰るか、歩いて帰るか迷ってるんです。。」

「どの辺まで行くの?」

「とりあえず赤れんが倉庫あたりに」

「そこなら、全然歩いていけるよ!すぐだよ!」と、こう行くといいよという道を私たちにアドバイスしてくれました。

結果、雪も風も止み、歩いて正解。再び静寂の中へ。

f:id:electricSheep:20220201130442j:plain
めちゃ大きい教会(語彙力)

ちょうど、私たちが教会の横を通った時に、鐘が鳴り出し二人で驚きのあまり飛び上がりました。やっと止んだと思ったら今度はおかしな感じで激しく鳴り響き再度飛び上がってしまいました。 音すごい。ぎゃーと思わず叫んでしまい恥ずかしかったので誰もいなくて本当に良かった。。

f:id:electricSheep:20220201130511j:plain
再び八幡坂

綺麗すぎた。

無事赤れんが倉庫まで辿り着き、函館ラーメンで有名なラーメン屋さんで温まりました。

3日目

天気予報は曇りになっていましたが、朝から晴れたり、吹雪いたり。

ホテルのチェックアウトを1時間伸ばして12時にしてもらい(部屋にもよると思いますが、二人で¥3,168で1時間延長できた)、チェックアウト後に朝市へ。 色々声をかけていただいたのですが、お腹がいっぱいすぎて何も食べれず、とりあえず函館駅周辺をうろうろしてから、どんぶり市場へ。

f:id:electricSheep:20220201132009j:plain
どんぶり市場へ

f:id:electricSheep:20220201132039j:plain
飽きずにいくらうに丼

ここでもほたて焼きなどをたらふく食べた後に、バスに乗って五稜郭へ。

f:id:electricSheep:20220201132118j:plain
五稜郭

本当は中を散歩したかったけど、吹雪いていて無理だった。。沢山ホッカイロを持ってきたのに駅のロッカーに置いてくるという痛恨のミス!とにかくこの日は寒かった!

五稜郭から歩いて5分くらいのところにある六花亭喫茶へ。

f:id:electricSheep:20220201132145j:plain
六花亭

f:id:electricSheep:20220201132225j:plain
ケーキとコーヒーでお茶。美味しいクッキーもらった!

f:id:electricSheep:20220201132651j:plain
ここではお菓子がバラで購入できてテンションが上がる

帰りの飛行機は19:10発。函館駅からバスに乗り早めに空港へ行くことにしました。

f:id:electricSheep:20220201132254j:plain
サッポロクラシック生と数の子チーズ。めちゃうま

f:id:electricSheep:20220201132330j:plain
函館名物焼き鳥弁当

f:id:electricSheep:20220201132354j:plain
焼き鳥とあるけど、中身は豚です

函館名物の焼きとり弁当をJR函館駅の近くで妹が買っていたのですが、これが安くてめっちゃうまでした。

冬の函館、ホテルに篭りきりになるかも?、と思い本を2冊持っていきましたが、歩いていける 場所に色々見所があったので思いのほか、めちゃ楽しむことができました! なんといっても、うに・いくら・ホタテが本当に美味しかった!!!

北海道ではまだ、まん延防止等重点措置が取られる前でしたがちょうどコロナがまた流行り始めていたこともあってか(平日のど真ん中というのもあるかな)、とにかく人がいなかった...。 観光する分には空いてて良いのですが、それでもお店は開いているのに人があまりいなくて、そして函館の皆さんがとても親切で、早くコロナ収束して賑わってほしいと思わずにはいられませんでした。めっちゃ良いところだったー!

ところで、なぜ函館行きたかったの?と妹に聞いたら「ノエイン もうひとりの君へ」というアニメの聖地なんだそう。 このアニメ、函館が舞台で、とにかく函館の街が出てくるとのこと。私も好きそうなSFアニメとのこと。

...。

いってよ!!!! 私も見てから来たかった!!!

ということで、このアニメを見てまた行きたいと思います。

共著で「Python実践レシピ」を執筆しました

Pythonエンジニア育成推進協会監修 Python実践レシピ」という本を共著で執筆しました。昨日(1/19) から書店にて発売となりましたので紹介したいと思います。

f:id:electricSheep:20220117175331j:plain

どんな本か

  • Pythonライブラリ厳選レシピ』 (写真左)という本が2015年に発売されていますが、その本をベースに大幅に加筆、改訂したものです。
  • Python 3.9に対応しています。
  • Pythonでプログラムを作成するときに役立つ機能とライブラリを網羅した、実践的なレシピ集です。
  • Python言語仕様関連に関して、より使いこなして欲しい機能を厳選して掲載しています。
  • 前著はA5版320ページ、今回はB5変形判512ページとかなりボリュームアップしつつお値段が2,970円と大変お得です。
  • Python 3 エンジニア認定実践試験」の主教材になります。

www.pythonic-exam.com

対象読者

  • Pythonの入門レベルがわかるようになった方
    • 初心者から中級者に進むためのステップとして活用してもらえるかと思います。
  • Pythonでプログラミングしている方
    • 辞書的に活用できるので1冊手元に置いておくと便利だと思います。
    • 実際、自分もPythonで本格的に開発を始めた頃から今まで、前身の『Pythonライブラリ厳選レシピ』には大変お世話になっています。公式ドキュメントを見てもいまいちどう使うかわからなかったものなど、本を見ることで理解することができました。
    • また執筆中は、開発中にあれ、これどうやって使うんだっけ?というときに他の著者が書いた該当の章を手元で見て参考にしたりなどして自分自身大変便利だなと感じました。

推しポイント

  • Pythonでよく使用される標準ライブラリ、サードパーティライブラリの
    • 基本的な使い方
    • よくある使い方とそのサンプルコード
    • よくあるエラーの対処法
    • 知っていると便利な周辺知識

をライブラリ毎に紹介しています。

  • 全て公式ドキュメントを参考に作成しておりますが、公式ドキュメントをみただけではよくわからない箇所など、よりわかりやすく補完するような内容になっています。
  • こんな便利に使える機能もあったんだ !というような一歩踏み込んだ使い方も紹介しています。
  • 多機能で巨大なライブラリの場合は、全てを紹介することはできないので、まずは押さえるべきところを紹介し、さらに詳しく知りたい場合は、参照すべき箇所を紹介しています。いきなり全てを把握するのが難しいライブラリに関しては、まずはこの本に書いてある内容を最初の一歩として使い方をマスターし、徐々に公式にも触れ広げていけるというような使い方ができます。
  • 目次が細かく設定されており、こういう時どうするんだろう?みたいな時にさっと引けて、使い方を確認できるようになっています。
  • 現在Python を活用している著者6名と7名のレビュアーの方のレビューにより仕上がった1冊なので、実践的で間違いのない(と必ずしも断定はできませんが;)内容になっているかと思います。

執筆した感想など

  • 執筆を通して、わかったつもりでいたけどちゃんと理解していなかったところなどを発見し、何が理解できていなかったかを掘り下げ丁寧に解説するようにしました。それによりかなり自分自身でも理解が深まりました。

  • 初めての執筆ということもあり、うまく進められるか不安だったのですが、進行役で共著メンバーの @takanoyさんの進行力が素晴らしく、自分に鞭打って計画的に予定通り進めることができました。そのおかげで妥協することなく最後の最後まで納得のいくまで推敲することができたと思います。また適宜著者の皆さんとも相談しながら進めることができて、大変ありがたかったです。

  • 他、執筆した感想などを、terapyon channel podcast で共著メンバーの 寺田さん、筒井さんと共に赤裸々に語っています。 興味がある方はどうぞ!近日中に公開されると思います。 (初podcastにド緊張しつつ本音で話しています。)

さいごに

結局何が一番大変だったかを振り返ると、レビューだった気がします。なんといっても512ページ!!短期間だったので、平日は仕事が終わり娘にご飯を食べさせた後22:00くらいから、休日は朝からと力の限りやりました。ふだんは毎日夕食時に軽くお酒飲んでますが、それもグッと堪え...。それでも自分は全ての章をレビューをすることができず、、。しかし、レビュアーの皆様はお忙しい中、本当に丁寧に最初から最後までストイックにレビューしてくださいました。

レビュアーの 辻 真吾さん、杉山 剛さん、寺嶋 哲さん、上條 真哉さん、阿部 司さん、杉崎 一明さん、岡野 真也さん、本当にありがとうございました!!

また、執筆・レビュー・脱稿まで1年に及びましたが、その間SQUEEZEのチームメンバーに度々弱音を吐いてました(笑)。がそんな中、話を聞いてくれたり、仕事面でサポートしてくれたり、かなり励まされ助けられました。

この場を借りて改めて皆様にお礼を申し上げます。

最後にリンクを貼っておきます。ぜひ皆様お手元に1冊いかがでしょう ^^

gihyo.jp

Pyladies Tokyo 合宿 in 上野&秋葉原にいってきました!

PyLadies Japan Advent Calendar 2021 1日目の記事です。

Pyladies合宿も今年で6回目の開催となりました。昨年はコロナで合宿が開催できなかったのですが、今年はコロナが収まってきたこと、ワクチンも一通り希望者に行き届いている環境が整っていたことから、東京で合宿を開催することにしました。

pyladies-tokyo.connpass.com

日時:2021/11/27-28

宿泊:Minn上野

もくもく会場: ふれあい貸し会議室 秋葉原No21

久しぶりのオフライン開催! これまでオンラインでしかお会いしていなかった参加者の方や、神戸から参加してくれた方もいて、とても充実した合宿になりました! ということで、合宿の様子をレポートします!

1日目

10時に秋葉原のふれあい貸し会議室に集合! 毎年合宿日は晴天なのですが、今年ももれなく そとで遊びたい もくもく日和でした。

(ほぼ)全員時間通りに集まり、会場をいい感じに設営してから、自己紹介&やること宣言しもくもく開始。

f:id:electricSheep:20211128234152p:plain
(時間に遅れた勢)

感染対策のため、ドアを開けていたのですが、そのせいで恐ろしく寒かったです。。 が、それがよかったのかかなり集中することができました。

お昼は2班に分かれ時間差で。 私はハンバーガーを食べました。おなかがはちきれた。

tabelog.com

会議室を15:30にきりあげ、13分ほど歩いてホテルへ。

f:id:electricSheep:20211129085204j:plain
Minn上野に到着

今回ホテルは自社で運営しているホテルを利用しました。

1室8人まで泊まれる部屋に4人ずつ泊まるようにし、2部屋とりました。手前味噌ではありますが、部屋がめちゃ広くて綺麗!! f:id:electricSheep:20211128233708j:plain

2段ベットを目の前に、まずは階段を登らずにはいられないパイレディースたちが可愛かった。

f:id:electricSheep:20211128233556j:plain
ベット同士が離れていて個室っぽくなっているのでよく眠れました。

一通り物色した後は、サウナ組と、買い出し組に分かれて自由行動。

私は巷ではやっている「サウナで整う」という体験をしてみたかったのでホテルから5分ほどでいけるスパへ。 f:id:electricSheep:20211128233826j:plain

サウナ通のメンバーがいうには、今回行ったサウナはかなりの高温&水風呂の温度が低く、整いやすい条件がそろっているとのこと。

しかし、私はサウナが暑すぎて2分、水風呂は膝までしかつかることができず、残念ながら整うにはいたりませんでした。 が、絶対リベンジする!と心に誓ったのでした。

夜はお待ちかねの飲み会。部屋には調理道具などそろっていて料理などもできるのですが、そこはPyladies。ケンタッキーを宅配で頼んでお肉パーティ! 久しぶりにオフラインでわいわい話すことができて、本当に楽しかったーー!!!

楽しさのあまりつい調子にのって話してしまい「本日のトーク賞」なるものをいただきました。

f:id:electricSheep:20211128234251p:plain

まーやさん、トーク賞ありがとう(笑)

夜はいつのまにか寝落ち。

2日目

コンビニでかった朝ご飯などをたべ、またもくもく会場へ。

午前中はスタッフMTGをして今後半年の予定をたてたりしました。

お腹がいっぱいだといいつつ、お昼はインドカレーやさんへ。力のかぎり食べました。

tabelog.com

昼食後はAdvent Calendar1日目担当することにしたので、このブログを書いています。

f:id:electricSheep:20211130202626j:plain
皆お腹いっぱいながらも集中してもくもく

15:00頃から成果発表をして15:30に終了となりました。

解散と思いきや、皆Hubに飲みにいってた!!!さすがや! 私は体力的に断念....

感想など

コロナの中、オフラインで会う機会が減っていた(というか皆無)ところでの合宿でしたが、やっぱり直接会って話すのは最高!!となりました。

質問もしやすいですし、直接画面をのぞきこんですぐここねーとなるのもやはりオフラインならではですね。 今回東京と近い場所での合宿でしたが、広くて快適なホテルで皆でご飯食べながら、わいわいするだけでも楽しい。

今回、ホテル代+レンタル会議室代+夕食+朝食で、一人8,000でした。財布にもやさしい。 そして、なんといっても移動の疲れがないので、これまでの合宿で一番集中できた気がする。

成果としては、以下決意したことかな。がんばるぞ。

  • 12/1 からカフェインレス生活を始めてみる
  • ヘルシオを買う
  • サウナリベンジ!
  • (他にもあるはず)

参加してくださった皆さま、ありがとうございました! 合宿にいった他のメンバーのレポートも楽しみ^^

Raspberry Piでタイムレコーダーを作ろう!

この投稿は PyLadies Japan Advent Calendar 2020 の19日目の記事です。

平日はゲーム30分までというのが娘との約束ですが、最近なんとなく30分以上やっているのに、まだ10分しかやってないといいはります。ただ、私も時間をちゃんとみているわけでもなく、なんとなくたくさんやっている気がするだけなのかもしれません。娘がしれっとうそを言っているのか、または本当にそう思っているのかもしれません。

それならみえる化しようじゃないか!とラズパイで作ってみました。

必要なもの

  • Raspberry pi (今回 3を使用しました)
  • LED、タクトスイッチ、抵抗(LEDとラズパイを繋ぐ際に使用します)、ブレッドボード、ジャンパワイヤ
    • タクトスイッチ、LED、ともに10円くらいで買えますので、気軽に作れますね。

動作環境

  • python3
  • sqlite3(データベース)

では早速作ってみよう!

step1

LDE、タクトスイッチをRaspberry Piと繋ぎます。

タクトスイッチは電源とGPIOボードを直接繋いでも、値が不安定となり正しく動作しません。そのため通常抵抗を挟むのですが(プルアップ抵抗、プルダウン抵抗)、ラズパイのGPIOには抵抗を挟むことなしにプルアップ・ダウン抵抗を実現するしくみがあるのでそれを使います! そのため抵抗を挟まない配線にしています。

部品 接続先
スイッチの上の足 1番ピン(3.3v)
スイッチの下の足 12番ピン(ポート18)
LEDのカソード(マイナス) 34番ピン(GND)
LEDのアノード(プラス) 抵抗を経由して40番ピン(ポート21)

f:id:electricSheep:20201219150237j:plain

step2

ゲーム開始時間と終了時間の記録に、sqlite3を使用します。sqlite3は軽量のRDBMSでDBが1つのファイルなので扱いやすいです。 csvでもよかったのですが、せっかくなので試しに使ってみました。

ラズパイにsqlite3をインストールし、開始時間、終了時間を格納するテーブルを作成します。

sqliteのインストール

  $ sudo su
  root@raspberrypi:/home/pi# apt-get install sqlite3

テーブルの作成・データinsert ・確認

pi@raspberrypi:~/timerecoder $ sqlite3 timerecoder.db
sqlite> CREATE TABLE recorder (id INTEGER PRIMARY KEY, start_time TEXT NOT NULL, end_time TEXT NOT NULL);

# 試しにデータをinsertして確認してみます。
sqlite> insert into recorder values (1, '2020-12-19 11:35:50', '2020-12-19 11:45:50');
sqlite> select * from recorder ;
1|2020-12-19 11:35:50|2020-12-19 11:45:50

step3

あとはプログラムを作成! スイッチを押したら、LEDを点灯させて、開始時間を記録。 再度押したら終了時間を記録して、LEDを消灯します。

注意点としては、以下くらいです。

  • タクトスイッチは、ラズパイのプルダウン抵抗を利用する。
    • GPIOを入力として使用する場合、setupメソッドのpull_up_down引数でプルアップ抵抗、プルダウン抵抗を指定出来ます。この設定を有効にしておくと、回路が繋がっていない状態でもGPIOの値はGPIO.LOW)に固定されるため、回路が安定します。
 # プルダウン抵抗を利用する
GPIO.setup(SWITCH, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)

とりあえず動くというソースはこちらにのせています。 GitHub - masakos/raspimoku

さて、できあがって早速娘にこういうの作ったからゲームやる時ボタン押してね!といったところ、

「え、すごい!これ作ったの!」

といったあと、

「でも、これタイマーでよくない!?タイマーで30分セットすればよくない!?」

と大きな声で3回くらいいわれました。

....

なるほど....

タイマー買うの面倒でしょ!

こっちは記録もできるんだ!

ということで、実践してもらいます。

本当は前もって作成して、実際にデータをとって可視化まで行きたかったのすが、急遽本日作ったため、本日から取り始めて改めて可視化の部分の実装と結果を報告したいと思います!果たして毎日何分やってるのかなー。

「現場で使える Django管理サイトの作り方」を読んだ感想

@akiyokoさん著書 Django本の新刊を献本いただいたので、読んだ感想を書きたいと思います!

f:id:electricSheep:20200913190507j:plain

akiyokoさんのDjango本シリーズ、今回で5冊目(多分)です。 Djangoを仕事で使うようになって、全然わからん!!となっていたときに助けていただいたDjango本シリーズ、今でも手元において重宝しています。

今回は「管理サイト」に特化したニッチ?な本ということですが、仕事上運用などで管理サイト使うことがあり、楽しみにしていました。

では、早速読んでみてよかったと思った点と感想を。

第1章 管理サイトの基本仕様

  • 最初に画面遷移図がのっているので、全体像がつかみやすく、Djangoの管理サイトという機能(デフォルト)でどんなことができるのか一通り把握できる。
    • projectの作成から管理サイトでmodelを追加するところまで、手順が載っているので、あまりDjango触ったことないという方でも、ローカルで動かしながら確認することができそうなのもよいと思いました。(ただ、pythonDjangoチュートリアル程度の知識は必要かと)

第2章 管理サイトのカスタマイズ

  • どんなことがカスタマイズ可能なのか知ることができる。
    • 私は仕事でDjangoを使っているので、ある程度は知っていましたが、それでもモデルフィールドの種類だけでなく、独自のフィルターを追加する方法など、未知のカスタマイズ方法をしることができました。その他いくつか知らないことがあり、まじか!便利!となりました。
  • AdminSiteのカスタマイズ方法として、クラス変数や主要メソッドが一覧にまとまっていてたいへんありがたい。
    • なんだっけなーとなることが多く、手元においておいてぱっと一覧で引けるのでめちゃありがたいです。
  • 各テンプレートファイルの説明と、継承の順などを整理してまとめてくれているので、かなりわかりやすい。
    • 結構わかりずらいところだと思うのですが、丁寧にまとめてくれているので、学習効率がよいと思います。これもっと早くみたかった。。。
  • 管理サイト用のDjangoパッケージをピックアップしてまとめてくれている。
    • こちらは全くしらなかったのですが、とりあえずdjango-jazzminというパッケージを試してみました。1行追加しただけで、この見た目。 f:id:electricSheep:20200913174917p:plain

すごい!メニューも縮まる。 デモなどで使っても良さそうですね。 こういったパッケージをいくつか知っていると、何かあったときにそういえば!となるので、良いですね^^

第3章 管理サイトのテスト

  • Seleniumによるブラウザテストの方法について、知らなかったので参考になりました!

全体として

思いおこせば、仕事で初めてDjangoでかかれているソースを見た時、ちんぷんかんぷんでした。 たった数行だけ書かれたmethodをみて、え?これだけでなんかresponseが整形されて返されてる?? え、管理サイトのソースどこ??この2行? ???

フルスタックゆえに、中身がブラックボックスになっているので、最初に何をどんな風にかけば何が実現できるのかを知ることが重要だと思うのですが、akiyokoさんの本はどれもまず、

  • 全体像やブラックボックスとなっている内部構造をわかりやすく図やシーケンスで説明してくれている
  • 何をどんな風に書けばこうなるということを一覧などで整理された状態で示してくれる

ので、大変理解しやすいしですし、辞書のようにあとから参照もしやすいです。

ということで、今回も大変参考になる内容でした。 Djangoは日本語のドキュメントが少ないので、本当にありがたいです。

既刊・新刊ともおすすめです!

techbookfest.org

最後に、完全に余談ですが。

娘が、akiyokoさんから本が送られてきた際のレターパックの宛名を切り取っているではありませんか。 なんで?ときいたら、これは将来とても貴重なものになるに違いない!とのことでした(笑)

Raspberry Pi もくもく会 レシピ集シリーズ 第2弾!を技術書典 応援祭で頒布しています

主催しているRaspberry Piもくもく会の有志で執筆した同人誌『Raspberry Pi もっと食べたいレシピ集』を、「BOOTH」と 「技術書典 応援祭」で、頒布していますので、中身を紹介したいと思います!

Raspberry Pi もくもく会 レシピ集シリーズ 第2弾!!

ということで、

もくもく会メンバー厳選の、Raspberry Pi を「もっと」楽しむアイディア満載のレシピ集です。 実際にRaspberry Piを使って試したり、作ったものを追体験できるレシピを図などを交えてわかりやすく紹介しています。 前回のvol.1では初心者の方を対象にしたレシピが多く掲載されていましたが、今回のvol.2では初心者の方から熟練者の方までを対象にし、また対象とする領域も幅広いレシピを揃えました。

早速、中身を少しずつ紹介したいと思います。

内容紹介

1. Raspberry Pi Tips集

  • Visual Studio Code の 便利な Extension(拡張機能
    VSCode の Extension 「Remote Development」を使用すると、ローカルPC上で簡単に Raspberry Pi 上のファイルを編集したり、ファイルを転送することができるので大変便利です。インストールの仕方から使い方まで細かく解説しています。

  • 100均リモコンで Raspberry Pi を自動シャットダウン
    ダイソーなどの100均ショップで売っている「Bluetoothリモートシャッター」をつかったレシピです。すでにラズパイ界では定番のレシピとなっていて、気軽に試せるレシピとなっています。

2. Raspberry PiAWS IoT の双方向連携

あなたは一人暮らしのサラリーマン。 部屋に温度センサーを取り付けて、いつでもスマホから現在の室温を見れるようにしています。 夜遅くやっと仕事が終わりました。季節は晩秋。 スマホから部屋の湿度を確認すると寒そうです。「エアコンつけるか〜」 あなたはスマホからエアコンをONにしました。 (本より抜粋)

このような、デバイスに接続されたセンサーデータをクラウド上に送信して、可視化・分析するといったよくあるケースに、Raspberry PiAWS IoT を用いて解決してるレシピです。

3. Raspberry Pi を写真管理サーバーにする

だれしも、撮ってはみたものの管理しきれていない写真ファイルを大量に持っているものです。そして、持て余している Raspberry Pi も1台や2台お持ちでしょう。 (本より抜粋)

あります!ありますね! オンラインギャラリーを構築するオープンソースの Webアプリケーション Piwigo を使用して、 Raspberry Pi を写真管理サーバーにするレシピです。 サーバー構築にチャレンジしたい!という方にもぜひおすすめのレシピです。

4. Video Core IV で Hello world してみよう

Raspberry PiGPU(QPU) はドキュメントが公開され時間が経ったこともあり、利用する環境が整ってきたようです。 github で公開されているサンプルコードなどをもとに GPU(QPU)の使い方を探っていくレシピになります。 主にアセンブラを使用してのプログラミングになりますが、丁寧に書かれているので、実際に試してみて体験するのもよいかと思います。なによりラズパイでできるのが気軽でいいですね!

5. Unicorn HAT HD を使った電光掲示板作成

簡単だけど見た目に映えるのがやりたい!という初心者さんに最適です。

f:id:electricSheep:20200314125115p:plain

f:id:electricSheep:20200314160131p:plain

解説も会話形式で楽しく読み進めることができます!

6. パルスオキシメーターを作る

Raspberry Pi Zero WH を使ったパルスオキシメーター(SpO2 と心拍数を測定できる装置)の作成を通じて、Raspberry Pi に I2C 通信対応のセンサモジュールを接続し、USB テザリングで接続した Android スマートフォンからセンサの値を確認する方法を紹介するレシピです。 ちょうどこの本を執筆中に、アフリカ最高峰キリマンジャロ(5895m)にも登頂を成し遂げている著者による自作山登りガジェットの今後が楽しみです

f:id:electricSheep:20200314125806p:plain

7. Raspberry PiQR コード自動改札機を作ってみた

既刊「 Raspberry Pi いますぐ食べたいレシピ集」 4.QR コード自動改札を作ってみようとした話 の続編です。 前回は残念ながら完成に至らなかったのですが、今回でついに完全レシピと前回反省を踏まえて試行錯誤した知見がつまっている内容です。 気になる方は、ぜひ既刊「Raspberry Pi いますぐ食べたいレシピ集」と合わせてお読みください。

8. UML を使って Raspberry Pi アプリを作る

UML」という記法を使ってソフトウェアの設計モデルを作成し、そこから自動生成した C のソース・コードで Raspberry Pi を使った機器を動かした事例を紹介しています。 設計モデルの作成やソース・コードの自動生成にはオープンソースの「BridgePoint」というツールを、 素材には、BridgePoint のサンプルアプリケーション「GPS Watch」を使用しています。この章を読み進めると、Raspberry Pi を使った組み込み機器のモデル駆動開発を学ぶことができるかなかり濃いレシピとなっています。

9. USB アクセレーターで作るリアルタイム画像分類器

USBアクセラレータ は、TPU を Raspberry Pi や PC 上で使えるようにする USB アクセサリーです。 汎用的な用途に使用されるCPUやGPUとは違い、ディープラーニングの高速化に特化するために開発されました。 この章では、USBアクセラレータ [USB-Accelerator] を使用して、Raspberry Pi 上で動くリアルタイム画像分類器の作成方法を紹介するレシピになります。

付録 A: 台北電気街おさんぽマップ

いつもの秋葉原からちょっと足を延ばして台北の電気街を紹介します。 よく台湾に出掛ける著者が、パソコン、オーディオやカメラから 電子工作のお店まで、なんでも揃う台北の電気街マップを作ってくれました。 写真もついていてわかりやすいので、台湾に行く際には必須のマップになること間違いないです !

おわりに

いかがでしたか? 気になるレシピはありましたでしょうか? 難しそうだなーと思えるレシピもこんなことができるんだ〜とRaspberry Piの可能性を知ってもらえたらと思います。

Raspberry Piはもともと教育用に作られたこともあり、安価で手に入り、なにか試してみたい、勉強したいといった時にぴったりです。 この1台で、電子工作から、サーバー構築、GPUプログラミングまでなんでも気軽に試すことができます。 ぜひ、みなさんもお気に入りのレシピを見つけてお試しください。

本は「BOOTH」と 「技術書典 応援祭」どちらでも購入できます! (物理本の販売はBOOTHのみです)

Raspberry Pi もっと食べたいレシピ集 Vol.2

Raspberry Pi 今すぐ食べたいレシピ集 Vol.1

raspimoku.booth.pm

techbookfest.org

  • 読後アンケートに回答いただいた方には、オリジナル壁紙をプレゼントしていますので、ぜひご協力お願いします!

残念ながら開催中止となった技術書典8ですが、技術書典8で出展予定だったサークルの本がオンラインマーケットで購入できる 技術書典応援際が開催されています! 他にもたくさん素敵な本がありますので、ぜひチェックしてみてください!

techbookfest.org