00:01
始まりました。今回のお話のお時間でございます。
今回はですね、プログラミングの上達方法ということで、これをテーマにしてちょっとお話をしていこうかなというふうに思っております。
なんでこんな話をするのかっていうと、この間ね、スタンドFMでね、そういうような話題をしましてね、
ちょっと気になったので、じゃあこういうような話ちょっとしてみましょうかというふうに思ったのです。
たまにね、こういうような話題になることは当然あります。やっぱりね、自分もね、一応仮にもプログラミング、プログラムの端くりなのでね、
いうようなことになりますので、この間もついちょっと前ですよね、ラジオトークの方でプログラミングというかITが理解できないという話について、
ちょっと掘り下げて話をしてましたが、そんな話でまたちょっと話をしてみようかなということで、今回もやってみようというわけでございます。
まず自分のポジションについてですが、自分はね、たまに言われるんですが、自分は一度もプログラマとして専門職で仕事をしたことはございません。
一番最初に入った仕事はね、携帯電話の試験ということでね、まあプログラマがいないと困るには困るんですよ。
やっぱりアプリを作ったりするんでね、テスト用のアプリ作ったりするんで、できない人がいるとそれはそれで困るんだけど、まあいりゃいいから別にできなくてもいいよ、あなたはできなくてもいいよという感じの職場でした。
で、それ以降も携帯電話のコールセンター的なことはやってたりはしてましたけども、基本的にプログラミングは専門職でやったことは一度もございません。
で、フリーランスとしてもね、まあ一応プログラミングの案件を受けたりはするんですけども、それも決して頻度が多いものでもないし、決してそんな大規模なものでもないので、まあ多分今の現場で仕事をしているプロのプログラマさんに比べれば全然大したことやってないと思います。
はい、そんな感じの人間でございます。
まあね、自分はね、よくプログラミングって料理みたいなもんだよっていう話をするんですけども、やっぱりプロのプログラマーっていうのはどっかでお店が開ける一流のシェフだと思ってるんです。
そういうのに比べれば自分は家庭料理ができるだけ、まあもちろんね、知り合いの人においしい料理が振る舞えるし、あ、これうまいね、なんか店開けるよとか言われるんですけども、その実際開けるわけないだろうっていうのを自分の中で思いながらやってるタイプの人です。
はい、まあそんな話なので、別に専門的な話は全然できないんですけれども、ただね、やっぱりプログラミングがある程度できるところまで行くルートっていうのは、本当にプロもそうでない人もあんまり関係ないのかなというふうに思っているので、ちょっとここではそういう話をしていければいいかなというふうに思っています。
03:02
で、今回ですね、まあプログラミング、まずは基本を理解することからかなというふうに思います。まあなんとかね、プログラミングの変数の仕組みとか、あと最近だとオブジェクト思考って何とか、そういう基本的な仕組みの話はまずは理解しておいたほうがいいかな。
メモリとかそういうハードウェアの構造はそこまで理解しなくてもいいかとは思います。まあしておいたほうに越したことはないんですけどね。ただ正直その辺は最近の言語って必死に隠蔽してくれているので、それを意識しだすとすごい大変なのでね。なので基本的にこういうものあるよ程度で覚えておくとまあいいんじゃないかなぐらいではあります。
まあね、何はともあれやっぱりその辺全部一通り見ておくと本当はいいと思うので、もし暇があるのであればなんかそうだな、今だったら基本情報処理技術者試験の教科書でも読んでおくといいんじゃないですかね。なんかああいうのを見ておくと意外と下地が鍛えられるという感じはします。
まあね、今は自分そういうの持ってないんでね。今の教科書どうなっているのかわからないんですけどね。でもそういうのがまずあるといいんじゃないかなっていうのはあります。ただまあ基本的なものなんていうかね、やっぱりコンピューターの世界って物理法則が丸ごと違うんですよね、人間の世界と。なので、物を投げたらまっすぐちゃんと放物線描いて飛ぶかっていうと、それをプログラミングしなきゃそうなりませんっていうわけで、やっぱり全然物理法則が違うんですよ。
だからそれが理解できてないとどんな言語をやっても意味ないんですよね。どんなに勉強してもしょうがない。
さじょうのろうかくっていうふうに言いますけれども、ほんとさじょうのろうかく、いくら頑張ってもその一瞬はわかった気になったかもしれないけども、次の瞬間忘れてるっていうのがプログラミングだと思います。だからまずは基本的な仕組み、コンピューターの世界ってどういうふうになってるんだろうなっていうのをちゃんと理解する。
それに対して理解するために多分どの言語でもいいんじゃないかなっていうふうに思います。PythonとかJavaScriptとかでもいいですし、それこそScratchとかのビジュアルプログラミング環境でもいいと思います。むしろそのほうがいいかもしれない。余計にプログラミングの仕組み以外のことを覚えなくて済むので。
だからそういうところで始めて、なんとなくプログラミングってこういうふうにこういうルールで動くものなんだ、こういうふうにしたらコンピューターってこういうふうに解釈するんだ、こういうふうなことはできないんだとか、そういういろんなところを理解しておくことから始めるっていうのがまず一つ大事かなというふうに思います。
そしてもう一つすごく大事なのは、多くの技術って常に移ろうことなんですよね。やっぱり今だと、今現在2021年現在なんか引き続き言っちゃいますけども、現在だとJavaScriptとかPythonとかC-Sharpとかそういういろんなメジャーどころの言語ってのもありますけども、それが正直10年後どうなってるのかなってわかんないんですよね。なくなってるかもしれない。
06:19
いわゆる互換性のない非互換の上位バージョンアップがあるかもしれない。
実際Python2からPython3になるときに結構前の言語と互換性が取れない変更ってあったんですよ。だからそういうような変更があって、昔のリソースが全然使えなくなっちゃうかもしれない。
それからまた新しい言語が出てきて、そっちの方が主流になるかもしれない。とにかく基本的にいろんなものは移ろっていくんですよね。基本的に同じものっていうのはほぼ存在しない。
だからもちろんそれは技術の積み重ねになるので、見ておくことっていうのは重要なんですけれども、覚えておく必要は多分あんまりないと思っているんです。
そのときそのときに一番使える、これが一番簡単なやり方っていう方法が必ずあるので、それを見つけ出せればいい。そのときに初めてその使い方を覚えるっていう選択肢が生まれるぐらいでいいんじゃないのかなっていうふうには思っています。
だからとにかくね、特に先ほどの基本を理解してる段階とか、基本を理解してからじゃあ次何か作ろうと思っているんだけど、まだ実際に技術が必要な段階には至ってないなとか、そういうような段階では多分そこまで勉強することってないんじゃないのかな。
まずは技術ってのを追えるようになってればいい。でも追えるようになっておくってことが一番大事で、意外と技術って今後変わっていくので、積み重ねを追えなくなっちゃうともう何が何だかわからなくなっちゃうので、だからとりあえず見ておくことっていうのが重要なのかなっていうふうに思います。
あとは個人的にはなんですけれども、やっぱり技術を扱う、デジタル技術を扱っているコンテンツっていうものに触れておくこと。アニメでもゲームでも何でもいいです。イベントでもオンラインイベントでも触れておくことっていうのは一ついいのかなっていうふうには思います。
例えばドローンを飛ばして何とかするっていうようなイベントとか、あとはXR関係、ARとかMR、ミキシッドリアリティとかAR、アーギメントリアリティ、VR、バーチャルリアリティとかですね、それらを訴訟してXRとか呼んでますけれども、そういうような関係のイベント。
今度オンラインイベント、078神戸がXR水族館という取り組みをやるらしいですね。だからそういうのとか見ておくと結構理解って早まるんじゃないのかなっていうふうに思います。
あとはそうですね、個人的にはこの間、2019年の4月の話になりますが、技術書店でプログラマが見るべきアニメっていうアンケートを取っている会社さんがありましたね。
09:17
そこなんかだと結構上位に上がってたのが光学機動隊とか電脳コイルとか、あとはソードアートオンライン。ソードアートオンラインあまり上位に上がってなかったな。
そういうようなものとか、やっぱりああいう技術が多分これからある程度来るものはあると思うんですよ。例えばサングラス型のデバイスに色んな仮想現実が表示されるようになるとか、
吹き出しが表示されるようになるよとか、そういうような仕組みっていうのは多分これから出てくると思うし、やっぱりもっともっと没入感のたっぷりあるようなVRの世界っていうのも出てくると思うので、そういうようなものがあるんだなぐらいはなんとなくこういうようなアニメを通して気づいておくといいのかなっていうのはもちろんあります。
あとはゲームですね。やっぱり基本的にゲームって新しいアイディア、新しいテクノロジーの片輪っていうのが見えやすいものだと思うんですよ。あとは画面構成とかもそうですね。だからそういうようなものをとりあえずでも何でもいいので触っておくこと。
実際に何かありましたね。ちょっと前につぎ合ったでまとまってた内容でやっぱりプログラミングじゃないや、ゲームとかをやっている人ってやっぱりプログラミングとか新しいアプリとかそういうものを触って慣れるのが早い。
なんとなく基本ルールっていうのがわかっているので、基本ルールがわかっているから触りやすいっていうような話があって、やっぱりそういうのをなんとなく体感するためにも自分はゲームが一番いいんじゃないかなっていうふうに思っています。
もちろんゲーム全然やらない人にもパソコン普通以上に使えたり、むしろプロレベルで使えたりとかいう人がいっぱいいるので、だから必ずしもそのルートを通らなければいけない、ゲームをやらなきゃいけない、アイディアを見なきゃいけないってわけじゃないと思うんですけども、少なくとも自分はそのルートしか知りません。
ゲームとかアニメとかで仮想世界の歩き方のヒントを得るみたいな、そういうのは一つ大事なんじゃないかなというふうに思っています。
あとは知ることを、最近のSBCastの方では特にIT関係の回ですね、自分も今まで毎月偶数月の1回目にはSBCastは技術関係のコミュニティの方を呼ぶようにしています。
先日はテクフリっていう、今日じゃないや、この間金曜日に公開されたばかりですね、テクフリっていうポッドキャスト番組を配信しているSさんにお越しいただきましたし、その前は技術系だとアットコーダーっていうところ、競技プログラミングをやっているアットコーダーっていうところの高橋直大さん。
12:18
直大さんとかオープンソースカンファレンスの三重原さんとか呼んできたわけですけれども、そういうような感じで技術関係の方をいろいろとお話をしていて、毎回ある程度共通してきているキーワードとして、やっぱり知ることとそれをきっかけにこうなるかもしれないなっていうことで未来を想像してみること。
そして世の中が動いている様子を体感することって大事だよっていうような話をよく聞きます。
この辺は多分共通するキーワードなんじゃないのかなっていうふうに思います。
新しいこういう技術を拾っていくのに。
そしてさらに楽しんでもらうこと、それを楽しむことですね。
だからそういうようなことって多分すごくこういう技術を上達させて、技術を上達させてはなんか変だな。
技術を身に付けて上達していくっていうことにはすごく重要なステップなんじゃないのかなっていうふうに思います。
なのでまずはこういうようなところ、いろんな情報を仕入れていくこと。
いろんなアニメを見るでもいいし、ゲームをやるでもいいし。
あとはそうですね、テクフリなんかすごくポッドキャストとして、そういう技術の入門のポッドキャストとしてはすごく自分は個人的に優秀だと思うんですよ。
やっぱりね、あんまり難しい内容じゃないし、かといって深く踏み込む内容でもないので。
かといって…かといってないな。
まあいいや、とにかく深く踏み込む内容でもないし、そしてなんかもう分かりにくいことがあるわけでもないし、
なんとなく感想だけが伸びられているんだけれども、詳しくは詳しく突っ込むことも当然できるし、
ちょっとした考え方は触れられているので、こういう文脈で見ればいいのかぐらいのアナウンスだけはされている。
だからそういうようなものとして見ると、こういうテクフリとかあとは、
そうですね、自分の個人的にはちょっと今後インタビューしてみたいなって思っているところで、
ココナッツテックっていうポッドキャスト番組があるんですけれども、
ああいうようなものってすごくいいんじゃないのかなって思うんです。
プログラミングの知識なくても理解できますしね。
そしてやっぱりプログラミングの知識がなくても分かるけれども、
プログラミングの知識があるともっと分かるっていうね、
そういうような環境として多分いいんじゃないのかなって思うので、
やっぱりそういうのを聞いてみるとか、
あとは先ほどのXR関係のイベント、078神戸とか、
今週末です。
今週末じゃない、あさってからか。
もうあさってからですね。
あさってからはノーマップスって北海道のイベントが開催されます。
15:03
確かVRサッカーかなんかやるんじゃなかったかな。
そこの辺についてはちょっとまだチェックしてないんですけども、
そういうのもありますし、なんかいろんなイベントがありますんで、
そういうのを見てみること。
それで、あ、今こういう技術あるんだ。
こういう使い方すると面白いんだ。
こういう使い方をしたものは今後どういう風になっていく可能性があるのかな。
これを触れるとすれば、
自分はどういう風なものを勉強すると面白いのかなとか、
そういうようなものを何となくでも知るっていうことってすごく大事なんじゃないのかなっていう風には個人的には思いますね。
自分はあくまでプロのプログラマーではないので、
仕事としてプログラミングをしたことは一回もないし、
今最近だとNPOでとりあえずこれってツール化した方がいいよねってことをツール化してる程度の
大したことやってないプログラマーですけども、
でもそういう立場からでも分かることっていうのは多分あると思うので、
今後もこういうようなことがあれば話はしていければいいかなっていう風に思います。
というところで、今日のお話はこれくらいにして終わりにしていきたいと思います。
明日はダイバーシティ&インクルージョン100人会議っていうのが、
この間お話をちょっとしてたかと思いますけどもあります。
こちらが21時までですね。
多分また21時から何か懇親会とかあるかもしれないですけども、
そういうのがありますのでこちらの思い出話でもできるんじゃないかなという風に思います。
というところで今回は終わりにしていきたいと思います。
どうもありがとうございました。