【第26回】独学プログラマー大学生が神戸市外大に?!吉村舜也さんにインタビュー🎤✨

今回インタビューしたのは、中国学科4年(6回生)吉村舜也さん。
実は吉村さん、各種スクールに通うことなく全て独学でプログラミングを習得されたというスゴい先輩…!

ゆい
ゆい
そもそも「プログラミング」とはスマホや家電製品、自動車などの中にあるコンピュータを動かすための指示を出すこと。ちょっと興味はあるけれど、やっぱり無理かも、と結局諦めてしまう読者の方も多いのではないでしょうか?

実際のプログラミング学習ってどこから手をつければ?費用はどのくらい?ド文系だけど理解できそう?等々、大学生の今、知っておきたいプログラミングのあれこれを吉村先輩に教えていただきました!

ページコンテンツ

吉村さんってこんな人!

吉村さんどういった経緯やタイミングでプログラミングしてみよう!と思い立ったんですか?

3回生の時に休学をして、アイルランドのダブリンでワーホリをしていたのですが、そこのWeb系企業で半年ほど働かせてもらい、初めてプログラミングに触れました。

元々ワーホリでは、英語だけでなく将来役に立つスキルを手に入れたい!クリエイティブなことがしたい!と思っていたので、それに合致した良い経験だったと思います。

プログラミングで学んでいるのはどんな言語/フレームワーク?

Golang, Typescript, Vue.js (Webアプリの開発で使用)

GAS, Python (業務効率化で使用)

Swift, ReactNative (ネイティブアプリの開発で使用)

C, C++ (アルゴリズムの勉強で使用)

の言語を使用しています!

現在に至るまで、プログラミングの知識をどのようにつかって活動されているんですか?

現在は、角川ドワンゴN高等学校でプログラミングTAとしてインターンをしており、そこでプログラミングの授業を行ったり、学園で使うアプリ・システムを開発したりしています。また、業務システムの開発を請け負って、お仕事したりもしています。


ゆい
ゆい
吉村さんの独学プログラミングライフの概観を掴んでいただけたでしょうか?

次は事前にKCUFSプラス公式インスタグラムで募集をかけ、皆さんが送ってくださった多くの質問の中から吉村さんにお答えいただいたものをご紹介します!

読者からの質問コーナー

スーパー玉出さん(英米学科2年)
スーパー玉出さん(英米学科2年)
プログラミングの勉強を始める前、PCスキルはどのくらいでしたか?

吉村さん
吉村さん
大学に入学してからもWordExcelの操作が人並みにできる程度だったと思います。大学では情報科学概論の授業をとっていたので、そこでPC関連の基本的な知識は得ていました。


しゅうまいさん(中国学科?年)
しゅうまいさん(中国学科?年)
勉強を始める際に揃えたグッズ(ガジェット)などあれば教えていただきたいです。

吉村さん
吉村さん
MacBook Air (15万円くらい。24ヶ月分割で。Apple公式でショッピングする場合に、一括払いと同じ値段で買える方法があったのでそれを活用。)を買いました。

吉村さんの経験談+アドバイス

プログラミングで一番最初の壁が、開発環境を整えること。この部分に関して、初心者向けの記事はMacbook向けのものが多いんです。「MacBookで言語をローカル環境に持っていく方法」などググればすぐにわかるっていうのが決め手になりました。メモリは8GBではなく16GBと余裕を持たせました。逆にストレージやCPUはそこまでグレードを上げていません。

メモリ容量の大小は勉強机のサイズみたいなもの。(一方でストレージ容量の大小はひきだしのサイズみたいな。作ったファイルをどのくらい保存しておけるか、って感じ。)メモリの大きさによって同時にどれだけサクサク作業ができるかという点で使い勝手が全然違ってくるみたいです。プログラミングの作業をする場合、同時にいくつもタブを開くことがほとんどなのでPC選びの時はここを重視。そのくらいあれば、致命的に作業しにくいことはないと思います。


