Python学習チャンネル by PyQ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

【エンジニア列伝vol.10 aodagさん (2/4)】「Python使って20年、もはや手足がPython、 aodagです」古参Pythonista(パイソニスタ)のaodagさんにPythonとの出会い、学習の動機を伺いました。

f:id:kenken0326:20200824204832p:plain

この記事は第10回Pythonエンジニア列伝の2記事目です

Pythonエンジニア列伝は、「Pythonエンジニアたちのインタビューを通して、Pythonを使う人達がどんな人なのか、Pythonをどんな場面で活用しているのか、なぜPythonに出会ったか」などを紐解く連載です。

連載はトピックごとになっているので、記事単体でも読むことができます。

※今回は新型コロナウイルス感染症対策として、マスクをしてお送りします(aodagさんには写真撮影のためマスクを外していただきました)。

関連記事・バックナンバー

Python使って20年、達人エンジニアが登場

f:id:kenken0326:20200821145452p:plain
kameko Pythonエンジニア列伝もついに10回目を迎えました。エンジニア列伝は「初めてPythonを勉強した人、エンジニアになりたい人」がエンジニアの仕事を知る機会となるように行っている連載です。

f:id:kenken0326:20200821145013p:plain
konie 節目となる今回、ビープラウドに深く関わりがあるaodagさんにお越しいただきました。 それでは簡単に自己紹介をお願いします!

aodag Python使って20年、もはや手足がPython、 aodagです。
f:id:kenken0326:20200821152456p:plain

f:id:kenken0326:20200825180422p:plain

f:id:kenken0326:20200821145452p:plain
kameko そんなキャッチフレーズがあるとは(笑)
20年ということはPythonを使い始めたのは大学生の時ですか?

aodag はい。大学時代ですね。
f:id:kenken0326:20200821152456p:plain

f:id:kenken0326:20200821145452p:plain
kameko それは早いですね!Pythonを使い始めたきっかけについては後ほどお伺いします。
aodagさんは現在もPythonを使った仕事をしていますか?

aodag いいえ、Pythonも使う会社なんだけど、最近はGoの案件が多いのでGoばっかり書いています。
だけどPythonが好きなので、Pythonで書けるところはなるべくPythonを使うようにしています。
f:id:kenken0326:20200821152456p:plain

解説:Go言語とは
静的型付けプログラミング言語です。コンパイル言語でありながら動的型付け、インタープリター言語のような感覚でプログラミングできます。
URL:https://golang.org/

f:id:kenken0326:20200821145452p:plain
kameko 基本的に御社では受託案件を行っていますか?

aodag うん。弊社はサービスを作っている会社ではないんでね。「基本的には」受託をやっています。今後は自社でのWebサービス開発も考えていますが、まだ詳細は秘密です。
f:id:kenken0326:20200821152456p:plain

f:id:kenken0326:20200825175436p:plain

f:id:kenken0326:20200821145452p:plain
kameko それは楽しみにしてます。 aodagさんはビープラウド出身ですが、ビープラウドに居た時は何をされていたんですか?

aodag 業務系プログラムが多かったと思います。
元々バックエンドが好きで、バッチもとても好きです。EXPLAIN(エクスプレイン)だけで半日潰せます。
f:id:kenken0326:20200821152456p:plain

解説:バックエンドエンジニアとは
WebシステムやWebサイトの裏側を担当する職種です。システムのサーバー側を開発する人のことを指します。 Webサイトの構築においてシステムの実装やデータベースの構築、またはその運用を担当します。
Webサイトの目に触れる部分を担当するフロントエンドエンジニアの対義語です。

解説:バッチ処理とは
データをまとめて処理させるデータの処理方法です。即時性を要求されない処理に使われます。処理要求が発生するたびに結果を返す方式のオンラインリアルタイム処理の対義語です。

解説:EXPLAINコマンドとは
RDBMS(リレーショナルデータベース)の最適化するために使うコマンドです。
RDBMSでパフォーマンスチューニングするときに利用されます。

f:id:kenken0326:20200821145013p:plain
konie 裏側が好きなんですね。業務外でも何かを書いていますか?

aodag アプリじゃなくてPythonの世界で使われているライブラリの改善とかをしています。
また、pipやsetuptoolsがどう実装されているのか、 パッケージ関連のPEPを読んで追いかけたりしています。パッケージについては半分くらいはPyCon JPのネタ集めが目的です。
f:id:kenken0326:20200821152456p:plain

解説:setuptoolsとは
Python標準ライブラリであるdistutilsの拡張機能の集まりです。
Pythonのパッケージを、より簡単にビルドして配布できるようにするために作られました。
URL:https://github.com/pypa/setuptools

解説:PEP(Python Enhancement Proposals)とは
Pythonのコミュニティに対して情報を提供したり、Pythonの新機能やプロセス、環境などを説明するためのドキュメントです。
PEP一覧:https://www.python.org/dev/peps/

解説:PyCon JPとは
Pythonユーザが集まり、PythonやPythonを使ったソフトウェアについて情報交換、交流をするためのカンファレンスです。
PyCon JP 2020は、8/28と8/29にオンラインで開催されました。
URL:https://www.pycon.jp/

f:id:kenken0326:20200821145452p:plain
kameko PyCon JPの話も後ほど伺いたいと思います!
そういえばaodagさんはビープラウドに何年在籍されていましたか?まだビープラウドの社内Slackに登場されるのでずっと会社にいる感じがしますが(笑)

※aodagさんは現在もビープラウドの社内Slackにゲストとして在籍しており、ビープラウド社員からの技術相談にのるなど交流を続けています。 f:id:kenken0326:20200825114547p:plain

