えんぴつぶろぐ

子育て中のフロントエンドエンジニアのブログ。

UoPeopleでIntroduction to Statistics(統計学入門)を修了した

オンライン大学 University of the People でIntroduction to Statistics (MATH1280) を修了したのでその感想を書きます。

これまでのUoPeople関連の記事はこちら:
UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ

はじめに

Rを使いながら記述統計学と推計統計学の基礎を学ぶコースです。

言葉の定義や概念をきちんと確認しつつ、Rを使って様々な演習をこなし、Discussion課題で実世界の事例に適用する…といったバランスの取れた構成になっていて良いコースでした。

↓のようにつぶやきましたが、MATHコースの割に計算はほぼRを使うので数式は簡単な公式を覚えるくらいでOKでした。

また、必修コースのせいかプログラミングに不慣れな学生も多いため、Rのセットアップや使い方については手厚いサポートがありました。

学ぶ内容

  • 記述統計学、確率・推計統計学の違い
  • 母数、パラメーター、統計量
  • 度数、相対度数、累積相対度数
  • 平均、中央値、分散、偏差、パーセンタイル、四分位範囲、外れ値
  • 確率変数、標本空間、期待値、確率
  • 母平均と標本平均、母分散と標本分散の違い
  • 離散型確率分布:二項分布とポワソン分布
  • 連続型確率分布:一様分布と指数分布
  • 確率密度関数
  • 正規分布、標準正規分布、正規近似
  • サンプリング分布

課題について

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だけガチ勢として参加したときのツイート)

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%オフセールがやっていたので参考書として買いました。   「超入門書」と銘打っているため、敢えて確率について触れない方針の本だそうです。
標準偏差や平均を算出する様々な方法やサンプリング分布について易しく解説されていました。

www.amazon.co.jp

統計WEB

確率分布(二項分布や指数分布など)についてはこちらのサイトがわかりやすく解説しておりお世話になりました。

bellcurve.jp

データ分析のための統計学入門

Twitterでシェアしてくれた方がいたのですが、「データ分析のための統計学入門」の日本語訳がなんと無料で公開されており、こちらも役立ちそうです。
私は余裕がなくてまったく見れなかったのですが、
目次を見る限りUoPeopleのコースは第4章あたりまでの内容となります。

学習時間

学習に費やした時間は6〜10時間程度でした。

f:id:empitsu88:20210609220755p:plain
週毎の学習時間

成績

今期とった3コース中、かけた時間は一番少なかったですが、Self-Quiz周回のおかげで幸いにもGraded QuizやFinal Examで満点がとれたのでA+が取れました。

f:id:empitsu88:20210609233541p:plain

これまでに受講したコース

ということで以下のコースが修了できました!

+前の大学から単位移行したコース

UoPeopleでDatabases(DB設計・SQL)のコースを修了した。

オンライン大学 University of the People でDatabases (CS2203) を修了したのでその感想を書きます。

これまでのUoPeople関連の記事はこちら:
UoPeople カテゴリーの記事一覧 - えんぴつぶろぐ

はじめに

このコースはDatabasesについて、DBMSの種類や基本的な用語の定義から始まり、情報モデルについての概念をおさえつつRDBMSの設計プロセスを実践を通して学ぶコースです。
SQLについてもANSI/ISOの規格に基づいて、基礎的な部分は網羅的に触れます。

今期は3コース同時受講(統計学Java、Databases)していましたが、このコースが一番楽しかった気がするし実務ですぐ役立ちそうです。

ちなみにコースを始める前の自分のレベルは

  • ORMなら使ったことある
  • 簡単なSQLなら覚えてる
  • 正規化はなんとなく知ってる

みたいな感じです。

学習内容

  • 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設計プロセス
  • トランザクション
  • アプリケーションとの結合

課題について

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を使ったらうまくいきました。

Docker Express: Running a Local SQL Server on Your M1 Mac | by Maarten Merken | Geek Culture | Medium

Discussion Assignment

Discussion課題は

このDatabaseの設計にはどういう問題がありますか、
この設計プロセスで気をつけることはなんですか、
正規化のProps/Consはなんですか、
このSQLはどうやって使い分けますか、

みたいな感じでした。

Unit1から例として実際のDatabaseを構築してER図を提示したりする猛者がいました…が、そんなことをしなくても普通に高得点はもらえるかと思います。

役立ったもの

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で自分の考えを補強する時に役立ちました。

www.amazon.co.jp

Graded QuizとFinal exam

Graded QuizはSelf Quizの内容 + アルファって感じでした。
Final ExamもSelf Quiz / Review Quizにない問題が多く、ふわっとした問が多くて答えに迷うことが多かったような…。

成績

インストラクターがめっちゃ厳しい人でLJでなかなか満点をとれなかったり、 ピアからつけられた微妙な点数(全問正解しているのに85/90点みたいな)に対してGrade Appealしても受け付けてくれなかったりでちょっとモヤりましたがA-で着地しそうです。

f:id:empitsu88:20210608221934p:plain

学習時間

学習時間は8〜15時間/週くらいでした。
Discussion Assignmentで例を提示すべくDatabaseを作成したりと割と頑張ってしまったので、もう少し効率よく進められた気がします。

f:id:empitsu88:20210608164951p:plain
週毎の学習時間

これまでに受講したコース

ということで以下のコースが修了できました!

+前の大学から単位移行したコース

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年くらいありますが、クライアントサイド・フロントエンドがメインでバックエンドのまともな実務経験はほとんどないので楽しみなコースの一つでした。

学習内容

  • 例外処理
  • 計算量
    • ビッグ・オー:𝑂
    • ビッグ・オメガ:Ω
    • ビッグ・シータ:Θ
  • 再帰、ソートアルゴリズム
  • 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など

プログラミング課題

ほぼ毎週ProgrammingAssignmentがあります。
(他のコースで言うWritten Assignmentに相当するもの)
また、Learning Journalでも毎週振り返りに加えてプログラミング演習があります。

データ構造を実装したり、
バッカスナウアで定められた構文ルールを実装したり、
チューリングマシンの一部を作ったり、
ファイルの読取・書込を実装したり、
木構造のトラバースをしたり、
バグのあるプログラムのデバッグをしたり、
パーサーを実装したり、
スペルチェッカーを作ったり、
簡単なWebServerを実装したり、
テキストやグラフィックを描画するGUIアプリケーションを作ったり、

