文系非エンジニアがリモートでPython社内勉強会を主催した体験談[Python始めて2か月]
個人の感想です。2020年6月にはじめてPythonに触れました。1年半ほどエクセルVBAによる一部自動化をやってきたこともあり、案外早く慣れることができて、エクセルVBAと同様にエクセルファイルとブラウザが扱えるところまでわかりました。
さまざまな背景がありますが「社内勉強会をやってみては?」と言われ、7月に準備をして8月から12月まで社内勉強会を実施しました。
なぜ言われたのでしょうか。たぶん、2020年は春~夏に機械学習やPython学習のトレンドが来ていたことなどもあるでしょう。
自分としては、新型コロナウイルスの影響でリモート勤務の同僚が多い環境の中で、交流のきっかけとなる勉強会実施の実績ができるのもいいのではないかと思ってのチャレンジしてみました。
非エンジニア部署で非エンジニアがPython勉強会
あくまでデータ集計など業務の遂行が目的の部署で主にエクセルで仕事する文系の者です。
(高校の数学はどうがんばっても80点くらいしかとれず数IIICもやっておらず、AIの仕組みの説明の本やYoutubeをみてわかった気になれど、全部はわからないです。社会調査の分野で統計を勉強した気がします。)
そして、本物のエンジニアがプロとして企業内にいるので、勉強会の目的設定は慎重に定めて提案をしなくてはなりません。
7月 準備 ----
7月に準備したことです。自動化をメインに据えるまでのアイデア出し、先行説明、上司に理解されるまで、です。
何がメリット?勉強会実施理由のアイデア出し
メリットのボキャブラリー豊富にしておくことで自信になるので、勉強しながら自分なりに考えたメリットなども書きだしたのですが、あらためていろんなことを考えてみました。
今、Pythonを学ぶことの利点とは?
Pythonとはどういう期待をされている言語か?
他社ではどのように業務に取り入れているか?
会社で何かはじめるときには、お金の出入りに直結することを考えた方がいいだろう。収入が増えるか、業務効率化で関係者のやる気が出て行動が増えて収入が増えるか。
データ分析力の向上、業務効率化、コミュニケーション促進(コロナでリモート率が上昇した)、いろいろメリットとしてあげてみました。
そして、参加する人の動機の部分も。
人はどうしてスキルアップをしたいか?
お金がほしいから。
だって、みんな(がんばってるのに、仕事内容に対して)低賃金で苦しいよね?
これを解決するには、労働三権を活かして賃上げ交渉するか、賃金据え置きで仕事内容を楽にして残った時間で別の仕事の追加になるよね?
別の仕事…もしかしてウーバーイーツ。またはその逆で投資家としてがんばるとか…日本はこの20年の間に、働く人に求められることが重たくなり、「勉強のためのお金や時間や気持ちの支出は将来のための投資だよね?」と思ったり思わされたりしたまま低賃金90歳になったりしかねないんだけど…一体、副業でYahoo!に入れるような優秀さはどういうものなのか?想像つかないし…お金を求めて動物的にはなかなかなれない…理由は自分なりの尊厳があることで……金持ちと父さんが批判する貧乏父さんの生きざまの美しさっていうのもあると思っちゃったんだよなあ…これが行き過ぎた資本主義への不安……そういえばアメリカ大統領選挙の民主党候補の候補たちの政策の話を色々思い返す…選挙、行きましょう。
気を取り直して、社会を変えなきゃどうしようもない。
「日本の労働生産性、1時間あたり47.5ドル 先進国7カ国で再開続く」
https://www.nikkei.com/article/DGXMZO39142430Z11C18A2EE8000
と、この記事を貼って、我が国の国際的にみた労働生産性は低く、わが社もこの低い生産性のなかの1つ。だからこれを向上させる余地は存分にあるはず。そのためにPythonを使いましょうという話もできるかな、と思いました。
選挙も行きましょう。
勉強会の形式のアイデア出し
Pythonコードをみんなで使いまわせることを理想の最終形態としました。
1時間*3~4回の部内勉強会を外部公開とする。
今やっていることをチーム内で上司に説明する時間を兼ねた勉強会としてボランティアにならない時間帯に設定。
学習内容のアイデア出し
参考とする書籍をもとに、業務開始までに必要と考えられることを挙げました。
一般的なプログラムでできること。
文字の表示(print)、演算子(四則計算程度)、変数という概念、if分岐、forのループ。※リストやクラスは扱わない
これに加えて周辺事項。
Python自体のインストール、開発環境の使い方、プログラムの保存方法、モジュールの導入方法。それぞれの概念。
業務に使うためのモジュール。
エクセルはopenpyxlで。ブラウザはseleniumで。
勉強会の要旨を先行説明
アイデア出しをしてまとめた要旨をテキストで箇条書きして、賛同して参加してくれそうな人2~3人に声かけ。反応をみてみました。
何が目的なのか、どういう人が対象なのか、ということをもう少し明確にした方がいいのだろうけど「プログラミングに触れてみたい」だけで参加する人はいなさそうで「Pythonコードをみんなで使いまわせること」まではたどり着けなさそうでした。(少し、覚悟した)
人によっては、複数のエクセルファイルの内容が1つにまとまるということ自体が理解しにくいという感じがしました。
勉強会が業務効率化として上司に理解される
次に、要旨のテキストを見せつつ、参加してもらえそうな人の名前を数名挙げつつの上司にみせてみました。(「話が進んじゃってるんですよ」という見せ方)
すると、パワーポイントでの提出とチーム内ミーティング説明を求められました。決して社員の学習を促進する部署ではないのに、見てくれるのはありがたいと思って、パワーポイントを作ってチーム内ミーティングで説明。
上司(他社の業務効率化の課題を提案する立場も経験している)のアドバイスの上で、目的設定を業務効率化に絞りました。
上司が修正した【業務効率化勉強会】として上司たちの会議で説明がおこなわれ、募って実施がOKとなりました。
そして、上司たちの会議で、ほかのチームの上司にあたる人が全く初心者でもいいの?と声かけてくれて、その人も最初の1か月は参加してくれるということがありました。
「学べることはこれ!」と分かる動画まで作って社内からみられるところに置きました。すると、勤勉なタイプの知り合いの同僚が参加したい!と表明をしてくれました。
また、あらためて参加してくれそうな身近な部署の人に個別に声をかけ、参加のお願いを取り付け、勉強会が開始となりました。
8月 勉強会3回予定実施。そして---
社員数で考えると全社員の5%くらいの参加率で勉強会がはじまりました。
会話に入るアクティブ参加者と傍観者のどちか希望を選んでもらうすすめ方にしました。(事前にある人に必ずアクティブ参加者として俎上にのってもらうことをお願いしていました)
リモート会議で自部門の関係者に説明するので、60分の会議を4回分とりました。教材の目次に沿って30分で終わるコマを6コマ分計画し、質問タイムや雑談を挟みながら1か月全4回に収める計画にしました。
参加者は教材の書籍「こんにちはPython」を購入して手元に置いてもらう前提です。ほかの記事でも書いたように、この本は内容も良く、いきなり買ってもらえる価格です。自分は書店には行きませんでしたが、購入した同僚によると、この本は平積みだったそうです。人気ですね。
あらかじめスマホのkindleで書籍のページをめくっている画面を録画し、この動画をPCからリモート会議ツールの画面共有で表示して読み聞かせ的な進行。Youtubeのゲーム実況を参考にしました。15分教材を読んで、時々IDLE(開発ツール)を触ったりしつつアクティブ参加者と雑談という形式。
1回目(1~2コマ目)
Pythonインストール、IDLE(開発ツール)、命令の入力方法、保存方法、文字の表示(print)、
演算子(四則計算程度)、変数という概念
2回目(3~4コマ目)
変数という概念(復習)、if分岐
openpyxl実演
beep音を鳴らす
3回目(4~5コマ目)
forのループ
selenium実演
forとifをネストするプログラミング(書籍のじゃんけんゲームよりももっと簡単なカードガチャにしました)
ここでやるべきことが終わってしまいましたが、皆さんに継続の意思確認をしたら、「続けたい」ということだったのです。驚きました。
4回目
ここまでで挙げてないけど存在する機能(リスト、関数、クラスなど)の存在を紹介
モジュールを使ってできると言われているさまざまなことを紹介
forとifを使ったプログラミングの説明をもう一度(前週のガチャプログラムで効果音ラボのmp3が鳴るようにしたもの)
社内のエンジニアの方にインタビューをした内容を共有。このときpaizaや競技プログラミングを知りました。
「これからはpaizaで!」と終わるつもりでしたが「もう少しやりましょう」という声が出ました。まじですか!
9~10月 延長、実務に刺さるか!?----
実際の問題解決をやってみようという話になりました。
問題解決1 CSVの特定の行の値をつめてCSVにして出力する
問題解決2 複数のCSVファイルを1つのエクセルファイルにまとめる
それぞれ、こちらでプログラムを作って提供し、要望に沿う形に直し、コードと動きを説明できました。
しかし、実務で使われるようになったかはわかりません。
新しい参加者への対応
8月で一旦参加をやめる人もいれば、歯抜けで参加する人というのも出てきました。一方この頃、新しい参加希望者が現れました。
ですが、一通り説明してしまった後になるので、また初回からやり直した方がいいのか迷いました。
希望者の方に要望を伺うと、業務効率化ではなくデータ分析業務のなかのどこにPythonが使えるのか、という部分に興味があるということで、番外編を実施することに。
番外編としてのデータ分析におけるPython
そこで、(1)データ分析の部署の理想の仕事の在り方と、(2)どの業務でPythonが使えうるのか、という内容で20分程度のプレゼンを用意して説明するということがありました。
(1)データ分析の部署の理想の仕事の在り方
10年前によく売れていた書籍「分析力を武器とする企業」の経営者向けでない部分にビジネスインテリジェンスのプロセスが書いてあるのですが、そちらを参考にデータ分析の流れを振り返りました。
(2)どの業務でPythonが使えうるのか
データのクリーニング、繰り返されるデータ取得の作業、データ自体の様子をよく観察して仮説を作るための探索的データ分析、データのグラフ表現、AIと呼ばれることもある各種アルゴリズムによるデータの評価などにPythonを使いますという話をしました。
いい棚卸になりました。
自分もレベル上げ
またこの時期、ある休日をpaiza問題に費やすということをして、自分的にも慣れることをがんばりました。
奮闘した結果、たまたま簡単な問題たとけてCがとれました。
また、さまざまなことを試しながら学び、次のことの説明もしていきました。
Janomeで形態素解析
AI(Scikit-Learn)
AnacondaやJupyternoteのこと。RもAnacondaの上に
GoogleColabo
インスタはDjangoでできている
OCR
11月~12月 リモート特有の事情と教本----
リモートとはいえ、参加される同僚の皆さんの本来の業務が日に日に忙しくなっている空気を感じたことと、自分も忙しくなるイメージがあり、一旦12月で業務としての時間確保は終了することを11月に決めました。
内容について「この先どうしましょうか?」と、参加してくれる部署関係者の要望をたずねると「実は、自分のプライベート時間で勉強する時間がとれないから、ハンズオンセミナーのようにしてほしい」※ということ。そうですね。家族と同居していると、仕事が終わったあとに勉強する時間がとれないことはあるかもしれないですね。
※筆者は、ハンズオンセミナーの資料作成業務の経験があります。
そこで、自習用にあらためてパワーポイントで社内向け教本を作り、勉強会の時間を教本を読んで質問をする時間にあてる形式とし、月3のペースで継続しました。
教本作りは、自分がこれまでどんな業務をPythonで実現してきたか、どんなことを調べて知ることができたかを復習する機会にもなりました。最終的に、教本は30項目くらいのボリュームになりました。
反応としては「有益な資料」と喜んでもらえているようでした。傍聴がメインだった参加者にも、例えばIDLEが2つのウインドウを行き来する形になっていることを体験してもらえるなど、社内のアクティビティとしてちょっと楽しんでもらえたかもしれません。
Pythonコードをパワーポイントに貼ったら…
パワーポイントでコードを貼ると「’」が大文字になります。なので「パワーポイントから貼ると動きません」と教本に書きこまなきゃいけなかったり、なかなか大変でした。
オプションでこの補完機能をやめることもできます。
でも、パワーポイントの改行の記号が特殊であることにも一抹の不安があります。
やっぱり、念には念をいれてコードだけ別途テキストファイルで提供することをおすすめします。
エンジニアの皆さんは、ここでかっこよくスライドシェアとgithubを使うようですが、とりあえず社内なのでテキストファイルでいいかと思います。
できたこと、できなかったこと
〇できたこと
リモート環境が続くなかで部活的に交流する時間ができた。
成果物としてプログラミング初心者に向けたPythonの社内教本ができた。
リモート環境で勉強会ができた。
業務として勉強会を行い、関係者にPython関連の理解を得らた。
近隣チームの方に「Pythonでどういうことができるのか」は分かってもらえた。
業務で別のプログラミング言語に取り組むことになった非エンジニアの同僚が足がかりになったと話してくれたこと。
久々に、教える立場に立てるということを社内に示せたこと。
△できなかったこと
あわよくば、他の部署の業務へPythonの利用が広がっていくことをサポートすること。
他の部署からPythonを使った業務効率化の依頼がくること。
同じプログラムをみんなで使う輪ができること。
とにもかくにも、実施できたことでポジティブなことが色々起き、自分の経験も深まり、とてもよかったと思います。
参加いただいた皆さんには教本を持ち帰ってもらうことができたので、数か月おきに同窓会をやっていこうと思います。
長くなりましたが、ここまでお読みいただきありがとうございました。
この記事が気に入ったらサポートをしてみませんか?