タグ

programmingとProgrammingに関するtztのブックマーク (522)

  • Google製のGit用ソースコードレビューシステム·Gerrit MOONGIFT

    ソースコードのレビューはシステムの品質を高めるのに大切な作業だ。GoogleやVMWareでも使われており、ブラウザを使って差分を確認してコメントができるようになっている。社内向けには拙作のSubversionソースコードレビューシステムの宍道湖がある(Rails製)。 Git向けソースコードレビューシステム この手のツールはSubversion向けのものが多かったが、Gitでも使いたいならGerritに挑戦してみよう。 今回紹介するオープンソース・ソフトウェアはGerrit、Git向けソースコードレビューシステムだ。 GerritGoogleが大々的に発表している訳ではないが、Google社員が開発しておりAndroidのオープンソースプロジェクトにおけるソースコードレビューにも利用されている。他のシステム同様に差分を見て、そこにコメントすることが可能だ。 差分を見てコメントする 差分

    Google製のGit用ソースコードレビューシステム·Gerrit MOONGIFT
  • 新人プログラマーがプロのプログラマーとして独り立ちするための7つの条件 - ハックルベリーに会いに行く

    ぼくは以前にIT関連の仕事をしたことがあって、ぼく自身はプログラムを組めるわけではないのだけれど、何人かのプログラマーさんと一緒にお仕事をさせて頂く機会があった。その中で生まれて初めてプログラマーという職業の方と交流させて頂いたのだけれど、彼らはなかなかにユニークで特異な個性の持ち主たちであった。もちろんプログラマーと一口に言っても色々なタイプがいて、必ずしもひとくくりにできるわけではないのだが、共通していたのは好奇心が旺盛で新しい物好きだということだった。そして少々気難しい面がありつつも、基的にはポジティブで、明日に向かって色々なことを前向きに、精力的に取り組んでいる人が多かった。 そんな中で、特に親しくお話しさせて頂いたTさんというプログラマーがいて、この方もなかなかに個性的で、ご自分の意見や主張というものをはっきりと持っており、ITのみならず世の中に対しても一家言お持ちであった。そ

    tzt
    tzt 2009/04/24
    一人前のプロになるだけならこのリストで十二分だけど、その上を目指すならまた違った考え方が必要になると思う。
  • 人気AV女優エロ動画集erlang-users.jp - 人気AV女優エロ動画集erlang-users.jp

    お問い合わせフォーム 当サイトは「児童ポルノコンテンツ」および「無修正コンテンツ」は一切掲載しておりません。もし万が一、当サイトで掲載が確認された場合は、即削除対応いたします。該当するコンテンツが御座いましたら、お手数では御座いますが問い合わせフォームご連絡いただけましたら幸いです。 ※当サイトコンテンツは他サイトRSSから自動収集しております

    人気AV女優エロ動画集erlang-users.jp - 人気AV女優エロ動画集erlang-users.jp
  • エンジニアがタイトル買い、著者買いすべき本 - Fight the Future

    著者買いすべき! ファウラー、ジョエルは知名度もあり、改めて僕がどうこう紹介する必要はないと思うけど、ここではスティーブ・マコネルを特に推したい。 読んだ人には非常に高い評価を得ているけれど、その分厚さや価格もあってなかなか広まっていない。 特にCode Completeはすべてのエンジニアが必ず読むべきだと思ってる。 これを読んで理解する/しないが(職業プログラマとしての)初級と中級の境界だと言えるくらい。 タイトルにはCodeとあるけど、別にコーディングをターゲットにしたではない。 設計、テストも含めてコーディングを考えている。当たり前だがコーディングだけではコーディングはできないからだ。 上下巻1,200ページの大作だし、2冊で12,000円だがその価値は大いにある。 スティーブ・マコネル ソフトウェア見積り―人月の暗黙知を解き明かす 作者: スティーブマコネル,久手堅憲之,S

    エンジニアがタイトル買い、著者買いすべき本 - Fight the Future
  • Memory Management of Cocoa

    Cocoaのメモリ管理(3) 保持と解除という方法は、理屈は分かるし簡単そうに見えます。しかし、実際にやってみると意外と難しいことがわかります。そこでCocoaでは少し楽をするための仕組みを導入しています。簡単に言えば、とりあえずなんでも入れておけるごみ袋を用意して、不要になった時点でごみ袋ごと捨てちゃうという方法です。このごみ袋にあたるのが、NSAutoreleasePoolというクラスです。 Application KitにおけるNSAutoreleasePool さて、Cocoaの重要なフレームワークの一つであるApplication Kitの話から始めたいと思います。Application Kitは、主にGUIを持つアプリケーションを作成するためのフレームワークです。このフレームワークを利用して作ったアプリケーション(つまり、ぶっちゃけた話、ProjectBuilderとInter

  • Amazon.co.jp: スクリプト言語による効率的ゲーム開発 C/C++へのLua組込み実践 (GAME DEVELOPER): 浜中誠: 本

    Amazon.co.jp: スクリプト言語による効率的ゲーム開発 C/C++へのLua組込み実践 (GAME DEVELOPER): 浜中誠: 本
  • http://madeira.cc.hokudai.ac.jp/RD/yamamoto/Essay/11.html

    何をいまさらと言われるかもしれないが、プログラミング言語におけるサブルーチンという概念の発明はノイマン型計算機のアーキテクチャの発明に匹敵する影響を後生の計算機科学に与えたと思う。もっともその影響があまりに大きかったので、プログラミングのスタイルや計算機アーキテクチャまでサブルーチン型の構造になってしまい、新しいアーキテクチャに脱皮できなくなってしまっているのも事実である。 サブルーチンのサブルーチンたるゆえんは、それがメイン・ルーチンという”親”から呼び出されることにある。サブルーチンに与えられた自由は親に帰ること(return)だけである。つまり、メイン・ルーチンはサブルーチンよりも偉いという厳然たる階層構造の上に成り立っている。そして、サブルーチン呼び出しはメイン・ルーチンを中断することで行われるという遂次性ゆえに、現在の遂次実行型の計算機アーキテクチャにぴったりはまるわけである。

  • C++ のプログラムのデバッグを楽にする方法

    Google が公開しているソフトウェアの解説シリーズ(→その1 , その2)の続きです。今回は google-glog を使ってスタックトレースを表示する方法についてご紹介します。 C++ でプログラムを書いているとよく遭遇するのがセグメンテーション違反というエラーです。不正なアドレスへのアクセスなどによりセグメンテーション違反が起きると、通常、 UNIX 系の OS では SIGSEGV というシグナルによってプログラムが終了するとともに、 core というファイルが作られます。 core ファイルにはデバッガから参照できるいろいろな情報が残っていますが、多くの場合に役に立つのは、スタックトレースという情報です。スタックトレースを見れば、プログラムがどこでクラッシュしたのか、どのような関数を経由してそこにたどり着いたのかがわかります。プログラムがクラッシュした箇所を特定できれば、単純な

    C++ のプログラムのデバッグを楽にする方法
  • MapReduce on Tyrant - mixi engineer blog

    先日、隅田川の屋形船で花見と洒落込んだのですが、その日はまだ一分咲きも行ってなくて悲しい思いをしたmikioです。今回はTokyo Tyrant(TT)に格納したデータを対象としてMapReduceのモデルに基づく計算をする方法について述べます。 MapReduceとは Googleが使っているという分散処理の計算モデルおよびその実装のことだそうですが、詳しいことはググってください。Googleによる出自の論文やApacheプロジェクトによるHadoopなどのオープンソース実装にあたるのもよいでしょう(私は両者とも詳しく見ていませんが)。 今回の趣旨は、CouchDBMapReduceと称してJavaScriptで実現しているデータ集計方法をTTとTCとLuaでやってみようじゃないかということです。簡単に言えば、以下の処理を実装します。 ユーザから計算開始が指示されると、TTは、DB内の

    MapReduce on Tyrant - mixi engineer blog
  • Atsushi's Homepage 〜 Lua で組んでみる

    Lua とは Lua は組み込み用の汎用スクリプト言語です。 2011/12/16 にバージョン 5.2 (2006/2/21 にバージョン 5.1) が リリースされました。 ちなみに、Lua の名前はポルトガル語で「月」の意味です。 シンプル・コンパクト・高速といった無駄のなさ、 CPU を含むリソース消費量の少なさが特徴です。 そのため、ゲームへの組み込み用途に向いています。 実際に海外ゲームでいくつか採用実績があり、それなりにメジャーです。 Lua は使われているわりには、日語でのドキュメンテーション関係が 不足しています (国内のサイトでは公式サイトの日語訳である Lua言語の紹介 (Lua 4.0), Lua 5.2 リファレンスマニュアル が有名です)。 そこで、自分の覚え書きも兼ねてここに簡単にまとめておこうと思います。 Lua の実行系を自分のプログラムに組み込む方

    Atsushi's Homepage 〜 Lua で組んでみる
  • mixi Engineers’ Blog » Lua on Tyrant: DBサーバにLLを組み込む

    遅めの夏休みで那須塩原に行ってきたmikioです。牧場でアルパカに触ってきたのですが、めちゃかわいかったです。さて今回は、Tokyo Tyrant(TT)にスクリプト言語Luaの処理系を組み込んで使う方法について解説します。 つか、Luaって何? Lua(公式サイトによると「るーあ(LOO-ah)」と発音)という言語の名前は聞いたことがあっても、数あるマイナー言語のひとつと思って特に気にかけていない人も多いと思います。私もそうでした。しかし、今では、C言語使いの第2言語・第3言語として使うにはとても有望な言語だと思っています。 Luaに関する日語の情報はまだ多くはないのですが、以下のサイトを順に読むとだいたいの雰囲気が掴めると思います。 Lua で組んでみる Lua 5.1 リファレンスマニュアル Luaは言語仕様が小さいので、とても習得しやすいです。上記のリファレンスマニュアルだけ読め

    mixi Engineers’ Blog » Lua on Tyrant: DBサーバにLLを組み込む
  • Lua for Windows - A batteries included Lua installation on Windows.

    Những năm trở lại đây, W88 là một thương hiệu nhà cái rất được lòng những người yêu cá cược online. Nếu bạn cũng đang quan tâm đến trang website cá độ hấp dẫn này, hãy cùng tìm hiểu những điều thú vị khi lựa chọn đặt cược tại đây nhé! Link vào W88 mới nhất 2025 W88 là nhà cái cung cấp đầy đủ và đa dạng các trò chơi ứng dụng nền tảng công nghệ tiên tiến bậc nhất hiện nay với mục tiêu hướng đến sự c

    Lua for Windows - A batteries included Lua installation on Windows.
  • Lua 5.1 リファレンスマニュアル

    by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Copyright © 2006 Lua.org, PUC-Rio. All rights reserved. 0 - 日語訳について この文書は、 Lua 5.1 Reference Manual を原著者に無断で日語に訳した、非公式の Lua 5.1 リファレンスマニュアルである。 誤訳の指摘は歓迎するので、yuno@users.sourceforge.jp へよろしく。 1 - 概要 Luaは拡張プログラミング言語である。 データ記述機能を持ち、汎用の手続き型プログラミングをサポートするようデザインされた。 オブジェクト指向プログラミング、関数型プログラミング、データ駆動型プログラミングもサポートしている。 Luaは、パワフルで軽いスクリプト

  • セミナー資料公開「Extreme Search! 次世代検索エンジンSedueが実現する驚異のパフォーマンス」

    2009年4月8日(水) 13:00〜15:30に開催されましたPreferred Infrastructureによる製品紹介セミナーの発表資料です。

  • LuaをC/C++に組み込む

    昔Wikiに書いていたものから、比較的まともに書けてそうなものを持ってきました。2007年当時のままの記載のため、今も使えるかどうかは知りません。 Luaの開始・終了Luaの使用を開始するには関数/lua_openや関数/luaL_newstate(両者は全く同じ内容)、関数/lua_newstateを使う。 最近のバージョンではlua_openに引数を渡す必要がなくなったらしい。 これらの関数の戻り値を型/lua_Stateのポインタとして受け取り、以後このポインタを使って各種の操作をする。 lua_State *L = lua_open();使用を終了するときは関数/lua_closeを使う。 使わなくてもOSが何とかしてくれることもあるらしいが自分でopenしたものは自分で責任もってcloseしよう。 lua_close(L);スレッドを終了するとは言いましても、スレッドを個別に終了

  • itarchitect.jp

    This domain may be for sale!

  • 春なのでemacsからvimに乗り換えてみました - ふぃふmemo

    春です。 何か新しいことがしたくなるこの季節。 ついにemacsからvimに乗り換えてみました。 というわけで、ここ一週間ほどゲームtwitterもろくにせず、ひたすら.vimrcをカスタマイズしまくっていました。 正しくはカスタマイズすべくググりまくっていたんですけど‥‥。 その甲斐あってかなり結構満足するものが出来たので、思い切って晒してみます。 まず最初に私がインストールしたvimですが、いくつか試して最終的に以下のCocoa版に落ち着きました。 PrivatePortfile/Vim72 - MacPortsWiki-JP 最初はMacVimなどを使っていたのですが、他のはiminsert=0が使えませんでした。 それでは、.vimrcをぺたりんこ。 PLAIN TEXT TEXT: "--------------------------------------------

  • 常駐型サーバープログラムのデバッグ手法

    BOOK: WEB+DB Press TITLE: 常駐型サーバーのデバッグ手法(ドラフト版) AUTHOR: (株)プリファードインフラストラクチャー 太田一樹 *注: この文章はWEB+DB PRESS Vol.48に掲載された記事のドラフト版です はじめに 今回はデバッグ関連特集ということで、常駐型サーバープログラムを作成する際のハマりどころやそれに対する解析方法・解析ツール・対策を、実際の経験を交えながら紹介したいと思います。 筆者は(株)プリファードインフラストラクチャーでインメモリ分散検索エンジン「Sedue (セデュー)」を開発しています。モバイル向け検索エンジン「エフルート」や、2008/11/6にリニューアルされました「はてなブックマーク2」などの検索バックエンドとして使われております。 この検索エンジンはいくつかの常駐型サーバープログラムから構成されており

    tzt
    tzt 2009/04/07
    参考になる。自作サーバの次期バージョンでは起動時にmmapでドカッとメモリを確保して手製アロケータで管理ってのを検討してるんだけどどうなんだろう?
  • tcpdumpとiptablesの関係 - (ひ)メモ

    追記 2009-04-03 まったくもってブコメでいただいた指摘の通りです>< h2onda linux, tcpdump tcpdump(というかlibpcap)は、データリンク層(OSI layer2)レベルでパケットを取得する packet プロトコルを使ってるので、そうなります。参照: man packet(7) 2009/04/02 はてなブックマーク - h2ondaのブックマーク / 2009年4月2日 tt_clown network 細かいけど,図は逆(NIC が下)のが良いかなと思った./ "ip"tables と言う位だから,IP層でパケットをフィルタしてるて事だろうな.tcpdumpはEthernet Frameも見えるので,後は分かるな?・・・てとこか. 2009/04/02 はてなブックマーク - tt_clownのブックマーク / 2009年4月2日 pack

    tcpdumpとiptablesの関係 - (ひ)メモ
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at