ととても実践的な内容。

とはいってもイチから10まで丸投げされることは少なく、
ベースとなるClassやサンプルコードが渡され、なにをどう実装するか文章で指示されます。
実装する範囲は関数もしくは機能単位で採点基準もシンプル。
テキストの内容やそれまで登場したサンプルコードを理解していればなんとか実装できるはず…。

が、プログラミング自体に慣れていても、指示の文章がめっちゃ長かったり、ベースとするコードの量が多い&仕様がわかりづらかったりでそれなりに時間が取られました。
要件が多い場合も同様。(スペルチェッカーとWeb Serverは結構面倒くさかった…)

Optionalなプログラミング演習もありましたが全くやる余裕はありませんでした。

そしてGUI ProgrammingはなんとSwingを使うので、Reactの関数component+宣言的UI慣れた身としては辛かった…。 せめてJavaFXにしてほしかった…。

ただ課題としては必須ではなかったですが、バッカスナウアでルールを定めつつ再帰下降法でパーサーを作ったり、式ツリーの構築や後置記法での演算、マンデルブロ集合をシミュレーションするなどといった話もあって興味深かったです。

中高生レベルの数式もたまにでてくるのでAlgebra先にやってなかったら超ビビってたかもしれない。 (理解してなくても課題はできます。)

Learning Journal

先程も言及しましたが、Learning Journalでは振り返り+プログラミング演習です。

ただ、プログラミング演習は基本的にnon-gradedになっています。
題材がテキストの演習問題とほぼ同じだったり、木曜日をすぎるとOffical Solutionが提示されるからだと思われます。

でもそのままコピペするともちろん剽窃になっちゃうので、答えは参考に留めつつできるだけ自分で頑張りましょう。

Discussion Assignment

毎回「XXXのメリット・デメリットについて論じて。」みたいな超シンプルな問いが出されます。

複数の参考文献からの引用+サンプルコードとか載せると高得点をもらえると思われます。

Graded QuizとFinal Exam

Graded QuizはSelf-Quizで見たことある問題がほとんどだったので、Self-Quizをちゃんとやってれば楽勝のはず。

ただ、Final Examは半分くらいがSelf-Quiz/Review Quizにない問題で、教科書のかなり細かい内容などが出題されていた印象。

役立ったもの

「選択ソートってどんなやつだっけ?」
木構造の先行順巡回ってどういう順番だっけ?」

という時にアルゴリズムビジュアル大辞典をよく見ていました。
擬似コードやアニメーションも全部載っているので本当に神。

yutaka-watanobe.github.io

学習時間

学習くらいは大体11時間/週くらいでした。
Web Serverを作った週は時間を取られて18時間かかってた😇

右側3本は課題が少なかったUnit8+最終試験の週でした。

f:id:empitsu88:20210608144922p:plain
週毎の学習時間

成績

インストラクターが「毎回10点マシュマロ」「Discussion Assignmentでほとんどの生徒にコメントをくれる」という素晴らしい人だったため毎回ほぼ満点を取れました。
ただFinal Examで何問か落としてA+はとれず。

f:id:empitsu88:20210608155742p:plain

これまでに受講したコース

ということで以下のコースが修了できました!

  • ENGL0101 English Composition 1
  • UNIV1001 Online Education Strategies
  • CS1101 Programming Fundamentals
  • CS1102 Programming1
  • MATH1201 Algebra
  • MATH1302 Discrete Mathematics
  • MATH1280 Introduction to Statistics
  • CS2203 Databases

+前の大学から単位移行したコース

社内勉強会で離散数学の論理学入門について話した。

先日、社内のエンジニア部門で「自分の好きなテーマで発表する」という社内勉強会があったので

「よっしゃ、UoPeopleで離散数学(MATH1302)のコースもやったしその中でも特にプログラミングと関係性の深い論理について話すか〜」

と数理論理学入門についての資料をつくったの公開します。

タイトルで大層なことを言っている割には入門的なことしか書いてません…。

いつかは集合論SQLやTypeScriptについてもまとめてみたいですね。

プロフィール

ABOUT ME

Flash Developer → Technical Director → Frontend Engineer → Software Engineeer

2018年に母になりました。

SNS

ARTICLES/SLIDES

INTERVIEWS

Background.radio ep.19 えんぴつ

2019-2020年振り返り

2020年の振り返り記事を書こうと思ったらブログの下書きから書きかけの2019年の振り返りを発掘したので一緒に公開して供養します。
前半はコロナ禍より前に書いたものなのでテンションがぜんぜん違うのが興味深い。

育児・仕事・学業全部に言及してるので我ながらごった煮すぎる。

(2019年4月)産技大修了

2019年はまだ育休中だったが、2018年10年に履修開始した産業技術大学院大学の人間中心履修証明プログラムを2019年4月に修了した。
このプログラムはUser Experience デザインやHuman Centered Design、ユーザビリティの理論などを基礎から学んだり実践できるもの。
半年間のプログラムではあるが、履修証明制度に基づいて履歴書にも書けるものになっている。

受けた経緯はこちら:

empitsu88.hatenablog.com

この履修証明プログラム社会人向けで、平日夜や週末に授業がある。
ほぼ毎週土曜日10時〜18時+たまに金曜夜というスケジュール。
もちろん授業に出席するだけでなく課外の課題も多い。

  • 予習として課題図書を読んでくる
  • 授業で学んだことをまとめたレポートを書く
  • ユーザーインタビューに繰り出して書き起こしをしてくる

という個人ワークもあれば、グループワークのためにチームメンバーと協力して制作をしたりもする。
もちろん授業中にも作業はするんだけど、圧倒的に時間が足りないし納得の行く成果物を出すためには授業外の時間を使ってすすめることも時には必要だった。

  • facebookグループ上でコミュニケーション取りながら、プレゼン用の資料を分担してつくる
  • プロトタイプをつくってユーザーインタビューする
  • ユーザビリティテストで使うシナリオや資料を整理する

などなど…
更に受講生同士有志で集まっての勉強会や素振り会が開催されていたり。

そんなこんなでとにかく時間が必要だったけど、産技大の活動をしている間快く家事育児を引き受けてくれた夫には本当に感謝。
おかげで授業は全て出席することができたし、課外の課題やグループワークもスムーズに進めることができた。

