たれぱんのびぼーろく

わたしの備忘録、生物学とプログラミングが多いかも

2019-11-01から1ヶ月間の記事一覧

監視/モニタリング

目的 促進・予防・改善・維持・緩和の前提となる「事実の収集」 段階 測定 記録 通知 表示: always, pull 報告: regular, push 利用 監視結果の利用(いかに促進・予防・改善・維持・緩和につなげるか) 監視は特定の側面のみを対象とする. 定量化した指標を…

短期間の集中具合を上げる

結局のところ、hoursスケールだとsingle task向きの人間. いかに単位時間の密度を上げていくか 割り込みタスクを減らすか 気をそらす要因を減らすか 動画流すのは結局良くない. 音楽も合わない. モチベーション上げるために一時的に音楽聞くのはとても有効だ…

bacon.js

FRP library functionalç³» (map, filter) streamç³» (merge, combine) boss (flatMap, combineTemplate) Element (event source)

当たり前のレベル

"当たり前のように" "息をするように" "自然と" 動物は常時熟慮をするようにはできていない. 手癖で動いている. "当たり前"の手法は問わない. 習慣 情熱 自動化 なんでもいい。 c.f. 凡事徹底 挑戦を楽しむ c.f. パトおじ

YAGNIと設計とバランス

目的と良い設計と抽象化/汎化と複雑性 オーバーエンジニアリング 欲しくないもの: 非効率な資源の利用 ある実装をする際 シンプルに1時間で実装 実装のメンテコストは中 実装の拡張コストは大 抽象化しつつ1時間で実装 実装のメンテコストは中 実装の拡張コ…

現実に基づく

現実を認識し、判断し、行動する. 現実を認識しなければ行動は "くじ引き" になり、現実から目を背ければ行動は "現実と真逆の虚構を扱う" ようになる. 「現実に基づく」という当たり前を高いレベルで実行することが人生のコツ. 臭いものは臭くしておく 概要…

総合力

holistic 全人的 部分最適/全体最適 2+2 = 1+3 # 理論、思考、実装、モチベーション、リソース, 全部で勝負. 期間 mealiy, daily, weekly, monthly, yearly

すべての人に好かれることはできない

勘違いによる嫌われ 説明を聞いてもらう必要 嫌いになったら聞こえなくなるタイプ 考える気がない/られないタイプ ワラ人形タイプ 嫌われは別件批判の道具で真理に興味がない 勘違いが解消しても好きにはなってくれない

ソフトウェア開発の立ち位置

原初的: 設定された問題をソフトウェアで解決する 「問題を解く」 現代的: 取り組むべき課題に対し、ソフトウェア開発を介して課題の明確化や問題解決を図りながらより良い回答を求めていく 「状況を改善していく」 プログラミングは曖昧さを扱うことが不得…

分離と汎化

entangled -> separated -> generalized ごちゃごちゃのコードはそのまま汎化できない. コードを整理して機能別にまとまりを作って、共通部分を汎化用インターフェースとして切り出す. 抽象化 -> 最上層: 複雑性↓、下層: 複雑性↑ 汎化用インターフェース自体…

TypeScriptでデータフロー中心のプログラミングを実践する

論理 見通しの良さ(怠惰プログラミング) 状態分離 + 宣言型プログラミング データフロー定義 + ランタイム TSでの実装 データフロー定義 単純な関数連鎖 ランタイム候補 ただの関数連鎖 独自のObserverパターン Redux FRP RxJS Bacon.js 定期data fetchか…

楽なプログラミングに求められるもの -見通しの良さ、コード量、etc-

怠惰たれ。 怠惰たるために、楽にプログラムを書きたい。 そのために何が必要か。 背景 -書き方の工夫はできることを増やしはしない- ある言語を使う限り、べたべたの命令型パラダイムで書いたコードとOOPやFPで書いたコードで、実行可能な内容は等しい。 あ…

ドメインモデル -Godモデルは人間にとって早すぎる-

Godモデル: 対象の全ての情報を正確に含んだモデル このモデルさえ上手く扱えれば全ての用途において全員が単一モデルが利用できるため神。 → 残念ながら、良く設計された数千の属性をもつモデルは人の手に余る…扱えない… 「Godモデルの○○属性の処理について…

プログラミングにおける「状態/state」

状態は現実であり武器でありバグの温床. 共にやっていくには知識が必要. 言葉 状態 / state 状態を持つ / stateful 1 状態を持たない / stateless 状態とは何か なにであるか 変化しうる値 参照"される"値 独立した値 何かから導き出されるものではない 1つ…

micro frontends

「分散したコンポーネントが協調してアプリケーションを構成する」 協調 = 複数の独立起動するコンポーネントが相互作用してアプリケーションの機能を達成する. 分散されるときに"共有"されるべきものを定義する(interface) c.f. local state domainが外部…

いわゆる「タスクリスト」「ToDO」は何をもたらすものなのか

「タスクリスト」「ToDO」は何が欲しくて書いてるものなのか. # 神から「これをすべし」という信託ToDOが渡されて、やるか? => 他人/親から「これをやりなさい」といわれて、やったか? すべきことの具体的リストを渡されても、それをあっさりとやるとは限…

Redux

Redux is a predictable state container for JavaScript apps 概要 Reduxが欲しいもの: 予測可能性/predictability (statet=0, action1, 2, ..., n, reducers) が与えられれば、t=0からt=nまでの全てのstateが予測・再現できる. ∵ RootRuducer(statet, acti…