やまちゃんさん(第二部英米学科2年)他
やまちゃんさん(第二部英米学科2年)他
プログラミング学習のやる気維持が難しいです。吉村さんのモチベーションの保ち方が知りたいです。

吉村さん
吉村さん

プログラミング友達をつくる。これでモチベーションが保てています。ひとりで勉強をやっていても飽きてしまうことってあると思うんですよね。

そこで僕はGitHub(ここから吉村さんのページををみてみよう)を活用しています。(GitHubとはプログラミングのコードを一般に公開でき、保存・共有が容易に可能になるクラウドサービス。いわばエンジニアのSNS。)

吉村さん
吉村さん
GitHubで登録内容を変更・追加することを「push」と呼び、その更新頻度も共有できるようになっているため、プログラミングの勉強をサボっていると友達にバレてしまうんです。友達の頑張りを見てプログラミング学習に対する意識が高まるだけじゃなくって、自分も他人から見られてると思ったら、「勉強やらないとな」という気持ちに自ずとなりますね。

これがGitHub!クリックしてみてね GitHubでどのくらいpushをしているのかが分かるカレンダー。緑で色付けされている日は、pushを行った日で、色が濃いほどpush数が多い。(画像が気になる読者は上の青字部分をクリックしてみてね。本記事内の他画像も同様。:編集ゆい)

ピエス神戸さん(国際関係学科3年)他
ピエス神戸さん(国際関係学科3年)他
吉村さん流の勉強の方法を教えてください!

吉村さん
吉村さん

勉強方法は主に3つで、

1.書籍やUdemyで全体像を体系的に学ぶ。(Udemyはセール期間だとクオリティの高い講座がとても安く購入できるのでオススメです!)

2.エラーが出たり、分からないことがあればプログラミング関係の記事が載っているQiitaや、公式リファレンスを読んで解決する。

3.実際に自分でアプリを作ったり、業務で使用して知識を定着させる。

というような勉強フローをとっています。

吉村さんの経験談+アドバイス

最初の言語は必然的に時間がかかりますが、言語どうし似通っている部分も多いため、初めの言語をマスターした後はより短期間で1つの言語を習得できるかと思います。僕が最初に学んだのがRubyという言語。これは23ヶ月くらいかかってようやくアプリケーションを作れるレベルになりました(休学中、一日をしっかりとプログラミングの勉強に充てていた)。そこから新たに言語を学ぶときは、規則性や共通点がわかってくるので1週間程度でマスターできるようになりました。

また、Udemyの講座で、検索上位に出てくるものはだいたいクオリティが高いのでそれを受けてみることをおすすめします。YouTubeも使ってはいますが、やはり無料の動画では基本的な説明のみで物足りない部分も…。基礎的な部分は無料動画でもいいでしょうが、そこから先の発展的な内容を知りたい場合だと大体は有料動画で学んでいます

書籍・講座に関してはトータル10万円ほど費やしたという吉村さん。

手探りで始めたので書籍の中には内容の重複している部分も多く、ある程度道筋がわかっている場合はその半額くらいで済むのでは?とのこと。

そんな吉村さんが実際に使用されていた書籍・講座の中からいくつかピックアップしていただきました!