f:id:empitsu88:20210101130639j:plain
修了証

「育休中は孤独だし平日日中ワンオペになるが故夫への不満が募りがち」とも世間ではよく言われるが、このおかげで夫には感謝こそすれ不満とかほぼなかったように思う。
むしろ頭上がりません。

職場復帰してからは、UX勉強会開催したり、スクラム開発で仮説検証プロセスを高速で回すときに「これ産技大でやったやつだ!!」って進研ゼミ状態になったり学んだことがじわじわ効いてきてる。

(2019年3月)TOEIC250点上がった

2019年3月に数年ぶりにTOEICを受けた。

2018年の振り返り記事にも書いたけど、育休中は英語の勉強をちまちまと進めていた。

スマホのアプリで単語覚えたりリスニングしたりオンライン英会話やったりして、前回からは250点あげることができた🎉

この勢いでIELTSもうけるか!って意気込んでたけど職場復帰した後はオンライン英会話ですら回数をこなすことが難しくなってやめてしまった。

(2019年4月)職場復帰した

約1年取得した産休育休から2019年4月に復帰した。

その時の振り返り記事:

empitsu88.hatenablog.com

復職してからはWebサービスの環境改善や新規事業の開発に携わったりした。

新規事業の開発のことはAdvent CalendarでQiitaにも記事を書かせてもらった。(今見るとところどころ古い内容があって恥ずかしいが…)

qiita.com

技術選定からアーキテクチャ設計、コンポーネント設計、新規アプリケーションのセットアップ、実装、Unit Test、CI、ドキュメント整備、仕様調整、スケジュール調整、などなど少人数で回す必要があったし、Nuxt.jsもTypeScriptも自分は実務では書いたことなかったので業務の合間に勉強する必要もあったしでかなり大変だったけどここでかなりレベルアップできた気がする。

ブランクもあってコードを書く力がかなり錆び付いていたのもあり、モダンフロントエンド環境での設計力・実装力をつけたいと思ってたので渡りに船だった。

(2020年1月)卒乳した

このとき娘は1歳半をとうに過ぎていたが、ようやく完全に卒乳した。
もともと混合育児で、昼間はまったく母乳はあげずに済んでいたが、寝かしつけや夜泣きのときはあげないとギャン泣きされる状態だった。

何度かトライしつつも娘が体調崩したり自分が体調崩したり義実家帰省があったりで幾度となく中断を余儀なくされていたプロジェクトだったが、令和2年を迎えて再度気持ちを新たに挑戦したところあっさりと卒乳してしまった。

今まで私が寝かしつけるときは「はよここに寝て乳飲ませろ!」と言わんばかりに枕を叩きながらぐずり、服をめくってきていたのにそんなそぶりを見せることもなかった。

「もうおしまいだよ〜」「娘ちゃん大きくなったからもうないよ〜」と幾度と話しかけていたおかげかもしれない。

卒乳関連の指導では「赤ちゃんの心と体が必要ないと思ったタイミングで自然に卒業します」説は話半分で聞いてたけど確かに自然なタイミングでやめられた気がする。

どんなに泣いてても一瞬で泣き止ませることができる最終兵器は使えなくなってしまったが、
卒乳後は夜泣きも少なくなったし、
眠い時にママ依存になることもなくなったし、
これからはお酒も飲めるし、
通院するときに授乳してても大丈夫な薬に変えてもらう必要もなくなる🎉

(2020年1月) University of the Peopleに入学した

詳しくはこちら:

empitsu88.hatenablog.com

empitsu88.hatenablog.com

2018年の振り返り記事には産技大の履修証明プログラムに申し込んだ理由について

「"自分はどこに行ってもなんとかやっていけるという自信"を得るためにポータブルなスキルとキャリアがほしい」

みたいなことを書いてたんだけどUoPeopleに興味持った理由も全く同じだった。
UoPeopleで「グローバルでポータブルなスキルを身につけられてるか」っていうとまだまだ序盤なので全然だけど、どんな場所でも生き残れるようになっておきたいという野望はある。

(2020年3月)娘、2歳になった

2020年3月に晴れて2歳になった🎉
この時点での「できるようになったこと」を挙げると枚挙にいとまがない。

  • 85cm 11kg
  • 手すりがあれば一人で階段登れる
  • 単語だいぶ増えてきた。「娘ちゃんのしゃしんー」とか二語文っぽいのはよく喋る。
  • 「娘ちゃんのおててべたべた〜」とか三語文っぽいのも喋る。
  • 歌が好き。「きらきら星」や「ハッピーバースデー」とかよく歌ってる。歌詞がだいぶ聞き取れるようになってきた。
  • パズル好き。アンパンマンのシルエットパズルとかシルエットに合わせて貼るシールとか得意げにやってる。
  • 好き嫌いが激しくなってきた。保育園だと野菜ほぼ食べてこない…
  • トイレトレーニングはまだしてない。けどおむつ替えてほしいときや💩したときは教えてくれるときもある。
  • イヤイヤ期の片鱗がちょっと見えてきた。
    思い通りにいかないことがあるとめっちゃ泣く。お外行きたいのに雨で行けない日とか。
    親のスマホで自分の写真みたいのに見せてくれないときとか。
    でも別のことに気をそらすと一応誤魔化されてくれる。

反対に、「やらなくなったこと」もあるし「できなかったときの娘」とはもう二度と会えないのだと思うととても切ない。

本当にこれで、突然癇癪を起こしたり、思い通りに泣かないとすぐギャン泣きしたり、1日に3回くらいわざと牛乳をひっくり返したりするけど、だけども今日の娘が今までより一番かわいい。
体のフォルムがかわいいし何を喋ってもかわいいしすべての仕草がかわいいし自我が出てきてるのもかわいい。

(2020年4月)認可保育園に転園した

育休復帰後に最初に入園したのは小規模保育所で、1歳児クラスと2歳児クラスしかない場所だった。
つまり、2021年3月までしか居られなくて、2021年4月から預ける場所は別途探さないといけない。
待機児童が多く保育園になかなか入れない地域だったので、「比較的競争率の低い小規模保育にまずは入園し加点を得た上で、5歳児クラスまである認可保育園に申し込み転園する」という首都圏ではよくある戦略を取った。

