TECH::CAMPにて、未経験からのプログラミング奮闘記

ITオンチの未経験者がプログラミングを勉強する理由

こんにちは!Jimmyです。

「プログラミングがわからないと絶対に困る!」

ある時こう思い、勉強しようと決意しました。

 

私は文系人間で、IT関係の知識に疎いばかりか、機械オンチでパソコンオンチでした。(今も得意ではないです。)

文系の大学卒業後ずっと銀行で営業をしてきた私にとって、プログラミングは未知の領域でした。(詳しいプロフィールは自己紹介をご覧ください。)

 

パソコンをいじっていると、たまに接続に問題があったり、セキュリティの警告が出たりする時があります。

そんなとき、「デバック」とか、「キャッシュ」だとか「クッキー」だとか「ホスト」とか「Java」だとか、、、専門用語がたくさん出てきて辟易としていました。

 

ある程度わかっている人も多いかもしれませんが、

私は一つも説明できないようなレベルでした。

 

きっかけは、銀行を辞めてから、起業しようと事業計画を考えていたときです。

考える事業は、どれもインターネットが不可欠であることに気づきました。

 

今や多くの会社で、HPを作成しています。

販売する商品があれば、オンラインストアを設けている会社もたくさんありますし専用アプリも見かけます。

 

情報を発信するにも、受信するにも、マーケティングをするにも、サービス自体を提供するにもインターネットを介さなければ成り立ちません。

 

当初、自分にとってITは最大の苦手分野。

今更苦手分野を克服するより、自分の強みに焦点をあてるべきだと考えていました。

 

私の強みは、中国、銀行、財務、営業でしたのでITは、別の人に任せるのがよいと思っていました。

今やネットを検索すればHPやアプリを作成してくれる会社もたくさんあります。

 

そこで、試しにWebアプリと携帯アプリの開発について見積もりをとってみることにしました。

大まかなサービス内容と必要な機能を記載し、送付したところ、すぐに見積もりが返ってきました。

「 700万円?????!!!!! 」

 

ゲームのような手の込んだものではないので、そんなに高くないだろうと思っていた私は茫然としました。

嘘だと思い他の簡易見積もりも試しましたが、提示金額の幅は大きいものの、高いところはそれくらいの料金でした。

 

詳しく見てみると、料金のほとんどがエンジニアの人件費とのこと。

よくわからないな、700万って、1年かけて作るのか?

正直、騙されているような感覚になりました。

 

次に考えたのは、エンジニアを共同創業者として迎え入れようというものでした。

しかし、文系大学、営業畑出身、友達少ない、こんな私に都合よくエンジニアの友達はいませんでした。

 

じゃあ新たに探すしかないか。ということになるのですが、考えると同じ問題が起きることに気づいたのです。

自分が作りたいサービスを伝えるところまでしかできないのです。

 

つまり、開発にどれくらい時間がかかるか、費用はどれくらいかかるか、他に必要なサービス、や必要な人材がいるか、どこと契約するべきか、更に問題が起こったとき、原因は何なのか、どういう対策を取るべきか、判断のしようがありません。

 

自分がエンジニアをするつもりはなかったのですが、今後、ご縁があり出会うエンジニアの方や事業に参画してくださる方に対して、議論ができないと思ったのです。

 

腹をくくって、信頼できると決めた人間に任せることはできるはず!

とは言うものの、全面的に任せることと、丸投げすることは違います。

当時の私にできるのは丸投げだけです。

 

これでは、善意で必死に作ってくれたエンジニアの方の苦労や提言を理解したり、感謝したり、問題発生時に自分が前面に立ち、寄り添うことができません。

せめて、議論が出来、わかってあげるくらいにはならないと!

 

何もわからないくせに、偉そうなことを言う上司や、肩書だけあって何もしない上司、自分の立場以外考えられない上司のようになってはいけません。

会社員時代に、神に誓って、こうはなりたくないと思っていたリーダー像そのものに自分が近づいていくかもしれないと考えると、これではいけないと思うようになりました。

 

