0から9まで頑張るエンジニアのメモ書き

ロボット君、これからよろしくお願いします

プログラミング学習記

独学でプログラミングを始め、最初の1年間の記録

投稿日:2018年12月3日 更新日:

訪問ありがとうございます。12月に入り、僕が去年本格的にプログラミングを始めてからもう少しで1年が経とうとしているので、自分への振り返りの意味も込めて文章に書き出していこうと思います。

 

この一年間の大まかな流れ

 

去年、大学二年生の夏頃からプログラムを書いてみようと思い始め、時間のあるときにローカルで簡単なウェブページを作ってみたり、Pythonをかいてみたりはしていました。

それから数ヶ月経ち、自分がAndroidユーザーで、自分でアプリを作ってスマホの中で動かせたら面白そう!と思い、Googleで「Android アプリ開発 初心者」と検索したことが本格的にプログラミングをしようと思ったきっかけでした。

そこからアプリ開発の面白さにハマり、一日何時間もアプリ開発に費やすようになりました。

そしてGoogle Play にデベロッパーとして登録し、登録料として25ドル支払って、アプリを公開することを目標に勉強を進めました。

とは言いつつも大学生という立場なので、毎日大学に行きつつバイトもして、開発も同時進行で進めていき、なんとか約1ヶ月半で最初のアプリを公開することができました。

 

 

そのアプリは1年も経たないうちに100ダウンロード以上して頂いていて、初めてのアプリにもかかわらずここまで伸びたのは、アプリのジャンルが良かったのか、他サイトで宣伝したのが効いたのか、ただ運が良かったのか、とにかくとても嬉しかったです。

それから、買い物メモのアプリ、タイマーアプリ、画像ギャラリーのアプリを1つずつ公開していき、僕の開発者ページには4つのアプリが並ぶことになりました笑

今は忙しくて次のアプリの開発には取り掛かれていませんが、次はさらにユニークで機能的なアプリを出してみたいと思っています。

ここまでは個人でのAndroidアプリの開発をどうやって進めてきたか、ということについて書きましたが、これ以外にも色々なことにチャレンジできた一年間でした。

 

AndroidだけでなくiOSアプリにも取り組んでみたり(Macを持っていなかったので、アプリ開発のために買いました。)、HTML・CSSのスキルを高めたり、Pythonでスクレイピングや機械学習にも手を付けてみました。Pythonでの機械学習ではBeautiful Soupを用いて「あいうえお」の手書き文字を分類したり、iPhoneとAndroidの画像を学習させて、「これはiPhone」「これはAndroid」といった簡単な分類に挑戦してみました。

 

 

こうして、プログラミングを本やネットの情報をもとに勉強していくにつれて、さらに時間をかけて本格的に勉強していきたいという気持ちが高まりつつありました。それを実現するためには今までの生活を変える必要があり、大学を一年間休学するという決断をしました。

休学することを決めてからは、学生向けのイベントに足を運んでみたり、ハッカソンにも出てみたり、と今までとは違った体験が増えてきているような気がします。そんな中、あるイベントでドローン関係のスタートアップでインターンをしている大学生と会うことができ、自分のプログラミングの技術を使って、もっと大きな成果物を残したいという思いを伝えたところ、エンジニアとしてジョインすることが出来ました。自分にとってはかなり大きなイベントでした。

今はインターンをしつつ、個人的にiOSの勉強を進めていたり、プログラミングで仕事をいただけたり、といった状況で日々頑張っています。

 

プログラミングを続けていて感じたこと

 

1年間もプログラミングを続けていると、それまで自分が知らなかったプログラミングの楽しさや難しさが少しずつ分かってきました。

1年前の自分は、プログラミングの勉強を進めていくと、どんどんプログラムを速く書けるようになり、自分の思い通りのものを時間内に作れるようになると思っていました。

しかし、実際にはそんなに甘い物でもなく、学習を進めていくうちにさらに難解なメソッドや定型文のようなものを知らないといけない、ということが多く、なかなか自分の見込み以上に時間がかかってしまうという難しさを知りました。

それだけではなく、Androidのアプリを作ってPlayストアに上げるところまでは出来たものの、ユーザーにアプリの情報が届いていかない、アプリのページに来てもらっても、ダウンロードはしてくれない、といった問題に直面し、そもそも自分が頑張って書いたプログラムが動いているところを見てもらえるというところまでいかない、という悔しさを感じることもありました。

 

一方で、アプリを作る上でこの機能は入れておきたい!と思ったら、当然その機能を実現するためのバック(処理側)とフロント(ビュー側)のプログラムを書く必要があるのですが、1日かけてようやくその機能が動くようになった時の達成感はやめられません…。笑

少しずつですが、自分の思い通りのアプリを作れるようになっていく、そんな自分の進歩をプログラミングを通して感じることが出来ました。

プログラミングでのclassや、継承、メソッドの仮引数と戻り値、グローバル変数とローカル変数の違い、別スレッド処理、ファイルの読み書きなど、1年前知らなかったことを一つずつ身に付けていくことで、思い通りのプログラムを書けるようになってきました。

プログラムを自分で書けると、自分がやりたいことを実現するためのツールを、プログラムを書くことでその場で作ることができるので、かなりフットワークが軽くなるはずです。

 

次の一年間の目標

 

今日までの一年間はプログラミングの知識をインプットすることに大部分の時間を費やして来ました。

しかし、次の一年間は違うことをします。明日からの一年間は自分のプログラミングの技術をどう使っていくか、ということをたくさん考えていくつもりです。

今までプログラミングをしてきて経験したこと、思ったことを種にして、「こんなものあったらいいな」とか「これで困ってるけど解決方法がわからない」といったところに注目して、本当の意味で役に立つものを作りたいです。

 

そして、残りの大学生としての時間を大事に使っていきたいので、ずっとパソコンに向き合うのではなく、もっと視野を広げて、今しか出来ないことにチャレンジしていこうと思っています。

長くなってしまいましたが、以上今の自分が思っていることでした。最後まで読んでいただきありがとうございます。次の記事も近々書きます。

-プログラミング学習記

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

僕がプログラミングを始めた理由(2018-04 ver.)

こんにちは!訪問ありがとうございます。 情報発信できる場を増やし、自分の考えをより正確に伝えることができたら良いと思い、ブログを始めることにしました。 今回は、初めての記事ということで僕がプログラミン …