たれぱんのびぼーろく

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

2019-01-01から1年間の記事一覧

Oculus Quest推奨開発環境@2020-08-21

Unity version: 2019.3 Oculusの推奨のうちlatestは2019.3 We recommend using one of the following versions: 2018.4 LTS or 2019.3. docs Setup Unityでのセットアップ不要。Android ModulesでSDK, NDK, OpenJDKを自動インストールしておけばいい. URP 対…

TypeScriptはdot記法とbracket記法で異なる型推論をおこなう(オブジェクトプロパティアクセサー)

JavaScript/TypeScriptではオブジェクトのプロパティにアクセスする表現をプロパティアクセサーという。 プロパティアクセサーには2つの記法、dot記法とbracket記法がある。 const obj = { a: 2 }; // dot notation obj.a = 1; const dot = obj.a; // bracke…

Redux remote tools

zalmoxisus/remote-redux-devtools reduxjs/redux-devtools/packages/redux-devtools-cli <= zalmoxisus/remotedev-server zalmoxisus/remotedev zalmoxisus/redux-devtools-extension jkzing/vscode-redux-devtools 「redux-devtools」が基礎 browser exten…

ソフトウェアテスト

clear goal, achivement check, secure improvements 何を書きたいか明確にし(曖昧なテストは書けない)、その達成度を確認でき、完成後の改善における安心感を与えてくれる red is red, check green, secure refactoring ソフトウェアテスト - Wikipedia …

ものごとの鮮度

鮮度が落ちるといいことが1つもない 鮮度とは 鮮度が落ちたもの 立ててからずいぶん時間がたってしまったproject さっぱり進捗が出ず、モチベーションが下がっている取り組み 先送り先送りしてきたToDO Google Calendarにしょっちゅう登場する未処理の「アレ…

「腰が重い・やる気が出ない」=> 腰軽サポーター

やったら楽しい・意義深いけど腰が重い satisfactionしているthingsでも腰が重いときは重い. そんなときは補助具/サポーターを使おう! thingsの分割、リストへの登録、片っ端からの実行とリスト☑ テンポよくさくさくとこなしていくうちに腰が軽くなるぞ. 背…

気が乗らない・腰が重い・めんどくさい・やる気が湧かない

気が乗らない 腰が重い めんどくさい やる気が湧かない あとで振り返ると「やっときゃよかったなぁ…」「グダグダしすぎたなぁ…」 どうしてこういう気分になるのか、この気分の正体は何なのか、いつなりやすいのか. 対処法 「腰軽サポーター」 「腰が重い・や…

思い立ったが吉日

思い立ったが吉日。思い立ったが吉日。思い立ったが吉日。 0.1やる、上手くいく、やる気出る。 0.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…

Parallel WaveGAN

TTS Transformer-based parameter estimator + Parallel WaveGAN vocoder ref: Transformer TTS & FastSpeech Base: FastSpeech i/o: phoneme sequences + accent -> mel-spectrograms model: a six-layer encoder and a six-layer decoder (each was based …

監視

記録/Recording 監視/Monitoring 通知/Notification 表示/Display 報告/Reporting 監視/monitor 対象の状態を確認し、設定された現象が起きるかを注視しておくこと 「対象に動きがないか監視をしておいてくれ」 「記録班からの映像が届くので君はそれを監視…

上手くいくときにダメを安定させる仕組みを作っておく

集中力があった時の自分を信用して、それ以外の自分を信用しなくていいのは楽だ 注意力散漫で集中が短時間しか保てない人間としては、テスト駆動開発とか xxx as Code とか本当にありがたい。集中力があった時の自分を信用して、それ以外の自分を信用しなく…

集約場所

「集約」を実現する場所. 集約場所の各要素から情報を受け取って、集約場所としての通知を出すととてもいい. メールやslackの集約場所を作って、メールあるいはslackに通知が来るとここで捕まえて集約場所通知が発動する感じ. 通知of通知みたいな.