タグ

関連タグで絞り込む (228)

タグの絞り込みを解除

Programmingとtipsに関するjjzakのブックマーク (410)

  • ソースコードを快適に読むための GNU GLOBAL 入門 (前編)

    2009-03-07 ソースコードを読むときは、複数のファイルから目的の関数を探してエディタで開くという作業をすることが多い。 Eclipse や NetBeans などの統合開発環境上で Java を読む場合は、クラスやメソッドの一覧からソースコードへ簡単にジャンプすることができる。 ターミナル上で C を読む場合は、 grep コマンドで関数を探してエディタ (vim) で開いていたんだけど、ファイル数が多くなると目的の関数に辿り着くのが大変になってくる。 そこで GNU GLOBAL というソースコード解析ツールを試してみたら、ソースコードを読む作業がとても快適になった。 このツールの存在は前から知っていたんだけど、ネット上では「ソースコードタグシステム」、「ctagsのようなもの」という説明が多く、 ctags が何なのかを分かっていない僕には、便利だけど難しそうなものだと勝手に思

    ソースコードを快適に読むための GNU GLOBAL 入門 (前編)
  • Gitを使いこなすための20のコマンド | OSDN Magazine

    LinuxカーネルやRuby on RailsPerlなど、近年多くの大規模プロジェクトで採用されているバージョン管理システムが「Git」だ。Gitには非常に多数のコマンドが用意されているが、日常的に使用するコマンドは20個程度と言われている。記事では、Gitを使いこなすために覚えるべき20個のGitコマンドを紹介する。 LinuxカーネルやRuby on RailsPerlなど、近年多くの大規模プロジェクトで採用されているバージョン管理システムが「Git」だ。Gitには非常に多数のコマンドが用意されているが、日常的に使用するコマンドは20個程度と言われている。記事では、Gitを使いこなすために覚えるべき20個のGitコマンドを紹介する。 なお、Gitの基的な考え方や使い方については分散バージョン管理システムGit入門でも紹介しているので、そちらも参照してほしい。

    Gitを使いこなすための20のコマンド | OSDN Magazine
  • Erlang Tips

    Erlang に関する情報を,自分用メモを兼ねて作成しました. 間違い等見つけた方はブログのエントリまで連絡いただけるとうれしいです. 最終更新:2007/07/04 23:56 目次 Erlangの特性 Erlangは以下のような特徴があります. 簡単に言うと,ネットワークサーバを書くのに向いています. 得意なこと ・大量の並列処理 ・複数サーバでの分散処理(ただしEthernet経由で通信するので専用インターコネクトほどは速くないと思います) 苦手なこと ・純粋な計算処理(C言語の10倍程度遅いようです) ・GUIアプリケーション(WingsというErlangでかかれたGUIアプリはあるが,GUI周りの情報は少ないです) ありそうな勘違い ・マルチコア・SMP環境にすれば,コア数に比例して性能が向上する. →もちろん条件によるので,必ず比例するわけではありません. SMPサポートは条件

  • wav ファイルフォーマット

    'fmt ' チャンク構造体 #define FormatID 'fmt ' /* chunkID for Format Chunk. NOTE: There is a space at the end of this ID. */ typedef struct { ID chunkID; long chunkSize; short wFormatTag; unsigned short wChannels; unsigned long dwSamplesPerSec; unsigned long dwAvgBytesPerSec; unsigned short wBlockAlign; unsigned short wBitsPerSample; /* Note: there may be additional fields here, depending upon wFormatTa

  • フルスクラッチでWebサーバを書いてみた - Yet Another Ranha

    フルスクラッチっていうのは、既存のOSの上に書くとかでは無くて、言ってしまえばOSから作った様なものです。 結果から言うと、Webブラウザでアクセスすると苺ましまろのリンクが出るとかっていう程度のものは作れました。 3-wayhandshake出来ますし、FINも裁けます。まぁ"何とか動く"程度にして満足したので止めましたけど... 今度の自分の為のメモとして。もしかしたら他の人の参考に成るかも。 何故そんな事をしたのか? まず、先日のエントリにも書いた通りだが圧倒的にやる事が無かったから。虚しい毎日。これはWebサーバを書く事で解消されるに違いないとかっていう事では無くてですね。 こうカーネルとのオーバーヘッドがどうこうで、どの処理をするのにどのシステムコールを使って云々。 スレッドとイベントはどうこうで、たくさん過ぎるetcetc 皆さん大変だなーと。でもまぁ用途が決まってるんだったら

    フルスクラッチでWebサーバを書いてみた - Yet Another Ranha
  • 技術屋が作った技術屋のためのスキルアップサイト Kozupon.com

    Kozupon.com は、素晴らしいOpenSource(GPL)の普及のため日語サイトを作っています。 ■ LightTPD でWebサーバを作ろう! ■ Postgrey日語ポータル 公開中! ■ COPSセキュリティスキャナー を使って自鯖をチェックしよう! ■ コンテンツフィルタは Squirm ! ■ ウィルススキャンリダイレクタは SquidClamAV ! Kozupon.com は、Unixの技術者育成を支援します。 ■ Nature's Linux Users Group ■ TomoyoLinux ■ ペンギンの杜 秋葉原田舎料理とき 清瀬佐藤由子声楽教室 FreeSOFT開発チーム Copyright 2005-2008 Kozupon.com. SitePolicy MyNetworkPolicy Design by

  • はてなブログ | 無料ブログを作成しよう

    【献血デビュー】体重が少し足りず400ml献血はできなくとも、献血ルームでの成分献血ならできたぞ、という話 いきさつ 2025年の抱負として「400ml献血をできるようになる」を掲げてから、冬を越し春が過ぎ夏が終わ………なかなか終わらないな……8月も終わろうとしている。記事を書いた頃の体重からは1kgぐらい増えたところだ。 夏バテなんてどこ吹く風とばかりに、ここ数週間は私の…

    はてなブログ | 無料ブログを作成しよう
  • LispでXMLを使いたい part2 - さくらんぼのlambda日記

    前回説明するといって放置したやつを再度。 XMLを扱うだけならば、cxmlを使うのがお手軽。 グーグル先生に聞くとcXMLという規格があるようでドキュメントが見つかりづらい。 Closure XMLというのが正式名称らしいのでそちらでググった方が良い。 公式サイトはここ。http://common-lisp.net/project/cxml/ 大体の使い方はQuick-Start Exampleで確認できる。 YahooのXMLを読んでみる Yahooの開発者ベージにXMLのサンプルが乗っている。 http://developer.yahoo.co.jp/search/rest.html このドキュメントのURLの構築の項の例を使う。 http://api.search.yahoo.co.jp/WebSearchService/V1/webSearch?appid=YahooDemo&qu

    LispでXMLを使いたい part2 - さくらんぼのlambda日記
  • きまぐれ日記: Yahoo!の形態素解析をMeCabで無理やり再現してみる

    MeCabで形態素解析器を作りたい場合は以下の二つの言語リソースが必要です。 1. 辞書 (単語と品詞のペアの集合) 2. 入力文と、それに対応する正解出力ペア(正解データ) 現在公開している mecab-ipadic は、ipadicとRWCPコーパスという正解データを使っています。 ここから分かるとおり、少なくともMeCabを使う場合は、コスト値を丹念にチューニング するといった職人芸は要りません。形態素解析への入力文とそれに対応する(理想)出力 があればコスト値を機械学習的なアプローチで構築することができます。 さらに、正解データを人手で作る必要は必ずしもありません。 すなわち、Yahoo!形態素解析器の出力結果を「擬似正解」とみなして MeCabの学習プログラムを走らせれば、Yahoo!の出力を高い精度で再現できる MeCab用辞書を作成することが原理的に可能です。 ふだんはあま

  • 現場指向のレプリケーション詳説

    この文書は、技術評論社刊『WEB+DB PRESS Vol.22』に執筆した記事を技術評論社の 許可を得てWWWで公開しているものです。 このWWW版は校正前の原稿を元にしている点、WWW公開後に必要があれば修正する点で、雑誌版の文章とは異なる部分があります。また、図表も雑誌版とは異なります。 予めご了承ください。 また、この文章が対象しているのはMySQL 4.0系なので、最新のリリース版と比べると説明不足な点などが多々あると思います。 レプリケーションの基をおさえるには、この文書はまだ有益だと思いますが、設定レベルの説明は最新のドキュメントを参照するようにしてください。

  • http://tips.lisp-users.org/scheme/index.cgi

  • http://tips.lisp-users.org/common-lisp/index.cgi

  • OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん

    OMakeすごい。OMakeはマジですごい。 OMakeはGNU makeの代替品みたいなものなんだけど、正直なところこのツールの強力さはGNU makeと比べると失礼なくらいすごい。これのおかげで、「コード修正→ビルド→デバッグ→コード修正→・・・」のループの、ビルドにあたる作業がほぼ消え去った。 ファイルの依存関係の解析がとにかくすごい。よくあるユースケースなんかの場合、最小限の手間でほぼ完璧に依存関係を網羅して、よしなにビルドしてくれる。 とりあえず、はやみずが実際に使ってみたケースを例にとってそのすごさの一端を紹介しようと思う。 case study 論より証拠ということで、自分が OMake を試しにつかってみたケースを紹介する。C言語でスタティックライブラリを作っていて、それに加えて簡単なテストプログラムを書いている。 /include/ 以下にヘッダファイルが全部ある /sr

    OMake つかったらC言語でプログラム書く手間がバカみたいに減った - 日記を書く[・ _ゝ・]はやみずさん
  • FrontPage - Tips for us.

    Programming C/C++ C言語Tips (準備編) STL覚書 C#/VB.NET C# Tips LINQ覚書 perl perl 基礎 perl Tips Prolog Prolog 基礎 Prolog 覚書 Linux/BSD FreeBSD FreeBSDのパッケージ管理 Book Review Coming soon..?

    jjzak
    jjzak 2008/12/22
    [][][stl]
  • UTF8 フラグあれこれ - daily dayflower

    UTF8 フラグについてわかってるつもりだったんですが,utf8::is_utf8 considered harmful - Bulknews::Subtech - subtech を読んで混乱したので,自分なりにまとめてみました。間違いがありましたらご指摘よろしく。 まとめ スカラー変数の内部表象の状態を示すものとして UTF8 フラグというものがある スカラー変数は(リファレンス等は別として)下記のものを格納できる (A) 文字列(内部表象: UTF-8) (B) 文字列(内部表象: ISO-8859-1) (C) バイナリ列 純粋なバイナリストリーム(画像ファイル等)かもしれないし, UTF-8 octet stream かもしれないし, CP932 octet stream かもしれないし,etc, etc ... Perl は(後方互換性確保などの理由から)ISO-8859-1

    UTF8 フラグあれこれ - daily dayflower
  • AWK Users JP :: AWK ならどう書く?

    ここでは他のプログラムで書かれている内容を awk で作った場合にどうなるかを記載しています。少しでも皆さんの awk の勉強のためになればと思い書いています。 seq コマンドを awk で。 (2008-11-18) 0 〜 1000 に含まれる 0 をカウントする (2008-11-16) コマンドプロンプトで cat する (2008-11-07) 各行ごとにコマンドを実行するスクリプト (2008-11-06) 最適なお釣りの計算 (2008-10-26) フィボナッチ数列 (その 2) (2008-10-24) 2 つのファイルの比較 (2008-10-24) awk でシングルクォートを扱う (2008-10-17) 連想配列の値でソート (2008-10-14) 連想配列のキーを取り出す (2008-10-13) awk で epoch time を YYYY/MM/DD

  • プログラミングテクニックのまとめ - プログラミング日記

    とりあえず思いついたもののまとめ。 まずは、ベーシックなものから。 変数のスコープをなるべく狭くしろ 他はグローバル変数を使うなとか、モジュール化と界面を意識せよなど。とにかくスコープは重要かつ意外と奥が深い。スコープに関係する機能は、モジュール(パッケージ)、クロージャ、ローカル関数、ローカルクラス、変数の種類、アクセス制御など。 同じロジックのコードを2度以上書くな 他はDRY原則、コピペをするななど。自分の場合、2度書く方がシンプルになる場合、2度書くこともある。特に、ifやswitchなどのロジックの中で同じコードが2度現れる場合、ちょっとしたコードでわざわざ別のところで関数やブロックにまとめて、それを参照するのは面倒。但し3度以上現れる場合は関数などにまとめるケースが多いかも。 汎用コード内で条件分岐コードを減らせ 他はifをポリモーフィズムによりなくせなど。条件分岐は汎用性を損

    プログラミングテクニックのまとめ - プログラミング日記
  • enbug diary(2005-07-16)

    _ GRUB 2 昨日からやってたGate A20コードの書き直しが大体完了。 どうもこういうのにqemuを使うのはよくないらしく、 VMWareの方がチェックが厳しい(しっかりしている)のは結構興味深いですね。 qemuはかなり甘くて、qemuで動いても物のマシンでは動かんことがよくあります。 結局私は物理マシンでデバッグしまくりました。 一応これでsyslinuxと同等になったはず。 Gate A20にまつわる悪夢は A20 - a pain from the past によくまとまってますが、 他にもウェブ上を徘徊したり、 GRUB Legacyで得られた知見を基にして書いてます。 hpaのコードは使いたくないので、syslinuxのコードは一切使ってません。 Gate A20を無効にするときのチェックが厳しすぎるのが問題になる可能性が高いので、 明日もう少し弄るつもりです。 _

  • More C++ Idioms - Wikibooks

    C++ はあまりに『熟練者に優しく』なってしまった」(C++ has indeed become too "expert friendly") Stroustrup 氏の言は真実である。なぜなら熟練者は言語のイディオムに深く精通しているからである。プログラマが理解するイディオムの増加に従って、言語は彼あるいは彼女にとってよりフレンドリーになる。この open content book の目的はほどほどに C++ に精通しているプログラマに対して現代的な C++ のイディオムを提示し、C++ をよりずっとフレンドリーに感じるレベルにまで知識を引き上げる助けと成る事である。書は熟練した C++ プログラマが C++ を使ってプログラミングや設計を行う際に用いる事の多い再利用可能なイディオムの網羅的なカタログと成るよう意図されている。これは、それらのテクニックや語彙をひとまとめにしようという

  • auとSoftBankのShift_JISからUnicodeへの変換規則 - スコトプリゴニエフスク通信

    共にEncode::JP::Mobileのdat/*-table.yamlのデータで検証。 SoftBankのShift_JISからUnicode規則が分かったのでスッキリした。これでShift_JIS(cp932)⇔Unicode⇔UTF-8を機械的に変換できる。 def softbank_sjis_to_unicode(sjis): high = sjis >> 8 low = sjis & 0xff if high == 0xf7: if low else: base = 0xe200 elif high == 0xf9: if low else: base = 0xe300 elif high == 0xfb: if low else: base = 0xe500 else: raise ValueError("not softbank emoji") if low elif lo