吉村さんの選ぶ書籍・講座まとめ
プログラミングは、内容が多岐に渡り、レベルや使う言語によっておすすめの教材は変わってくるので一概にこれがいいとは言い切れません。そのため、基本的には、Qiita(プログラミング関連の記事サイト)、公式リファレンス、Udemy(個人的にお勧めの動画サイトプラットフォーム)GitHub(オープンソースで世界中のコードが閲覧でき、言語検索もできるので、自分の言語で検索をかけて他の人がどのようなコードを書いているのか見ることができる)などを駆使して、自分の状況に合わせて情報収集するのが一番いいと思います。
ただ、下記ではどの言語を使っていても必要であろう知識を内容とレベル別でまとめてみました。(僕が使った書籍というだけで、他と比べて秀でているか検証した訳ではないので、あくまでも参考程度にお願いします…)
WEB開発
【初心者の人向け】
”Progate“
Web開発に必要な知識の基礎を体系的に学ぶことができる。開発環境の構築の必要なく、ゲーム形式で行えるため、プログラミング初心者は大体の人がやっているのでは??
”Railsチュートリアル
Ruby on RailsというRuby言語のフレームワークの学習サイト。14章を通して、アプリケーションを作成しながら、Web開発のノウハウを学んでいく。TDD(テスト駆動開発)という開発手法を採用しており、初心者からするとかなり難しく挫折不可避なので、Progateなどで知識をつけてから取り組むのがおすすめ。
『【JavaScript超入門講座】わずか50分で知識ゼロから基礎をマスター!
『【JavaScript超入門講座】基礎文法だけでクイズゲームのアプリを開発!
2時間程度でJavascriptの基礎文法から、クイズゲームを作るレベルまで勉強可能。説明が分かりやすく、予備知識を必要としないため、完全初心者でも取り組み可能でおすすめ
『はじめてのSQL ・データ分析入門データベースのデータをビジネスパーソンが現場で活用するためのSQL初心者向けコース』(Udemy講座)
データベースを操作する言語であるSQLを1から学ぶことができる。とても分かりやすくおすすめ。
【ある程度知識がある人向け】
『【世界で7万人が受講】Understanding TypeScript 日本語版 (Udemy講座)
JavascriptのスーパーセットであるTypescriptの講座。より実務に近いレベルでコードを書くための知識が身に付く。講座内では、Node.js、ReactといったJS関連の技術を一緒に学べるのでお得。
・Foucher, Trevor & 須藤 功平. (2012). 『リーダブルコードより良いコードを書くためのシンプルで実践的なテクニック』
他人から見て分かりやすくスケーラブルな、いわゆる綺麗なコードを書くための書籍
・Karwin, Bill & 和田 卓人. (2013). SQLアンチパターン』
SQL(データベースを操作する言語)をアンチパターンのコードを書いていきながら、避けるべき理由を理解できる。


iOSアプリ
『【iOS14対応】未経験者がiPhoneアプリ開発者になるための全て』 iOS Boot Camp (Udemy講座)

Swiftを使って、複数のアプリケーションを作成していき、その過程で知識やコツを掴んでいく。レベルが高いが、全ての講座を終えた頃にはSwiftで大体のアプリはつくれるようになっている。


アルゴリズム
『現役シリコンバレーエンジニアが教えるアルゴリズム・データ構造・コーディングテスト入門 (Udemy講座)/
Python3を使って、アルゴリズムの基礎を学んでいく。コードテストで出題されるような問題を取り扱うため実用性が高く、アルゴリズムを学ぶことによってWeb開発やネイティブアプリ開発などにも応用できる


資格関連
・丸山 紀代. (2021).『改訂版 この1冊で合格! 丸山紀代のITパスポート テキスト&問題集』
・きたみ りゅうじ. (2019).『キタミ式イラストIT 基本情報技術者』
・山下 光洋. (2019).AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー』
・中島 能和. (2019).Linux教科書 LPICレベル(n)


Banana Monarchy さん(イスパニア学科3年)
Banana Monarchy さん(イスパニア学科3年)
Progate」を一通り終えてから何をすれば良いのかわかりません。吉村さんはどのような過程を経られたのですか?

注)Progateとは、初心者向けのプログラミング学習サイトです。 参考サイトはこちら

吉村さん
吉村さん

プログラミングと言っても幅が広いので何がやりたいかによって学習の進め方はそれぞれ異なると思うのですが、一応webアプリを作ることを目標にされていると仮定します。Progeteは基礎的な知識を身につける場所であって、これを勉強するだけでアプリを自分でつくるのは難しいのかも。

吉村さん
吉村さん
僕だったらProgateは①基礎知識の学習のみに使用して、次の段階として②Udemyの発展的な内容の講座や書籍から学んで、そして③講座を見ずに自分で工夫してアプリをつくってみると思います。正直エラーはめちゃくちゃするし最初は時間もかかるでしょうが、インプットだけしていても何もつくれるようにはならないのでどこかのタイミングでアウトプットに切り替えるのが大切かなと思います。