無事に認可保育園2歳児クラスの内定がもらえたので、約1年間お世話になった小規模保育所を卒園して新しい保育園に転園することになった。

これで5歳まで預ける場所が確保できる!
つまり職を失う心配をしなくて済む!

と安心したのもつかの間、新しい保育園での慣らし保育もそこそこにコロナ禍に突入してしまったのだった…。

(2020年4月〜) つらいつらい在宅勤務 with kids

4月〜6月は3ヶ月弱保育園が登園自粛になって子供の面倒を見ながらの勤務だったのでほんと辛かった。

親がPC触ってるときに限ってまとわりついてきたり(子供からしたらそりゃ気分よくないよね…)
常に「おそといく」「こうえん行く」「うわあああああああ」だし
でも仕方ないとはいえ公園行くのも少し罪悪感あるし
時間帯によっては公園も結構人がいるし
子供は小さい子同士遊びたがっちゃうので娘が他の子に近づく度に「うわあああ密ううううう」って気が気でなくなるし
公園を避けて散歩するにしても近所は車や自転車も通る道ばかりだし
夫と半日交代制で面倒を見るようにはしていたが、やはり同じ家の中なのでぐずってたら気になるし仕事場に乱入されることもあるし
スプリント計画のときに自分の消化予定ストーリーポイントは多少減らしてもらったけど少し罪悪感はあるしで
(ただ半休はちょくちょく使って育児に専念する日は作ってた)

とてもストレスフルな期間だった。

ただ「昼間働けない分、子供が寝た後深夜に仕事の遅れを取り戻す」みたいなことはしないようにしてた(やりたくない)のでUoPeopleの受講もなんとか続けられていた。

empitsu88.hatenablog.com

今思えば「こんな状況なんだし有休バンバン使って週2勤務にするとか2週間まるごと休むとか、仕事の方をもっとセーブすればよかったのでは…」と思うけど、あのときはいつまで休園が続くかわからなくて有休を温存してしまった。(有休が十分手元にないと保育園から発熱お呼び出しかかったとき困るし)
夫婦二人とも在宅勤務且つフレキシブルに働きやすい職場環境というのもあり、在宅勤務 with kidsがギリギリ無理じゃない状況だったのもある。

(2020年7月〜) 保育園再開

緊急事態宣言が明けて約一ヶ月後の6月下旬、ようやく保育園に登園できるようになったので慣らし保育を再開した。

入ったばかりの新しい保育園の上、3ヶ月も登園していなかったので娘が慣れるか心配だったが順調に馴染んでいた。
いまや土日平日問わず家では「ほいくえんいく!」「あしたほいくえん?」「ほいくえんいきたかったあ」とか言ってる。

登園自粛が明けてからの生活

平日日中はずっと夫婦で家で仕事してるのもあって「電車に乗る」とか「地元以外の場所に外出する」というハードルがめちゃめちゃ高くなった。

職場が全社的に在宅勤務推奨になってから結局1-2回しか物理出社はしていない。

もともと休日は予定を入れまくるタイプの人間だったので休日に思うように外出ができないというのは地味にストレスだった。

実は通っていた保育園でも一度COVID-19陽性者が出て休園となった。
その時娘もPCR検査をした。
「うちの子も罹ってて発症したらどうしよう…」
「子供が罹ってたらそりゃ親もかかってるよな…」
みたいな心配もあるにはあったが家族全員ずっと無症状で超元気だったので、それよりも
「罹ってしまった方は症状大丈夫だろうか…」
「命に別状はないのだろうか…重症だったら…」
「保護者などから責め立てられたり誹謗されたりしてないだろうか…」
「もはや誰が罹っておかしくない状況だしそもそも子供から感染ったかもしれんし…」
「幼児は全員ノーマスクだし職員さん命がけの仕事じゃん…」
とか色々考えて結構ストレスだった。

尚、娘の結果は陰性だった。
とはいえ偽陰性の可能性もあるので念のためしばらくは家族みんな買い物・公園・散歩も含めて外出を控えていた。
(保健所の人には結果出るまで外出控えてねとかも含めてなんも言われなかったが…)

在宅勤務自体は最高

自粛生活はストレスだが在宅勤務は最高である。
夫婦ともに在宅勤務なので、娘を保育園に迎えに行って帰ってきたら夫が娘を出迎えて、3人で夕飯食べてみんなで風呂入って寝るみたいなことができている。

本当は平日夜の子供の世話は日替わりで夫と交代してるんだけど、3人でいるのが当たり前になりすぎて、 片方がお風呂連れて行ったり寝かしつけしようとしても
「ぱぱもおふろはいる!」
「ままはどこ!」
「ままといっしょにねるの!」
「ぱぱはどこ!」
って娘がなるので3人で過ごしちゃう日も多い。これはこれでまあ良し。

通勤時間がまるごとなくなったのもかなりありがたい。
在宅勤務じゃなかったら社会人学生やりながら子育てするのかなり厳しかったかも?と思う。

(2020年8月〜)会社のチームブログに色々記事を書いた

会社でチームブログを開設することになったので私も色々記事を書いた。

レガシーなフロントエンド環境をリプレースするためにチームでやっていること

子育て中の社員からみた食べログフロントエンドチームの働く環境

食べログでのAtomic Design 〜どう分類しているか編〜

SassからCSS Modules、そしてstyled-componentsに乗り換えた話

この記事にもある通り、2020年は業務でもりもりReact/TypeScript/CSS Modules/styled-componentsを実装したりアーキテクチャについて考えたり技術選定したりで技術的にも色んな挑戦ができたのはよかった。

