タグ

ブックマーク / amachang.hatenablog.com (32)

  • new と delete と throw で気をつけること(自分用メモ) - IT戦記

    delete する変数が未初期化になっている可能性を考えろ コンストラクタの初期化子リストで throw とか 初期化子リストで throw する可能性のある式を評価するな。 0 を入れておいて、コンストラクタ内で評価しろ または、ポインタラッパー的なものを使え。(デフォルトコンストラクタで初期化されるから) 未初期化変数への代入式で throw とか とりあえず、変数初期化子で 0 代入しとけ コンストラクタで例外が発生した場合にデストラクタが呼ばれないことに注意しろ コンストラクタ内で new して、そのままとか boost::shared_ptr 使え または、 try { /* ... */ } catch(...) { delete p; throw; } って感じで、すべての例外を catch して delete しとけ

    new と delete と throw で気をつけること(自分用メモ) - IT戦記
  • Macbook (with Snow Leopard) 買った後にやったことまとめ - IT戦記

    購入編 会社にて amachang「秋だけに akky ですね。Macbook が欲しくなってきました」 akky(苦笑) amachang「新しい Macbook が欲しくなってきました」 akky(苦笑) amachang「買って来まーす」 akky(苦笑) Apple Store 銀座にて amachang「Macbook Pro の 13 inch のやつください」 店員「はい。 2 種類ありますが」 amachang「高いほうのやつください」 店員「キーボードは JIS と US どちらにいたすますか」 amachang「US ください」 店員「こちらでよろしいですか?」 amachang「JIS よりキー少ないのですね」 店員「はい。英数キー、かなキーなどがありません」 amachang「えっ」 店員「えっ」 amachang「JIS ください」 店員「かしこまりました」 am

    Macbook (with Snow Leopard) 買った後にやったことまとめ - IT戦記
  • tmux 入れてみた - IT戦記

    以下を見て 時代はGNU screenからtmuxへ - Dマイナー志向 Ubuntu に tmux を入れてみた インストール方法 まず ncurses を入れる $ sudo apt-get install libncurses5-dev次に、最新版をダウンロード $ wget http://downloads.sourceforge.net/sourceforge/tmux/tmux-0.9.tar.gz?use_mirror=jaist次に、ビルド $ tar xvfz tmux-0.9.tar.gz $ cd tmux-0.9 $ ./configure $ make && sudo make install 設定ファイル 時代はGNU screenからtmuxへ - Dマイナー志向 に書かれている例をそのまま ~/.tmux.conf にコピペ。 起動 $ tmux とりあえず

    tmux 入れてみた - IT戦記
  • 「いめったー」ランキングのページングがいい - IT戦記

    このページなんですが kanmisikou.net - このウェブサイトは販売用です! - 初音ミク フォント 制作 志向 甘味 ニコニコ 感性 状況 リソースおよび情報 ふと思った 「あ・・・なんかこのページング気持ちいいっ」 ぽちっ・・・「あっ」 ぽちっ・・・・ 「ふぅ・・」 なにが気持ちよかったか ページが移動する前にハイライトが移動すんのよね。 細かいけど、便利で、(ユーザーにとって)全然難しくないのがいいよね。 いめったーすげー。

    「いめったー」ランキングのページングがいい - IT戦記
  • C++ のコードを Flash Player で動かす! Alchemy を速攻試してみる。 - IT戦記

    はじめに Adobe から C/C++ で書いたコードを Flash や AIR で動かす Alchemy というものがリリースされましたね! Alchemy - Adobe Labs これはすごい!ということで、少し試してみたいと思います。 その様子をリアルタイムに書いていきます。ちゃんと出来るかな 環境 OS は Mac OS X で gcc 、 java は入っているものとします。 ホームディレクトリ(/Users/amachang)に AlchemyTest というディレクトリを作って作業します。 インストール まずは、いろいろインストールします。 Flash Player 10 Debugger Version Adobe Flash Player - Debug Downloads ここからダウンロードしてきて、普通にインストールします。 Flex SDK 以下から Flex

    C++ のコードを Flash Player で動かす! Alchemy を速攻試してみる。 - IT戦記
  • セキュリティ&プログラミングキャンプ2025に寄せられた科学技術庁長官の祝辞 - IT戦記

    ネタです! 祝辞 この文章を読み始めた諸君、読むのをやめて目を閉じてほしい。 目を閉じたら思い出してほしい。 まだ幼い頃の君たちは、コンピュータとともにあったか。 今思い出した「当時の諸君が初めて起動したコンピュータの画面」。 それが、まぶたの裏によみがえるだろうか。 それから諸君が始めて起動したソフトウェアを思い出そう。 いつ、何歳くらいのとき、何を、どこで使っただろうか。 そのとき起動したソフトウェアは何? ゲームか、それともウェブブラウザか。 それを諸君はきっと覚えている。 思い出すことができるはずだ。だからいま、目を閉じてみよう。 たったいま、諸君が目の奥に発見したもの、それこそが「自分」だ。 これから様々な人と出会い、自分を見失うときが来るかもしれない。 その時は目をつぶるといい。 すると君たちのまぶたの裏に、自分の姿がよみがえる。 そのとき、諸君が他の友人達と違うとしたら、 必

    セキュリティ&プログラミングキャンプ2025に寄せられた科学技術庁長官の祝辞 - IT戦記
  • 若者に一度だけ与えられる出会いの場、セキュリティ&プログラミングキャンプ - IT戦記

    はじめに 2008 年 8 月 13 日 〜 17 日まで、講師としてセキュリティ&プログラミングキャンプ 2008 に参加させていただきました。 セキュリティ&プログラミングキャンプって何? セキュリティキャンプ&プログラミングキャンプとは、 2004 年から始まった「若くて優秀なセキュリティ人材やプログラマーを育てちゃおうよ!」というイベントです。 キャンプの名のとおり 5 日間キャンプ形式で行わます。そして、毎日 8:00 〜 22:00 まで講義が行われるという大変ハードでエキサイティングなイベントです。 僕が経験したキャンプ 僕がキャンプの中で経験したこと感じたことを書いておきたいと思います。 楽しさを伝えることの重要性 僕は、 JavaScript の講義を担当していたのですが、前日まで作っていた資料とは全然違う資料を使って講義を行いました。 一日目、手を動かしながら目を輝かせ

    若者に一度だけ与えられる出会いの場、セキュリティ&プログラミングキャンプ - IT戦記
  • プログラミングキャンプの講義資料を公開します - IT戦記

    はじめに もうすぐ講義が開始されるので、同じタイミングでここで講義資料を公開したいと思います。 JavaScript の難しいところとか、マニアックなことは一切使わずに「プログラミングの楽しさ」みたいなものを伝えられたら嬉しいです。 この資料のターゲットは、プログラミング初心者です。 リンク http://svn.coderepos.org/share/docs/amachang/20080813-procamp2008/index.html 注意 今日の学生の出来によって、会期中ちょこちょこ資料の内容が変わると思います。

    プログラミングキャンプの講義資料を公開します - IT戦記
  • プログラミング未経験者が JavaScript でプログラミングを始めるまでに必要なこと - IT戦記

    (執筆中) (文章の練習も兼ねてぐだぐだと執筆中、現時点で読んでも日語になってないと思います。) (執筆途中だけど、こうしたらいい!とか、アドバイスがあれば教えてください><読者みんなが編集者!とか言ってみる) (あ、はてな記法のパッチを送ってくれてもいいです^^) (ちょっと、 Shibuya.JS in Kyoto → PHP カンファレンスがあるので、次の更新はそれ以降になるかも) 自分の知り合いに「まったくのプログラミング未経験だけど、自分のウェブサイトを作ってみたい!」という人がいるので、プログラミングを始める前に必要な知識や心構えや準備などを書いておこうと思います。もちろん、最初に使う言語は JavaScript です。 この文章は、プログラミングまったくの未経験者が読んで分かる文章を目指しています。もし、分からない部分がある場合は指摘してください。聞いてください。自分で調べ

    プログラミング未経験者が JavaScript でプログラミングを始めるまでに必要なこと - IT戦記
  • JavaScriptCore (Safari の JavaScript エンジン) を使って C 言語から JavaScript を実行する - IT戦記

    はじめに JavaScriptCore (WebKit/Safari の JavaScript エンジン) を C 言語に組込む方法を調べてみました。 解説はソースコード中のコメントを見てください。 まず 以下のコードを hoge.c とかいう名前で保存します。 #include <JavaScriptCore/JavaScriptCore.h> static JSValueRef jsGlobalPrint( JSContextRef ctx, JSObjectRef jobj, JSObjectRef jobjThis, size_t argLen, const JSObjectRef args[], JSValueRef* jobjExp); int main(int argc, char** argv) { if (argc == 1) exit(0); // ---- グローバル

    JavaScriptCore (Safari の JavaScript エンジン) を使って C 言語から JavaScript を実行する - IT戦記
  • dtrace を使ったシステムコールのトレース - IT戦記

    dtrace とは Mac OS X Leopard から導入された、プログラムを書き換えることなくプログラムの情報を監視(トレース)できる便利ツールです。 使い方 たとえば、 vim という名前のプロセスからシステムコール stat, open, stat64 されたときに第一引数(ファイル名)を監視するには以下のようにします。 $ sudo dtrace -n "syscall::open:entry, syscall::stat:entry, syscall::stat64:entry / execname == \"vim\" / { trace(copyinstr(arg0)) } " 説明 まず、 -n というのは「probe」の「name」を指定して dtrace する!という意味です。 $ sudo dtrace [-n [[[ provider: ] module: ]

    dtrace を使ったシステムコールのトレース - IT戦記
  • みんな Perl やろうよ! - IT戦記

    以下のエントリを読んで これからPerlやろうかなーとか思ってる人へ - Yet Another Hackadelic これは当にすごいと思いました Perl やろうよ! みんな Perl (も)やろうよ! けっこう、いろんなツールやスクリプトとかって Perl で書かれてるんだよ! だから、 Perl 読めたほうが絶対楽しいよ! というわけで、これから Perl を始める人は id:perlcodesample さんの記事を読むととてもいいと思います! 以下のエントリが詳細な目次となっています。 Perl逆引き辞典 - Perlゼミ(サンプルコードPerl入門)

    みんな Perl やろうよ! - IT戦記
  • インターネットで手に入れられても良さそうなのに手に入らない情報まとめ - IT戦記

    以下の質問の反応をまとめてみます。 役に立ちそうな情報で、インターネットで手に入れられても良さそ… - 人力検索はてな 質問の回答、はてブ、トラックバック、ダイアリーのほうについたはてブ、コメント、などを集計しています。 まとめ ニュースのその後 (id:jane) 雑誌の記事検索 (id:natumi0128) 「SPA!」「読売ウイークリー」「AERA」は出来る → http://news.nifty.com/cs/entame/showbizddetail/fuji-320080417006/1.htm (id:muddydixon) タバコの製品情報(電話でのユーザ登録が必要なため困難。不可能ではない)→ https://www.jtad.jp/members/login/ (id:n-styles) 新聞折込チラシ (id:n-styles) スーパーの特売情報 (id:n-st

    インターネットで手に入れられても良さそうなのに手に入らない情報まとめ - IT戦記
  • 駄文 - 株式会社 Dino の新人研修がすごい - IT戦記

    この前紹介した 駄文 - 4 月からプログラマになったあなたへ - IT戦記 スタートアップ研修記 Dino という会社の新人研修ですが、すごいです。 何がすごいか 講義を動画で公開しているのです。 zoome.jp そして、新人はプログラミング未経験者 新人の方はプログラミング経験のない方なので、当然以下のような質問が飛びます。 IP ってなんですか? インタフェースってなんですか? ディレクトリってなんですか? などです。 この質問に対して、なるべく正しく、そして、イメージが湧くような説明をするってすごく難しいと思うんです。 逆に、生半可な知識で説明すると誤解を与えてしまうことになります。 でも、この動画の講師はすごく丁寧な説明で言い切るところは言い切って的確に教えているなあと思いました。 すごいです。 講師、新人両方に良い さっきも言ったように、基的な説明ってすごく難しくて、すぐに

    駄文 - 株式会社 Dino の新人研修がすごい - IT戦記
  • 駄文 - 4 月からプログラマになったあなたへ - IT戦記

    こういう取り組みいいですね スタートアップ研修記 こういうブログを読んでいると 新人だったときの記憶が蘇ってきますね。 というわけで、僕からのアドバイスをいろいろ書いておきます。 この記事は新プログラマのあなたに向けたメッセージです^^「なんか、ブログで書いてる人いるなー。」って感じじゃなくて「僕(私)に言ってる」と思って読んでもらえたらうれしいです。 新人プログラマへのアドバイス プログラミングの勉強をしましょう ブログを書きましょう 社外のエンジニアと交流しましょう コミュニティに参加しましょう 技術イベントに参加しましょう 飲み会に参加しましょう 僕と飲みにいきましょう 僕のメールアドレス ↓とりあえず、飲み会のお誘いはこちら。 _at_ は @ に置換してね seijro_at_gmail.com プログラマと交流するときのアドバイス ぶっちゃけ話をしましょう 技術の話をしましょう

    駄文 - 4 月からプログラマになったあなたへ - IT戦記
  • IT戦記 - 一行で IE の JavaScript を高速化する方法

    以下の一行をすべての JavaScript の前に読み込む /*@cc_on _d=document;eval('var document=_d')@*/ この一行を読み込むことによって IE での document へのアクセスが 5 倍速くなります。 たとえば 以下のように、読み込む前と読み込んだ後を比較してみます。 // Before var date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date - date); // 643 /*@cc_on _d=document;eval('var document=_d')@*/ // After date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date -

    IT戦記 - 一行で IE の JavaScript を高速化する方法
  • 社内勉強会資料 - IT戦記

    今回の趣旨 あまり JavaScript を書いたことのない人用に講義をしました。 内容 一つ一つ例を見せながら質問を聞き、参加者全員が JavaScript のオブジェクト指向を理解できるまでやりました。時間は当初 40 分の予定でしたが、結局 1.5 時間になりました。 成果 最終的にガイアックスのほとんどの開発者(マークアップエンジニアから、インフラの人まで)が JavaScript を読めるというレベルまでは、到達したのではないかと思います。 まあここからは、テクニックとバッドノウハウの世界ですが・・・。 資料 大切なことは言葉で話して、資料はほとんど例とかソースとかだけですが。教える手順とか参考になるところもあるかもしれないので公開します。 http://usrb.in/amachang/static/gaiax01/

    社内勉強会資料 - IT戦記
  • 親友へ。ブログを書こう。 - IT戦記

    はじめに ガイアックスに入社する前からの数少ない親友でプログラマの y が人生の岐路に立っているようなので、エントリーを書いてみることにした。 y とは mixi の足跡がきっかけで知り合って、もうすぐ丸二年の付き合いになる。人生の 10 % の時間をインターネットでつながっていたということになる。 あのときから見たら、自分も y も随分変わったんだろうなあ。普段は考えたりしないけど、しみじみとあのときのことを思い出してみた。 そして、 y にももっと web で色んなものを公開して欲しいなと思った。どんなささいなことでもいい。完成度なんてなくていい。二次情報でもいい。技術のことでなくてもいい。 y へ。そして、ブログを書いたことがないすべての人へ。 ブログを書こう 誤解のないように言っておきますが、書くべき!という感じではなく、イイヨーイイヨー書いたほうがイイヨー的な意味です。 ブログを

    親友へ。ブログを書こう。 - IT戦記
  • デブサミ2007資料「JavaScriptの現在と未来」 - IT戦記

    Developers Summit 2007 の資料を公開します。 推奨フォント 以下のフォントが入ってると一番きれいに見れると思います。 メイリオ 推奨ブラウザ 以下のブラウザに最適化(高速化など)して作りました。 Firefox 2.0 IE 7 対応ブラウザ OS いちおう以下の環境では動作確認しました。 Windows Firefox 2.0 Windows IE 7 Windows IE 6 Windows Opera Linux Firefox 2.0 操作方法 Firefox は Flash の上でのクリックは無視されるので注意 左クリック: 進む 右クリック: 戻る →キー: 進む ←キー: 戻る 高度な操作方法 ロケーションバーや Firebug や jsh bookmarklet から以下の操作をすることで、早送り巻戻しページジャンプなどができます。 早送り巻戻し: g

    デブサミ2007資料「JavaScriptの現在と未来」 - IT戦記
  • Google Code Search で「とりあえず」を検索するとおもしろい - IT戦記

    ここからどうぞ http://www.google.com/codesearch?hl=ja&lr=&q=%28%2F%2F%7C%23%29.*%E3%81%A8%E3%82%8A%E3%81%82%E3%81%88%E3%81%9A.*%24&btnG=Google+%E6%A4%9C%E7%B4%A2 ソースを見てみると どれも、「あるあるww」って感じで面白い 例 // TODO:とりあえず、force_compileにする。 $this->view_->force_compile=true; case MOT_GETUP_HIP: return 0;//とりあえず0をかえしてみた break; # とりあえず最後に12個スペース詰める @returnstr = (@returnstr," "," "," "," "," "," "," "," "," "," "," "," ")

    Google Code Search で「とりあえず」を検索するとおもしろい - IT戦記