aodag 5年ぐらいですね。ビープラウドにはPythonを書く人が温泉いくだけのコミュニティ(イベント)「Python温泉」がきっかけで入社しました。
ちなみに私が仕事でPythonを使うようになったのはビープラウドに入ってからです。
f:id:kenken0326:20200821152456p:plain

解説:Python温泉とは
aodagさん曰く「Pythonを書く人が温泉に行くだけのイベント」だそうです。当時この勉強会がきっかけで当時珍しかったPythonの開発案件を手がけるビープラウドに入社した人は多かったそうです。

Pythonとの馴れ初め

f:id:kenken0326:20200821145452p:plain
kameko それではaodagさんがPythonを学習しようと思ったきっかけを教えて下さい。

aodag 自分の世代は「How to Become A Hacker(邦題:ハッカーになろう)」を読んで、Pythonを知った人が多いと思います。
あの当時オープンソース関連の文書っていろんな人が啓蒙するためにたくさん存在して、その中で一番有名な人がエリック・レイモンドでした。
f:id:kenken0326:20200821152456p:plain

解説:エリック・レイモンド(Eric Steven Raymond)とは
米国のプログラマー。オープンソースソフトウェアfetchmail(旧名:popclient)の開発に携わりました。「How to Become A Hacker」の他、オープンソースの文化や開発方式について書かれたオープンソース4部作(「伽藍とバザール」「ノウアスフィアの開墾」「魔法のおなべ」「Weaving the Net of Indra」)が有名です。

aodagHow to Become A Hacker」の中で「ハッカーと言っても悪いことをする人ではない。他のハッカーたちに役立つプログラムを書くためにオープンソースで書いている」と書いていました。また、覚えるべきプログラミング言語に「Python, Perl, C, LISP」を挙げ、最終的に「一番最初はPythonがいいでしょう」と紹介していました。また、「達人プログラマー」( オーム社)という本にもPythonは載っていたので、そこでPythonに興味を持ちました。
f:id:kenken0326:20200821152456p:plain

f:id:kenken0326:20200821145452p:plain
kamekoHow to Become A Hacker」の話はよく聞きますね。aodagさんも読まれていたのですね。

f:id:kenken0326:20200825180232p:plain

aodag はい!また、この本を読んだ大学時代にLinuxが実用的になってきたこともPythonに興味を持った理由の1つです。当時は商用UNIXだったサーバーもオープンソースのLinuxでできる時代になりました。他にもApache等オープンソース・ソフトウェアが盛り上がっていたこともあり、「オープンソースってすごいじゃん」と衝撃を受けました。大学生はお金がないから無料で使えるところもよかったです。
f:id:kenken0326:20200821152456p:plain

解説:UNIXとは
メインフレームやサーバーで使用されているコンピューター用のマルチタスク・マルチユーザーのOSの一種です。1969年に誕生しました。

解説:Linuxとは
UNIX互換オペレーティングシステム(OS)です。サーバーなどの用途で活用されています。UNIXは商用化によってライセンス管理が必要でしたが、Linuxはオープンソースソフトウェアで配布されています。1991年に誕生しました。
URL:https://www.kernel.org/doc/html/latest/

解説:Apache HTTP Serverとは
オープンソースソフトウェアで、無償で利用できるクロスプラットフォームのWebサーバソフトウェアです。

f:id:kenken0326:20200821145452p:plain
kameko 確かに無料で使えるのは魅力的ですよね。それで初めて覚えた言語がPythonなんですか?

aodag 最初に覚えたのはPascalです。 Pascal, C, C++, Perl, Python, Java, PHP, C#の順番で学びました。
f:id:kenken0326:20200821152456p:plain

f:id:kenken0326:20200821145013p:plain
konie たくさん習得されていますね!ところで初めてプログラミング触れたのはいくつの時ですか?

aodag 高等専門学校1年生の時に履修しました。なので16歳ですね。
f:id:kenken0326:20200821152456p:plain

解説:高等専門学校とは
高等学校と同じく、中学校を卒業した方が入学することができます。入学後は5年一貫(商船学科は5年6ヶ月)で、一般科目と専門科目をバランスよく配置した教育課程により、技術者に必要な豊かな教養と体系的な専門知識を身につけることができます。(文部科学省のHPを参照しました)
URL:https://www.mext.go.jp/a_menu/koutou/kousen/tokushoku.htm

f:id:kenken0326:20200821145452p:plain
kameko 高専ではプログラミングの授業があるんですか?

aodag はい。しかも本物のUNIXでした。
f:id:kenken0326:20200821152456p:plain

f:id:kenken0326:20200821145452p:plain
kameko すごいですね!それで、当時プログラムは紙に書いてたんですか?

aodag タイムシェアリングで使える端末があって、ちゃんとしたEWSの端末でした。
だけどプログラミング始めたのは自分の周りに比べると遅い方だと思います。
f:id:kenken0326:20200821152456p:plain

解説:エンジニアリングワークステーション(EWS)とは
1980年代に登場したエンジニアリング分野での生産性向上のための強力なツールが搭載された小型コンピューターです。
ソフトウェア開発などに使用されました。

f:id:kenken0326:20200821145452p:plain
kameko 遅いって…。
パソコンを買えるか買えないかという時代ですよ!!

aodag (笑)
なんだかんだでPythonは長く使っていますね。
f:id:kenken0326:20200821152456p:plain

次回の内容

今回はaodagさんにPythonとの出会い、学習の動機を伺いました。
エンジニア列伝vol.10その3ではaodagさんにコミュニティ活動を始めたきっかけやPyCon JPの話を伺います。

blog.pyq.jp

関連記事・バックナンバー

Copyright ©2017-2020 BeProud Inc. All rights reserved.