(2020年12月)最近の娘

  • めっちゃ喋る
    • 「きょうは、保育園でね、XXXせんせいがね、XXXで、すべりだいやったの」
    • (体調悪そうにしていると)「ままおなかいたいのー?」「おなかいたくなくなったのー?」
    • 「あ!ここぱぱといったおしゅくりやさん(お薬屋さん)」
  • 数字が20くらいまで言える。
  • 英語でも10くらいまで言える。
  • アルファベットの歌全部言える。
  • 英語の歌好き。
    • 「Twinkle Twinkle Little Star」「Rain, Rain, Go Away」「Row Row Row Your Boat」あたりをよく歌ってる。尚、歌詞は適当。
  • 「かぼちゃのABCはー?」「アンパン食パンのABC!」とか親に英語を聞いたり英語で歌うことをリクエストしてくる(無茶振り)
  • 数文字だけだけどアルファベット読める。
  • 自分でズボン履けるけどやる気がないときの方が多い。
  • 良くないことをしたときちゃんと諭すとわかってくれることがある(感動)
    • 寝かしつけ中とかテンション上がると腹や胸の上に立ったり跳ねたりしようとしてくるんだけど
      「ゴフッ…お腹は柔らかくてデリケートだから立たないでね。優しくしてね」って諭すと
      「おなかゆりけーとー?」「あたまはー?」「おててはー?」とか色々聞いた後「あいわかった」って言ってくれたり。
      その後も忘れて乗ってこようとするときはあるけど「デリケートだから優しくしてね!」って言うとハッとした顔をして「あたまもゆりけーとね」って頭なでてくれたりする(感動)。
  • 寝る時間はどんどん遅くなって22時半〜23時くらい。どんなに早く寝室連れてっても保育園で昼寝してると結局この時間になってしまう…。
  • 絶賛イヤイヤ期の上小賢しくなってきた。
    「そふぁーでねんねするのー!」「おちっこしちゃった(してない)」「うんちした(してない)」「おしっこしたい(出ない)」ってあの手この手で寝室から出ようとしてくる。 (嘘とわかっていてもトイレには連れて行かないわけにはいかないので連れて行くが…)

2021年

  • かろうじてUoPeopleやっていはいたけどそれ以外のことが全然だったので2021年は飛躍したい。(ありきたりな言葉)
  • 今年はもしコロナが落ち着けばもっと子供連れてレジャー施設に遊びにでかけたり旅行行ったりもしたい…けどどうなるんだ世界…。
  • UoPeopleはプログラミングの基礎中の基礎みたいなコースはもう修了できそうなのでこれからどんどん難易度が上がってきそう。びびってる。
  • 高校数学の学び直しや大学の教養数学の基礎あたりをやっていたが学んだことを生かして競プロの問題を解くとか実践的なことをやっていきたい。
  • 機械翻訳に頼りすぎて英語力の低下を感じる。英語の勉強を再開したい。

今年もよろしくおねがいします。

Computer Scienceの学位を取るために学費無料のオンライン大学UoPeopleに入ってもうすぐ1年

この記事は社会人学生 Advent Calendar 2020 7日目の記事です。

米国のオンライン大学University of the People(以下、UoPeople)に入って約1年経った振り返り記事となります。

これまでのUoPeople関連の記事はこちら

自分について

UoPeopleのことは普段からこのブログに書いていますが、はじめましての方もいらっしゃるかもしれませんので、自己紹介からさせてください。

Webサービスの事業会社でフロントエンド開発をしています。
2歳8ヶ月の娘の母です。
UoPeopleには今年の初めに入学手続きをして、2020年1月30日のterm 3から受講を開始しました。

University of the Peopleとは

University of the People(UoPeople)とは米国の完全オンライン、学費無料の大学です。
Computer Science のAssociate's Degree(短大相当)やBachelor's Degree(4年制大学相当)が取得できます。

別の専攻では、Master of Business Administration(MBA)やMaster of Education (M.Ed.)など修士号のプログラムもあります。
入学時の事務手数料やコースごとの修了試験料などはかかりますが、それでも4年トータルで$4,860という破格の値段です。

完全オンラインですが、全米認定(National Accreditation)を受けている教育機関です。

動機

自分の遍歴としてはFlash Developer→フロントエンドエンジニアで、就職して以来クライアントサイドのコンテンツ開発をずっとやってきました。
ですが自分のWebエンジニアリングや数学の基礎力の無さを痛感することがしばしばありました。
大学は文系のコースでしたし、理系科目は高校時代に最低限(数ⅠAと数ⅡBの序盤)やったきりで、コンピューターサイエンスを体系的に学んだバックグランドがありません。

今の自分の専門性を高めるにしても、マネジメント職やその他ジェネラリストよりのポジションに舵を切るとしても、エンジニアとしての不変的な基礎力というものが必要だと感じていました。

自分でもちょこちょこと書籍を読んだりAtCoderの問題を解いてみたりudemyなどのオンライン講座をやってみたりもしましたが、
正直言って自分一人だけで継続し続けるのはとても難しいです。

特にアルゴリズムの学習は、数学の基礎知識がなさすぎて躓きまくります。
競プロの解説やアルゴリズムの書籍なんかを読んでると当然数式や用語がバンバン出て来ますよね…。

また、実務ではあまりやらない分野の学習も、書籍や動画でインプットするだけだとそこで 糸冬( ˘ω˘) ってなってしまったり。
やはり「○○ができるようになった」「○○のレベルまで習得した」と言えるようになるにはアウトプットと他人からのフィードバックが必要です。

かといってインプットもアウトプットも誰も強制しないし締切もありません。
それにせっかく勉強するなら客観的な証明、欲を言えば堂々と履歴書に書けるレベルの成果が欲しくなってきます。

ということで

「数学含むコンピューターサイエンスサイエンスを基礎から体系的に学べて」
「アウトプットやフィードバックが必ずあって」
「締め切りなど強制力があるもので」
「履歴書にもかける成果があるもの」

と考えると大学という選択肢はぴったりでした。

また、UoPeopleは「費用が格安」というのも正直かなり大きかったです。

入学を検討したのは子供が1歳のときでした。
約1年取得した産休育休から職場に復帰してしばらく経ち、子育てしながらの仕事にも慣れてきた時期です。
今後の自分のキャリアや未来の収入アップのためにも社会人学生に挑戦してみたい気持ちはありつつも、

「小さい子供がいる状態でいつまで私はまともに働きつづけられるのだろうか?」
「今はなんとかなってるが小1の壁っていうのもあるらしい」
「いつまで自分の時間が使えるのか?」

という不安はもちろんありました。
周りにも子育てしながらバリバリ働いてキャリアを積み続けてる人はまだまだ少なかったですし。
(子供が未就学児でバリバリ働いている方は多かったですが小学生以上のお子さんを持つ方はほぼいません)