すじこさん(英米学科1年)
すじこさん(英米学科1年)
どんなものをつくった・つくっているのか興味があります。また、どのくらいの時間を作業に費やされましたか?

吉村さん
吉村さん

初期はホームページを中心に制作していました。例えば、神戸大学大学院のある研究室のホームページなども制作しています。また、システム的なものにも興味が湧き始めてからは、売上や在庫を確認・分析できる仕組みiOS版の簡易地図アプリ*、インターン(ドワンゴN高校)先の生徒のためのフリー素材を共有して自由に使用できるサイト**などをつくってみたり。個人的にYouTubeの動画リンクを打ち込むとその動画に寄せられた海外からのコメントの割合を計算できるシステム***なんかも趣味で制作しました。

《Made by 吉村さんのシステム写真展》

注)今回、wordpressの都合で白い長方形部分or青字部分をクリックして閲覧という苦肉の策をとっております。お手数をおかけいたします…。

特製・簡易地図アプリ!クリックしてみてね*iOS用の簡易地図アプリ。
検索したポイントをズームして表示します。また、地図上地点から緯度と経度を検索、またその逆も出来ます。
フリー素材サイトまで…!クリックしてみてね**フリー素材サイト。アップロード、ダウンロードが自由に行えます。また、アップロードの際には、ハッシュタグをつけることができ、そのハッシュタグをキーワードに検索することができます。アップロードした画像はアプリのパフォーマンスを考慮して、クラウド(AWS-S3)に自動で保存されます。
趣味でつくっちゃったアプリがこちら!クリックしてみてね*** YouTubeの特定の動画について、海外からのコメントの割合を確認するアプリ。リンクから、一意のIDを取得して、検索にかけます。また、調べたものはデータベースに保存して、左横にランキング順に並べられます。個人的な趣味で作成したものなので、UIはかなりシンプル、とのこと。

 

吉村さんの経験談

プログラミングをやっていると「この作業を効率化したい」っていう思いでシステム作りに取り組むことも多いんです。ただ、それが本末転倒になる場合も…。30分かかる作業を3秒でやりたい、でもそのシステムを作るのに3時間かかっちゃうというような(笑)

作業時間に関しては、システムの大きさや言語の慣れによって変動します。短くて23でつくれるものもあれば12ヶ月かかる場合も。趣味のものであればある程度のバグがみられても妥協できますが、請負のお仕事のものであれば機能の些細な部分まで突き詰めていくことになり、それだけに時間はかなり費やしますね…。


Nellさん(?学科?年)
Nellさん(?学科?年)
プログラミングのスキルを活かして収入は得られていますか?ぶっちゃけ、おいくらくらいですか、、、?

それは正直私も気になりました。でもこれ、聞いちゃって大丈夫でしょうか?
ゆい
ゆい

吉村さん
吉村さん

あ、差し支えありませんよ(笑)インターン先ではプログラミングのスキルを教えているのですが、時給は1500〜1600円ほど。(塾講師よりも若干高いくらい?)請負でお仕事をする時は、最長で2ヶ月かかる場合もありますが、10〜20万円ほどの収入があります。

インタビュー班からの3つの質問

1.プログラミングって面白い!と感じるのはどんな部分?

何事も興味がないと長くは続かないと思うのですが、吉村さんにとってのプログラミングの魅力というのはどういったところに?
ゆい
ゆい

吉村さん
吉村さん
0から何かをつくり出す、クリエイティブな経験ができること。そしてコードが自分の想像通りに作動する瞬間に味わう達成感ですかね。例えば、テストの際に、エラーがひとつも出ずにパスしたときの嬉しさといったら…!作業に2、3日かけてようやく完了した時はなおさらです。

新たなモノを創作・構築するワクワク感と、やりがいと達成感を与えてくれるところということですね!
ゆい
ゆい

2.プログラミングってどんな人が向いていると思いますか?

吉村さん
吉村さん
外大生はかなり向いているんじゃないでしょうか。

えっ?それはまたどうしてでしょう?
ゆい
ゆい

