VancouverでITを勉強している人の過ごし方
始めに
まず、見た目に関してですが面倒なので毎回ですが端折っています。
読みにくいですがご了承下さい。
今回は僕が在学中の学校を卒業され現在バンクーバーでフロントエンジニアとして就労されているhidetoさんより留学エージェントFrog Advent Calender 2017に記事を書かないかと言うことで、本日12月24日に私から皆様へクリスマスギフトを。
ここ、数年クリスマスは1人か仕事でしたが無事今年も例年通りクリスマスを迎えられました。
2017年も残すところ役1週間となり、また今年も来年は来るのか、無事年を越せるのか不安にかられていますが、どうが無事に2018年が我々のところへやってきて2017年12月31日23時59分59秒から2018年1月1日0時0分0秒にすんなりといってくれれば嬉しいのですが、、、先行きが不安です。
さて、今回は恐らく僕のことを良くご存知ない方がご覧になると思いますので軽く自己紹介をした後本題である、今の学校に入学してからしてきた事、している事、しようとしている事について触れていきたいと思います。
ワシは誰や
まず、Bobと申します。
こちらは、高校1年からのあだ名でありましてそれ以来ずっとBobです。
高校の卒業式ずっと一緒に通学していた友達に、そう言えばお前本名なに?って聞かれたくらいBobが浸透しています。
もちろんこちらでは、イングリッシュネームとしてBobを使っていてバンクーバーで本名で呼ぶ人は居ません。
なので、以降気軽にBobと呼んで下さい。
本名でももちろん構いませんが、本人の反応が鈍い事があります。ご了承下さい。
ワシのバックグラウンド
中学受験→失敗→横浜市立の学校へ
高校受験→失敗→都内のスベり止め進学校へ
大学受験→失敗→全落オープン
浪人→失敗→失敗
大学受験→スベり止めまで全部スベった
大学入学→1年で辞める→失敗
基本的には失敗三昧です。
大学辞めて以降、少しフラフラしましたがその後2016年末までやっていた仕事はきっと大学を辞めていなければ出来なかっただろう珍しい仕事をしておりました。
そしてセブへ
2017年1月より英語を全く勉強した事のない若造による英語を勉強する為の留学がセブで3ヶ月ほど行われました。
大学受験してるんだから、基本的な事は知ってるんでしょと良く言われていましたが、現役時センター試験で110点獲得、よく年センター試験で70点を獲得出来ました!
センター試験の詳細をご存知ない方の為にサッと詳細話しますと、センター試験の英語は200点満点で、所謂、慶應、早稲田に行く人は180くらい欲しいところ。
ちなみに70点は全問題鉛筆転がしてやっても取れます。
という事で、私は数学しか武器がありませんでした。
むしろ、中学受験で培った計算力を始め、数学は勉強というよりは遊びみたいな時期もあったくらい好きでしたし、誰にも負けたくなかったです。
それが今で言うプログラミングにあたっております。
プログラミングに関しては大学在学中C言語を少し嚙ったくらいで大学入るまではソリティアする為にPC開くくらいでした。
数学がすきだったのもあってアルゴリズムを考えるのも、論理的な事を考えるのも好きな方です。
という事で、今の学校に入ってから本格的にプログラミングを勉強してるといっても過言です。
過言でした。
全く知らない人よりは少し知ってるくらいでした。
今現在私の夢は、もちろんバンクーバーでプログラマーになる事ではありますが、そこは最低限の目標です。
日本に帰る予定も帰りたいとも全く思っていません。
バンクーバーで数年働いて経験積んだのち、シリコンバレーでプログラマーとして働く事が夢です。
シリコンバレーでどんなものが作りたいとか今の現状で目標はありませんが、シリコンバレーでプログラマーになるという目標だけで頑張っております。
きっと、シリコンバレーで働くという事の難しさはあんまり分かってないんだと思います。
だから、逆に目標に出来ているというか。
小学生がメジャーリーガーになりたいって言っているようなもんです。
ただ、それよりもより具体的に自分なりにどうすれば行けるかを常に考えながら行動しているつもりです。
では、本題へ
まず、今の学校に入学してから半年が経ちました。
学期にして2学期分です。
まず、入学する前に自分の中で決めた事が幾つかかあるのでそれを紹介したいと思います。
- 授業には1番最初に入る。
- 宿題は誰よりも早く終わらせるように努める。
- ニュースをより読む。
という3つの事はまず徹底しようと決めました。
留学前、端から端まで留学について、カナダについてバンクーバーについて調べました。
最初の2つ、授業には1番最初に入るというのはそもそもギリギリに生活するのが嫌いな身であることも影響していますが、これは2つ目の宿題は誰よりも早く終わらせるように努めるとも割と関係しています。
客観的に見てボスに誰か紹介しろって言われた時に技術と英語は勿論の事、遅刻するやつよりかは毎日1番に顔出す奴のがマシだし、宿題を早く終わらせる奴なら仕事もちゃっちゃかこなしちゃってくれるかなと思わせる事ができちゃうかな、、、が作戦です。
基本的にやって何も得られなさそうな事はやりません。
時間が勿体無いですし。
ただ、これは現に日本で上手くいっているのでこっちでも続けてるだけです。
結果が出ようが出まいが見てる人は見てると思うし、そもそも自分がそうしていたいわけです。
もう一つのニュースを仕入れる事は、これも日本ではしていたのですが、昔よりも今現在のが、色々自分でチャレンジ出来る分余計に新しい情報を早く仕入れようとしています。
これは、面白いサービスやアイデアを少しでも早く思いつく為です。
1学期目は今の学校がどんなものなのか確かめながら2学期目の予習を少しずつやっていました。
特にめちゃくちゃ勉強した記憶はありませんが、楽しくて土日とかは基本家から出ずに昼過ぎからパソコンをカタカタしていた気がします。
2学期目に入り、僕の興味があるjavaとphpが始まり一段とやる気が入りました。
この学期中にjavaでandroid用のアプリを作ろうと思っていた時に知り合った学校の友達に同じくアプリを作ろうと、やるならリリースも目指そうという事で、色々と案を練り始めました。
基本的に僕の意見としては、今後更に別のアプリを作るとなった時に何にでも応用しやすいような機能を持ったアプリを製作したかったのですが、そうなるとやはりrealtime chatかなとなり、その後そもそも僕がLineには無くてこういう機能があればもっと利益出そうなのにって思っていたものを作ってみようという事になり10月の後半より、週4日の課題を気合いで平日で終わらせて週末はそのアプリに制作に時間を当ててきました。
ただ、平日に宿題を終わらせると言っても時間が余る時がたまにあった訳ですが、そういう時って結局昼寝しちゃうんですよね。
だから、もっと自分を忙しくさせようと。
と、ニュースを読んでいたら見つけたのがedxというアプリ。
(本当はAIに興味があるので正直UBCとか米の西海岸あたりの大学に行きたいのですが、、、、)
MITを始めハーバードなどの授業をオンラインで無料で受けれるというもので、宿題もテストも勿論ありますが優秀な成績を納めるとサーティフィケイトに成績優秀者と印されるとの事で、マイクロソフトも授業を提供しています。
という事で、コンピューターサイエンスでまずはかなり評判のいいcs50というハーバード大の授業です。
受けてみた感想としては、今まで人生で受講してきたどんな授業よりも抜群に分かりやすいです。
教授は無茶苦茶早口で呼吸してないくらい一方的に話すような人ですが、ほんとに端から端まで全て説明します。
ハーバード大の生徒が受講している授業をただ録画したもので、めちゃくちゃデカイ講義室なのですが、そのうち99%が知っている常識的なことも残りの1%の人が知らなかった時の為の説明をしてますし、何よりもプログラムが動くかどうかに視点は無く、いかにしてセンスあるコードを書くかという事を主観に教えてくれます。
今week3まで終わっていて自分のペースで1年以内に終わらせれば良いよ!みたいなコースです。
内容としては、C言語とpythonとsqlだったかな?を扱っています。
3学期とこれからについて
まずは、今やっているハーバード大のcs50を成績優秀者狙いで修了する事。
そして、なによりもアプリを完成させる事。
今の現状をもう一度詳しくお伝え致します。
ユーザーサインアップ画面でユーザーが入力した情報がデータベースに入る。
もちろんその際のメールアドレスが既に使われている場合弾くなどの基本的なサインアップ動作はできる。
ログインでユーザーが入力されたものをデータベース内のものと照合して一致しているかの確認も動作。
また一度ログインしてしまえば、ログアウトするまではログイン状態が保持されていて、アプリを立ち上げるとメインページに飛ぶ。
続いてメインページで僕らが欲しいファンクションの一部と、メインのメニューバー、所謂チャット画面、フレンドリスト、我々の場合はさらにメインページがありますが、それとは別にハンバーガーメニューがあり、ログアウトとユーザー個人ページの編集があり、各々動作しています。
フレンドリストに関しては今現段階で、フレンド申請制にしています。
Lineのように一方がadd押したら友達リストに追加ではなく、一方が申請したものを、もう一方は受理か拒否か選ぶ事が出来るようになっています。
また、フレンドになった後フレンドを解除する事が出来ますが、この後システムを変えるかもしれません。
もちろんそれぞれのフレンドステータスもデータベースに入るようになっています。
肝心のチャットですが、一応動きます。
さて、我々が抱えている問題点は、まずはチャット画面です。
実機とエミュレーターというPCないのバーチャル携帯で両方がチャット画面を開いたままやりとりすると強制終了される。
また、さまざまな場面でアプリ自体が落ちます。
ユーザーがログイン状態の時はオンラインと表示されるのですが、チャット画面を開くとオフラインに変わってしまう現象。
また、それぞれの細かいUI。
既にアプリ名もロゴも決まっていて、ログイン画面の背景なども既に手元にあるのですが、裏が上手く動いてないので、、、。
私が、日本に帰る直前アプリについて会議したのですが、結果androidとiosを同時にやっていこうかという流れになっています。
全員でベストの道を選びながらやっているので、変更する場合もあるかもしれませんが。
swift未経験ですが、色々参考にしながら本気で頑張りたいと思っています。
そもそもios遣いの僕が欲しいアプリなのにandroidだけしかやっていなかったですからね。
android終わったら作る気でしたが、早く欲しいし、使ってほしいので。
細かい事はまだ言えませんが、思った通りのものができればそれなりにいくんじゃないかなって自信はあります。
広告とかうつお金もないので最初は知り合いに使ってもらいつつ、問題点を直していく事にしますが、アプリ自体は良いものだと思っていますので、いち早くリリース出来るように頑張っていきます。
次の学期は、CMS、pythonとperlになります。
AIに興味がある以上pythonは極めようと思っていますし、アプリを2月中に出して落ち着かせられればpythonでまた新たなものを作ろうと思っています。
最初はポートフォリオに載せられれば良いやと思っていましたが、色んな人に使ってもらえるようなものを作りたいなと思うようになってきました。
卒業するまでには、3つくらいプロジェクトを持って卒業できればと思います。
せめて、このアプリだけでもマネタイズしっかりして裏も気合い入れてやればある程度結果は出るはずなので。
それでは、長くなりましたが以上で今回の私の記事終わります。
なにか、こうした方が良いなどアドバイス、またはそれ以外の意見、もしあれば
bbbobbb7777@gmail.com
どちらでも構いません。
ご連絡頂ければ幸いです!
それでは、良いお年を!
Bob