ということでいつ挫折してもおかしくないので、失敗しても金銭的ダメージが少ないかどうかはかなり重要でした。

UoPeopleは4年トータルで$4,860と書きましたが、この金額を入学時にまとめて払うわけではありません。
1コースを受講するごとに修了試験料を払う形なので従量課金です。

また、英語力も上げたくて育休中勉強してTOEICの点数を250点上げたりもしてたので
「英語でコンピューターサイエンスを勉強するなんて一石二鳥じゃん!!」
というのものありました。
(本当に一石二鳥だったかは後述)

他のオンライン大学・大学院とも比較して調べたまとめもありますので興味ある方はぜひ。

zenn.dev

入学するには

UoPeopleの入学要件はこちらになります。

  • 16歳以上であること
  • 高校を修了したことを証明できること
    • 高校の卒業証明書などを提出する。
    • 大学既卒なら大学の成績証明書や卒業証明書でも可
  • 英語力を証明できること
    • TOEFL (iBT) であれば61点以上。
    • 他、IELTSや英検でもOK

参考: Admission Requirements | University of the People

TOEFLなどのスコアを持っていなくても、English composition 1というコースを受講して一定の成績を修めればOKです。
私はTOEICのスコアしか持ってなかったので、そのEnglish composition 1を受けて入学しました。

English Composition 1について書いた記事はこちら:

授業について

学習はすべて非同期で、インストラクターやクラスメイトとのコミュニケーションはメールや掲示板などで完結するため、自分のペースで学習を進めることができます。
「リアルタイムで配信を見る」など同期的コミュニケーションは一切ありません。

1コースあたり8週間かかり、毎週課題が出されます。
提出した課題の評価+中間試験+最終試験の結果で成績(GPA: Grade Point Average)が決まります。

学習に必要な時間の目安は、1コースに付き1週間あたり15〜19時間となっています。

卒業までの所要期間

1年が5つのterm(5学期)に区切られており、1学期につき複数のコースを同時受講することも可能です。
常に2コース同時に受けていれば卒業まで4年、常に1コースであれば8年ほどと言われています。

一度に3つ以上のコースを受講して卒業までの期間を短縮することも可能*1ですし、1つだけにしたり、何も受講しない学期をつくる(Leave of Absence )ことも可能です。

Computer Science専攻はどんなコースが受けられるのか

Computer Science専攻のコースは以下のようになっています。

MATH 1201 College Algebra
MATH 1280 Introduction to Statistics
CS 1101 Programming Fundamentals
CS 1102 Programming 1
CS 1103 Programming 2
CS 1104 Computer Systems
CS 2203 Databases 1
CS 2204 Communications and Networking
CS 2205 Web Programming 1
CS 2301 Operating Systems 1
CS 2401 Software Engineering 1
CS 3303 Data Structures
CS 3305 Web Programming 2
CS 3306 Databases 2
CS 3307 Operating Systems 2
CS 4402 Comparative Programming Languages
CS 4407 Data Mining and Machine Learning
MATH 1302 Discrete Mathematics
MATH 1211 Calculus

Electives
CS 3304 Analysis of Algorithms
CS 3308 Information Retrieval
CS 4403 Software Engineering 2
CS 4404 Advanced Networking and Data Security
CS 4405 Mobile Applications
CS 4406 Computer Graphics
CS 4408 Artificial Intelligence

詳細: Bachelor of Science in Computer Science (BS-CS) - uopeople catalog

これ以外に、一般教養科目や他の専攻のコースもいくつか必修で受ける必要があります。
大学っぽいですね!

UNIV 1001 Online Education Strategies
ENGL 1102 English Composition 2
PHIL 1404 Ethics and Social Responsibility
HIST 1421 Greek and Roman Civilization
Disciplinary Areas of Knowledge Requirement –6 courses required

詳細: Bachelor of Science Curricular Requirements - uopeople catalog

これまでの進捗

私がこれまでUoPeopleで受講したコースは下記です。

まだ序盤もいいとこですね/(^o^)\

ただ、14コース(単位数で言うと48)を日本の大学から移行することができたので現在57単位ゲットできてる状態です。
卒業に必要な単位は最低120なので、半分近く得られていることに…!

単位移行によってほとんどの一般教養系のコースをスキップできることになったので編入できたのはかなり嬉しいです。
Computer Scienceの学習をしに来ているので、「ギリシャ・ローマ文明」のコースとか全然モチベあがらんのでね…。

1termあたり1-2講座だけ受講というペースでゆるゆる進めています。

これまでにかかった金額

  • Application fee: $60
    • 申込手数料
  • Exam/Course Processing Fee: $100 × 4=$400
    • 修了試験料4コース分
  • Transfer Credit $17 × 14 = $238
    • 単位移行手数料14コース分
  • ACEI Evaluation Report $225
    • 日本の大学の単位をGPA換算してもらうのに必要だった

Total: $923

あとは成績証明書とか各種証明書の発行手数料(各々数百円)くらいですかね。

単位移行とか一番面倒な手続きはもう終わってるので、
今後はコースごとのExam/Course Processing Feeくらいしかかからないんじゃないでしょうか。

課題がめっちゃ出る

海外オンライン大学だからこそなのかもしれませんが、とにかく課題がめっちゃ出ます。

毎週水曜日に課題が発表され、1週間以内に課題を提出します。

  • Reading Assignment
    • 読書課題。提示された資料を読むor相応の知識がないと他の課題がこなせない。
  • Discussion Assignment
    • 提示されたお題に対する自分の考えを掲示板に投稿する。他の3人以上のクラスメイトに返信・評価をしてDiscussionする。
  • Written Assignment
    • 提示されたお題に対する考え・回答を提出する。他のクラスメイトにピア評価される。
  • Learning Journal
    • 提示されたお題に対する考え・回答を提出する。インストラクターに評価される。
  • Self-quiz
    • 選択式の演習問題。評価はつかない(non-graded)ためなんどでも挑戦可能。

この量が「毎週」出ます。

週によってはWritten Assignmentがなかったり、Graded Quizという中間試験があったりします。

課題の提出有無や出来はコースの成績、つまりGPAに直結するので毎週必死です。

日本での学生時代は「授業に出席して最後に1000字くらいのレポートを出すだけで単位が取れる授業」とかありましたが信じられないくらいです。

どうやって勉強時間を確保しているか

