PyConJP 2018 Day1 参加ログ
昨年に引き続き、PyConJPに参加してきました。自分が参加してきた範囲の感想を書きます。
Day 1
Keynote / Argentina in Python: community, dreams, travels and learning
Kaufmann Manuel さん
とにかくPythonへの愛と情熱に溢れていた。聞いていてエネルギーを注入されるよう。
彼がPythonの学習を始めた時に、『何でも質問して良い』と言ったPythonコミュニティの対応が印象的。
開幕にピッタリのKeynoteだったと思う。
※日本も以下のサイトにDiscordサーバやコミュニティが紹介されています。
日本のPythonコミュニティ - python.jp
ちなみに今年は通訳レシーバを借りました。同時通訳素晴らしかったです。
招待講演 / 東大松尾研流 実践的AI人材育成法
中山 浩太郎 さん
割とPython成分薄め?のお話。AIやデータ解析方面は追いかけてなかったので、
もうすこしPython多めで話をして頂けたら(個人的に)ありがたかったかな。
紹介されていた松尾研のDeepLearning講座を非エンジニアの方も受講されているらしく、刺激というか(一応エンジニアとして)危機感を感じた。
Webアプリケーションの仕組み
シンプルなWebアプリケーションが出来ていく様子を、コード例を交えながら説明されていた。
丁度最近流行りの『例の質問』を受けて十分な回答が出来ず、もっと基礎を見直さないと、と考えていた所だったのでありがたかった。
わかりやすく、「自分でも試してみよう」と思える発表だった。私も自分で手を動かして復習します。
Django REST Framework におけるAPI実装プラクティス
Django REST Frameworkでのプラクティスの紹介。
APIのページングは、相対位置指定の抱える問題についてなんとかならないかと
自分でも考えたことがあったが、そのまま放置していた。
発表を聞いて絶対位置指定が可能であることを知った。
又、相対位置指定の場合のパフォーマンス問題を聞いてなるほどと思った。
Jupyterで広がるPythonの可能性
部屋を間違えたせいで遅れて入室することになったけど、個人的に1日目で一番印象に残った発表。
内容盛りだくさんで追いきれなかったけど、発表を聞いてJupyterを見る目が変わった。
- OSのコマンドも実行できる
- プロファイルもできる
- JavaScriptやPerlとかのコードも書ける
- コード整形もできる
- スライドショーも作れる
- 発表のためにtsumikiを作った
Rust と Python
Pythonの拡張をRustで作る話。
Rustについては全く分からないけど、エキスパートPythonプログラミングを最近読んでいて、C拡張を作る時の難しさについて書かれていたのを思い出した。
Rust注目されているけど、自分はとりあえずPython中心に頑張ろうと思う。
LT
どの発表も楽しんで聞いていた。私もPythonで仕事したい。
私もPythonで仕事したいぞ #pyconjp pic.twitter.com/sYD8aRvIWK
— ⑨ (@number09) 2018年9月17日
パーティ
東京に知り合いもいないので、関西の方と一緒に居たけど、それでも数名の方とお話出来た。Pythonという共通の話題があるおかげです。
関西はあんまりPythonコミュニティ活動が長続きしていない感じなので、頑張っていきたい、みたいな話をしていた。
二日目については後日書く予定。
カーナビの代わりとしてPioneer FH-9400DVSを購入した
FH-9400DVSという、CarPlay/Android Auto対応カーオーディオを購入しました。
選んだポイント
良い点
- ナビは使いたいけど、ナビ地図更新にお金はかけたくない
- バックカメラは欲しいので、ディスプレイはあったほうがいい
- PodCastも頻繁に使う
気になる点
- iPhone(CarPlay)だと、使える地図がAppleのマップ固定
といった感じだったのですが、WWDCで時期iOSでのサードパーティアプリ解禁情報が出てきた為、購入を決意しました。
(Appleのマップが不満でも、きっとYahooカーナビがなんとかしてくれると期待)
WWDC2018のまとめ見てるんだけど、CarPlayサードパーティ解禁ってマジ?本当ならカーナビ枠はCarPlay対応ディスプレイ付きオーディオで決まりだわ
— ⑨ (@number09) 2018年6月5日
購入
というわけで近所のオートバックスで購入&取り付けをしてもらいました。
車の方はホンダのフリード(現行) + ナビスペシャルパッケージです。
ナビスペシャルパッケージをつけると、ステアリングにナビ操作ボタンがあります。
設定
FH-9400DVSをステアリングコントローラから操作する為には画面からの設定が必要です。説明書を読みましょう。
(最初は初期不良かと思って焦った)
物理ボタンに対して割り当てたい機能を選択する形式です。
また、一度設定した後に割り当てを修正したい場合、本体の設定を初期化する必要があります。
バックカメラの駐車ガイド線などを設定している場合はクリアされてしまうので、必要な設定は事前にバックアップをおすすめします。
ステアリングとの接続ケーブルについて
私の車の場合、ステアリングとの接続ケーブルにKJ-H101SCを使用すると、
「SOURCE」「ボリュームアップ」「ボリュームダウン」「トラックアップ」「トラックダウン」
のボタンには機能割り当てを設定できたのですが、
「ON HOOK」「OFF HOOK」「発話」「ファンクション」「ショートカット」
のボタンには設定が出来ませんでした。
メーカーに問い合わせると、KJ-H102SCのケーブルを使えば、
「ON HOOK」「OFF HOOK」「発話」「ファンクション」「ショートカット」
のボタンも使えるとの回答を頂けたので、交換して全ボタン使用可能になりました。
これから購入を考える方は、ぜひケーブルについて事前確認してください。
使ってみた
先日九州へ旅行に行ってきたので、ナビとして使用しました。
基本ナビ表示+PodCastを流しています。
基本都市部を走っている場合は特に問題なく使用できました。
ただ田舎のローカルな地名についてはGoogle or Yahooの地図なら検索できるけど、Appleの地図は検索できないケースがありました。
また、新しい道の更新もAppleの地図は対応が遅い感じです。
結論
思ったよりAppleマップが使えて、結構満足しています。
タッチパネルも普通に使えるし、ナビ地図更新にお金を使うよりは全然いいと思います。
これから使い倒していこうと思います。
※これまで車やナビを使ってこなかった人間の感想です
写経を楽にするためのAppleScriptを書いてみた
発端
Kindle for Macで技術書写経してるんだけど、ページ進める度に、
— ⑨ (@number09) 2018年6月25日
1.エディタ操作 https://t.co/g3vzNXtKSoにフォーカスする 3.次ページに進める
4.再度エディタにフォーカス
ってなってて面倒くさい。
誰かいい方法教えてください。
家にいるときは外部ディスプレイに繋いでて、一画面で左半分をエディタ、右半分をKindle for Macにして 写経している。 めんどくさいなーと思ってたけどAppleScriptで出来そうな気がしたので、とりあえず書いてみた
とりあえず今はVolume Upで次ページ、Volume Downで前ページに移動するようにしている。 (HHKBを使っているので実際はfn+sで次ページ、fn+aで前ページ)
これで基本ずっとエディタだけをアクティブにしておけばいいので楽。
参考にしたサイト
GitHubに毎日草を生やす活動を始めたらいいことがたくさんあった
GitHubに毎日草を生やす(コミットする)活動をはじめました。
飽きっぽい自分が一ヶ月以上継続できた事に自分でも驚いているのですが、
これをきっかけに色々いいことがあったので書いてみます。
きっかけ
年明け早々に娘が産まれました。
早速夫婦で親バカになったまでは良かったのですが、娘の世話で帰宅後や週末の自由時間が無制限に奪われていくようになりました。
仕事でも余計な作業でコードを書く機会を減らされている上に、自宅での時間もないとストレスが溜まります。
ちょうど私も誕生日を迎えたのをきっかけに、ネット上で見かけた「毎日GitHubに草を生やす(コミットする)」活動にトライしてみることにしました。*1
開始1週間位まで
丁度業務も多忙な時期だったこともあり、帰宅後にPCに向かう体力がない日が続いていました。
さすがに開始一週間でギブアップするわけにもいかず、眠たいながらなんとか1コミットを送っていたのですが、
このままでは絶対に続けられないと思い、夜ではなく朝に取り組む方針に変更しました。
開始2週間以降
朝に取り組むと決めてから、毎朝朝8時起床の私が、5時半〜6時の間に目が覚めるようになりました。
このあたりから生活が改善され始めました*2
- 朝に(コミットするという)ノルマをクリアしておくことで、夕方や帰宅後にプレッシャーを感じることがなくなった。
- 仕事も朝イチに頭が動きやすくなった(気がする)
- 朝早いとお腹が空くので、自然と朝食もちゃんと食べるようになった
- 家事をする時間も出来たので、妻の家事負担を(少しだけど)軽減できるようになった*3
正直ダメ人間が一般人になっただけじゃん!というツッコミはその通りですが。
なぜ継続できたのか
タイトルの通り、GitHubに草を生やすという形で、
自分がコミットを送った = 目標を達成できたことが可視化されるので、
それがモチベーションの維持につながっています。
最初の一ヶ月でやったこと
- 言語処理100本ノック 2015をPythonで解く*4
- Vue.js の基礎を学ぶために LearnCode.academy の学習動画を活用したら最高だった - kakakakakku blogで紹介されていた、Vue.jsのチュートリアルをやる
- [WIP] Vue.jsとDjango Rest Frameworkでサンプルアプリを作る
簡単なことしかやっていませんが、それでもまず習慣化できたことは良かったです。
今後やりたいこと
おしまい
今年は娘のためにがんばります
完全ワイヤレスイヤホンのZOLO Libertyを買いました
流行りの完全ワイヤレスイヤホンを検討していた所、 12/24の朝にRebuild.fmで紹介されていたZOLOの完全ワイヤレスイヤホンが 日本で発売開始になったとの情報が入ってきました。
上位機種が1月発売らしいけど、 先着500台1000円オフになっていたので、そのままAmazonで注文し、 今日届いたので開封してみます。
外箱 開けてみる 最初に充電してと書かれていたので、とりあえずケースに収納。 ケースの正面には充電具合を表すランプがあり、 右側面にmicroUSBの差込口があります。
充電ケースの重さはキッチンスケールで量ると90グラム。 イヤホン本体は2つで12グラムでした。 ちなみに手元のiPhone SEがケース込みで127グラム。
部屋で装着して見た感想
- 音は結構よさげな気がする(手持ちの有線イヤホンと同じくらい)
- 最初ついてたイヤーチップは中サイズ。自分は小サイズに交換して丁度いい。
- イヤージャケットはなくても結構フィットしてる感がある。
- 音量調整はSiriにお願いするか接続デバイス側で行う。イヤホンでできればなお良かった。
今後は通勤時やジョギング時に使ってみる予定。
AnsibleからSQL Serverをインストールする
会社でのPython布教活動の一環で、Ansibleの紹介をしてきました。
今の部署はSQL Serverを使うので、AnsibleでSQL Serverをセットアップするデモを準備しようとした所、
色々調べるのに手こずってしまったので、忘れないようにメモ。
検証環境
Ansibleを動かすのはCentOS7 + Python3。AnsibleはVer2.4を使用。
セットアップ対象はWindowsServer2012 R2 とSQL Server2012のStandard Edition。
(それぞれ評価版を使用)
結論
実際に動かすことの出来たPlaybook(抜粋)は以下
# ISOファイルのマウント - win_disk_image: image_path: C:\work\SQLServer2012SP1-FullSlipstream-JPN-x64.iso state: present register: disk_image_out_SQL # SqlServerのインストール実行 - win_psexec: command: '{{ disk_image_out_SQL.mount_path }}setup.exe /CONFIGURATIONFILE=C:\work\ConfigurationFile.ini /Q' priority: high executable: C:\work\PSTools\PsExec.exe system: yes
win_psexec
を使うので、以下のサイトから事前に取得。
(今回は予めISOファイル等と一緒に、必要なファイルをセットアップ対象サーバに配置しておいた)
- インストールを実行する際、
system: yes
の指定は必須。(実行時にエラーになる)
SQL Serverをコマンドからインストール
SQL Serverをコマンドからインストールする方法は、
- setup.exeに必要なパラメータを(大量に)与えて実行
- 必要なパラメータを記載したConfigurationファイルをsetup.exeに与えて実行
の選択肢があり、今回は後者を利用。
SQL ServerのStandard Editionなら、Configurationファイルは一度画面からのセットアップを実行してインストールを進め、
インストールの準備完了の画面を表示させると、入力した内容を記述したConfigurationファイルのパスが画面下部に表示されているので、それを利用するのが楽。
一部修正が必要だったパラメータは以下
UIMODE="Normal"
の記述をコメントアウト(行頭「;」でコメント)/Q
パラメータ(インストール時UI非表示)を指定する場合は上記をコメントアウトする必要あり。
IAcceptSQLServerLicenseTerms="True"
- インストール条項への同意。このパラメータはファイルに書き出されなかったので手動で追記。
SAPWD
- 混合認証モードを選択した場合のsaのパスワード。同じくファイルに書き出されなかったので手動で追記。
その他パラメータの詳細は以下を参照
コマンド プロンプトからの SQL Server 2012 のインストール
今回はAnsibleを使用して、
- ISOファイルマウント
- .Net Framework3.5のインストール
- SQL Serverインストール実行
- SQL Serverに必要なファイアウォールの受信設定
まで確認出来た。
PyConJP 2017に参加してきました
今更ではありますが、9月8日、9日と、PyConJP 2017に参加してきました。
経緯
Python自体は2、3年前くらいから趣味でさわってた位。大阪のPythonコミュニティも数回参加した程度のレベル。 去年のPyConJPの様子をTwitterとかで眺めているととても楽しそうだったので、今年はチケットを発売開始と同時に購入しました。
印象に残ったトーク
初日(9月8日)
プレゼンテーション:野球を科学する技術〜Pythonを用いた統計ライブラリ作成と分析基盤構築 | PyCon JP 2017 in TOKYO
- データ分析系とかは全然やってきてない領域だったけど、話に出てきたScrapyは使っていたので、もう少し詳しく話を聞いてみたかった。
- トーク後、自分のScrapyの
DOWNLOAD_DELAY
を見直してみると2とかになっていたのですぐ修正した- ちゃんと増やしていたハズだったんだけど
- トーク後、自分のScrapyの
- 今シーズンの野球の方は、贔屓チームが壊滅状態なのであまり触れない方向で。
- データ分析系とかは全然やってきてない領域だったけど、話に出てきたScrapyは使っていたので、もう少し詳しく話を聞いてみたかった。
プレゼンテーション:len()関数がオブジェクトの長さを手にいれる仕組み | PyCon JP 2017 in TOKYO
- Pythonを正直雰囲気で使っているので、基礎的な部分を聞きたくて参加した。
- 「公式を読む」「pepを読む」と仰られていたのが印象的で、今後頑張る。
プレゼンテーション:Pythonと機械学習によるWebセキュリティの自動化 | PyCon JP 2017 in TOKYO
2日目(9月9日)
基調講演 | PyCon JP 2017 in TOKYO
プレゼンテーション:Pythonをとりまく並行/非同期の話 | PyCon JP 2017 in TOKYO
- 並行処理とか、社内のコードで正直見かけた事が無く、学ぶ機会も無かったけど、 順番に説明して頂けて分かりやすかった。
感想
- 初日の朝に朝食があったことに気がついていなかった。二日目は美味しくいただきました。
- コミュ障の癖に大阪からぼっちで参加したので、最初は楽しみ方がわからなかった。初日のパーティで同じく関西から来た方と話したり、面識無い方にも話しかけて頂いたりして楽になった。
- パーティでも企業ブースでもPythonという共通の話題で話できるのが楽しかった。
- 会社ではそんな話出来ないのが残念な所。。。
朝から晩までPythonの話ばかりという、非常に楽しい2日間を過ごせました。 参加者&スタッフの方々、ありがとうございました。