現在このブログの記事は GitLab で管理しており、ブログも Gitlab Pages でホスティングされています。バックアップも兼ねて、ブログのデータを GitHub にミラーリングしておこうと思います。
...Home
University of London / MSc Computer Science: Project(1〜5 週目)
ロンドン大学で MSc Computer Science: Project モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 24 週のうち 1〜5 週目の内容を記録します。(1 週目開始:2024 年 4 月 8 日 / 5 週目終了:2024 年 5 月 12 日)
...University of London / MSc Computer Science: Software design and programming(前半)
ロンドン大学で MSc Computer Science: Software design and programming モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 1〜5 週目の内容を記録します。(1 週目開始:2024 年 4 月 8 日 / 5 週目終了:2024 年 5 月 12 日)
...Ubuntu で無限ログインループ状態になったときの対処方法
初めてこの状態になったときは焦りました。対応手順をメモしておきます。
きっかけは H.264 コーデックの動画ファイルを Ubuntu で再生しようとしたときのこと。デフォルトの動画プレイヤーの初期状態ではそのコーデックに対応していないということで ubuntu-restricted-extras
パッケージ apt
でインストールしたら掲題の状態になってしまいました。
VMware Fusion Player で Ubuntu を起動する
Mac に VMware Fusion Player をインストールし、その上で Ubuntu を起動するところまでの手順をメモしていきたいと思います。
VMware Fusion は、Mac の仮想化ツールです。
VMware Fusion is a software hypervisor developed by VMware for macOS systems. It allows Macs with Intel or the Apple M series of chips to run virtual machines with guest operating systems, such as Microsoft Windows, Linux, or macOS, within the host macOS operating system.
...
University of London / MSc Computer Science: Object-oriented programming(後半)
ロンドン大学で MSc Computer Science: Object-oriented programming モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 6〜12 週目の内容を記録します。(6 週目開始:2024 年 2 月 12 日 / 12 週目終了:2024 年 4 月 1 日)
...University of London / MSc Computer Science: Cloud computing(後半)
ロンドン大学で MSc Computer Science: Cloud computing モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 6〜12 週目の内容を記録します。(6 週目開始:2024 年 2 月 12 日 / 12 週目終了:2024 年 4 月 1 日)
...Cloud Run のコールドスタート時間を言語別に計測してみた(Python/Node/Go/C++/Rust)
GCP の Cloud Run のようなインスタンス毎の課金制 PaaS サービスをはじめ、Cloud Functions や AWS の Lambda といった FaaS の永遠の課題はコールドスタート問題ですね!
今回は、私が日頃からお世話になっている Cloud Run について、言語別にコールドスタート時間を計測してみました。
...University of London / MSc Computer Science: Object-oriented programming(前半)
ロンドン大学で MSc Computer Science: Object-oriented programming モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 1〜5 週目の内容を記録します。(1 週目開始:2024 年 1 月 8 日 / 5 週目終了:2024 年 2 月 11 日)
...University of London / MSc Computer Science: Cloud computing(前半)
ロンドン大学で MSc Computer Science: Cloud computing モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 1〜5 週目の内容を記録します。(1 週目開始:2024 年 1 月 8 日 / 5 週目終了:2024 年 2 月 11 日)
...University of London / MSc Computer Science: Information security(後半)
ロンドン大学で MSc Computer Science: Information security モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 6〜12 週目の内容を記録します。(6 週目開始:2023 年 11 月 13 日 / 12 週目終了:2024 年 1 月 3 日)
...Puppeteer を Cloud Run で動かすまで
ローカルで正常に機能していた Puppeteer ですが、Cloud Run にデプロイした後はエラーが出てしまい動かなくなりました。対応した手順のメモ書きです。
デプロイ直後に出たエラー #
Could not find Chrome (ver. 121.0.6167.85). This can occur if either
1. you did not perform an installation before running the script (e.g. `npx puppeteer browsers install chrome`) or
2. your cache path is incorrectly configured (which is: /home/node/.cache/puppeteer).
For (2), check out our guide on configuring puppeteer at https://pptr.dev/guides/configuration.
エラーで動かないのは残念ながらも、親切にも対応方法を案内してくれています。
...University of London / MSc Computer Science: Information security(前半)
ロンドン大学で MSc Computer Science: Information security モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 1〜5 週目の内容を記録します。(1 週目開始:2023 年 10 月 9 日 / 5 週目終了:2023 年 11 月 12 日)
...読書メモ:達人に学ぶ DB 設計
- 達人に学ぶ DB 設計 徹底指南書 ~ 初級者で終わりたくないあなたへ
- https://www.shoeisha.co.jp/book/detail/9784798124704
本書は全9章からなる約 300 ページほどの本で、1〜6章までが DB に関する基本的な事柄の説明、7〜9章が設計に関するノウハウ的な内容になっている。前半部分について具体的には、1章がリレーショナルデータベースに関する説明、2章がデータベース設計にまつわる概要説明と RAID やバックアップに関する説明、3章が正規化、4章が ER 図、5章が非正規化、6章がインデックスやオプティマイザや実行計画に関する説明となっている。書籍名の「初級者で終わりたくないあなたへ」から、この本は中級者向けの事柄を扱ったものと想像していたが、思いの外基本的な内容が多く期待していた内容とギャップがあった。後半の設計に関するノウハウに関してはある程度常識的なものも多い。このような内容を勉強したいのであれば以前に読んだ「SQL アンチパターン」という本が良かった。総じて言うと、データベースエンジニアでなくとも、アプリケーションエンジニアとしてある程度 DB に触れたことがある人であれば、本書はもう必要ないかもしれない。
...読書メモ:入門 監視
あなたのシステムはきちんと動いていると言えますか? 本書は、システムのどの部分をどのように監視すべきか、また監視をどのように改善していくべきかについて解説する書籍です。
...
Cloud Run にヘルスチェックすることでコールドスタートを防ぐ
Cloud Run では最小インスタンス数の設定が可能で、これを1以上に設定することでコールドスタート問題への対策が可能となります。
ただし、これは常にコンテナを起動していることになるので当然その分の料金がかかります。CPU 1 個、メモリ 512MB の最小限のリソース構成でも1台あたり約 10 USD/月の費用となります。
...GitHubからDiscordへ通知する
Github の何かのイベントを契機に Discord へメッセージを飛ばす設定の手順です。
1.Discord の Webhook エンドポイントの作成
- Discord のサーバ設定またはチャンネル設定を開きます。
- Integrations のタブを開きます。
- Create Webhook ボタンを押します。
University of London / MSc Computer Science: Data management(後半)
ロンドン大学で MSc Computer Science: Data management モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 6〜12 週目の内容を記録します。(6 週目開始:2023 年 8 月 14 日 / 12 週目終了:2023 年 10 月 2 日)
...CISSP試験合格記録 - 勉強方法など(2023年)
CISSP(Certified Information Systems Security Professional)試験を受験し合格しました。今後受験される方のために情報をまとめておきます。
以下、私が経た流れに沿って「受験申込 ~ 勉強方法 ~ 受験当日 ~ 合格」の流れで記載します。
...CISSP 公式問題集:勉強メモ
以下の CISSP 公式問題集を解きながら作成した自分用のまとめです。
- CISSP 公式問題集 | NTT-AT
- https://www.ntt-at.co.jp/product/cissp_practice_tests/
これは私があとで見返したいと思った内容のメモであり、すべての範囲が網羅的に記録されているわけではないことにご注意ください。例えば、ある程度しっかり記憶できたため見返す必要はないだろうと思われた事項などはここでは登場しません。
...CSS: flex-grow の代わりに使う CSS Grid
私が CSS の Grid を使う場面といえば「The 格子状のレイアウト」のようなデザインを作る時でない限りほとんどありませんでした。複雑なデザインを作ることも少なく、基本的に Flex で事足りるためです。
...読書メモ:Clean Coder プロフェッショナルプログラマへの道
- Clean Coder プロフェッショナルプログラマへの道
- https://www.kadokawa.co.jp/product/301806000677/
かつて読んだことがある本でしたが、手元の本をいくつか処分するにあたって再読しておこうと思い、その記録です。著者の Robert Cecil Martin 氏はアンクル・ボブ(Uncle Bob, ボブおじさん)という愛称で呼ばれる方ですね。
...読書メモ:暗号技術入門(第3版)
- 暗号技術入門(第3版)
- 出版社サイト:https://www.sbcr.jp/product/4797382228/
- サポートサイト:https://www.hyuki.com/cr/
セキュリティの勉強の一環で読書。著者の結城さんは技術系の本を数多く出版していることで有名。
...読書メモ:安全な Web アプリケーションの作り方(第2版)
- 体系的に学ぶ安全な Web アプリケーションの作り方(第2版)
- 出版社サイト:https://www.sbcr.jp/product/4797393163/
- サポートサイト:https://wasbook.org/
長いこと積読状態にあったが、最近セキュリティについて勉強しようと思い立ちようやく読了。セキュリティ界隈では著名な徳丸さんによる本で、本書は「徳丸本」と呼ばれることも多い。
...University of London / MSc Computer Science: Data management(前半)
ロンドン大学で MSc Computer Science: Data management モジュールを履修中。
講義内容に関して記録した個人的なスタディノートです。
全 12 週のうち 1〜5 週目の内容を記録します。(1 週目開始:2023 年 7 月 10 日 / 5 週目終了:2023 年 8 月 13 日)
...Jest: beforeAll, beforeEach, beforeAll, beforeEach の実行タイミング
読書メモ:リファクタリング(第2版)
- リファクタリング(第2版)
- https://www.ohmsha.co.jp/book/9784274224546/
年単位で長いこと積読してしまっていた上記を読了。
著者は著名なソフトウェア技術者であるマーティン・ファウラー。一部の章については、こちらも同様に著名なケント・ベックと共著になっている。昨今のアジャイル開発の先駆け(*)となったエクストリーム・プログラミング(XP)を提唱したのがケント・ベックで、そのなかでリファクタリングの重要性も語られていた記憶(XP の書籍は読んだことがあるのだが、手元に残っていないため確認できず)。本書で語られていたが、マーティン・ファウラーはケント・ベックにリファクタリングを教わったらしい。マーティン・ファウラーはリファクタリングの可能性と重要性を認識し、それを広めるべきと考えたが、当時のケント・ベックは XP 本の執筆に忙しかったため、マーティン・ファウラーがリファクタリングの本を書くことにしたとのことだった。第1版は 2000 年に発売されていて、改訂第2版である本書 2019 年に発売された。第1版では Java を用いて説明していたものが、第2版では JavaScript へと変わっている。
...読書メモ:Head Firstデザインパターン(第2版)
- Head First デザインパターン(第2版)
- https://www.oreilly.co.jp/books/9784873119762/
上記を読了。内容をメモしておく。
オブジェクト指向プログラミングにおいて、先人たちの知恵と経験の結晶である「デザインパターン」を学ぶことで、頻繁に起こる問題とその対応策を体得し、優れた設計に基づいた信頼性の高いコードを効率的に開発することが可能となります。GoF の真髄を理解するため、教育心理学に基づきビジュアルを重視したレイアウト、文体、クイズやパズルを随所に盛り込み、飽きることなく読み進められる工夫を凝らしています。
...
読書メモ:JavaScript 関数型プログラミング
- JavaScript 関数型プログラミング 複雑性を抑える発想と実践法を学ぶ
- https://book.impress.co.jp/books/1115101137
上記の本を再読。今日では関数型プログラミングのエッセンスが広く浸透しているように思う。たとえ開発者が意識していなくとも、関数型プログラミング由来の考え方を自然なうちに用いている場面が多いはず。読書記録として、本書冒頭の部分を抜粋してまとめる。
...読書メモ:プリンシプル・オブ・プログラミング - 3年目までに身につけたい一生役立つ101の原理原則
以下の本を読んだ。記憶しておきたいところについてメモを残しておく。
- プリンシプル・オブ・プログラミング - 3 年目までに身につけたい一生役立つ 101 の原理原則
- https://www.shuwasystem.co.jp/book/9784798046143.html
以前に購入してから年単位で積読状態にあったもの。本棚の整理にあたり今回ようやく目を通した。本書は、プログラミングにおける用語・格言やセオリーの紹介と、それが我々に伝えようとしていることを説明したものである。初めて目にするようなものはほとんどなかったが、そのなかでも時折り見返したい内容をここに書き留めておくことで読書記録とする。
...