「1コースに付き1週間あたり15〜19時間が目安」と前述しました。
課題が簡単だったり少なめのコースであれば5-7時間で済みますが、自分が苦手な分野のものだと20時間ほどかかったりもします。

f:id:empitsu88:20201207013728p:plain
Python基礎を受講していたときの週毎の学習時間

f:id:empitsu88:20201010214542p:plain
College Algebra(代数学)を受講していたときの週毎の学習時間

課題は子供が寝た後 or 仕事を終えた後 or 土日にこなしています。

平日の夜は、保育園からピックアップした子供の世話を夫と日替わりで担当するようにしています。
世話を担当する日は寝かしつけた後に課題、担当じゃない日は仕事を終えた後やっている感じです。

とはいえ、子供が成長するにつれて寝る時間がどんどん遅くなってきてますし、
絶賛イヤイヤ期のため
「ママもいっしょにおふろはいる!!!」
「ママも寝るの!!!」
「パパはどこ!!!」
「パパもいっしょにねる!!!」
と癇癪起こしたりで結局家族3人で風呂入って寝るみたいな(これはこれで良いのですが…)当番制が意味をなしてない日も多いです。

いずれにせよパートナーの協力のおかげでなんとかできてる感じです。

よかったところ

ここからはやってよかったところの紹介です。

学習内容への満足度は高い

まだ私はプログラムの序盤なので、履修したコースのレベルとしては基礎の基礎です。

Computer Science専攻の一番はじめのコースである「Programming Fundamentals」は「Variables, Expressions, Statementsとはなにか」「Conditionals, Iterationsとはなにか」などから始まり、Pythonの基礎を学んでいきます。
今受講しているJava基礎のコース「Programming 1」もJavaの言語仕様やオブジェクト指向の概念を扱っています。

課題の内容は普段からプログラミングを書いている人間からすると簡単なものばかりですが、それでも得られるものは多いです。

例えば、Programming Fundamentalsで使用するテキストThink Python: How to Think Like a Computer Scientistは副題の通り「如何にしたらコンピュータサイエンティストのように考えることができるか」を教えてくれる本です。

Pythonの機能を使えるようになることではなく、問題解決の考え方を養うことに重きを置かれた本のため、
ifやfor、関数などを使う演習として

ニュートン法平方根を計算してみよう」
再帰を使ってコッホ曲線のようなフラクタル図形を書いてみよう」
「ユーグリッド互除法で最大公約数をしてみよう」

などが出てきます。

Java基礎のコースでも、初週は「FetchとExecuteのサイクル」「非同期イベント」などCPUの仕組みや、TCP/IPJVMとは何かという話から始まります。

Discussionの課題としても言語仕様や概念を自分の言葉で説明したりサンプルを書いたりすることが求められるので理解が深まります。

「コードが書けるようになること」ではなく「考え方を理解して自分で問題解決ができるようになること」をゴールとしているのが大学らしくていいなと思います。

また、数学の必修コースCollege Algebraは高校数学+アルファの内容となっていますが数学にものすごく苦手意識があった私にとってはとてもやりがいがあり、やり遂げた後の達成感は高かったです。

College Algebraについてはこちら:

UoPeopleでCollege Algebra(大学代数学)を修了した振り返り - えんぴつぶろぐ

まだまだComputer Scienceとしては基礎的な内容のコースしか履修できていませんが、これから少しずつステップアップしていけるかと思うとワクワクしますね。

英語のライティングスキルは多分あがった

アウトプットのほぼすべてがライティングなので、ほぼ毎日強制的に英文を書かざるを得ない状況になります。
特に文系の論述が多いコースだと網羅的に具体的に説明しないと高評価が貰えなかったりします。
必然的に長文を書くことになり毎週2000words以上英文書いているというコースもありました。

急いでいる時は辞書や機械翻訳での日→英に頼ることも多いですが、「拙くてもとにかく言いたいことを最後まで書く」というスキルは上がった気がします。

日英両方でインプットするメリット

もともと知らなかった知識を外国語で学ぶというのは時間もかかりますし二重で大変ですが、良かったこともありました。

例えば離散数学の論理演算子の双条件(biconditional)。記号だとこれ:⇔

日本語だと「Aであるとき、かつその時にかぎりB」という説明で「…?」となってましたが英語だと"if and only if"なので理解できたり。

また、Algebra(代数学)のコースでは、高次方程式の解の求め方として、
日本の中学・高校ではあまり聞き慣れないDescartes’ Rule of Signs(デカルトの符号法則)Rational root theorem(有理根定理)を活用したり。
三角比を学ぶUnitでは便利なニモニック 「SOH CAH TOA」を習えたりします。

日本語と英語両方の用語を覚える必要はありますが、ある一つの概念を複数の側面から知ることで理解も深まり記憶にも定着しやすい気がしています。

これらのエピソードは数学ですが、プログラミングは言わずもがな。
何を学ぶにも公式ドキュメントはだいたい英語なので英語で学んだほうが圧倒的に効率的です。

毎日強制的にアウトプットできる。

一人で本を読んだだけでは本当に記憶に定着しないですし、
インプットだけで「習得した」と言うのは難しいため、学んだことをアウトプットする機会が強制的に与えられるのはありがたいです。

入学して一番最初に受けさせられるコース"Online Education Strategies"では、self-directed learnerになるためのノウハウを 嫌って言うほど 教えられます。

そのコースのテキストいわく、

Prepare(準備)→Absorb(吸収)→Capture(記録)→Review(復習)

という学習サイクルを回すのが効果的だとされています。*2

例えばComputer Scienceのプログラムは序盤だと

「parameterとargumentの違いや、それらがなんのためのものかサンプルコードと文章で説明しろ」みたいな

なんだこれ楽勝じゃん…

って課題もあります。

ですが正確な用語で人にわかりやすく説明するというのは案外難しいものです。
英語となればなおさらです。

GPAのためなら頑張れる

当然ですが、課題の提出は1秒の遅れも許されません。
課題を出さなかったり、最終試験で低い点数を取ってしまうとコースのGPAに響きOfficialな成績証明書に残ってしまいます。

GPAの累積値(CGPA)は卒業後に他の大学院に入学する際に重要になってきます。
米国の大学院だとGPA3.0-3.2あたりが推奨要件として提示されていたりします。

