タグ

ブックマーク / www.hyuki.com (21)

  • あなた自身の航海日誌

    私は「ログ」を書きながらプログラムを作る。ログについて馴染みのない方のために少しサンプルをお見せしよう。以下のログは私がテキストエディタを作成するときに書いていたログの一部である。 1992-XX-XX 検索機能を導入した。ファンクションキーも使えるようになった。(Version 0.35) 1992-XX-XX 漢字が混在しているときの検索にバグあり。文字列比較関数 samestr を修正。(Version 0.36) 1993-XX-XX ファイルの書き込みが遅いので fast.c 修正。バッファサイズを変更。(Version 0.37) 1993-XX-XX 検索の修正と同じ修正を置換にも適用する。アルゴリズム悪い。要最適化。(Version 0.38) 私がプログラムを開発しているときのログはだいたい上記のような感じで進んでいく。その日の日付、問題となっているバグ、修正箇所、検討事

    kimihito
    kimihito 2022/10/14
  • 不思議なISBN-[結] 2006年5月 - 結城浩の日記

    目次 2006年5月31日 - 作業ログを書くために大切な、たった一つのこと / 2006年5月30日 - プログラミング言語の勉強日記 / 2006年5月28日 - 今日の一日 / 2006年5月24日 - 多忙 / 2006年5月22日 - 新連載「簡単実装で学ぶWeb技術2006」 / 誤植 / 2006年5月20日 - 失敗 / 2006年5月19日 - 掲示板spam / 2006年5月18日 - 誤植 / 2006年5月17日 - JSON::Hatchet / 2006年5月16日 - CGIでブラウザのキャッシュを無効にする / 2006年5月15日 - 仕事 / 2006年5月12日 - タイプタイプ / 2006年5月11日 - 仕事 / 2006年5月10日 - タイプしながら考える / 2006年5月8日 - 書きながら考える / 2006年5月5日 - 数学姉 /

    kimihito
    kimihito 2022/10/14
  • プログラマの心の健康

    目次 はじめに 情報不安について 人の話を聞くこと 寝てから考えよう わ・ざ・と、ゆ・っ・く・り・、や・っ・て・み・よ・う ロビンソン式悩み解決法 驚き、最小の法則 むしょうに腹が立つあいつのこと あなたは、そのままでいいんです はじめからやり直したい症候群 人から信頼されるためにはどうしたらよいか トラブルがチャンス あなたはひとりではありません あなたのための聖書の言葉 ぜひ、感想をお送りください リンク集 更新履歴 はじめに 私はプログラマです。 プログラムを書いて生活の糧を得ています。 プログラマというのは精神的にも肉体的にも過酷な仕事だと思われています。 夜遅くまでディスプレイに向かい、 キーボードを叩き、ジャンクフードをべながらバグをとる…そんな職業だと思われています。 確かにそういうところもありますが、プログラマも人間です。 不健康な生活を長いこと続けることはできません。

    kimihito
    kimihito 2022/06/24
  • 技術系メーリングリストで質問するときのパターン・ランゲージ

    目次 はじめに メーリングリスト —— サポートセンターではなく互助会です 表題 —— あいさつではなく用件を書きましょう 自己紹介 —— 自分の知識・技能・経験を簡潔に書きましょう 書き出し —— 最初に問題の要旨を書きましょう 肩書き —— 会社の名前を背負っていることを忘れないように 実行手順 —— 手順は箇条書きで書きましょう 結果の予想 —— 期待した結果を書きましょう 実際の結果 —— 実際に起きたことを書きましょう ステップ明記 —— どこからうまく行かなくなったかを書きましょう 実際の値 —— 条件を具体的に書きましょう エラーメッセージ —— 必ずコピー&ペーストしましょう 判断理由 —— そのように考えた理由を書きましょう 文献の引用 —— 読者の手間を省くように書きましょう ソース —— 関連する部分を抽出して示しましょう スレッド —— 関連する話題なら「返信」しま

    kimihito
    kimihito 2021/04/20
  • テスト駆動開発とPDCAサイクル - 開発者がテスト駆動開発をすると、生産性が上がる理由

    テスト駆動開発とPDCAサイクル - 開発者がテスト駆動開発をすると、生産性が上がる理由 目次 PDCAサイクルとは? 図1)PDCAサイクル 参考 しかし、PDCAサイクルは品質改善の手法なのでは? テスト駆動開発とPDCAサイクルに、何の関係があるの? 図2)テスト駆動開発の持つサイクル テスト駆動開発の実際 当に必要となるまでコードを書かない テストを先に書く 図3)テスト駆動開発の実際の流れ タイプ別 - テストファーストの説明 テスト結果に失敗があるときには、まず、そのエラーを修正する バグ報告があったときには、バグをテストコード化する 何故テストに失敗したのかを知り、そこから学ぶ 自動テストを用意したら、リファクタリングせよ! 参考 まとめ 書いた人 関連ページ コメント 開発者がテスト駆動開発をすると、生産性が上がる理由 PDCAサイクルとは? PDCAサイクルとは業種に関

    kimihito
    kimihito 2017/01/14
  • TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと

    TheC10kProblem - 「C10K問題」(クライアント1万台問題)とは、ハードウェアの性能上は問題がなくても、あまりにもクライアントの数が多くなるとサーバがパンクする問題のこと 目次 この文書について C10K 問題 関連サイト まず読むべき I/O フレームワーク I/O 戦略 1. 各スレッドが複数のクライアントを受け付ける. そしてノンブロッキング I/O と レベル・トリガ型の完了通知を利用する. 伝統的な select() 伝統的な poll() /dev/poll kqueue() 2. 各スレッドが複数のクライアントを受け付ける. そしてノンブロッキング I/O と 変更型の完了通知(readiness change notification)を利用する. kqueue() epoll リアルタイム・シグナル fd 単位のシグナル (Signal-per-fd)

    kimihito
    kimihito 2016/05/08
  • CGIベースからHTMLベースへ移行する際のメモ

    目次 2005年6月28日 - 時間がないときの朝の祈り / 2005年6月27日 - 仕事 / 2005年6月23日 - 失敗 / 2005年6月21日 - 今日も仕事 / 2005年6月20日 - 仕事のかけら / 2005年6月18日 - The Hyuki Support Team / 2005年6月16日 - Musical Baton (ミュージカル・バトン) / 2005年6月15日 - RSSに全文入れるときの注意点 / Yuki::Kakeraの修正 / CGIでRSSをフィードする工夫 / アクセスログで移行作業の効果調べ / 2005年6月14日 - 仕事 / 声のかけら。のRSSをファイル化 / 2005年6月13日 - まじめに仕事 / 2005年6月12日 - RSSフィードに全文を入れる / 2005年6月11日 - 二重の虹 / 2005年6月10日 - 自

    kimihito
    kimihito 2015/09/02
    “「よい問題解決者は、大きい問題をひとつ抱えていることはない。 いつも、中くらいの問題をたくさん抱えている」”
  • どうしたらたくさんの仕事をこなせますか

    読者からのお便り 日記、いつも興味深く読ませていただいています。 日記を読んでいて、いつも思うのですが、結城さんは1日に ずいぶんたくさんの事をこなしていらっしゃいますね。 僕も、やりたいことも、やらなければならないことも、 たくさんあるのですが、なかなか思うようにこなすことが できません。 単に、集中力が足りないとか、切り替えがへた、ということ かもしれませんが、どうしても次の仕事に取りかかるときに 「あ、あれもしなきゃ、これもしなきゃ、これもしたいなぁ・・・」 と、考えてしまい、発散してしまいます。 それに、順序としてはAをやらなければならない時にかぎって Bをやりたくなったりしてしまいます。 たとえば、「さぁ、勉強しよう」と思ったとたんに、 部屋を掃除したくなり、結局部屋の掃除で終わってしまう。 といった感じです。 どうしたら、心を落ち着けて、1つ1つこなしていけるように なるでしょ

    kimihito
    kimihito 2015/09/02
    “ 仕事にかかるときに、前回の終わりに自分がやっていたことを復習する ” " 仕事から離れるときには、 次回自分が戻ってきたときのために「ここまでやった。次はここから」という情報を残しておきます"
  • 仕事のトラブル・ケーススタディ - 「仕事の心がけ」2

    仕事の心がけ」2 結城浩 「AをBに変えてください」という依頼がやってきた。 そこから生まれる仕事のトラブル。 いったいどうすればよかったのか、あなたも考えてみましょう。 目次 はじめに 例題 ケーススタディ1:なぜ? 起こったこと どうすればよかったのだろう ケーススタディ2:いつまで? 起こったこと どうすればよかったのだろう ケーススタディ3:優先順位の判断は誰がするのか? 起こったこと どうすればよかったのだろう ケーススタディ4:結果は誰に連絡するのか? 起こったこと どうすればよかったのだろう まとめ ぜひ、感想をお送りください 更新履歴 リンク はじめに 仕事にはトラブルがつきものです。 このページでは、たった一つの例題を通して、 どんなトラブルが起こるのか、 それはなぜ起こるのか、 どうしたら回避できるのかを ご一緒に考えてみましょう。 例題 まずはじめに「例題」を説明し

    kimihito
    kimihito 2015/05/12
  • 仕事の心がけ

    目次 はじめに こころとからだ 休息は大切 睡眠 夜型と朝型 眠るための儀式 事を味わう 心の健康 無駄を無駄にしない工夫 誠実に 記録と計画 仕事の見積り 文章を書く、プログラムを書く 文章の書き方 日々の生活 習慣の力を借りる メモの取り方 整理・整頓 道具 書物 文房具 自分との調和、他人との協調 複数の仕事のコントロール 他の人と仕事する 残りの話題 読者のみなさんからのフィードバック ぜひ、感想をお送りください 更新履歴 リンク集 はじめに このページでは、 結城が仕事をする上で心がけていること、 心がけようとしていることをご紹介しています。 こころとからだ 休息は大切 仕事について書くのに、 「休息」から書きはじめるのは変でしょうか。 けれども私はそうは思いません。 私は、よい休息がとれているときにはじめて 充実した知的生活を営むことができるからです。 逆に、休息がきちんとと

    kimihito
    kimihito 2015/05/12
  • プログラマの心の健康 - あなたは、そのままでいいんです

    目次 はじめに 情報不安について 人の話を聞くこと 寝てから考えよう わ・ざ・と、ゆ・っ・く・り・、や・っ・て・み・よ・う ロビンソン式悩み解決法 驚き、最小の法則 むしょうに腹が立つあいつのこと あなたは、そのままでいいんです はじめからやり直したい症候群 人から信頼されるためにはどうしたらよいか トラブルがチャンス あなたはひとりではありません あなたのための聖書の言葉 ぜひ、感想をお送りください リンク集 更新履歴 はじめに 私はプログラマです。 プログラムを書いて生活の糧を得ています。 プログラマというのは精神的にも肉体的にも過酷な仕事だと思われています。 夜遅くまでディスプレイに向かい、 キーボードを叩き、ジャンクフードをべながらバグをとる…そんな職業だと思われています。 確かにそういうところもありますが、プログラマも人間です。 不健康な生活を長いこと続けることはできません。

    kimihito
    kimihito 2015/05/10
  • 文章を書く心がけ

    目次 はじめに 読者に対する心がけ 誰がその文章を読むのかを考えよう 読者は何を知っているかを考えよう 読者がどんな感じを受けるかを考えよう 読者と対話する気持ちになろう 自分に対する心がけ 書こうとせず、読もうとしよう 読もうとせず、読みはじめようとしよう 何でも書いていいんだよ 惜しげなく人に与えよう 人からのものには敬意を払おう 魔法の呪文は毎回発見しよう まず自分がよく理解しよう 知識を誇るために書くのをやめよう その他の心がけ 言葉についての心がけ 長い文は注意して使おう 書いたものは必ず読み直そう 適切な例を示そう 言い換えの練習をしよう 8割でよしとしよう すべてを動員しよう その他の心がけ 環境についての心がけ 人の「気」を意識しよう 頑丈で軽い文章作成のツールを使おう その他の心がけ 編集者に対する心がけ 助言はよく聞こう 自分の状況を正しく伝えよう 感謝の気持ちを忘れな

    kimihito
    kimihito 2015/05/09
  • FrontPage - YukiWikiへようこそ

    FrontPage - YukiWikiへようこそ 目次 ごあいさつ お願い 練習用サイト 使い方 YukiWikiへようこそ ごあいさつ このページはYukiWiki2のFrontPageです。 RecentChangesは最近更新されたページの一覧です。 YukiWikiのスクリプトのダウンロードは http://www.hyuki.com/yukiwiki/ からどうぞ。 IndexPageは全ページの一覧です。 YukiWiki2作業記録 YukiWiki2不具合報告 YukiWiki2.1新機能 お願い 悪意のあるいたずらはご遠慮ください。またそのような書き込みを見た方は修正していただけると助かります。 既存のページにあなたの情報を一言付け加えてみてください。 自由にページを新規作成してくださってもよいですが、他のページとの関連性が薄いものは削除される可能性があります。 実験的

    kimihito
    kimihito 2015/01/24
  • 学ぶということ、教えるということ

    朝、ひげをそりながら青ラクダを読み、Perlの勉強。 プログラミング言語のを読むのは面白い。 自分でわかっていると思っていたことでも、 細かな点で誤っていることがわかったり、 より「その言語の特徴を生かした」解法が解説してあったりするからだ。 学んだ成果はメールマガジン『Perlクイズ』に反映するつもりである。 私の経験上、 プログラミング言語を学ぶときには、 人に教えるつもりで学ぶと、とてもよく身につく。 だから、を書くと、とてもよく身につく。 「を書く」というのは「人に教える」ということにほかならないからだ。 これはプログラミング言語に限らないかもしれない。 そもそも、理解できなければ教えられないじゃないか、って? それはそうだけれど、まず「教えるつもり」になるのだ。 教えるつもりになる。理解した分だけをまず人に教える。 教えているうちに、自分が何を理解していないのかが浮き彫り

    kimihito
    kimihito 2015/01/16
  • デスマーチが起きる理由 - 3つの指標

    Your system administrator has blocked your computer or device. Please contact the system administrator.

    kimihito
    kimihito 2014/07/30
  • プログラマの心の健康

    目次 はじめに 情報不安について 人の話を聞くこと 寝てから考えよう わ・ざ・と、ゆ・っ・く・り・、や・っ・て・み・よ・う ロビンソン式悩み解決法 驚き、最小の法則 むしょうに腹が立つあいつのこと あなたは、そのままでいいんです はじめからやり直したい症候群 人から信頼されるためにはどうしたらよいか トラブルがチャンス あなたはひとりではありません あなたのための聖書の言葉 ぜひ、感想をお送りください リンク集 更新履歴 はじめに 私はプログラマです。 プログラムを書いて生活の糧を得ています。 プログラマというのは精神的にも肉体的にも過酷な仕事だと思われています。 夜遅くまでディスプレイに向かい、 キーボードを叩き、ジャンクフードをべながらバグをとる…そんな職業だと思われています。 確かにそういうところもありますが、プログラマも人間です。 不健康な生活を長いこと続けることはできません。

    kimihito
    kimihito 2013/01/07
    はじめからやり直したい症候群
  • ペアプログラミングのやりかた -

    ペアプログラミングのやりかた - 目次 http://www.wikihow.com/Pair-Program 7つのステップ123 1. 作業を決める 2. 最初の目標を決める 3. パートナーを頼りにし、支えてやる 4. 喋る 5. お互い何をやっているか把握する 6. 喜ぶ 7. 交代する コツ http://www.wikihow.com/Pair-Program ペアプログラミングとは、二人が一つのキーボードでプログラミングをすること。 driverはキーボードを叩き、observer(あるいはnavigator)はdriverの書くコードを眺め、エラーや設計を吟味する。 7つのステップ123 1. 作業を決める 座る前に、1〜2時間程度で終わると確信できるはっきりした仕事を決める。 例:「引越しトラックのデータベースに『修理履歴』の機能をつける」 2. 最初の目標を決める 数

  • DeclineAndFallOfAgile - アジャイルの衰退と凋落

    DeclineAndFallOfAgile - アジャイルの衰退と凋落 目次 この文書について アジャイルの衰退と凋落 最近の状況 Scrum の役割 Scrum の誤用 君のやりかたは間違っている 真っ最中での失敗 アジャイルの衰退と凋落 この文書について "The Decline and Fall of Agile" の日語訳です http://jamesshore.com/Blog/The-Decline-and-Fall-of-Agile.html 推敲歓迎: 誤訳, タイポ, 訳語の不統一, そのほか... James Shore アジャイル運動の衰退や凋落について話すのはおかしなことだ. 今やとても人気があるものなのだから. けれど当のところ, ここ数年のアジャイル運動は、衰退の途にあると私は思う. 最近の状況 自分の商売がここ数年で変化していることに私は気がついた.

  • Gitの基礎練習

    バージョン管理ツールGitの基礎練習です。 Windows XPのコマンドプロンプトでGitの基的なコマンドを動かしていきます。 Gitを学び始めるきっかけにどうぞ。 (筆者もまだGitを使いこなしているわけではありません。 誤りのご報告、改善提案などは大歓迎です。フィードバックからよろしくお願いします) 目次 はじめに ダウンロードとインストール ファイルをGitの管理下に置きましょう 新しいファイルを追加します 新しいディレクトリを追加します 編集からコミットまでの流れはこんな風に進みます ブランチを使ってみましょう ここまでの作業ログを見ましょう この文書に書かなかったこと 関連リンク 更新履歴 ぜひ、感想をお送りください はじめに Windows XPのコマンドプロンプトで、 バージョン管理ツールGitの基的なコマンドを動かしてみましょう。 この文書の通りに実行すると、 基

  • サイト内の検索にGoogle.comを使う方法

    サイト内の検索にGoogle.comを使う方法 site:, JavaScript, CGI, as_sitesearch 結城 浩 目次 はじめに JavaScriptを用いてサイト内検索 PerlCGIを用いてサイト内検索 独自ドメインを持っていない場合にはキーワードを埋め込んでおく(その1) 独自ドメインを持っていない場合にはキーワードを埋め込んでおく(その2) 独自ドメインを持っていない場合にはinurlを使う メーリングリストの記事検索にGoogleを使う 社内文書の検索にはGoogleは使えない 簡単な解決方法(as_sitesearchを使う) Googlize! --- 自動的にグーグルの検索ボックスを作るCGI リンク 更新履歴 はじめに サイト内の検索にGoogle.comを使う方法を考えてみましょう。 検索サイトGoogle.comの検索用のテキスト入力のところでs