タグ

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

  • Mac の launchctl ってなんだ? - IT戦記

    man lauchctl launchctl interfaces with launchd to load, unload daemons/agents and gen-erally generally erally control launchd. launchctl supports taking subcommands on the command line, interactively or even redirected from standard input. These commands can be stored in $HOME/.launchd.conf or /etc/launchd.conf to be read at the time launchd starts. API Reference: Mac OS X Manual Pages 頑張って訳す ikno

    Mac の launchctl ってなんだ? - IT戦記
  • サイボウズで学んだこと - IT戦記

    はじめに 2010 年 9 月 15 日を持ちまして、サイボウズ・ラボを退職いたしたました。 報告も兼ねて、久しぶりにブログを書いてみたいと思います。 (写真はゆうすけべーさんです) この会社に入って、たくさんの学びと思い出がありました。 その一つ一つをまとめていければ、素晴らしい記事になるのかもしれませんが、僕は文章が苦手です。 ですので、うまく退職のエントリを書き上げることができません。 言葉にできない。そんな感じです。 なので、このエントリはサイボウズ・ラボやサイボウズ社の仲間たちへのありがとうの気持ちをこめて、自分らしく最後まで JavaScript のことを書きたいと思います。 サイボウズでの最後の仕事 僕にとって、サイボウズでの最後の仕事は「JavaScript で新しいユーザーインタフェースを作ること」でした。 そして、その中で始めて複数人による大規模な JavaScrip

    サイボウズで学んだこと - IT戦記
  • Terminal.app を軽くする方法 - IT戦記

    プログラマの人は ずっとターミナル開きっぱなしって人多いですよね? Mac の場合 Terminal.app というターミナルがデフォルトで ついていて、それを開きっぱなしって人が多いんじゃないでしょうか。 問題点 Terminal.app をデフォルトの設定のまま使ってると問題点がある。 何か別の作業をした後に、久しぶりに Terminal.app をアクティブにすると、固まるのだ。 実はこれ、毎回相当ダメージを受ける。 で、解決策が分かった スクロールバッファを小さくすればいい。 なんとデフォルトの設定では無制限にスクロールバッファを保存する設定になっているのだ。 たまたま cat したファイルがものすごい容量だったなんてことよくあることなのに>< それが、全部スワップに入ってしまう。 スクロールバッファを小さくする方法 右上のメニューから「ターミナル」→「環境設定」→「設定」→「ウィ

    Terminal.app を軽くする方法 - IT戦記
  • 早速 Go 言語を試してみる! - IT戦記

    はじめに Google から新プログラミング言語 The Go Programming Language が発表されましたね! というわけで、さっそく試してみたいと思います。 環境は Mac OS X 10.6 インストール さっそくインストール Getting Started - The Go Programming Language を見ながら 環境の準備 ディレクトリを作る amacbook% cd ~ amacbook% mkdir go amacbook% mkdir bin環境変数の設定をする。~/.zshrc に以下を追加 # Go 用 export GOROOT=$HOME/go export GOOS=darwin export GOARCH=amd64 export GOBIN=$HOME/bin export PATH=$GOBIN:$PATH Mercurial を

    早速 Go 言語を試してみる! - IT戦記
    rabbit2go
    rabbit2go 2009/11/11
  • アクセスチャートを作ろう! Pathtraq ページチャート API と Google Chart API の合わせ技! - IT戦記

    昨日 はてブにアクセスチャートというエントリを書いて、 Pathtraq のページチャート APIGoogle Chart API の組み合わせが結構便利だったので、そのノウハウを書いておきたいと思います。(後の自分のためにも) こんな感じのチャートが簡単に書けちゃいます! Pathraq のページチャート API とは 特定の期間内での時系列のアクセス数の一覧を返す API です。 マウント アンマウント | パソコン豆知識 とあるように、「この 1 時間は何アクセスがあって、その前の 1 時間は何アクセスあったよ」という要な情報を返してくれます。 この API を使うと 「今から 24 時間前までのアクセスの推移を知りたい!」 「このページっていつ頃から注目され始めたのかなあ?」 というような情報を得ることができます。 Google Chart API とは Google Cha

    アクセスチャートを作ろう! Pathtraq ページチャート API と Google Chart API の合わせ技! - IT戦記
  • ブラウザで X86 のマシン語を動かす! Google 謹製 Native Client をさっそく試してみる - IT戦記

    はじめに Google から、非常に面白そうなソフトウェアがリリースされました! その名も Native Client なんとブラウザ上で X86 のバイナリを動かしてしまうそうです。 これはすごい! さっそく試してみたいと思います。その過程を逐次更新していきます。 自分が試したときの環境 自分が試す環境は、以下の通りです。 Mac OS X Xcode の gcc (version 4.0.1 (Apple Inc. build 5465)) python 2.5.1 準備 では、さっそく準備をしましょう。 http://nativeclient.googlecode.com/svn/trunk/nacl/googleclient/native_client/documentation/getting_started.html を参考にやってみます。 環境一式をダウンロード まずは、以下

    ブラウザで X86 のマシン語を動かす! Google 謹製 Native Client をさっそく試してみる - IT戦記
  • pthread でキューを作る(再挑戦)。ついでに dtrace でスレッドの解析 - IT戦記

    一日、一回 pthread 勉強。 はじめに pthread でキューを書いてみる - IT戦記に関して、id:n-soda さんからとても貴重なアドバイスを沢山頂いたのですべて直しておきたいと思います。 当にありがとうございます。 指摘が会った点まとめ 再帰呼び出しの問題 キューが一杯の場合に enQ() の再帰呼び出ししているのが変です。ここは while で書けるはずです。Cの場合、末尾再帰の削除をしない処理系がほとんどですし、このケースでは、deQ() 側のスレッドと enQ() 側のスレッドで速度差があるだけで再帰してしまいますから、スタックを相当無駄に消費します。スタックオーバーフローで死んでしまう可能性もあります。 http://d.hatena.ne.jp/amachang/20080611/1213165364#c1213677983 sleep(0) の問題 キューの

    pthread でキューを作る(再挑戦)。ついでに dtrace でスレッドの解析 - IT戦記
  • Mac のバイナリファイルについて調べる - IT戦記

    ユニバーサルバイナリとは 今の理解は、 PPC 用のバイナリと Intel 用のバイナリをくっつけたバイナリファイルの形式。 こういう複数のアーキテクチャのコードを含むバイナリを「FAT バイナリ」や「マルチアーキテクチャバイナリ」という。 つまり、ユニバーサルバイナリは FAT バイナリの一種。 ユニバーサルバイナリのヘッダ ユニバーサルファイルの先頭には FAT ヘッダが付く。 ヘッダの形式は、以下の構造体の形式は /usr/include/mach-o/fat.h にある struct fat_header { uint32_t magic; /* FAT_MAGIC */ uint32_t nfat_arch; /* number of structs that follow */ }; struct fat_arch { cpu_type_t cputype; /* cpu sp

    Mac のバイナリファイルについて調べる - 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戦記
  • Safari 3.1 に実装された「Client-side database storage (SQL API)」とは何か? - IT戦記

    はじめに Safari 3.1 には Client-side database storage (SQL API とも呼ばれています。)という新しい仕様が実装されました。 というわけで、この新しい API について色々調べたことを簡単にまとめておきます。 Client-side database storage が使えるブラウザ 2008 年 03 月 27 日現在では、 Safari 系のブラウザのみです。 Safari 3.1 WebKit Nightly Client-side database storage とは Selectors API とは HTML5 で定義された仕様です。詳細に関してはこちらをどうぞ。 簡単に説明すると JavaScript 内でリレーショナルデータベースを使えるということです。 もっと簡単にイメージするために、実際のコードを示すとこんな感じです。 va

    Safari 3.1 に実装された「Client-side database storage (SQL API)」とは何か? - IT戦記
  • 1