私は卒業後どうするかはまだ具体的には決めていないですが、どこかの大学院でMasterを取ることも選択肢の一つとして視野に入れています。

まあ一度課題を出し忘れたくらいであればGPAへの影響は微々たるものですが、せっかくお金を払って学んでいるのでどうせなら良い成績が取りたいです。
ちょっとでも時間ができるとだらけてしまうタイプの人間なのでこのプレッシャーのおかげで頑張れています。

よくなかったところ

もちろん、イケてないところや良くなかったところもあります。

National AccreditationなのでUoPeopleから他の米国大学に編入したいときに注意

UoPeopleはNational Accreditationとなっています。
他のRegional Accreditationの大学に編入したい際に単位が簡単に移行できないという弱点があります。

National AccreditationとRegional Accreditationの違いについてはこちらの記事が詳しいです。

UoPeopleから別の米国4年制大学編入する際だけでなく、卒業後に米国の他の大学院に入学する際にも注意は必要です。

例えば、名門のジョージア工科大学のOnline Master of Science (Computer Science)の入学要件には、「from a regionally-accredited institution」という言葉があります。

Proof that you have been awarded a four-year bachelor’s degree (or equivalent as determined by Georgia Tech) from a regionally-accredited institution.

Admission Criteria | OMSCS | Georgia Institute of Technology | Atlanta, GA

「えっでも米国以外の大学ならregionallyとか関係ないよね?日本の大学卒の人も入学してなかったけ…!?」とか気になるところはありますが…。

ただ、UoPeopleは今年、regional accrediting agencyであるWASCの適正を受けました 。 正式なRegional Accreditationの認定を受ける日は近いかもしれません。

ピア評価はただただ面倒

UoPeople ではピア評価の制度があります。
Discussion AssignmentとWritten Assignmentのスコアはクラスメイトが付けた評価の平均値で計算されます。

つまり不当な評価をしてくるクラスメイトがいたらそれは自分のスコアに反映されてしまうのです。
実際私が受けたコースでも、なにも理由やコメントを書かずに減点してきたり、全問正解のはずなのに「回答が書いてない」と低い評価を付けてくるクラスメイトがいました。
もちろん先生にメールで抗議すればスコアを修正してもらえる場合がほとんどですが、正直とても面倒です

毎週のようにGrade Apealのメールを送っていた時期もあります。
ただでさえ課題で忙しいのに学習以外のことで時間を取られますし、無事点数が修正されるまでとてもストレスです…。

また、こちらが評価するのもぶっちゃけ面倒です。

大学がピア評価を導入している意図としては、
「Self-reflectionの機会を増やし学びを深める」
「他人のworkから学びを得る」
など様々な狙いがあるようです。
(学費無料なので先生の負荷削減の意図もあるのかもしれない)

ですが論述の課題ならともかく、数学の問題を解く課題やプログラムを指示通りに書く課題は自由度が低いため、ただ模範解答と照らし合わせて合ってるか確認するだけの作業に成り果てます。

「英語でCS学べば一石二鳥で時間が節約できるじゃん!」と思っていた時期が私にもありました

結局このツイートの通りなんですが、まだ私の英語力では、未知の分野は日英両方で学習しないと太刀打ちできません。

代数学離散数学のコースでは、何も知らない状態で英語のテキストを読んだら「ハァ?」となったので日本語の資料・動画で予習してから課題に取り組んでいました。
もちろんその分時間はめっちゃかかります。

自動翻訳ツールも使いまくってます。
最初にテキストを流し読みする時はまず翻訳にかけますし、英文を書くときも急いでいる時はみらい翻訳に頼りまくります。

英語で学んでる意味あんのか?って思うときもありますが、精読するときは原文を読みますし、前述したとおり二言語でやる分学びは深まるのでまあ良しとしてます。

TOEICスコアはあんまり上がりませんでした…

先程も言ったとおりコミュニケーションはすべてテキストなのでリアルタイムで会話する機会はありません。
また、動画教材は提示されることもありますが、Youtubeでは字幕という便利なものが付けられるので英語が聞き取れなくてもなんとかなっちゃいます。

つまりほぼReading, Writingしか行わないのですが、それも翻訳ツールを使いまくってると英語力向上にはあまり寄与しません。
(当然ですが…)

今年の7月にTOEICのみんなで模擬受験というものを受けてみたのですが、参考スコアはUoPeople開始前とあまり変わりませんでした…😇

ただ未知の分野を学んでアウトプットするわけなので語彙力はめっちゃ増えました!
(当然ですが…)

MOOCのほうが時間的にも費用的にも効率はいいよ

UoPeopleは大学なのでComputer Science以外のコースも修了する必要がありますし、ピア評価のごたごたもこなす必要があります。
つまり、「自分が本当にやりたかったこと」以外に必要な学習・作業に割かなければならない時間がそれなりにあります。
そしてお金も大学にしては格安といえど40万程度はかかります。

今どきはClass CentralやCourseraなどのMOOC上で名門大学が無料で高品質なコースを提供している時代です。
「学位はもらえなくていい」「好きなコースだけ受講したい」「自分でモチベーション管理しながら学べる」という方はMOOCで学ぶ方が時間的にもコスト的にも効率がよいと思います。

私は無理なので大学に入りました😇

でも総合的にはやってよかったよ

正直言うと、えいやー!と見切り発車でスタートしたところもあるUoPeopleでしたが、今は卒業まで見据えて取り組んでいます。

最初は「8年かかるの?絶対ムリだわ。」 って思ってましたが気づいたら1年経ってたし残り63単位になったので案外できるかも!?って気がしています。

あとコロナ禍で在宅勤務 with kidsやってた時はそんな中でもくそしんどいコースをやりとげたので今後また辛いコースが来ても なんとかなる気がしています。
でも当時は本当に辛かったのでできるのでマイペースにやっていきたいと思います。
Leave of Absence (休学)も気軽にできるし。

このように、UoPeopleはオンライン申し込みフォームに入力して$60払うだけでエイヤー!で始められるので とりあえず一歩踏み出したい!って人にはおすすめです。

(まあその後がめっちゃ大変ですけど…)

*1:一定の成績を収めていれば最大4コースまで同時受講が可能です。

*2:College Success chapter1.3より。