吉村さん
吉村さん
プログラミングって結局は言語で、イメージとしては覚えなきゃいけない単語がめちゃくちゃ少ない代わりに文法がめちゃくちゃ難しくなった言語、っていう。ただし単語帳と文法帳はいつでもカンニング可能。また、新しい言語を学びたいとき、エラーが出た際の対処法を知りたい時、記事やレファレンス、日本語よりも英語の記事が多い場合も。そういう時に英語ってやはりとても役に立つし語学に堪能な外大生は有利かなと思いますね。

そうは言ってもプログラミングといえば理系っぽいイメージがどうしてもありました…。
ゆい
ゆい

吉村さん
吉村さん
ものにはよるんですが、実はwebアプリやスマホアプリづくりは四則演算(足し算・引き算・掛け算・割り算)さえ理解していれば問題ないものもけっこう多かったりするんです

吉村さん
吉村さん
一方でPythonを使ったデータ分析や機械学習をしようってなったら数学が必要。理系寄りかつ割とハイレベルなものになってくるので個人でできるものではなくて。大学生のうちから一人でプログラミングを使ってお金稼ぎたいのであれば、文系でも無理なくできる分野の方がお金を稼ぎやすいとは思います。

3.今後どんなふうにプログラミングのスキルを活かしていきたいですか?

最後の質問です。この春(2022年3月)外大をご卒業なさるということですが、プログラミングを学んだ吉村さんのこれから先の展望・意気込みなどあればぜひお聞きしたいです。
ゆい
ゆい

吉村さん
吉村さん
現実的な方からいくと、4月からエンジニアとして働くのですが、さらにシステム系の言語を勉強してしっかりとアウトプットできたらなぁ…と。

吉村さん
吉村さん

他方では、機械学習で本を書く仕組みをつくって実際に執筆させてみたくて。僕は小説が好きで、読みだけじゃなく実際に文章を書いてみたりもしているんです。今度は機械にいろんな人の本を読ませ、学習させることによって、同じような文体を感じさせるお話が生み出せたらなぁ…と。

その発想はありませんでした…読んでみたすぎる…
ゆい
ゆい

吉村さん
吉村さん
僕、村上春樹さんの作品が好きなんですけど、彼の小説って、二つの話が交互に行き来する系のものが多いんです。ああいうふうに2つの世界を書きたいのですが、一つのパートは人間が書いて、もう一つのパートは機械学習に書かせて、っていうふうにして作品を編んでいけたら面白いんじゃないかなと考えています。

吉村さん
吉村さん

人間である僕がAIについての物語を、AIが僕たち人間についての物語を綴ることで、人間とは何かっていうことが問えそうだなぁと。まだまだ構想の段階ではありますが、叶えたい夢のひとつです!

めちゃくちゃ興味深い…!そんなふうに日常により便利さや愉しさを与えてくれるスキルって、本当に素敵です!

吉村さん、ありがとうございました!

ゆい
ゆい

吉村さん
吉村さん
ありがとうございました…!


さて、いかがでしたか?プログラミングの可能性に取材班もときめきが止まらず…!「外大生はプログラミング向き」の言葉を信じて、皆さんも新たな世界に足を踏み込んでみるのも大アリかもしれませんね。ではみなさん、満足のいく学期間休業をお過ごしください。

同じライターの書いた記事を読む

関連記事

  1. 【第31回】英語でSNS発信するAzzy & May さんにインタビュー🎤✨

  2. 【第68回】大学コンソーシアムで国際交流🤝月山さんにインタビュー🎤✨

  3. 【第57回】京都発バンドLewis Ludensで活動中の藤田空知さんにインタビュー🎤✨

  4. 【第25回】1回生にしてマーケティングの全国大会決勝へ!国際関係学科のまゆさんにインタビュー🎤✨

  5. 【第58回】ロマニ語の研究や日本文化をPR🌎角悠介さんインタビュー🎤✨

  6. 【第38回】外大祭実行委員長!!西海 泉澄さんにインタビュー🎤✨ part 1

カテゴリー