設計についてあれこれ考えたこと

About 本記事は、設計についてここ一年で考えたことの備忘録です。ADR、問題空間、ペースレイヤリング、Wardlley Mapsなどの話題を扱っています。 About 1. 意思決定行為は記録できるか? Whyをどこまで/どうやってドキュメントするのか問題 Arthitecture De…

トラブルシュートの進め方

本記事は社内wiki向けに書いたのですが、反応がよかったので本ブログにも転載します。 仕事柄トラブルシュートをする機会が多いのですが、いけてないトラブルシュートに膨大な時間を溶かした結果、「こういうやり方がいいんじゃないか?」と思いに至りました…

暗号の基礎

はじめに X509などの暗号化方式の基礎を理解できていないと思ったので復習しました。 1. 暗号化と複合化 1.1. 暗号化とは あるメッセージを元がわからない別の情報に置き換えることを、暗号化( encryption ) と言います。 1.2. 複合化とは 暗号化されたメッ…

Windows10でPC起動時にNTP時刻同期が行われない

問題 WindowsでPC起動時に時刻同期が自動が行われずに、実時刻とWindows OSが有している時刻がずれる。 以下の操作にて、手動で同期すれば一時的に時刻は合う。が、時間がたつと時刻ズレが再発する。 あるべき状態 「数時間ズレる」といったレベルの時刻ズレ…

IT英和辞典

Qiitaのこちらの記事を見てすごくいい!と思ったので、試作してみました。英文の記事を読むときに時々出てくる英単語の訳語集です。少しずつ追記して育ていこうと思います。 単語 意味 Agnostic 様々なシステムで相互運用可能な状態であること/「特定のシス…

IntelliJでpom.xmlがMavenプロジェクトとして認識されない

問題 IntelliJでJavaプログラムの含まれたディレクトリをインポートすると、 以下のように pom.xml がMavenプロジェクトのファイルとして認識されないことがある 対処 こちらのマニュアルに従い、 プロジェクトツールウィンドウを右クリック→フレームワーク…

Azure Kubernetes Service (AKS) のホワイトペーパーの執筆に参加しました

www.ap-com.co.jp

Julia Evansのデバッグをする時に心がけるべきこと

Tech 系の手書きコミックで著名な Julia Evans さんの作品です。 定期的に見直すべき内容だと思うので記事化しておきます。 出展は こちらのtweetです。

本ブログの記事作成時の方針

About 当ブログ内で記事を書く際の方針やスタイルをメモする場所です 文章を書く際のコード規約に近い何か Rules 1. コンテンツ 記事を書く際は、読者を想定し、以下が伝わることを目的に書く。 どんな問題を解決するために、何について話をしようとしている…

Blogをメンテナンスしました

テーマを変更しました サイドバーの順序を見直しました カテゴリに階層構造を導入しました 参考にしたサイト

メンタルモデルとは何か

読者にとってわかりやすい資料を作りたいけど、わかりやすさってなんだろう?と悩んだ経験はないでしょうか? そのような悩みを持つ人にとって有益なメンタルモデルという概念があります。メンタルモデルとは、人間がインプットされた情報を理解するために頭…

ブール値(Boolean)の元になっているのはこれ?

ビジネス本を読んでいたら、ブール値の起源らしき情報について書かれているくだりを見つけました。ので備忘的に引用しておこうと思います。 ブールは真実の発言を「1」とし、虚偽の発言を「0」として、論理の問題が数学のように解けることを示した。それがす…

識別子 (identifier) とは何か

wikipedia の定義から言葉の意味を考える https://en.wikipedia.org/wiki/Identifier An identifier is a name that identifies (that is, labels the identity of) either a unique object or a unique class of objects, where the "object" or class may …

設計思想 == トレードオフに対する価値観の表明

ITシステムの設計をする際に、そのシステムを取り巻く制約条件・トレードオフ構造を把握することはとても重要です。そのような事柄について何をどのように考えるべきか、備忘メモを残しておこうと思います。 設計時に考えるべき事 1. 何と何がトレードオフと…

アトミック性(Atomicity)とは何か

可視性/観測性に着目さた定義の仕方が秀逸と感じたので、メモとして残しておきます。 アトミック性という考え方に実務のなかで触れる場面は色々あります。たとえば、トランザクション処理を考える際のACID特性のA。 また、ある処理を並行で実行しても問題な…

Ubuntuで夜間モード( Night Light feature )を有効化する

概要 目に優しい開発環境構築のため、普段Windows機利用時は f.lux を愛用している Ubuntuでもf.luxの導入が可能かどうか調べた所、 UbuntuのNight Lifght機能を使うことが推奨されていた ので試してみる 環境 $ cat /etc/os-release | head -2 NAME="Ubuntu…

