GARAKUTA-DUKUME

yuta kishimoto

*

これまでのプログラミング関連について一度まとめておく。

   

概要と背景

42 Tokyo という無料のプログラミングスクールの一次オンラインテストを通過し、コロナによる世情の変局の中待つこと約半年、ようやく9月開催の Piscine と呼ばれる二次試験が目前まで迫ってきたため、自分の今の知識状況の確認と復習のために、プログラミングを始めるに当たって自分が理解に時間のかかった部分などまとめておきたいと思います。

あと一応自分のブログサイトも持っているけど音楽のことが主体であるのであまりそちらにプログラミング学習のことを書くのもなんだかなーという思いと、とりあえず Qiita 書いてみたい~という安直な理由。

 → Qiita に書いてたけど自分語りがあまりにも長くなったため、やはりこちらにすることにした。がはは。

これまでの、プログラミングや PC との自分の関係性(隙あらば自分語り)

義務教育辺りまで

父親が SE だったため、比較的子供の頃から Windows 95 が自宅にあり、インターネットブラウジングやら Windows 付属の謎のゲーム(ソリティア・フリーセル・多分今は亡きアリーナなど)を遊ぶ程度に PC を利用。

中学生になって、中学校の廊下に自由に利用できる PC が数台設置されるようになり、MSN チャット・メッセンジャーなどで遊び出す。同級生の中にはチャットで出会った人に会いに北海道まで行ってるやつもいた。出会い系じゃん。

この時点で仕組みのこととかプログラムの挙動についてとかそういったところには全く意識は向いておらず、まぁ言ってしまえばコンシューマ機では出ていないゲームをやるためのゲーム機のような感覚でした。アンジェリークとかやってた気がする。何故乙女げーなのか。

中学校の授業の中で、社会体験(職業体験)や何かしらのテーマをもとにそれぞれで調査・レポートにまとめる、というような課題があったためその際に Microsoft Office などを利用。脳についてや障碍者について調べたりした記憶がある。

高校

高校入学の段階で高校側からノート PC を買えと指定があったため、自分用のノート PC を入手。父親の仕事の関係で富士通の FMV だった気がする。しかし実際に高校の授業で PC を利用することはなく、もっぱら某巨大掲示板を覗いたり、P2P という仕組みを知ったりなどする。某巨大掲示板の某スレでまとめサイトを作ってみたりなどしてその際にHTML・CSSに軽く触れる。

高校三年生の時の文化祭で自主製作映像を作ることになり、音楽を担当することになる。この辺りからようやくちゃんとコンピュータとして使いだした感じ。音楽作成・編集ソフトのフリーソフトや試用版などを調べ、色々と組み合わせて作曲。(YAMAHA のスコアメーカー、SoundEngine など)

映像担当の人間とは Skype でやり取りをしながら製作を進める。多分 2004-5 年辺りの話なんですがこの時点ですでに令和になった今頃ワーキャー騒いでるリモートワークはある程度可能だった模様。
(まぁ高校生のお遊び程度ですが)
(あ、年齢がばれた。)

この辺りで、「あ、PC で音楽作れるんだ」と知り DTM を始める。(ただしフリーソフトを乱用)
あと、受験期真っ盛りなのに友達からエレキギターをもらってコソコソ弾き始めてこれを録音したりなんかし始める。

大学

この辺は詳細に書くと違う方向へ話が行き過ぎてしまうので端折りますが、プログラミング系の学科へ行きたかったのに「そんなもん自分で勉強できるから他んとこ行っとけ」というスパルタ教育(?)により、まぁ結晶構造とかきれいなもの見るの好きだから化学系行っとくかーと行ってみたはいいものの、化学系の大学教育・研究に全く興味が湧かず、バイトに明け暮れ、バンドサークルに明け暮れ、ついに有償の DTM ソフトを手に入れたり VOCALOID に手を出してみたりなどしながら晴れてめでたく中退。

VOCALOID に手を出すに当たって同時に動画作成に手を出し始めるも、うわ、これすごくめんどくさい!って思ったところから動画ってプログラミングで何とかならんかなと思い始める。高校時の映像と音楽を合わせる作業と、Youtube やニコニコ動画の台頭を見ながら、音楽に映像があることの相乗効果に興味を持ち始める。

とは言いつつもプログラミングどっから手を付けていいかわからんのでとりあえず Adobe AfterEffects のエクスプレッションで何とかする方向でしばらく動画制作。今思えば一応エクスプレッションもコードといえばコードか。

フリーター(現在)

楽曲・動画制作に追われ特にプログラミング学習大して進めず。

Processing(Java, Python) というものがとりあえずは手軽そうだなと思いちょくちょく触ってみてはいる。が、3D とかやろうとなるとちょっと物足りず、Unity(C#) とか Unreal Engine のほうに手を出す、After Effects プラグインを自作する(C++)、などの選択肢を睨みつつ、そうなってくるとハードウェアとの連携とかその辺もちゃんと知っといたほうがいいよなとか思いながらそもそもCPUの仕組みってどうなっとるんや、みたいな変に入口のとこから少しずつ勉強したりなどする。

Microsoft Visual Studio Community が個人であれば無償で使えるライセンスであることを知り、開発環境として導入。勉強がてら入門書にあったシンプルなテキストエディターをサンプル見ながらなんとか作成。

歌詞を書きたくないし書いたところで自分が駄々洩れになるのが恥ずかしすぎるのでこれもプログラミングで文字列操作で暗号生成できないかと思い、いくつかの法則を組み合わせたり組み合わせなかったりすることで何種類かの文字列操作を行う謎言語生成ソフトを作成。(C#)
※ 完全に余談ですが、その頃 Nier:Automata にドハマりし、ヨコオタロウという人もかなりシャイなようで、16進数でサブストリーを提示するとかいうひねくれものなため、その16進数解読にこのソフトが役に立ったりなどする副作用があった。

仕事は半年ずつで転々とするという気ままさで生きていたのに、半年ごとにちょうど部署と仕事内容を変えてくれやがる会社に捕まり、流れに流され中間管理職に追いやられ、とても頭の悪いことに真面目に仕事をするなどという愚行に走り、楽曲制作も動画制作も勉強も手が止まりうつ病発症。(診断が正式に下っただけで元から頭はおかしかったという意見は散見されますが(うるせぇ)精神はともかく肉体に変調をきたした)

半年で治しちゃるという気概の元、三か月の休職期間を経て復職。もちろん治ってはいないので今まで見過ごしていた社内の非合理性・非生産性にブチギレて全社員宛メーリングリストにブチギレメールを送った結果、なぜか、よしじゃぁ任せた、ということになり社内向けツールを作ることになるも、社内の色々な制約下で VBA しか使えず VBA と SQL との格闘を始める。

何せ初めてなのでとりあえずどんどん手を動かすかーと思ったらデータ構造の規定をしっかり定めておかないと最終的に詰むことに気付き、ある程度拡張可能な形での仕様の策定から入りつつ設計思想・データベース開発について現在進行形で勉強中。(ちょっと飽き始めてる)

今後の予定

なんとなくの全体イメージ

まぁこんな感じでやっていきます。
35歳くらいになったら政治活動とかもしちゃうかもしれない、うつ病なので。がはは!あ、学習指導要領のこと結局書いてねぇ。まぁそのうち。

以上です。

 - プログラミング, 酔っ払いのタワゴト