SE のタメになるメモ

SE のタメになりそうな雑多なメモ (スクラップ) です。スクラップ日時が古いモノほど下に置く傾向にあります。出来る限り出典 (引用元) を明記しておりますが、掲載内容に関して何か問題があればご連絡ください。

SE 業に関わらないライフハック・仕事術などは「ライフハック関連メモ」にまとめています。

目次

雑多なメモ

出典不明

個人メモにまとめた際に出典が分からなくなってしまったモノたち。

  • 0.1秒:ユーザは、自分がシステムを「直接」操作していると感じる。
    1秒:ユーザの思考を止めない限界。反応に時間がかかっていることに気づき、システムの存在を意識する。
    10秒:ユーザが操作に集中できる限界。待っている間に何らかの形で処理の途中であることを伝えないと、容易に他のことに興味が移る(離脱する)。
    つまり、Webサイトの反応速度(ページの表示速度)は、理想は0.1秒、可能な限り1秒以内に収めるべきで、それ以上ユーザを待たせると離脱が増えるばかり、ということが言えるでしょう
  • Excelのサポートを10年間やってきた経験から最も頻出の助言は「データベースファーストの原則」であり、この原則には「1セル1データの原則」「1列1データ型の原則」「セル結合禁止の原則」の3つが含まれる
  • クソコードってまさしく「そういうものを同僚にお出ししていいと思っている」という人格の問題なので、コードレビューは人格否定と不可分なので、戦争の方法を学ぶしかない
  • システムエラー出たとき、何種類かのネコのgif画像をエラー内容に合わせて表示するようにしたんだけど、
    問い合わせが基本「猫ちゃんが出てきた」になったし
    猫ちゃん見てるからクレームの温度感も温くなったし
    こっちもとりあえず「画面にどんな猫ちゃん出てますか?」って聞けばいいし楽
  • おっさんプログラマのダメなとこはなんか楽にできる方法あるんじゃねえの?って探して力技しかない結論に達しても楽にしたい欲を捨てられずそこで手が止まることです
  • 上品で美しい設計ができる人、たいてい最前線の激務に耐えられないし、そういう理由で社会を支えるシステムはテストや設計が壊滅していたりして脳筋な世界が完成する
  • いいですか、タスクの名前は、やる活動の要約ではなくて、タスクが完了した状態の要約にするんですよ。進捗がやばくて、誰かに手伝って欲しいとき、前者だと助けにくいんですよ
  • ウェブサービスの設計思想を練るにあたって、自分たちがやろうとしていることが、「Media」なのか「Tool」なのか「Community」なのか、そのうちのドコに軸足をおいて、どの要素を付け加え、どの要素は切り落とすべきなのか
  • 考えてみると、「クラウドコンピューティング」って言葉は、MSがOfficeにあの雲のオートシェイプを仕込んでたからこそ生まれた言葉じゃねぇの?
  • ビジネスの場において顧客が事前に自分たちのほしいものを認識して全ての要件を提示するのは不可能なので、ウォーターフォールは都市伝説だと思ってる
  • コマンド打つのは誰でもできるんですが、打ったコマンドに責任持って最悪元に戻せるスキルと経験にお金を払うのがIT業界における作業費の意味なんです
  • フルスタックになった人間は信頼できる同僚を持てなかった寂しい人間
  • 現在IT業界とよばれるところは80万人の雇用があるが、専門教育を受けたちゃんとした人材だけで仕事すれば8万人で済むとのこと。それぐらい、今のIT業界は専門教育を受けていない人材が含まれている、すなわち、それでちゃんと回るような社内教育システム、開発体制、長時間労働体制が構築されている
  • telnetの切り方のコメンド打つのがとても難しいのでいつも「そquit」と入力すると切っている。多分ひらがなの中の「そ」のエンコーディングでtelnetのコマンド入力モードになるコマンドと等価なものが入っているのだろう
  • Remove は「取り除く」。
    Unix の rm はディレクトリからエントリを取り除き、参照カウントが0になった時に実体が回収される。名前の通りの動作。
  • 「誰でもわかるようなドキュメントを書け」ってのは「ググっても出てこないような暗黙知を無くすようにする」ことであって「未経験者にもわかるように」ってことじゃないんだからね!
  • 部屋とお姉さんとソースコードはきれいな方がいいと思います
  • オブジェクト指向でも関数型言語でも同じだけど、抽象化の方法は1つじゃないので、設計者が何を思って何をどう抽象化したのかという点がわからない。ドキュメントはこの点のみ必要だと思う。設計者の意図
  • テストでは品質は上がらないですよ。テストはあくまでも品質をあげるきっかけ。品質をあげるのはプログラミングです
  • かつて、ソフトウェア科学に「そんな難しいことを現場のプログラマにどうやって教えるんだ?」との言葉が投げつけられていました。すでに答は出ています。「理解した人が現場に入れば良いだけ」
  • あなたはプロジェクトを下のように行うことができる。
    ・時間通りに
    ・予算内に
    ・適切に
    二つを選べ
  • カップ焼きそばを作るには、ただ熱湯を注ぐだけでなく「買ってくる」、「ソースを入れる」など前後に様々な工程があり、パッケージには「熱湯3分」とだけ書いてあっても実際の納品までは10分弱かかる計算なのです。これが、エンジニアが納期を想定の倍以上見積もったほうがいい理由です