ということで、プログラミングを勉強しようと決心しました。

期間は1ヶ月(ちょうど妻が帰省している期間)、プログラミングだけに集中。

目的地は、プログラミングとは何か、アプリやWebサービスが出来るまでの過程を理解できるレベル。としました。

【決定】TECH::CAMPに入会

いざ、やろうとと思っても、何をしたらよいのかわかりませんでした。

ネットを見ていると、本がたくさん出ていました。

独学で勉強している人のブログや、Web上で知識やノウハウを共有するページもありました。

 

プログラミングにも用語が何種類もあることがわかりました。(そんなことも知らなかったのです、、、)

プログラミング講座もたくさんあり、料金も安くはない印象でした。

 

しかし、期間を設けている限り、最も効率的に身につけることを考えなければなりません。

やはり講座を申し込んだほうがよいだろうと思い、各社の講座を比較しました。

 

最終的にTECH::CAMPを選びました。

受講者の満足度が高かったことに加え、受講期間中、学びたい放題のコースがあったこと、私が当時住んでいた愛知県にも教室があるという理由で決めました。

 

入会金が税込みで131,300円、これで最初の1か月学び放題、2か月目からは毎月税込み13,824円で継続できるという仕組みでした。 (最近少し値上げしたと聞いています。)

 

オリエンテーションでご一緒した男性も、以前、独学でプログラミングを学習して途中で挫折した経験がおありでした。

やはり、ある程度のお金をかけても効率的に学ぶ方がよいでしょう。

 

はじめてのMac あとはひたすらやるだけ

TECH::CAMPに申し込むと、プログラミングをやる人の多くはMacパソコンを使っていることがわかりました。

私は、ASUSの安いパソコン(Windows)を使っていたのですが、開発環境としては、容量や性能に不安があったので、Macパソコンのレンタルをすることにしました。

 

3か月で2万円程でしたが、画面の見やすさ、操作性、デザイン、どれもよかったです。

当初MacBook Air13インチをレンタルする予定でしたが、お店の在庫が無くなったようで、同料金でMacBook Pro15インチをレンタルできました。

 

若干、移動の際は重かったですが、ラッキーでした。

はじめてのMacパソコンに戸惑いながら、TECH::CAMPのカリキュラムをスタートしました。

 

TECH::CAMPでは、Webアプリケーションのコースを選びました。使用するプログラミング言語はRubyです。

開発はAWS(Amazon Web Service)のCloud9を利用しました。

 

カリキュラム通りに、開発環境の設定、Ruby on railsのインストールを進めていきましたが、はじめは自分が今何をやっているのかよくわかりませんでした。

 

メンター(呼び方は違ったかもしれません)の方からも、最初はわからないことだらけでも先に進んでください、後で必ず、点と点がつながって線になります!と言われていたので気にせず進めることができました。

1週間に1回、メンターの方と進捗確認の面談を実施し、目標を確認していきました。

 

基本的に自宅で学習し、わからないところは、リモートでメンターに随時質問ができました。

13時から22時まで受け付けてくれていたと思います。

 

それから1か月と9日、毎日、朝から晩までプログラミングの日々を送りました。

最低1日10時間と決めていたので、それをメンターに伝え、私の最終目標地点も共有したうえで、1週毎の進捗目標を打ち合わせて決めました。

 

おかげで大変はかどりました。

高校卒業以来、十何年ぶりに実家に身を寄せお世話になりました。

両親には申し訳ない思いでしたが、一番はかどる環境を考えた結果、甘えさせてもらいました。

 

20日ほど経過したころ、Webアプリケーションの全カリキュラムを二周完了しました。

だいたい200時間ほどかかったと思います。

 

このころには、Webアプリの仕組みについては一通り理解できるようになりました。

そしていよいよ、自分のオリジナルWebアプリの開発に進みました。

未経験者でも出来た!Webアプリ挑戦

