出会い
実は浜中さんは私の起業時のパートナーと知り合いで、それとなく私の噂を聞いていたそうです。外部のイベントで私と初対面をして軽くお話をした事がありました。 当時はそれっきりだったのですが、その後弊社でトレーニングを行っていることを知って打診をいただいたことが今回の受講のキッカケです。
先の宮田さんもそうですが、WEB で看板を出した当初は私に少し近しい人に届いてその後ジワジワ広がっていったように思います。この先インターネットの問い合わせからいらした方もご紹介しますのでお楽しみに。
面接・ヒアリング
経歴を伺うと、営業をずっと続けてきた方でした。職業柄もあると思いますが、話をするのは得意であった様子で、これまでの話、これから考えていることなど色々と聞くことができました。
元々は技術はやらないつもりだったそうですが、「自身のサービスを提供したい!」と思い立ち、自分で作り上げる道を選びたいと思ったそうです。プログラミングのプロまで到達しなくとも、自分の生み出したいサービスの価値を自分の力で表現できる程度には作れる能力を得ておきたいということでした。
近いケースはこれまでにもあり、弊社が看板を出す前に卒業した何人かは、自身でのサービス提供や起業という事を軸に
「将来仲間を募るかもしれないけれど、自分が技術を(トップレベルでは無いにせよ)身につけたい」
という動機を持った人ばかりです。
ありがたいことに、弊社の出している「本気で技術を学びたい人向け」というところがシッカリと伝わっているのだと思います(それで始めたら「楽しくなった」となって、ホントの技術者っぽくなってしまう人もいるので面白いです)。
課題「1 ヶ月でポイントを」
技術は完全にゼロからということでしたが、少し難しい相談を受けました。「仕事が多忙であることもあり、土日を中心にして、かつ 1 ヶ月でポイントを抑える形は無いだろうか」という内容です。
当初これには大分頭を抱えました。完全にゼロの方ですと、1 ヶ月では HTML/CSS から始めて WEB サービスの基礎的なところまで位しか到達できない可能性が高いと思ったのです。ただ、データベースを扱うところに到達しないと、自力での突破が難しい所を一緒にこなすことができません。
そこで「比較的難しいポイントをかいつまんでレクチャするので、それ以外の簡単な内容に関しては自学してゆくことで補って下さい」という形にしました。
出来るだけ知るべき概念が少ない状態でないと達成が危うくなると考えたので、フレームワークを使わない PHP で、いわゆる LAMP の開発を学んでもらうことを提案しました。 一歩目をこの形で学ぶことはそれほど悪いことではありません。将来フレームワークを利用するにしても、OSS をカスタマイズするにしても、このレベルの基礎的な内容を抑えている方が理解も深まり、問題解決力も上がると思います。また、躓きがちな環境構築が Xampp や MAMP で完了することが多く、比較的簡単であることも選択した理由です。
このやり方のイメージとしては 「とにかく全ての要素を使って出来るだけ小さく一周する」 という感覚です。
トレーニング開始
1 ヶ月間で土日を目一杯使って集中してやり込むという事で、大分スパルタだったと思います。
オンラインでの質疑は活発に行なっていただけていました。大抵は日中進めていて、問題と思ったことを夕方〜晩に投げてくれていた様子です。 プログラミング相談所へは毎回足を運んでくださり、オフラインの質疑応答の機会もフルに活用されていました。 相談所が終わったあとの時間もコワーキングスペースに篭って自習されていたと伺っています。
土日のみの集中レベルは先述の起業家系の人達に勝るとも劣らない取り組みだったと思います。
- HTML の基礎を学び、form について調べる
- LAMP の環境構築
- DB やテーブルの作り方等の理解
- PHP へ form から POST する
- POST したデータを SQL を書いて INSERT する
というような内容が最初の一歩だったので、多少オーバーワーク気味だったと思っています。ただ、地頭の良さがあったためか、苦労しながらもあまり立ち止まらずに進めていただけていました。
form からの POST を行った段階で HTTP のリクエスト/レスポンスのイメージを改めて確認するなど、はやさ重視になり過ぎて理解が疎かになる事が無いように、気を配って進めました。
基本的には普段通り BBS(弊社提供の LaunchEngine のグループ機能)上のコミュニケーションと GitHub のコードレビューで進めています(そのおかげもあって、今でも彼と私のコミュニケーションのログはお互い確認することができます)。
驚異的な成長・進級
最初の POST 〜 INSERT を一度終えればあとは DB の SELECT、UPDATE、DELETE まで進むことはグッとハードルが下がるため、折り返し時点(とは言え賞味 5 日未満ですが)の時点で SELECT に取り組んでいました。
この頃プログラミング相談所で出会った PHP 経験者に「今 2 週間目でこれをやっている」という話をして、驚かれている様子を横目で見ていました。確かにゼロから自学中心で進めていてこのスピードは驚異的だと思います。
トレーニングは自学を効果的に進めるためのポイントを伝えるものなので「あー書け、こー書け」と指示しないですし、こちらで用意した教本を写させることも行いません。迷わず一点突破していることが成果に繋がっていたのでしょう。
INSERT、SELECT を終えた所で UPDATE、DELETE に関しても自学で体得できそうな事を確認し、更なるステップアップとして「テーブルのリレーションと SELECT における JOIN」に取り組む事を相談して決めました。
1 ヶ月後、ごくごく小さな機能として情報の登録から表示・一覧を完成しました。最終回でサービスの全体像を打ち合わせた状態で一旦進級(卒業と呼ぶにはまだ不足している事が多すぎたので進級と表現します)としました。
既に基礎体力を持ち、「今後何をしたらできるようになるか」を理解されていたので、私の伴走が無くとも自力で技術を学び取るのも時間の問題と感じていました。
彼自身も手応えを得た様子で「なんか出来そうです。もしわからなくなったらまた相談所に来ます。」と言い残して一旦私の手を離れて行かれたのを覚えています。
そうして 11 月(今)
このブログの文章をまとめようかと思った矢先、先方からメッセージがありました。作成したいサービスのプロトタイプができたとの連絡です。
業務が多忙であるとおっしゃっている中、一度トレーニングを離れた後も開発を続けてくれていた事をとても嬉しく感じました。私が伝えたのは本当に基礎の基礎と学び方だけであったので、よくここまで努力して進めてくれたと感心しています。 連絡いただいたプロトタイプの URL は下記です。ご本人の了承が得られたので貼らせていただきます。
流行っているアニメの紹介を見たり、評価が出来るサービスです。
http://trend-anime.sakura.ne.jp/
弊社トレーニングの入り口しか学んでいない為、まだ多くの課題があるサービスであるとは思っていますが、今後も不足している点は自力で補いつつ進んでくれるものと思います。
浜中さんの感想
この文章のことを相談したら感想を書いてくださると申し出ていただけたので、下記に記します。当初肩すかし感があったのは知らなかったので、弊社としてもそういう気分にはさせないよう改善することは必要かなと感じています。本質は伝わっていた様子だったので改めて安心しています。
率直に言って、教えてもらったという感覚はほとんどなく、身についていったという感覚が強かったです。
トレーニングという言い方があってるのだと思いますが、基本、正解を教えてくれることはなく、筋道を示してもらう感じで1ヶ月が過ぎていきました。
最初は肩すかしな感じでしたが(笑)
進むにつれ、「性に合っているな」と感じていました。
プログラミング経験ゼロの自分にとって、作りたいものがあるためプログラミングを学び始めましたが、
『作りたいものが完成する』ことが目的ではなく、『自分でサービスを作れるようになる』ことが目的だったのを非常に理解していた様子でした。
目的と作りたいものの要件を伝え、PHP を勧められましたが選択として間違いはなかったです。
現在、公開しているサイトも Wordpress で作成しましたが、PHP のコードをいじることが結構多いからです。
先生と生徒ではなく、選手とトレーナー、ランナーと伴走者みたいなイメージでした。
走り方のわからない自分に走る方法を教えてくれたのは非常に大きかったです。
人によっては、プログラミングは0から自分でできるという方もいると思いますし、自分もその意味がなんとなくわかるようになりましたが、
スピード感を持ってやるなら、最初だからこそ人から学ぶことが大事だと自分は感じました。
ありがとうございました。
またお願いします。
おしまいに
恐らく瞬間速度で一番を記録したのは(今のところ)彼であると思います。
そして、一度飛び立ってからは自力で羽ばたいていける考え方・知識を伝えることができたのは私にとっても嬉しいことです。彼には「初心者向け xx」はもはや必要なく、今後も自力で調べて学び取って行けることでしょう。
そんなサークルアラウンドのトレーニングの概要はこちらからご覧くださいませ。