TECHONOLOGY RADAR Vol25

年に2回Thoughtworks社が発表の TECHONOLOFY RADAR の最新号が2021年10月に発表された。その内容についてのメモ。 ※ Vol23発表時のメモはこちら Techniques Four key metrics Four key metrics はソフトウェアのデリバリープロセスのパフォーマンスを測定す…

Microsoft Japan Digital Days 2021 に登壇しました

www.ap-com.co.jp

中の人がAWS Lambdaの開発の歴史を語る動画を見た

AWS Lambdaの開発をリードしているMark Brookerが、Lambdaの内部的なアーキテクチャや開発の歴史を語る動画を見たが、Firecrackerベースのアーキテクチャを構想した時期の回想、Rust採用の理由と経緯などが語られていてよかった。re:Invent 2020の発表 は未…

Wardley Maps

re:Invent 2020で技術革新の影響を可視化するための手法として Wardley Maps という手法がAdrin Cockroftによって紹介された。[1] ( AWS re:Invent 2020: Adrian Cockcroft’s architecture trends and topics for 2021 ) 本記事ではその概要を解説する。 サ…

Rule of 3 , by Adrian Cockroft : ミッションクリティカルな処理は3重に冗長化しよう

ITシステムの冗長化設計の際の考え方として、Rule of 3 という指針があります。 Rule of 3 とは「ミッションクリティカルなシステム/処理を設計する際は、3重冗長を基本としよう」という考え方です。 AWSのAdrian Cockroft氏により提唱されました。*1 この設…

設計をするときは要件、課題、解決策の順番で考える

『建築の設計力』 という本の内容を元に考えた、設計をするときの思考プロセスについてのメモです。 設計をするときは要件、課題、解決策の順番で考える 設計をする時は、要件をもとにまず課題を設定し、それから解決策を考える 進め方が望ましいです。 fig.…

Mavenにてpom.xml解決時にjarファイルが格納される場所を変えたい

概要 Mavenによるビルド実行時のjarの保存場所は${user.home}/.m2/settings.xml ファイルを作成する事で変更することができる。 ※デフォルトでは${user.home}/.m2/repository/ 配下に保存される。 環境 Ubuntu 19 Maven 3.5.2 Java 11.0.5 settings.xml の設…

Microsoft Azure : マルチテナントの際のサービスプリンシパルの設計

背景 AzureのAADでは、人間以外のアクターが認証認可を行うために、アプリケーションオブジェクトとサービスプリンシパルという2つのAADオブジェクトが用意されています。 これらのオブジェクトはMS Learnで解説の通り、2つで1セットであり、ユーザーからは…

ソフトウェア開発タスクの4分類

The (missing) value of software architecture を読んでいて有益なフレームワークだと感じたのでメモを残しておく。

MySQLサーバがクエリ実行時にCLientに返すパケットの構造

about 以下のMySQLの公式ドキュメントに記載の SELECT @@version_comment の実行結果として、返されるパケットの構造を図にまとめたメモになります 実際に同じ構造のパケットが返ってくるかどうか未確認のため、今度パケットキャプチャをし確認してみようと…

AWS S3でRead After Write Consistencyが保証可能に

AWS S3が強整合性/Read After Write Consistencyを保証可能にアップデートされたことが発表された。これでまでは、結果整合性( Eventual Consistency ) までしか保証されていなかった ため大幅な機能改良となる。 詳細な仕様は以下のページで解説されている…

yhコマンドでkubectl get -oyamlの結果をカラーリングする

yhコマンドとは YAML形式のデータをカラーにしてくれるコマンドです. jq(1) 風にパイプ経由で使うことを想定されています kubernetesレポジトリのこちらのissue にて、存在を知りました kubectl get ... -oyaml の実行結果をカラーにしたい、というモチベー…

Ubuntu20でBPF Compiler Collection(BCC)を試す

BCCの概要 eBPFをバックエンドで実行する可観察ツールです 環境 $ cat /etc/os-release | head -2 NAME="Ubuntu" VERSION="20.04.1 LTS (Focal Fossa)" How To Install 公式ページのインストール手順に記載のように、 apt(1) で導入可能でした ( 2020年11月…

論文メモ:Firecracker: Lightweight virtualization for serverless applications

About this page AWSのLambdaとFargateで採用のFirecrackerについて解説する、以下論文を読んだ際のメモです コンテナ基盤のマルチテナント設計やセキュリティ設計について有益な説明が多かったのでその観点でメモを残しておきます Multi Tenancy Capabiliti…

/* https://sunrise033.com/entry/hatena-blog-how-to-hierarchicalize-categories */