2021年転職と学業と育児の振り返り
2021年もう終わっちゃいましたが、転職と学業と子供のことについて書きます。
TL;DR
- 転職した。
- Ubieに入社して半年経った(別記事)
- UoPeopleでは21単位取れた。
- 子供3歳。今が一番かわいい。
転職
やはり2021年の一番のイベントは転職だった。
2月頃から本格的に転職活動を始め、3月末で終了した。
9社応募して結構大変だったので少し詳しく記録を書いておくことにする。
応募した会社
- エンジニアとして、より成長できそうな会社
- 情報発信を積極的にしていたりとカルチャーが魅力的な会社
- 海外事業をしている、もしくは英語を使うなど職場環境がグローバルな会社
- リモートワークがメインなど子育てしながらでも働きやすい環境
をピックアップして9社ほど応募した。
やったこと
ポートフォリオの作成
一からデザインしたい気持ちもあったが無限に時間かかりそうなのでテンプレートを探しアレンジした。
ネット上で配布されているテンプレートはjQuery+Bootstrapのものが多く、さすがにフロントエンドエンジニアとしてjQueryのポートフォリオを提出するのはマイナスになりそうと思い、Nuxt.jsでほぼ作り直した。
職務経歴書(日英)の作成
職務経歴書をアップデートした。
また、英語でのレジュメ(職務経歴書)の提出を求められたのが1社あった。
UoPeopleのキャリアコースを受講した際、レジュメを作成してクラスメイト同士でレビューするという課題があり、そこで用意したものがあったのであまり時間をかけずにすんだ。
フォーマットについては、その授業で紹介されていた、IT系職種のレジュメの各種サンプルが揃っているサイトを参考にした。
技術課題
数ページのフルスタックWebアプリケーションを作るという技術課題がある企業がいくつかあった。
設計から画面構成の検討、技術選定、バックエンドの実装、フロントエンドの実装、テストコードの実装、ドキュメントの作成までのセットを2社やった。
フルタイムで働きながら転職活動をしていたので作業時間を確保するのがめちゃきつかった。
バックエンドど素人で、なにかと調べながら進めてたので余計に時間がかかっていたと思う。
けど一人でバックエンド含めてアプリケーションを作るという経験はかなり久しぶりだったのでとても良い経験になった。
1つはNext.js+Firebase、もうひとつはフルスタックTypeScriptフレームワークのfrourioでNext.js+Prisma+fastify+MySQLという構成にしたが、frourioの開発体験がめちゃよかったのでまた使いたい。
英語面接の準備
事前のカジュアル面談などで「英語での面接があるからよろしく!」と教えてくださったところが何社かあったので、震えながら準備をした。
(事前に知らされずにサプライズで英語だったところもあった)
自分はアメリカのオンライン大学UoPeopleに入学できる程度の読み書きの英語力 はあるが、大学の授業はすべて非同期でしゃべる機会は一切ないし、英語の勉強もしばらくサボっていたのでリスニング・スピーキング力が壊滅的だった。
オンライン英会話で、エンジニアリングのバックグラウンドがありそうな先生を選択して面接のロールプレイをお願いしたり、毎日スピークバディを使ったりして練習をした。
短い期間だったので焼け石に水だったと思うが、少なくとも当日何も言葉が出てこず詰まる、ということは防げた。
「面接官が英語話者なので英語で質問するけど、日本語もある程度わかるから日本語を使ってもOKだよ」
という企業も多かったので、技術的な質問など込み入った話題では日本語を使わせてもらうこともあった。
コーディングチャレンジ対策
オンラインコーディングテストやライブコーディングがある会社がいくつかあった。
久しぶりにAtCoderなどので競技プログラミングの典型問題を解いて肩慣らしをしたが、全然数はこなせなかったため
「あ!これ進研ゼミでやった問題だ!」
なんてことはなかった…。
アルゴリズム力ではなく、ライブラリなしでフロントエンドのUIを実装するタイプのテストもあり、フロントエンドエンジニアのスクリーニングとしていい問題だな〜と思った。
結果
- カジュアル面談 たくさん
- 応募 9社
- 内定 6社
- お祈り 3社
気になっていた会社さんにたくさんお話聞かせてもらって悔いのない転職活動ができた。
会っていただいた企業様には本当に感謝しています。
転職後の仕事
迷った末Ubie Discoveryにジョインすることにした。
入社エントリはこちら。
上の記事に書いてあるように「楽しい・快適・働きやすい環境で最高です」っていうのは入社半年経った今もそう。
実際どんな仕事をしたのっていうのをちゃんと書こうと思ったけど書いてたら4000字くらいになりそうだったので別の記事を追って公開することにする。
学業
オンライン大学UoPeopleに入学してもうすぐ2年経とうとしている。
この記事はちょうど1年くらい前に書いたもの。
2021年は以下のコースの単位が取得できた。
(リンクがあるものをクリックするとコース感想記事に飛びます)
- CS1102 Programming1
- MATH1302 Discrete Mathematics
- MATH1280 Introduction to Statistics
- CS1103 Programming2
- CS2203 Databases
- CS3303 Data Structures
- CS4402 Comparative Programming Languages
これまでのUoPeople関連の記事はこちら
さすがに転職活動中は休学したけど、それ以外の期間では細々と履修し結果、21単位が取れた。
今履修中のComputer Systemsも来週の最終試験をすっぽかさなければ単位は取れそう。
これで取得した累計単位は78/120。
そしてCGPAは今の所3.96/4.00なので褒めてください。
大学でのコンピューターサイエンスの学習って必要だった?
「ソフトウェアエンジニアにコンピューターサイエンスや数学の知識は必要か?」みたいな話題がネット上で定期的に炎上するけど、個人的にはUoPeopleで学習を始めて本当によかったと思っている。
これは自分が、WEBフロントエンドという特定の領域でこれまで長く仕事をしていて他の領域の業務経験があまりなかったから、という理由もあると思うけど、自分がやっている領域が全体の中でどこに位置するのか、自分が触っている技術が歴史の中でどのような変化をたどってきたのかをしっかり知ることで世界の見方が変わってくる気がする。
転職してフロントエンドエンジニアからソフトウェアエンジニアになって、バックエンドもフロントエンドも触ってデプロイもするようになってそれは余計に感じる。
新しい領域(私の場合バックエンドやインフラ領域)について取り組む際、基礎を知らないまま場当たり的に学ぶのと、知った上で取り組むのではキャッチアップ速度も理解度も全然違うんじゃないかな。
(自分は他の人と比べるとキャッチアップの速度は遅いのですが、自分の中で比較したときの話です、念の為…)
業務に役立ったコース
それに業務に役立つコースもたくさんあった。
データベースのコースを取っていたおかげで、転職後にクエリ書いたりDBいじるときにびびらずにすんだし
Programming1, 2のコースでJavaを嫌ってほど書かされたおかげでKotlinも抵抗なく書けるし
プログラミング言語比較論で命令型言語と非命令型の比較をやったおかげで、触ったことない言語を学ぶ時も「おなじ命令型でスクリプト言語だから大丈夫やろ」みたいに心理的ハードルが低くなりそうだし
同じくプログラミング言語比較論で関数型について知ったおかげでReactの設計思想も腹落ちするし
データ構造のコースは、抽象構文木(AST)を扱ってEslintのルール作ったりBabelのplugin作ったりするときに役立ちそうだし
TypeScriptの型パズルは完全に集合論なので離散数学でちゃんと理解ができたし
統計学のコースを取ったおかげで、社内のデータアナリストの話が1ミリだけ理解できるし
体系的に学んだことで、connecting dotsがあらゆる場面で体感できている。
そういえばこんな資料も今年書いてました。
「業務に役立つ」とかいって卑近なことしか書けてないので、卒業する頃にはもっと説得力のある例が出せたらいいな…。
アウトプットとフィードバックの大切さ
昔々に基本情報技術者試験や応用情報技術者試験の勉強はしていて、情報技術者としての最低限の俯瞰的な知識は持っていたつもりだったけど、
膨大な範囲を短期間で学習したせいかよく理解もせずに暗記で覚えてしまっていた部分もあったし、選択問題で正解するだけではなく人に説明できるほどそのトピックを理解できていたかというかなり怪しかった。
UoPeopleだと、
アカデミックな文献を読んだあと自分の言葉で概念を説明して、
それがクラスメイトにレビューされて、
プログラミング課題もこなして、
演習問題を解いてっていうのを毎週やりつつ、
更に中間試験と最終試験をパスして、
というプロセスを踏んでようやく単位がゲットできるので本当にありがたいなと思う。
自分の場合は、インプットだけでなくアウトプットとフィードバックがないと物事の理解ができないと本当に感じている。
育児
娘は3歳になりました(今年4歳)。
平易な言葉で喋ればなんの問題もなく会話のキャッチボールができるし(舌っ足らずで何言ってるかわからないときもあるが)
以前言った言葉やお約束をちゃんと覚えていたり、
ひらがな、カタカナもだいぶ読めるようになってきて人間の知識の吸収の速度に驚かされる。
3歳娘がモルカーにハマっており、「どのモルカーが好きか」
— えんぴつ (@empitsu88) 2021年8月27日
「なんで好きか」
を共に語り合うことができて感動している
最近の娘、「〇〇って言った!😡」って怒るようになって成長を感じる…
— えんぴつ (@empitsu88) 2021年4月30日
👩🏻「娘ちゃ〜ん、昨日はパパだったから今日はママと寝よ☺️」
👧🏻「え、ぱぱと寝る」
(20分後)
👩🏻「(そろそろ気が変わってるかもしれん)娘ちゃ〜ん、そろそろママと寝るよ〜☺️」
👧🏻「ぱぱと寝るって言った!!😡」
😢
数の概念も理解してきて日々成長を感じる。
👩🏻「3と4をくっつけたらいくつ?」
— えんぴつ (@empitsu88) 2021年5月1日
👧🏻「え〜っと、いち、にい…(指で数える)なな!」
娘氏、もう足し算の概念を理解してるの天才では☺️
ちなみに8以降は指を曲げるのが難しくて結構間違える☺️
一緒に電車に乗ると駅に停まるたびに👧🏻「降りたい!」
— えんぴつ (@empitsu88) 2021年6月20日
👧🏻「チョットダケおりたい!」
と言い張る娘ですが、
最近は数の概念がわかってきたので
👩🏻「1、2、3個目の駅で降りるよ」
👩🏻「今は2だよ〜つぎ3だから降りるよ」
とか言って通じるの助かる
最近はフリック入力キーボードでのひらがな入力を試みており成功率が上がってきているのでびびっている。
娘、ひらがなフリック入力で自分の名前を入力できるようになってきてるのまじすごい
— えんぴつ (@empitsu88) 2021年12月21日
今年行ったところ
今住んでいるところはチャリ圏内であれば大きな公園がいくつもあることに気づいたので休日の外遊びの選択が広がった。
3歳になって公園の遊具とかも使えるものが多くなってきたので、アスレチックや巨大滑り台などでも遊べるようになって子供も楽しそう。
このままコロナが落ち着いてくれれば、屋内施設にももっと連れて行けるんだけど…。
東京、公園少ないイメージだったけど、チャリ圏内まで範囲を広げれば
— えんぴつ (@empitsu88) 2021年9月20日
自然公園、広大な芝生、充実したアスレチック、巨大滑り台、水遊び場、池、磯、浜辺、湿地などなどが実は各地にあることに気づき
なぜもっと早く活用しなかったんだ…!
という気持ち
娘の可愛い言動集
毎回言ってる気がするけどまじでこれ↓で、3歳になって赤ちゃんぽさは流石になくなってきたが、言動が面白すぎるし、佇まいも表情も頭のフォルムも赤ちゃんのときとは違う可愛さがある。
まじで可愛いの最高記録を常に更新し続けていて「今」が一番可愛いから安心するんだ、過去の私よ。
子が2歳くらいのころは
— えんぴつ (@empitsu88) 2021年11月12日
「はぁ…何喋っても舌ったらずで今が一番可愛い…ここから成長しちゃうの寂しい…🥺」
と思ってたけど、色々流暢に喋れるようになった3歳でもまだ舌ったらずだし発言が超面白くてかわいいので安心しろと昔の私に言いたい
ここからは娘の可愛いエピソードをひたすら貼ります。
可愛いので見てください。
娘、Alexaに
— えんぴつ (@empitsu88) 2021年4月29日
👧🏻「あれくちゃー、えーびーしーのうた、歌ってくーだーちゃい!」
とか話しかけてるの可愛すぎんか?☺️
(そしてAlexaは無反応)
お医者さん大好きな娘、
— えんぴつ (@empitsu88) 2021年4月30日
👩🏻「明日は(3歳児定期接種の)予防接種するからお医者さんいくよ〜」
と言ったら
👧🏻「おいちゃちゃん⁉️」
👧🏻「(保育園で人とすれ違う度に)あしたよぼーしぇっちゅなの!」
👧🏻「(寝かしつけ中)あした、よぼーちぇっしゅ…💤」
とかめちゃめちゃ楽しみにしてるのクッッッッッ☺️
娘と公園に行ったパパが「もうすぐ帰るよー」ってビデオ通話かけてくれたんだけど、娘がビデオオンのままのiPhoneを持ってどこかに走り出した。
— えんぴつ (@empitsu88) 2021年5月15日
どどどうした!?あぶないよ!?と思ったら
👧🏻「ままと一緒にすべりだいしたかった🥺」
👧🏻「ままも、一緒にあそぼ!」
え……かわ……😭
過去形や接続詞を覚えだいぶお話が上手になってきた娘ですが、舌ったらずなのでいまだに
— えんぴつ (@empitsu88) 2021年5月26日
👧🏻「はたぱんぽ」(裸ん坊)
👧🏻「あたまがっち」(おたまじゃくし)
とか言ってるの可愛すぎるんじゃ☺️
保育士さんが教えてくれたんだけど、昨日は保育園で🍙がたくさん載ってる絵本を見てたんですって。
— えんぴつ (@empitsu88) 2021年6月18日
👩🏻「娘ちゃんはどれがいいー?☺️」
👧🏻「これと、これと、これー!」
👩🏻「3つもえらぶのー?☺️」
👧🏻「だって、ぱぱと、ままと、娘ちゃんみんなで食べるから!」
って言ってたんですって…😭
黒髪短髪眼鏡の男性の写真を見ると常に「これパパ?」って聞いてくる娘☺️
— えんぴつ (@empitsu88) 2021年7月11日
娘、明らかにトイレ行きたそうにもじもじしてるのに、トイレ連れて行こうとすると
— えんぴつ (@empitsu88) 2021年7月31日
👧🏻「踊ってるだけなの!!」
って誤魔化してくるのかわいいけどトイレには行こうな☺️
最近の娘の可愛い言葉集:
— えんぴつ (@empitsu88) 2021年9月11日
👧🏻「てぺり(テレビ)」
👧🏻「娘ちゃんぷりんしぇしゅ(プリンセス)になりたいな〜」
👧🏻「夜はふくろうちゃん(スマホのこと)みないなんだよ!😡」
保育園の帰り道毎日のように
— えんぴつ (@empitsu88) 2021年11月30日
👧🏻「おかいもの!おかいものいく!」
って駄々をこねる娘に、必要なものはもううちにあるから今日は行かないよ、毎日買い物してたらお金なくなっちゃうよ的なことを言ったら
👧🏻「うん、だからおしごとちる(お仕事する)なんだよ」
って言われました
娘の今後の人生について考える
3歳になって会話も流暢になり、好みや性格もはっきりしてきたせいか、
「今後もこの子が幸せにのびのびと人生を楽しむにはどうサポートしたらいいだろう?」
っていうのを最近めっちゃ考える。
ブルーピリオドや少年のアビスを読んでいると、
— えんぴつ (@empitsu88) 2021年10月19日
「子供のやりたいことを否定する親にだけはならんとこ…」
って強く思うんだけど、実際にどんな進路を言われても、自分は素直に応援できるのだろうかっていうのは不安になるわね。
否定してしまうのは本人は絶望し生きづらくなるだけなので絶対やっちゃダメとしても、現実問題、何年も無尽蔵にサポートできるだけのお金があるわけでもないので、どのくらいの期間どんなサポートをすればいいのかとかね。
— えんぴつ (@empitsu88) 2021年10月19日
というわけで、「もし高2になった娘に『大学にいかずYoutuberになりたい』と言われたらどうする!?」という脳内シミュレーションを最近はしています。
— えんぴつ (@empitsu88) 2021年10月19日
子供は親の所有物ではなく独立した個人であるので、本人としての意思を尊重するのは当然。
とはいえ子がもう少し成長して、一般的にリスクが高いと言われる進路や希望を言われた場合、監督責任がある親としてどう声をかけようかな、というのを最近はとても考えている。
たとえば
「整形したい」
「AV女優になりたい」
「パパ活で生活しちゃダメなの」
「小学校に行かず顔出しYouTuberになりたい」
というようなことを言われた時どう声をかけようか…
というのを脳内シミュレーションしている。
今の所の解としては
- なぜそうしたいのかを聞く
- 聞き出した課題に対して、その解決策が適切なのかを一緒に考える
- 提示されたオプションのリスクとリターンをどう認識しているかを確認する
とかかなあ
あとは、娘がもう少し大きくなる頃までには、日本のジェンダーギャップ指数が先進国ワーストである点やITエンジニアの極端な男女比が改善されてるといいな…というのを思っている。
自分がIT業界の男女比の偏り(特にエンジニア)を気にしてるのは、自分がどうこうっていうよりも、将来自分の娘がコンピュータやプログラミングに興味を持った時
— えんぴつ (@empitsu88) 2021年8月4日
「やってみたいけど、あそこの学科女の子少ないしな…」
って不本意な形で敬遠したり諦めるようなことになってほしくないからだなぁ。
しかし乳児だった頃に比べると、自分が子に対してイライラしたり叱ったりすることがすごく多くなってしまった…
言葉が通じて会話ができる分、期待してしまうのかもしれない。
アンガーマネージメントをちゃんとできるようになりたい。
今年
- UoPeopleはこのままのペースだと卒業まで時間がかかりすぎるので、Sophiaなどからの単位移行も活用して効率よく進めたい。
- 仕事は、引き続き残業時間を抑えつつ時間単位の生産性を高めて高い成果を挙げられるようにしたい(そもそもあんまり残業をすると学業だけじゃなく育児も生活も崩壊するし)
- フルリモート可の会社になったので(出社推奨日は月数回あるが)都内から離れてもいいからもっと広い家に住みたい。アウトドアレジャーに行きやすい環境に引っ越したい。というのを最近はずっと考えている
今年もよろしくお願いします。
UoPeopleでComparative Programming Languages(プログラミング言語比較論)を修了した
オンライン大学 University of the People でComparative Programming Languages (CS4402) を修了したのでその感想を書きます。
これまでのUoPeople関連の記事はこちら:
UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ
はじめに
プログラミング言語のパラダイムの変化を追いながら、命令型言語と非命令言語(関数型や論理型など)の特徴を学び比較を行うコースです。
各言語の歴史や特徴だけでなく、コンピューターシステムのアーキテクチャやコンパイルの仕組みなども触れるので、今までのCS系コースの総復習的な内容だと感じました。
#UoPeople プログラミング言語比較論(#CS2204)の感想。
— えんぴつ (@empitsu88) 2021年10月31日
言語の比較だけじゃなく今までのCS系コースの総復習的な内容だった。
ノイマンアーキテクチャ、チューリングチャーチ理論から始まるプログラミング言語の歴史、
コンパイラの仕組、仮想マシンの仕組、BNF、論理回路、ビット演算、アセンブリ、
なお、提出する課題の量は他のコースと比べるとかなり少ないのでいくらでも手を抜けるコースとなっております。
Comparative Programming Languageのコース、「形式言語・プログラミング言語の定義」やコンパイルプロセスについてから学ぶので大変良い。
— えんぴつ (@empitsu88) 2021年9月16日
経験したことのない言語を触ることに抵抗がなくなりそう。全部命令型言語だから似たようなもんでしょ?みたいな。※操れるとは言っていない#UoPeople
主な学習内容
(長いよ!)
- 「プログラミング言語」の定義
- プログラミング言語の歴史
- ノイマン・アーキテクチャ
- チューリング・チャーチ理論
- チューリングマシン、ラムダ計算
- コンパイルの仕組み
- 形式言語とは
- 正則言語とは
- 文脈自由文法とは
- BNF/EBNF
- 静的型付け/動的型付け言語、弱い型/強い型の違い
- 仮想マシンアーキテクチャ
- Hypervisor1, 2の違い
- エンコーディング
- ASCII/UNICODE
- プリミティブ型/複合データ型
- 整数、実数について
- 1の補数、2の補数
- bit演算
- 浮動小数点と固定小数点のメモリ上での表現
- リトルエンディアンとビッグエンディアン
- 静的束縛と動的束縛
- 変数
- プログラムの制御構文
- Sequence/Selection/Repetition
- 不変条件
- サブプログラム
- 値渡しと参照渡し
- アクティベーションレコード
- 命令型言語の特徴
- スクリプト言語の分類と特徴
- Command/Application/Markup/Universal Scripting Language
- PerlのSyntax
- 正規表現
- オブジェクト指向プログラミング
- 関数型言語の特徴
- 論理型の特徴
- PrologのSyntax
- fact, rules, query, 単一化
最近こちらの方の記事がバズっていましたが、チューリング機械や正規言語、文脈自由についてUnit2で触れたので「あ!これ進研ゼミでやったやつだ!」となりました。
課題について
他のコースでは存在するWritten AssignmentやProgramming Assignmentが、このコースではなんと一切ありません🎉🎉🎉
シラバスには「Written Assignmentを提出」と書かれているUnitがありますが多分誤植です。
コード書いて提出させるような演習的な課題もないので理論重視のコースのようです。
(提出が求められない任意の演習は少しだけありました)
Reading Assignment
提示されている読書課題の量は多めなので、きちんと読もうとするととても時間がかかります。
多いときだと
基本のテキストブック 1~2章 + 記事やPDF 2~3個 + OptionalのURL 5個 + ビデオ教材 4本
という感じです。
Optionalな文献にはしれっとプログラミング言語のチュートリアルやAPIリファレンスが提示されてたりするので、全部読むのは無理大変だと思います。
資料はデッドリンクになっているのも多かったですが、わからないところは日本語の記事を検索したりして学習したりしていたので特に支障はありませんでした。
尚、要点が一番まとまっているのはLearning GuideのIntroductionとVideo materialsだったので最初にこちらを見ておくと理解しやすいと思います
中間試験のあるUnit3もなんとか乗り切った〜〜
— えんぴつ (@empitsu88) 2021年9月23日
むちゃくちゃ課題図書の量多くてもうダメかと思った😇
ちなみに今週のトピックはビット演算とかメモリ内での実数の扱いとか(浮動小数点/固定小数点とかのあれ)静的動的束縛の話とかエンディアンとか2の補数とかでした。#UoPeople #CS4402
Discussion Assignment
課題が少ない分、 Discussion Assignmentの配点は重めです。
「XXX型言語のXXXという特性について例を提示しながら説明しなさい」
「XXXの言語とXXX言語を比較しなさい」
みたいなシンプルな問いが出されます。
リサーチが必要なお題もいくつか出されますが、ぐぐればすぐわかるものばかりなので、そんなに難しくはないと思います。
私は優しいクラスメート・インストラクターに恵まれたようで、
- 見出しなどをつけて読みやすくする
- サンプルコードは簡単なものでもいいから必ずつける
- 参考文献は学術機関(大学とか)がサイトに載せている資料など、できるだけ信頼できそうなものを使う
- 締め切りギリギリに提出(水曜日夜〜木曜朝)
という感じでやっていたらほぼ毎回10点がもらえました。
今週の #UoPeople の課題、命令型言語と非命令型言語の論述とexampleか〜〜非命令型ってHaskellとかProlongとかでしょ、今からサンプルコード書くのきついわ、ってなって宣言型言語と言われるSQLを使って提出したけどもそもそもサンプルコードまで書いてる生徒ほとんどおらんかったの巻#CS4402
— えんぴつ (@empitsu88) 2021年9月9日
今週の比較プログラミング言語論のトピックはスクリプト言語なんだけど、課題のお題が
— えんぴつ (@empitsu88) 2021年10月6日
「PHPとJavaScriptをパフォーマンスや移植性、機能性などの観点で比較しろ」
っていう無限に時間がかかりそう且つ戦争が起きそうなやつでやばい。#UoPeople #CS4402
Self-Quiz
Self-Quizは他のコースとは異なり、テーマ別に2〜5本くらい出されますがそれぞれ5〜10問くらいなのでそこまで量は多くないと思います。
プログラミング言語の開発者の名前を答えるような暗記問題や、単語をタイプする問題も出ます。
Java, Perl, Haskell, Prologなどの言語のSyntax問題も多く出るので、Self-Quizで困らない程度の基本的な文法は覚えておく必要があります。
比較プログラミング論のコースでは、Perlのsyntaxやコーディリーディングの問題も一部出てくるんだけど難しくてとてもつらい#UoPeople #CS4402
— えんぴつ (@empitsu88) 2021年10月10日
Learning Journal
Learning JournalはUoPeopleのよくある振り返り日記です。
要件を満たしていれば、満点はもらえると思います。
Graded QuizとFinal Exam
Final Exam、Graded QuizはSelf-Quizにはない問題も多かったです。
単語の穴埋め問題も出されるのでスペルミスにも注意する必要があります。
最終試験は「正解2つあるように思えるけどどっち!?」という悩ましい選択肢が多く、何問かミスりました…😇
(いまだ何が正解だったのかわからない…)
役立ったもの
日本の大学が公開しているプログラミング言語論のスライド
日本の大学・大学院が公開しているプログラミング言語論の講義資料はUoPeopleのこのコースとかぶっているトピックも多く、大変参考になりました🙏
筑波大学: Programming Languages and Methodology
JAIST: Automata and Formal Languages in Nomi
#UoPeople の今週のトピックはコンパイルプロセス、特に構文解析についてだったけど有限オートマトンとかDeterministicとかしれっと文献に出てきて意味わからないまま読んる…。
— えんぴつ (@empitsu88) 2021年9月16日
jaistの神みたいな資料を見つけたがむずい😇
この辺の内容は学部ではやらんのかな…https://t.co/jvtDAZDv4b
#CS4402
2進数,10進数,16進数相互変換ツール
2の補数表現を計算する問題がいくつか出るので、手で計算したものの確認に使わせてもらいました。
Online Perl Interpreter
Perlのコード片を読まされる問題がちょくちょくあります😨
入門サイトを読むだけでは難しかったので以下のエディターで手を動かしながら覚えました。
Execute Perl Online (Perl v5.24.2)
Haskell
関数型言語Haskellのコードリーディングの問題もちょくちょく出ます。
こちらのサイトの説明がわかりやすかったです。
Functional Programming 2018 Fall
Prolog
Prologもがっつり覚える必要があるため、こちらの書籍とOnlineエディタが非常にありがたかったです🙏
http://www.k-techlabo.org/www_prolog/prolog_main.pdf
SWISH -- SWI-Prolog for SHaring
学習時間
学習に費やした時間は6〜11時間程度でした。
成績
Final Examで結構間違えたのでヒヤっとしたけどなんとかA (GPA 4.0)が取れました🎉
これまでに受講したコース
ということで以下のコースが修了できました!
- ENGL0101 English Composition 1
- UNIV1001 Online Education Strategies
- CS1101 Programming Fundamentals
- CS1102 Programming1
- MATH1201 College Algebra
- MATH1302 Discrete Mathematics
- MATH1280 Introduction to Statistics
- CS1103 Programming2
- CS2203 Databases
- CS3303 Data Structures
- CS4402 Comparative Programming Languages ←今期取れたやつ
+前の大学から単位移行した45単位
計78単位
UoPeopleでIntroduction to Statistics(統計学入門)を修了した
オンライン大学 University of the People でIntroduction to Statistics (MATH1280) を修了したのでその感想を書きます。
これまでのUoPeople関連の記事はこちら:
UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ
はじめに
Rを使いながら記述統計学と推計統計学の基礎を学ぶコースです。
言葉の定義や概念をきちんと確認しつつ、Rを使って様々な演習をこなし、Discussion課題で実世界の事例に適用する…といったバランスの取れた構成になっていて良いコースでした。
↓のようにつぶやきましたが、MATHコースの割に計算はほぼRを使うので数式は簡単な公式を覚えるくらいでOKでした。
また、必修コースのせいかプログラミングに不慣れな学生も多いため、Rのセットアップや使い方については手厚いサポートがありました。
ようやく今週分のテキストを読み始めましたが今回は確率分布の話でポアソン分布のだの指数分布だのでめちゃめちゃ数式が出てきて白目。#MATH1280 #UoPeople
— えんぴつ (@empitsu88) 2021年5月11日
学ぶ内容
- 記述統計学、確率・推計統計学の違い
- 母数、パラメーター、統計量
- 度数、相対度数、累積相対度数
- 平均、中央値、分散、偏差、パーセンタイル、四分位範囲、外れ値
- 確率変数、標本空間、期待値、確率
- 母平均と標本平均、母分散と標本分散の違い
- 離散型確率分布:二項分布とポワソン分布
- 連続型確率分布:一様分布と指数分布
- 確率密度関数
- 正規分布、標準正規分布、正規近似
- サンプリング分布
課題について
Assignment
Assignment(他のコースで言うWritten Assignmentに相当する)は隔週なので課題の量はそこまで多くないと思います。
問題数が多くて面くらいますが、簡単な計算問題や語彙の確認がほとんどです。
また、あるUnitのAssignmentで、Rでなく手計算で求めることが必須の問題があったので注意してください。
Rと手計算で結果が変わります。
指示には「Rを使わないで自分で計算してね!」と書いてあるのですがわかりづらいので、その週のCourse Forumは「Official Solution間違ってるでしょ!?」と書き込む生徒が続出していました…。
Self-Quiz
いつもテキストをざっとしか読んでない状態でSelf-Quizに臨んでいたので初回は全然わからず量も多く、毎回泣きながら解いていました。
ですが人間不思議なもので何度も同じような問題を解かされるのでだんだん覚えてきます。
計算は基本的にRを使いますが、mean()やsd()、var() などの関数を使わずに平均や標準偏差を算出することを求める(度数分布表や確率分布表のみが提示されているなど)問題が多いので、平均や分散を求める様々な方法をおさえておきましょう。
Discussion Assignment
とある分布を使用する事例を挙げるとか、実世界の課題を統計学的に考えた時にどう考えますかみたいな問が多いです。
私は毎週水曜日夜や木曜日ギリギリに投稿していたせいか、雑に書いても10点をもらえることが多かったです。
ただこのコースでも、例を挙げるだけでなく自分でシミュレーションしてRコマンドとヒストグラムも貼るようなガチ勢は若干名いました。
(↓はUnit8だけガチ勢として参加したときのツイート)
うーん今週の統計学、また面倒な課題だ!と思いつつ自分でランダムサンプリングについてRでシミュレーションしてヒストグラム作って各用語についてもわかりやすい例を交えつつ説明したがそんなことしてるのクラスに2人くらいしかおらんかったの巻😇#MATH1280 #UoPeople
— えんぴつ (@empitsu88) 2021年6月3日
Learning Journal
Learning Journalは振り返り+簡単な演習の形式が多かったです。
私のインストラクターは、Rのコマンドと出力を貼らないと減点してくる方だったので、とにかく試したコマンド(テキストやSelf-Quizと全く同じやつ)や学んだことのSummaryを貼りまくったら満点をくれました。
Graded QuizとFinal Exam
Graded QuizがUnit3, Unit6、そしてUnit8と3回もあります。
ですがSelf-Quizの数値違いのような問題が多いです。
Final ExamはSelf-Quizにはない問題が多かったですが、Self-Quizをちゃんと理解していれば解けそう問題でした。
スコアはGraded QuizとFinal Examの比重がかなり高いので、とにかく手を動かしてRの演習をこなしSelf-Quizを理解するのが大切かと思います。
Discussion AssignmentとAssignmentのGrading Weightsはそれぞれたった5%でした…。
役立ったもの
Annotated bookとNote
コースではテキストのAnnotated bookとNoteが配布されます。
Annotated bookは「ここが大事!」とか「ここの数式は覚えなくていい」とか書かれているので基本的にはこっちのテキストを見ておいたほうが効率的かもしれません。
Noteは結局最後までほとんど見ませんでしたが、テキストをまとめ直したり様々なRのサンプルコードが載っているので理解を深めるのに役立ちそうです。
完全独習 統計学入門
このコース受講中にちょうどDMMブックスの70%オフセールがやっていたので参考書として買いました。
「超入門書」と銘打っているため、敢えて確率について触れない方針の本だそうです。
標準偏差や平均を算出する様々な方法やサンプリング分布について易しく解説されていました。
統計WEB
確率分布(二項分布や指数分布など)についてはこちらのサイトがわかりやすく解説しておりお世話になりました。
データ分析のための統計学入門
Twitterでシェアしてくれた方がいたのですが、「データ分析のための統計学入門」の日本語訳がなんと無料で公開されており、こちらも役立ちそうです。
私は余裕がなくてまったく見れなかったのですが、
目次を見る限りUoPeopleのコースは第4章あたりまでの内容となります。
アメリカのデータサイエンティストが書いた「データ分析のための統計学入門」の日本語訳が、訳者である東大の国友先生のホームページで無料公開されています。
— 上原@外銀→投資家 (@uehara_sato4) 2021年4月9日
全418ページがすべて無料です。普通に有料の書籍なんですが、統計の基礎勉強はこのPDFで網羅できると思います。https://t.co/kMF0nHMScl pic.twitter.com/JQfzXuA0St
学習時間
学習に費やした時間は6〜10時間程度でした。
成績
今期とった3コース中、かけた時間は一番少なかったですが、Self-Quiz周回のおかげで幸いにもGraded QuizやFinal Examで満点がとれたのでA+が取れました。
これまでに受講したコース
ということで以下のコースが修了できました!
- ENGL0101 English Composition 1
- UNIV1001 Online Education Strategies
- CS1101 Programming Fundamentals
- CS1102 Programming1
- MATH1201 College Algebra
- MATH1302 Discrete Mathematics
- MATH1280 Introduction to Statistics ←今期取れたやつ
- CS1103 Programming2 ←今期取れたやつ
- CS2203 Databases ←今期取れたやつ
+前の大学から単位移行したコース
UoPeopleでDatabases(DB設計・SQL)のコースを修了した。
オンライン大学 University of the People でDatabases (CS2203) を修了したのでその感想を書きます。
これまでのUoPeople関連の記事はこちら:
UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ
はじめに
このコースはDatabasesについて、DBMSの種類や基本的な用語の定義から始まり、情報モデルについての概念をおさえつつRDBMSの設計プロセスを実践を通して学ぶコースです。
SQLについてもANSI/ISOの規格に基づいて、基礎的な部分は網羅的に触れます。
今期は3コース同時受講(統計学、Java、Databases)していましたが、このコースが一番楽しかった気がするし実務ですぐ役立ちそうです。
ちなみにコースを始める前の自分のレベルは
- ORMなら使ったことある
- 簡単なSQLなら覚えてる
- 正規化はなんとなく知ってる
みたいな感じです。
今期のDatabases1のコース、課題は多めだけど、基本的な用語の定義や抽象的な概念、論理モデルの設計プロセスまで演習を通しながら丁寧に学べてかなり楽しい。
— えんぴつ (@empitsu88) 2021年4月19日
おめーよく今までこのへんゆるふわのままアプリケーション開発してたな?って思い知ってます😇#CS2203
学習内容
- DBMSの種類
- DBにまつわる様々な職種
- 3層のデータモデル
- 概念モデル/論理モデル/物理モデル
- 各種用語の定義と使いわけ
- Entity set/Relation/Table
- Entity/Tuple/Row
- Attribute/Column
- Relationship set/Primary key/Foreign key
- Relation degree
- Relationship cardinality
- 各種制約
- Entity integrity constraint
- Referential integrity constraint
- Semantic integrity constraint
- Domain constraint
- Null constraint
- Unique constraint
- ER図
- 正規化
- 関数従属
- Closure Set
- SQL
- DCL
- DML
- DCL
- 各種データ型
- Aggregate function
- Nested Selects
- Sub Queries
- Unions
- アプリケーション・DB設計プロセス
- トランザクション
- アプリケーションとの結合
概念モデルと、論理モデル、具体的に何がどう違うのかふわっとしか知らなかったけどようやく理解した#CS2203
— えんぴつ (@empitsu88) 2021年4月24日
DB正規化で出てくる関数従属性のアームストロングの規則とかいうやつ、完全に数学の集合の話じゃん…😇
— えんぴつ (@empitsu88) 2021年4月24日
これって数学の二項関係で出てくる反射律とか推移律とかと似た話…?(何もわかってない)#CS2203
Databaseのコースの動画でSequelって単語が頻繁に自動生成の字幕に出てくるので
— えんぴつ (@empitsu88) 2021年4月8日
「なにこれ??続編…??」
って思ってたが、「SQL」だった…#CS2203
課題について
Programming Assignmentがほぼ毎週(Graded Quizある週以外)出るので課題の量は結構多いと思います。
Learning JournalでもUnitの振り返りに加えて演習やSQL課題が出ます。
内容としては
概念モデルの作成、
要件定義、
ER図の作成、
正規化の実施、
実際のDatabaseの構築、
SQL演習
などです。
序盤の設計では、Attributeの名前や型をどうするかなど迷うかもしれませんが、 事前にある程度の採点基準が提示されるのでそれに従っていれば細かい所まで気にしなくても大丈夫でした。
環境構築について
ご覧の通り、後半のUnitから実際にSQLを書く課題が出てくるので、なにかしらのDBの環境構築が必要です。
ただコースからはあんまり親切な案内は提示されないです。(MySQL Workbenchなどへのリンクが貼られているのみ)
また、最終週はSQL ServerまたはOpenOffice Baseの構築が必要だったので、Macの自分はDocker for Macを使ってSQL Serverを使えようにしました。
このあたりの記事が参考になります。
How to Install SQL Server on a Mac | Database.Guide
が、自分のMacbook Air M1では上記で紹介されているMicrosoft SQL Server が起動せず、
M1対応のDocker for Mac + Rosetta + --platform
optionを使ってもだめだったので
以下で紹介されているAzure SQL Edge というimageを使ったらうまくいきました。
今週の課題、SQL Serverを使わなきゃいけないっぽいのだがMacだとDockerを入れるところから始めないといけないのかぁ…😇#UoPeople #CS2203
— えんぴつ (@empitsu88) 2021年5月29日
Databasesのコース、今週からSQLの実践に入るのだが使うのがMySQLでもPostgreSQLでもOracleでもなく、HyperSQLとかいうやつでなにそれってなってる#CS2203 #UoPeople
— えんぴつ (@empitsu88) 2021年5月1日
Discussion Assignment
Discussion課題は
このDatabaseの設計にはどういう問題がありますか、
この設計プロセスで気をつけることはなんですか、
正規化のProps/Consはなんですか、
このSQLはどうやって使い分けますか、
みたいな感じでした。
Unit1から例として実際のDatabaseを構築してER図を提示したりする猛者がいました…が、そんなことをしなくても普通に高得点はもらえるかと思います。
今週のdatabasesの課題、殆どの学生がSQLのスクショだけ貼って提出してる中、設計の問題点やsemantic整合性制約の実装の難しさにも言及し1000wordsも書いてるワイどう見てもやりすぎじゃん。
— えんぴつ (@empitsu88) 2021年5月12日
10点と言わず200点くらいください。#CS2203 #UoPeople
役立ったもの
IntelliJ IDEA
UoPeopleをやっている人はJetBrains Student Pack(学生向け無料ライセンス)が使えます!!
この学生向けライセンスを申請すると、IntelliJ IDEA UltimateやWebStrom、PyCharmなどがダウンロードできます。
ただし、教育・学習目的にしか使えないライセンスになっており仕事などには使えないので注意してください。
JetBrains Student Pack(学生・教職員向け無料ライセンス)と申し込み方法 | JetBrains Blog
私はIntelliJ IDEAでUoPeopleのJavaやDatabasesのコースを進めていました。
IntelliJ IDEA UltimateならDatabaseの閲覧・操作に便利なプラグインがビルトインされています。
Database tools and SQL | IntelliJ IDEA
ER図作成に便利なデータベーススキーマ機能があるCacoo
IntelliJ IDEAのDatabase Toolでも Diagrams > Show Visualization...
でDatabaseからER図が自動生成できるのですが、鳥の足記法ではありません。
「鳥の足記法でER図を作成しろ」という課題があったので、その際はIntelliJからスキーマをCSVでエクスポートし Cacooにインポートして生成していました。
データベース設計図 | テンプレート | オンライン作図ツール Cacoo(カクー)
ただ、なぜかインポート時にエラーが発生しrelationshipの部分が期待通りにインポートできなかったため欠けた部分はCacoo上で書き足していました…。
オンライン作図ツールdraw.io
また、https://draw.io というオンラインツールでもER図が作成できました。
こちらはインストラクターも紹介していました。
Flowchart Maker & Online Diagram Software
達人に学ぶDB設計 徹底指南書
参考書としては「達人に学ぶDB設計 徹底指南書」が役立ちました。 DB設計の基礎や正規化について例を出しながら丁寧に解説しており、今回のコースではUnit1〜3くらいまでの内容にベストマッチしています。
書籍の後半はパフォーマンスについてやバッドノウハウ・グレーノウハウの具体例が主ですが、このあたりの内容もDiscussion Assignmentで自分の考えを補強する時に役立ちました。
Graded QuizとFinal exam
Graded QuizはSelf Quizの内容 + アルファって感じでした。
Final ExamもSelf Quiz / Review Quizにない問題が多く、ふわっとした問が多くて答えに迷うことが多かったような…。
成績
インストラクターがめっちゃ厳しい人でLJでなかなか満点をとれなかったり、 ピアからつけられた微妙な点数(全問正解しているのに85/90点みたいな)に対してGrade Appealしても受け付けてくれなかったりでちょっとモヤりましたがA-で着地しそうです。
学習時間
学習時間は8〜15時間/週くらいでした。
Discussion Assignmentで例を提示すべくDatabaseを作成したりと割と頑張ってしまったので、もう少し効率よく進められた気がします。
これまでに受講したコース
ということで以下のコースが修了できました!
- ENGL0101 English Composition 1
- UNIV1001 Online Education Strategies
- CS1101 Programming Fundamentals
- CS1102 Programming1
- MATH1201 College Algebra
- MATH1302 Discrete Mathematics
- MATH1280 Introduction to Statistics ←今期取れたやつ
- CS1103 Programming2 ←今期取れたやつ
- CS2203 Databases ←今期取れたやつ
+前の大学から単位移行したコース
UoPeopleでProgramming2(Java)を修了した
オンライン大学 University of the People でProgramming2 (CS1103) を修了したのでその感想を書きます。
これまでのUoPeople関連の記事はこちら:
UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ
はじめに
このコースはCS1102:Programming1に続きJavaを使いますが、CS1102に比べると課題の難易度が上がりComputer Scienceコース最初の関門と言われています。
ほぼ毎週Programming課題があるので課題の量も多め。
ただJavaそのものを学ぶというより、Javaを使いながら計算量やデータ構造・アルゴリズム、Generic ProgrammingやGUI Programmingなどの他の言語にも通ずる問題解決力を養うためのコースなのでやりがいがあるし、 これを修了すると受講できるコースの選択肢が格段に広がります。
また、私はWebエンジニア歴がX年くらいありますが、クライアントサイド・フロントエンドがメインでバックエンドのまともな実務経験はほとんどないので楽しみなコースの一つでした。
今週のJavaのコースはGeneric Programmingと構文解析の話。
— えんぴつ (@empitsu88) 2021年5月7日
BNFで定義しつつ再帰下降法でパーサーを作ったり式ツリーを構築したりで段々むずくなってきた。
ただJavaの書き方を学ぶのではなく、計算量や基礎的なデータ構造・アルゴリズムからしっかりやるのが目的のコースなのでとても良い。#CS1103
学習内容
- 例外処理
- 計算量
- ビッグ・オー:𝑂
- ビッグ・オメガ:Ω
- ビッグ・シータ:Θ
- 再帰、ソートアルゴリズム
- ADT(Abstract Data Types)などのデータ構造
- List
- Set
- Map
- Stack
- Queue
- double-ended Queue
- LinkedList
- BinaryTree
- HashTable
- デバッグのノウハウ
- ファイル・ネットワークなどのI/O処理
- MVCパターン
- JavaのCollection Framework
- Generic Programming
- GUI Programming
- Swing component
- BufferedImage, graphicsなど
今期のJavaのコース、初週は例外設計や計算量の話だ!オラわくわくすっぞ!#UoPeople #CS1103
— えんぴつ (@empitsu88) 2021年1月28日
JavaのCollection frameworkにはQueueやLinkedList、HashTreeとかもあってそしてCollectionsクラスにはbinarySearchやshuffleメソッドが生えてるのめっちゃ便利じゃん(小並感)#CS1103
— えんぴつ (@empitsu88) 2021年5月11日
プログラミング課題
ほぼ毎週ProgrammingAssignmentがあります。
(他のコースで言うWritten Assignmentに相当するもの)
また、Learning Journalでも毎週振り返りに加えてプログラミング演習があります。
データ構造を実装したり、
バッカスナウアで定められた構文ルールを実装したり、
チューリングマシンの一部を作ったり、
ファイルの読取・書込を実装したり、
木構造のトラバースをしたり、
バグのあるプログラムのデバッグをしたり、
パーサーを実装したり、
スペルチェッカーを作ったり、
簡単なWebServerを実装したり、
テキストやグラフィックを描画するGUIアプリケーションを作ったり、
ととても実践的な内容。
今週はチューリングマシンの極々一部を作ってみるという課題なんだけど、まずチューリングマシンがなんなのかわかってない#CS1103 #でもとりあえず指示通りに動くものは作れました
— えんぴつ (@empitsu88) 2021年4月26日
とはいってもイチから10まで丸投げされることは少なく、
ベースとなるClassやサンプルコードが渡され、なにをどう実装するか文章で指示されます。
実装する範囲は関数もしくは機能単位で採点基準もシンプル。
テキストの内容やそれまで登場したサンプルコードを理解していればなんとか実装できるはず…。
が、プログラミング自体に慣れていても、指示の文章がめっちゃ長かったり、ベースとするコードの量が多い&仕様がわかりづらかったりでそれなりに時間が取られました。
要件が多い場合も同様。(スペルチェッカーとWeb Serverは結構面倒くさかった…)
自力でシンプルなweb serverを作る課題に8時間くらいかかってしまった😩#CS1103
— えんぴつ (@empitsu88) 2021年5月24日
Optionalなプログラミング演習もありましたが全くやる余裕はありませんでした。
そしてGUI ProgrammingはなんとSwingを使うので、Reactの関数component+宣言的UI慣れた身としては辛かった…。 せめてJavaFXにしてほしかった…。
宣言的UIに慣れてしまった今では命令的UIの構築が辛くてしょうがない#CS1103 #UoPeople
— えんぴつ (@empitsu88) 2021年6月3日
ただ課題としては必須ではなかったですが、バッカスナウアでルールを定めつつ再帰下降法でパーサーを作ったり、式ツリーの構築や後置記法での演算、マンデルブロ集合をシミュレーションするなどといった話もあって興味深かったです。
中高生レベルの数式もたまにでてくるのでAlgebra先にやってなかったら超ビビってたかもしれない。 (理解してなくても課題はできます。)
テキストにマンデルブロ集合を描画するサンプルプログラムが載ってて、「マンデルブロ集合 is 何」ってなったのでぐぐったが
— えんぴつ (@empitsu88) 2021年5月22日
「あ、これ真面目に理解しようとすると1term以上かかるやつだ」
ってなったhttps://t.co/R6xagAF6BW#CS1103 #UoPeople
Learning Journal
先程も言及しましたが、Learning Journalでは振り返り+プログラミング演習です。
ただ、プログラミング演習は基本的にnon-gradedになっています。
題材がテキストの演習問題とほぼ同じだったり、木曜日をすぎるとOffical Solutionが提示されるからだと思われます。
でもそのままコピペするともちろん剽窃になっちゃうので、答えは参考に留めつつできるだけ自分で頑張りましょう。
Discussion Assignment
毎回「XXXのメリット・デメリットについて論じて。」みたいな超シンプルな問いが出されます。
複数の参考文献からの引用+サンプルコードとか載せると高得点をもらえると思われます。
今週のJavaの課題、指示には無かったが、3種類の文献を参照し漸化式と一般項の数式を載せつつそれを実装したコードと実行時間のベンチマーク結果まで貼った自分えらい。
— えんぴつ (@empitsu88) 2021年4月18日
と書こうとしたが、他の生徒も複数の文献やサンプルコード貼ってる人が多くクラスのレベル上がってるなと実感…#CS1103
Graded QuizとFinal Exam
Graded QuizはSelf-Quizで見たことある問題がほとんどだったので、Self-Quizをちゃんとやってれば楽勝のはず。
ただ、Final Examは半分くらいがSelf-Quiz/Review Quizにない問題で、教科書のかなり細かい内容などが出題されていた印象。
役立ったもの
「選択ソートってどんなやつだっけ?」
「木構造の先行順巡回ってどういう順番だっけ?」
という時にアルゴリズムビジュアル大辞典をよく見ていました。
擬似コードやアニメーションも全部載っているので本当に神。
学習時間
学習くらいは大体11時間/週くらいでした。
Web Serverを作った週は時間を取られて18時間かかってた😇
右側3本は課題が少なかったUnit8+最終試験の週でした。
成績
インストラクターが「毎回10点マシュマロ」「Discussion Assignmentでほとんどの生徒にコメントをくれる」という素晴らしい人だったため毎回ほぼ満点を取れました。
ただFinal Examで何問か落としてA+はとれず。
これまでに受講したコース
ということで以下のコースが修了できました!
- ENGL0101 English Composition 1
- UNIV1001 Online Education Strategies
- CS1101 Programming Fundamentals
- CS1102 Programming1
- MATH1201 Algebra
- MATH1302 Discrete Mathematics
- MATH1280 Introduction to Statistics
- CS2203 Databases
+前の大学から単位移行したコース
プロフィール
ABOUT ME
Flash Developer → Technical Director → Frontend Engineer → Software Engineeer
2018年に母になりました。
SNS
ARTICLES/SLIDES
- ソフトウェアエンジニアとしてUbieに入社しました|えんぴつ|note
- Atomic Designをやめてディレクトリ構造を見直した話
- 食べログでのAtomic Design 〜どう分類しているか編〜
- SassからCSS Modules、そしてstyled-componentsに乗り換えた話
- レガシーなフロントエンド環境をリプレースするためにチームでやっていること
- 一緒に働きたい方のペルソナを作るためにmiroを使ってワークショップをした話
- 食べログのフロントエンドエンジニアってめっちゃ大変やねん・・・
- 子育て中の社員からみた食べログフロントエンドチームの働く環境
- Computer Scienceの学位を取るために学費無料のオンライン大学UoPeopleに入ってもうすぐ1年 - えんぴつぶろぐ
- Computer Science等の学位が取れる海外オンライン大学・大学院のまとめ