パラドックス

民主主義の決定方法として多数決がありますが、多数決をとったときにすべての意見が一致することがあります。

これを満場一致といいますが、じつはこの満場一致を信じることは危険なケースがあるという話です。

強盗の話

ある ...

パラドックス

すべては夢の中の話である可能性

夢をみていると、時々それが夢なのか現実なのかの区別がつかなくなることがないでしょうか。

水槽の脳という話は、そもそもあなたが現実だと思っていることは、実はシミュレーションされた仮想的なものだ、 ...

システム開発, プログラミング入門

なぜシステムでバグが発生するのかを考えてみました。

例えば二つの値を加算した結果を返す処理を書きたいとします。

const add = (a, b) => a + badd(1,2)//3add(2,10)// ...

TypeScript

const is = <T extends unknown>(a: T, ...b: ]) => b.every(_ => _ === a)console.log(is('string', ' ...

TypeScript, プログラミング入門

配列の二つ目の要素がstringである型。(少なくとも要素は二つ以上ある)

type Hoge = ]const a: Hoge = //okconst b: Hoge = //ngconst c: Hoge = //ngcon ...

TypeScript, プログラミング入門

argumentsは型安全ではない

argumentsは型安全ではないため、以下のコードのtotalとnはいずれもanyになります。

const sum = function(){return Array.from(argumen ...

JavaScript, システム開発, プログラミング入門, リファクタリング

凝集度の論理的凝集の例

以下の getProductDetail は商品の名前と価格を返す関数です。

apple: 100

const getProductDetail = (product) => { cons ...

未分類

テストを自動化できたら便利ですが、テストコードのメンテナンスが必要なのでその分コストがかかります。

Experiences of Test Automation という本によると、4回目のテストが逆転する分岐になるようです ...

TypeScript

A <: B は、AはBのサブタイプである、と言う意味である。

この場合、Bを期待するところでAを使うことができる。

以下の例であてはめると、TreeNodeがBでLeafNodeがAになる。

ty ...

人生

よくあたると言われている をやってみました。

結果は論理学者でした。

たしかに理屈っぽいのであっていると思います。

10分程度でできるのでぜひ試してみてはいかがでしょうか。