オリジナルアプリの企画は、すぐにできました。というより、すでにやってみたい事業があったので迷わずそれに関するアプリ作成に挑戦することにしました。

まずは、オリジナルアプリのメンターとの相談からはじまりました。

 

どんなサイトを作りたいのか、どんな機能をつけたいのか、どういう風に開発していくのかを説明し、方針が決まりました。

私の場合、期間が限られているので、最低限の機能を選定すること、デザインは素人が独自でやるとめちゃくちゃになるので、一つ参考にするサイトを見つけて徹底的にパクること。(デザインを、です)

 

別の記事に書きましたが、私が作りたいのは、子どものアウトプット専用サイトです。

子供が学びから得たものをアウトプットすること、そして、大人がサポーターとなり、意見やアドバイスを還元することを基本コンセプトとします。

 

デザインはNews Picksというソーシャル経済メディアを真似しました。

ニュースをピックアップし、それにコメントするという形式でしたので、私が作りたいものと形式が似ていたので真似しやすいという理由で選びました。

 

200時間かけて基本知識は学んでいたのですが、開発途中は、新たに加える機能であったり、デザインであったり、至る所で壁にぶつかりました。

最も苦労したのが、エラーとの闘いです。

 

コードを書いて、実際に意図したように動くか試すのですが、エラーが何度も何度もでます。

その度に、どの部分が間違っているのか要因をつきとめる必要があります。

実に開発の時間の半分以上はエラー解決のために費やしました。

 

メンターの方が、エンジニアはみんなエラーと闘いながらやっている、だれもやったことがない機能を作るときは本当に孤独だ、と仰っていた意味がわかりました。

私の場合、「いいね!機能」や「フォロー機能」など、ネットで解決のヒントになる記事を探しながら、試行錯誤を繰り返しました。

 

デザインも、真似するだけなのですが、思ったように表示されないことが多く、苦労しました。

何時間も同じエラーで足止めを余儀なくされることもありました。

今思えば、その時間が最も成長する時間でした。

 

気がづけば、1か月で、基本用語と仕組みを理解し、不明なところは、自力で調べて解決するということができるようになっていました。(もちろんもっと高度なこともあり、知らないこともたくさんありますが)

 

そして一通り、アウトプット専用サイトを完成させることができました。

当然、使いにくいところや、付け加えたい機能、何より子供が投稿するのに見やすい見た目など、修正するべきところは山ほどあるのですが、当初の目的は達成することができました。

 

まわりの方の協力のおかげで、無事1か月とプラスαの時間を利用し、400時間ほどの勉強時間を確保できました。

自分で一からアプリを作ったことよりも、開発で苦労したり、時間がかかるポイントや、難しいところなどを実際に体験できたことが何より重要でした。

 

全てわかったと申し上げるつもりはないですが、エンジニアの方とも会話ができるようになることは事業を進めていく上で必ずプラスになります。

その気になれば、1か月でアプリ開発ができるようになる!という広告も嘘ではなかったと思っています。

 

以上、ここまで読んでいただきありがとうございました。

 

あわせて読みたい

プログラミング学習のコストパフォーマンスはかなり良い!こんにちは!Jimmyです。プログラミング学習が、間もなく小学校でも導入されることをご存知の方も多いでしょう。プログラミングの知識やスキルが必須だと言われる昨今です。[…]

プログラミング 意味

 

 

LINE公式アカウントを設定しました!

今後こちらからの発信も計画しています。よろしければ友だち追加をお願いします!

友だち追加

 

今後のためのアンケートにご協力ください

 

いつもProject Jをご覧いただきありがとうございます。Jimmyです。

今後、より良い求められる記事を書くために、以下のアンケートにご協力をお願い致します。

また、別途オンラインサロンを企画しています。興味のある内容、こんなサロンがあったらおもしろそうだと思うものがあればチェック、もしくはご記入いただけますと幸いです。

 

ご協力いただきありがとうございます!!

プログラミング
最新情報をチェックしよう!