名無しのVim使いでお馴染みの小見さんにお誘いを受け、執筆のお手伝いをさせて頂きました。 これまで僕が持っていたVim本は、「Viとは」から始まりページ数の半分くらいで操作方法、最後の方にようやく「GVimとは」が現れる、あまり奥にまで入り込んでいない書籍でした。 もちろんこれらの本も僕を喜ばせる事は出来たのですが、なにぶんページの殆どが知っている情報だったので僕にとって「ワクワクする本」では無かったんです。 ずっと最新情報取り入れたVim本出ないかなと思ってました。 そんな中、小見さんから話を持ちかけて頂き、まさか自分がその著書を作るなんて思っても見なかったけど即答でOKを出させて頂きました。 僕が最初に見たViは大学の某研究室にあったSONYのNEWSというUNIX上で友達が動かしていた物。その時は変な操作方法だなぁとしか思ってませんでした。 それから就職した会社のワークステーションで
checklist / alancleaver_2000 「現場作業はチェックリストの出来で決まる」 数日間かけて行うような複雑な作業はもちろん、 簡単な作業であっても作業には作業ミスがつきものです。 現場での作業ミスを簡単に減らす方法は、 チェックリストじゃないかなと思っています。 チェックリストを使うことは恥ずかしいことという風潮も あるようです。 特に現場経験を積んでくると、経験でどうとでもなるという 思いが強くなって、チェックリストを使うことを拒む方も多いようで。 でも、チェックリストは確実に作業をするためのツールですし、 個人的には現場作業はチェックリストの出来で決まると思っています。 みなさまもチェックリスト活用していますか?
突然質問です。 問題が発生したことを知るためには、どこにログを出力しますか? テキストファイル? イベントログ? データベース? ・・・ う・・・ まぁ、いいかもしれません。 ・・・ 他にはありませんか? 実は、意外と知られていないですが、ログの出力にとても有効な場所があるんです。 特に内部データ出力、内部動作のトレースログなど、データ量が多いものは、 テキストに落としては重い。 リアルタイムに見られない。 という問題があります。 そういう時に、とても有効です。 リアルタイムに見られて、「軽い」 場所があるんです。 それはズバリ、デバッガです。 「え? だどさん、開発のときの話だったの?リリースしてからだと思ったよ」 いえいえ。 もちろん、開発時も使えますが、開発時の話だけではありません。 本番環境にリリースしてからも有効なんです。 Windows API には OutputDebugSt
C++, win32 | 16:19 WM_PAINTで例外対策にBOOST_SCOPE_EXITを使って描画中に例外が飛んでもちゃんと描画終了するようにしたぞと粋がっていたら思わぬところから伏兵が現れました。 // 適当なプロシージャの中身 case WM_PAINT: { BOOST_SCOPE_EXIT((&hwnd)) { // たまたまDirect2Dを使ってたのでEndPaintとかではない ValidateRect(hwnd, nullptr); } BOOST_SCOPE_EXIT_END; // 描画する throw std::exception(); // ドヤ顔で例外を投げる break; } 問題はcatchした例外をMessabeBoxで表示した場合です。 try { // ウィンドウ作って表示したりメッセージループ回したり... } catch(const st
数十分にわたってAkamaiのDNSの設定変更に起因する障害が発生し、Facebook、Twitter、Apple.com、Best Buy.com、Buy.comなどが見られなくなる状態が発生したようです。 GigaOM: When Akamai goes down, it takes the Internet with it StreamingMediaNews: CDN News: Akamai and Amazon Have Outages, Limelight Misses Earnings, XO Settles With Level 3 Akamaiは世界の30%のWebトラフィックを運んでいると発表しているCDNの巨人ですが、そこが止まると非常に影響が大きいと言える事例なのかも知れません。 今回は、ヨーロッパのゴールデンタイムであると同時に米国のビジネス時間帯であったため、
コメント投稿、退会画面など、サービスの一部に CAPTCHA を表示したいときがあるかと思います。 今回は、 Rack 対応の Ruby 製フレームワークを使っている場合、簡単なライブラリ+ reCAPTCHA で、たとえば、退会画面に CAPTCHA を表示することが出来るので、そちらを紹介します。 実装方法 まず、ユーザ登録画面等を作っときます、今回の目的は退会させることなので、適当でいいですね。 次に、 reCAPTCHA にユーザ登録をして、 API KEY と SECRET を入手します。 諸々を作ったら、必要な gem をインストールさせるため、 Gemfile などに以下を記述、しかるのち bundle install。
昔の写真(ネガ)が見つかったのでスキャンしてみたら、30年ほど前に撮影した自分のマイコン環境が出てきた。当時はPCって言わなかったんだよな。PCって言うようになったのはWindows95あたりからかな? パソコンって言うようになったのは80年代に入ってからかなあ。パーコンと呼ぶ人もいた。 背後にI/O別冊の「アプリケーションプログラムライブラリ」(1980.12.20)が見えるので、撮影したのはたぶん1981年前半(1-3月?)だと思う。 左写真に機器の説明を付けてみた。当時の理系小僧の王道パターンである天文→BCL→アマチュア無線→マイコンと転落していったので、無線機器が左に見える。 マイコンは日立のベーシックマスターL2II (MB6881)。CPUは6800 750KHz、ROM 16KB、RAM 32KB。750KHzって遅いけど、画面表示をサイクルスチールで行う関係上、このクロッ
「アナタはなぜチェックリストを使わないのか? 」 という本の感想。続き。 チェックリストを作ることの効果というものは、「正常」を言語化できることにあるのだと思う チェックリストを作るときには、たとえば「○○が正常に接続されていることを確認する」だとか、正常という言葉をリストから追放することが求められる。それを許してしまうと、「正常とは何か?」という疑問に対して、「正常であることだ」という間抜けな答えしか返せなくなってしまう 正常であることを、「異常でないこと」でしか記述できない人は多い。ある定状状態にあって、それなりにきちんと動いている何かを見て、どうしてそれがきちんと動いているのか、突き詰めて考えている人は少ないしだろうから 医療において健康という状態は、「病気でない」ことでしか記述できない。医学的に正しい健康食品というものは存在しないし、西洋医学の薬というものは、基本的に病気でない状態
UTF-8-Mac と git によって発生する問題に打ち勝った。 これまで僕は仕事では主に Linux マシンを用いていたのだけど、先日 MacBook Air の 11 インチのやつを買ったのでせっかくだしこれを仕事に使いたくなった。 ところで Mac OSX ではファイル名は UTF-8-Mac という素敵な文字コードで記録されており、一般的には NFC で符号化されているのに、こいつは NFD で符号化されている。 極簡単に説明すると、濁点と半濁点が分かち書きされている、つまり が という文字を か + ゛ として記録されている。 これでどのような問題が発生するかというと Linux 上で mkdir test cd test touch がぎぐげご git init git add -A git commit -m test というふうにして作ったリポジトリを Mac に clo
さて、働いている皆さんもそろそろ夏休みでしょうか? 今年は夏休みがめっちゃ長い!という人もいると思うので、まとまった時間や旅先で読める“ちきりんお勧め本”を、過去に書いた感想や関連エントリと共に紹介しておきます。 ノンフィクションで、めっちゃオモシロかったのが、戦後すぐに起こった陰謀事件の闇を暴いたこちら。これは今でも「犯人」が見つかっていません。アメリカの陰謀?共産主義者の仕業?それとも・・・?事実は小説よりも奇なり。手に汗握ります。というか、戦後日本の“選択”がよくわかります。 下山事件完全版―最後の証言 (祥伝社文庫 し 8-3) 作者: 柴田哲孝出版社/メーカー: 祥伝社発売日: 2007/07/01メディア: 文庫購入: 3人 クリック: 46回この商品を含むブログ (45件) を見る感想ではないですが関連エントリはこちら → http://d.hatena.ne.jp/Chik
仕事で鬱っぽくなる人が多い。作業をお願いすると実に有能だったりするんだけど、駄目だ。どうすればいいか考えてみるんだけど、答えはでない。でもちょっと思うのは、今の仕事って少なからず「自己表現」ってやつを求められているんじゃないかと思うんだよな。ITの仕事って職人に近いもののような気がするけど、実際には全然そんなことなくて、自分で全部を作り上げちゃうならともかく、少なからず他人とI/Fしなければならない以上、何がしかの表現能力は求められてしまう。それができない、あるいは過剰に求められて消耗してしまう、ということなんじゃないかと思ったりもする。 そもそも、自己表現ってのは疲れるもののはずなんだよね。なんだか自分でもわからない自己というやつを表現する。「お前はどう考えているんだ」「考えていることをはっきり書け」とかさ。できれば「目の前にある表をひたすら打ち込む」みたいな作業で一日終われば頭は使わな
今朝、ちょっと気になったのは下のニュース。 Motorola's Jha open to using Windows Phone OS 要約すれば「Motorolaとしては、今のところAndroidだけに集中投資しているけど、もしMicrosoftがMotorolaにもNokiaと同等の条件を提示してくれれば、Windows Phoneを作ってもいいよ」とMotorolaがアナウンスしたという話。 水面下での交渉が順調に進んでいればこういう話を表に出す理由はないわけで、何らかの理由があるのでは、と思ってしまうが考えすぎか。 MicrosoftとしてはNokiaに続いてMotorolaのフルコミットメントが取れれば、勢力地図を大きく塗り替えるチャンスが出て来る。Motorolaとしても、このままSamsungやHTCとの(Android陣営内の)消耗線を戦ったとしても勝ち目があるわけではなく
vimでPHP開発していた時は、良くvim の 折りたたみ機能を使ってました。 理由としては、割とメソッドを移動したりするのが楽だったり(折りたたみしてる所は yy , dd でヤンクできるから)、メソッド、クラス単位で折りたたみされてるので、俯瞰してそのファイルを眺める事ができるから、不要なメソッドとかを見つけやすかったからです。 折りたたみは最初、開けたり閉じたりするのが面倒だったんですが、気がつけば、小指が za を押すのに慣れてしまいました といわけで、そろそろPythonのヤツも欲しいなと思ったので、プラグインを探しました。割合古いものですが、見やすいので大分気に入っています。 python_fold - Folding expression for python : vim online これを ~/.vim/plugin の下に設置すればそれでおkです。 簡単な使い方 たとえ
firefox4,5における空のimgタグの挙動 - 技術記録 firefox4か5で、 <img src=""/> みたいな感じで、srcを空にしたimgタグを書いてると、imgタグが現在開いているページ自体を読み込むようだ。 firefox4,5における空のimgタグの挙動 - 技術記録 という問題。気になったのでローカルのWebサーバで検証してみた。 何が気になったか言うと、 で Return the img element to the unavailable state. If an instance of the fetching algorithm is still running for this element, then abort that algorithm, discarding any pending tasks generated by that algori
最近発見した方法。 基礎知識 ユーザ定義コマンドを定義する際、-range= 引数を使うことで :[range]Command のように [range] を受け取ることができるようになる。 指定の仕方で無指定の場合のデフォルト値が変わり、-range で現在行、-range=% でファイル全体、-range=N で N 行目になる。 入力された行番号は、<line1> <line2> で取れる。 :command -range=% RangeTest echo <line1> <line2> " バッファが10行だったとすると… :RangeTest => 1 10 :%RangeTest => 1 10 :2,5RangeTest => 2 5 問題点 ユーザが範囲を無指定で実行したのか、デフォルト値と同じ範囲を指定したのかどうかが判断できない。 解決策 以下のようにする。 functi
ハッシュテーブルからエントリーを検索する処理は,一般に定数時間で済むとされている。つまり,どんなにエントリーが増えても検索の速さは変わらない,ということ。データ構造の教科書には必ず載っていることだね。 でも実際には,ハッシュの衝突が起こった場合に,速度の低下が発生する可能性がある。例えば,一般的なチェイン法(オープンハッシュ)だと,衝突したエントリーに関して線形検索を行うことになるから,衝突が多ければ多いほど,定数時間からは遠のいてしまう。 この速度低下を防ぐ方法はいろいろある。なかでも cuckoo hashing (カッコウ・ハッシング)は仕組みが面白い。こいつは,エントリーの検索を必ず定数時間で済ませてくれるという優れものなんだ。 Cuckoo hashing では,2つのハッシュ関数と,2つのテーブルを用いる。ここでは,2つのハッシュ関数をそれぞれ h1, h2 として,2つのテー
Firefox、メモリ食い「ダークマター」の正体突き止める 後藤大地 2011/08/09 10:36 Firefoxでは長らく種類を特定することができない謎のヒープメモリが存在していた。Nightly版でURL欄に「about:memory」を入力すると、メモリ表示の2行目に「heap-unclassified」という項目が見つかるはずだ。何に使われているのかわからない上に、全体のメモリ利用のうえでかなりの割合を占めている。この用途不明のメモリを突き止め排除すれば、メモリ使用量を大幅に減らすことが可能になるとみられる。 この用途不明メモリの正体のひとつが実はjemallocのメモリアロケート時に発生する未使用領域であることがNicholas Nethercote氏によって報告された。すでに原因も明らかになっており、調査および分析を実施した結果、どの部分を改善すればメモリ使用量を大幅に削減
【夜の嘘競演 終了】 日はまた昇る まぶしいなぁ ===========虚実境界線============ <<Prev | (最新) <<Prev | Next>> ------------------------------------------------------------ 告 5/15 理学部物理学教室 浅川 「科学哲学第二」のレポートは、5/31 までに1号館1階の浅川の レターボックスに提出すること。このレポートを提出しない学生 には、単位は出ません。 ------------------------------------------------------------ 告 6/3 理学部物理学教室 浅川 期限を過ぎて提出されたレポートは、いかなる理由があろうとも 受けつけません。締切を過ぎてもまだ私のレターボックスに「科 学哲学第二」のレポートを入れる者が居ますが、
AndroidはオープンなOSと呼ぶのは間違い? 実は最も自由度の低いオープンソースOSとの厳しい評価が...2011.08.09 20:00 アップルのOSよりは自由かもしれませんが... オープンソースプロジェクトのモバイルOSとの触れ込みで登場後に驚異的なスピードで普及し、すっかり周りでもAndroidユーザーを見かけるのが珍しくはなくなってきた今日この頃ですけど、でもどこまで本当に「オープン」なプロジェクトと呼べるのかは疑問かもしれませんよ。 このほどVisionMobileが発表した、オープンソースを謳うプロジェクトの本当の自由度を比較調査した最新レポートによれば、Linuxカーネル、Symbian OS、Firefox、WebKitなどなど、主だった8つのオープンソースプロジェクトの中で、最も自由度が低かったのはAndroidだったそうです。グーグルがAndroidの開発プロジ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く