タグ

ブックマーク / xtech.nikkei.com (644)

  • 画面で見る最新オープンソース/Linux

    業務改革プロジェクトリーダー養成講座【第15期】 3日間の集中講義とワークショップで、事務改善と業務改革に必要な知識と手法が実践で即使えるノウハウ...

    画面で見る最新オープンソース/Linux
    wacky
    wacky 2007/02/09
    各種Linuxディストリビューションやオープンソースソフトをスクリーンショットで紹介。
  • 8. 2038年問題

    32ビットPCでは数値を扱う限界があります。 PHPで日付を扱う事が多いと思いますが、UNIXタイムスタンプを利用すると数値 の限界に引っかかる事を知っておく必要があります。 32ビットPCで扱う数値限界は 2の31乗-1 で、 2147483647 です。 これをUNIXタイムとして日付に直すと、 <?php $unixtime_max = pow(2, 31) - 1; echo date('Y-m-d H:i:s', $unixtime_max) . "\n"; $unixtime_overflow = $unixtime_max + 1; echo date('Y-m-d H:i:s', $unixtime_overflow) . "\n"; ?> 2038-01-19 12:14:07 1901-12-14 05:45:52 となり、2038-01-19 12:14:07 以降の

    8. 2038年問題
    wacky
    wacky 2007/02/08
    PHPの2038年問題の回避策。PEARのCalcクラスを利用。
  • 第39回 Web開発者との付き合い方 〜Web屋の一分(いちぶん):ITpro

    前回は,コミュニケーション・コストについて触れましたが,今回はもう少しWebサイト・デザインに絞って話をしてみたいと思います。 意見集約という「小リーダー」の役目 前回の復習になりますが,何か大きな事柄を決めようようとするとき,あまりに民主的に行うと,意見を集約するのに膨大な時間がかかります。私は,Web開発にとって「時間」が一番大切だと思っているので,結論を出すまでのプロセスを効率化することは至上命令です。 様々な方法があるかもしれませんが,基的には,機動性の良いグループ単位で意見を集約し,代表者会議の場で即決できることが鍵になるように思えます。小グループの小リーダーたちの機動力と,権限を持っているという体制,これに勝るものはないでしょう。 そして,意見集約の効率化という側面だけでなく,クライアントの担当者が時間までに難しい結論を決めてきてくれたり,決をとる場で「責任は俺が取るから」と

    第39回 Web開発者との付き合い方 〜Web屋の一分(いちぶん):ITpro
    wacky
    wacky 2007/02/07
    クライアントの立場から見たWeb開発者の役割。Web開発者と何をどう話せばよいか、何を事前準備すればよいか。
  • 世界中の衛星写真を表示できる Google Earth

    Google Earthは世界中の衛星写真や航空写真をマウスで操作しながら表示できるビューアだ。マウスでドラッグしたり,ホイールを操作したりするだけで見たい場所の写真を閲覧できる。検索や,特定の地点へのマークも可能だ。 Google Earthは人工衛星から撮影した世界中の写真を表示できるソフトウエアである(写真1)。観光地や主要国の首都など,一部の地域については衛星写真の代わりに航空写真を利用しており,車の形が分かるほど高解像度の写真を楽しめる。 Google Earthを利用すれば,山や滝,著名な建設物などを手軽に見られるので,パソコンの前に居ながらにして,ちょっとした旅行気分に浸れるだろう。航空写真が用意されていれば,自宅を確かめることも可能だ。自分の家の周りを見回してみると新しい発見があるかもしれない。 Google Earthのほとんどの機能は,マウスのみで操作できる。検索機能も

    世界中の衛星写真を表示できる Google Earth
    wacky
    wacky 2007/02/07
    Linux版Google Earthのインストール&利用の手順。
  • 第2回 パズルみたいに楽しいデータ圧縮

    適当な圧縮ルールを作り,ASCII文字で描いた絵(図1)をなるべく少ない文字数で表現してください。 ある日のこと,ぼーっとした頭で仕事をしていると,同僚がそれはもう満面の笑みを浮かべて「プログラムで使っている画像データを圧縮するためにLZSS*1を実装してみたんですよ。ふふん,どうよ」と話しかけてきました。「ぬあ?」とそれがどうした的に返事をしつつも,ふと気づいたのは,何らかの圧縮プログラムやアルゴリズムを作った経験を持つプログラマは意外に多いということです。すでにzlibなどの著名な圧縮ライブラリが公開されていますが,「ブロックソート」や「PPM」などの新しい圧縮方法が日夜開発されています。 どうも圧縮というのは,プログラマ心をそそる何かがあるようです。今回はそんな圧縮アルゴリズムの不思議で魅力的なところを紹介します。パズルのような圧縮アルゴリズムの楽しさを感じていただければと思います。

    第2回 パズルみたいに楽しいデータ圧縮
    wacky
    wacky 2007/02/06
    3種類の圧縮アルゴリズムを紹介。ランレングス法、LZ77、BPE(Byte Pair Encoding)。
  • Windows Vista開発史---目次 | 日経 xTECH(クロステック)

    マイクロソフトが1月30日に発売した,新OS「Windows Vista」。2001年から丸 6年以上を費やしたWindows Vista開発の歴史を,米国「Windows IT Pro Magazine」の名物ライターであるPaul Thurrott氏が振り返った。 大きな夢が込められながらも,開発が遅れ,機能が大幅に削られて今に至った Windows Vistaの苦闘の歴史がよく分かるだろう。 ■ (第1回)2001年~2002年:BlackcombとLonghorn ■ (第2回)2003年:Longhornへの期待が頂点に達した「PDC 2003」

    Windows Vista開発史---目次 | 日経 xTECH(クロステック)
    wacky
    wacky 2007/02/05
    丸6年以上を費やしたWindows Vista開発の歴史を振り返るシリーズ。読み物として面白い。
  • 第1回 Windowsのプロセスを詳しく探る

    大手コンピュータ・メーカー勤務。入社以来10数年をソフトウェア開発の現場で過ごし,その後ソフトウェア品質部へ異動。現場への技術支援や品質教育開発などを主に行っている。「APIで学ぶWindows徹底理解」(日経BP社)などを執筆。 2007年1月末の一般向け出荷を控え,Windowsの世界では新バージョンVistaが注目を集めている。開発者にとってWindows Vistaの一番のポイントはと言えば, .NET Framework 3.0を標準で搭載する点を挙げる人が多いだろう。雑誌にせよWebにせよ,最近のWindowsプログラミングの記事のほとんどは .NET向けだ。マイクロソフトも,これまでネイティブ・コードでの開発が主流だったC/C++開発まで, .NETへの移行を促そうとしている。実際,マイクロソフトが無償で配布しているC/C++統合開発環境Visual C++ 2005 Exp

    第1回 Windowsのプロセスを詳しく探る
    wacky
    wacky 2007/01/30
    Win32 APIを利用したサンプルコードを見ながら、Windowsプロセスの仕組みを学ぶ。
  • (新)APIから知るWindowsの仕組み---目次

    雑誌にせよWebにせよ,最近のWindowsプログラミングの記事のほとんどは .NET向けだ。マイクロソフトも,これまでネイティブ・コードでの開発が主流だったC/C++開発まで, .NETへの移行を促そうとしている。 ではネイティブ・アプリケーション開発用のプログラミング・インタフェースであるWin32 API(Application Programming Interface)の知識は不要になるのかというと,決してそうはならないと筆者は考えている。理由の一つは,OSが動作する仕組みを知ることが,今後も開発者にとって重要であり続けることだ。プロセス管理,メモリー管理,同期化といった概念は,.NETで開発する場合でも必要だ。こうした知識を得るのに一番いいのは,やはりOSのカーネルに近いAPIのレベルで学ぶことである。 将来どうなるかはともかく,現時点では .NET Frameworkの大部分

    (新)APIから知るWindowsの仕組み---目次
    wacky
    wacky 2007/01/30
    Windowsのシステム・レベルにおける開発上の重要な機能やトピックをWin32 APIを通して解説する連載。
  • Vine Linux 4.0(テキスト・インストール編)

    ●名称:Vine Linux 4.0 ●提供元:Project Vine ●URL:http://vinelinux.org/ ●対応機種:PC AT互換機,PowerPC搭載機 Project Vineは2006年11月22日,最新版となる「Vine Linux 4.0」を公開しました。Vine Linuxは,Project Vineが開発する国産ディストリビューションです。日語環境と安定して動作することを重視して開発されているのが特徴です。 Vine Linux 4.0はLinuxカーネルに2.6.16.29を採用しました。また,GNOME 2.14やX.Org X11R6.9.0が利用できます。また,さざなみゴシックをProject Vineが改変した日語True TypeフォントのVLゴシックがインストールされます。 かな漢字変換ソフトは今までのCannaからAnthyに変更さ

    Vine Linux 4.0(テキスト・インストール編)
    wacky
    wacky 2007/01/26
    Vine Linux 4.0のテキストモードでのインストール手順。
  • MSがAjax開発支援ソフト群を正式リリース,Visual Studioで利用可能

    Microsoftは1月24日(米国時間で1月23日),Ajax(Asynchronous JavaScript+XML)開発フレームワーク「ASP.NET AJAX 1.0」を正式にリリースした。同社Webサイトから無償でダウンロードできる。 ASP.NET AJAXは,Webサーバー側で多くを処理する形態を採る従来のASP.NETを拡張して,より多くの処理をクライアント側で実行するAjaxクライアントの開発を支援するソフトウエア群。Visual Studio 2005およびVisual Web Developer 2005 Express Editionで利用できる。1.0版は,(1)クライアント側で動作するJavaScriptのライブラリ「Microsoft AJAX Library」,(2)ASP.NETを拡張するコントロール集「ASP.NET 2.0 AJAX Extensio

    MSがAjax開発支援ソフト群を正式リリース,Visual Studioで利用可能
    wacky
    wacky 2007/01/24
    ついに「ASP.NET AJAX 1.0」正式版がリリース。JavaScriptライブラリ「Microsoft AJAX Library」は単体利用が可能で、PHPやApacheとの組合わせもOK。
  • 3. session_destroy関数はファイルを消すだけで、スクリプト内ではセッション変数が使えてしまう

    3. session_destroy関数はファイルを消すだけで、スクリプト内ではセッション変数が使えてしまう アプリケーション作成に不可欠なセッション変数ですが、セッションを 正しく消さなければ不具合の原因のみならず、脆弱なアプリケーション となってしまいます。 正しくセッションを消す方法を知っておきましょう。 PHPアプリケーションを作成する時に、セッション変数の利用は不可欠と言っ ても過言ではないでしょう。 しかしセッションには攻撃所が多く、脆弱なアプリケーションを多数見かけ ます。 session_regenerate_id( true ) としてセッションIDを変えるのは非常に 有効な手段ですが、逆に不要なセッションは必ず破棄しなければ後々、脆弱 性や不具合の原因となります。 例えばログアウトメカニズムのような実装をする場合、session_destroy()を 利用していませんで

    3. session_destroy関数はファイルを消すだけで、スクリプト内ではセッション変数が使えてしまう
    wacky
    wacky 2007/01/24
    セッションの正しい消し方。session_destroy関数を呼ぶだけではダメ。
  • 第12回 Ajaxを利用したサイトで違和感を覚えることがある

    「Ajax」という言葉は,2005年2月に情報アーキテクトであるJesse James Garrett氏が「Ajax: A New Approach to Web Applications」という記事の中で初めて使ったと言われています。それから2年近くが経って,すっかりこの言葉やそれが表すテクニックも一般的になった気がします。 今や,単にページの一部の書き換えや,ちょっとしたデータの送信にAjaxのテクニックを利用しているページは珍しくありません。サーバーとのデータのやり取りの多くに,JavaScriptを利用した非同期通信を行って,メールやカレンダー,ワープロなどのオフィス・ツールなど,まるでスタンドアロン・アプリケーションのような見た目を実現しているサイトも少なくありません。 筆者が,JavaScriptを使ってページの遷移をほとんど行わないインタフェースを初めて「意識的に」体験したの

    第12回 Ajaxを利用したサイトで違和感を覚えることがある
    wacky
    wacky 2007/01/24
    Ajaxの欠点(画面遷移の分かりにくさ、戻るボタンが使えない)と、既存アプリケーションの解法。
  • 鵜飼裕司のSecurity from USA : P2PソフトShareの暗号を解析,ネットワーク可視化システムを開発

    1. はじめに Shareと呼ばれるP2P型ファイル交換・共有システムがここ二年ほどで急速に普及し、Winnyについで第2の巨大P2Pネットワークを構成している事は皆様もご存知かと思います。以前、ネットワーク脆弱性スキャナ「Retina」(http://www.scs.co.jp/eeye/)にWinnyの検出機能を実装致しましたが、同様にShareの検出機能も実装して欲しいという強い要望を日の皆様から頂いておりました。このためには、Shareを解析せねばなりません。 どうせShareを解析するならば、利用されている暗号アルゴリズムやプロトコルを詳細に解析し、現在日で大きな社会的問題となっているShareネットワークでの情報漏えい問題に何か手を打てればと思い、年明けからShare EX2の解析に着手しました(以降、「Share」 = 「Share EX2」とする)。この甲斐あって、Re

    鵜飼裕司のSecurity from USA : P2PソフトShareの暗号を解析,ネットワーク可視化システムを開発
    wacky
    wacky 2007/01/23
    Share暗号化プロトコルの解析結果。仕組みを解説。
  • .NETでのUnicode合成文字の処理について調べた

    Unicodeでは,複数の文字から1つの文字を合成する仕組みがある。例えば,ヨーロッパの言語で使われているアクセント付きのアルファベットを表現するのに使われる。日語の濁点/半濁点付きのカタカナ/ひらがなにも,この仕組みがある。例えば,「ぱ」という文字は,「ぱ」(キャラクタ・コードはUTF16で3071)という2バイトの文字と,「は」(同306F)と文字合成用半濁点「゜」(同309A)を組み合わせた4バイト文字の,2種類が存在する。そのため,濁点/半濁点付きの文字を検索する場合,2バイトの単独文字と4バイトの合成文字の両方を検索する必要が出てくるなど,文字列処理が多少面倒になる可能性がある。今回はこの合成文字について,.NETでの処理を調べた。 最初に断っておくが,キーボードからは文字合成用の「゜」(キャラクタ・コードは309A)は入力できない。入力できるのは,キャラクタ・コードが309C

    .NETでのUnicode合成文字の処理について調べた
    wacky
    wacky 2007/01/23
    Unicodeを処理するプログラムで気をつけること。複数の文字から1つの文字を合成する「合成文字」の扱い。
  • 第1回 ナンプレを解いてみよう

    ナンプレ(ナンバープレイス,数独)というパズルゲームがあります。図1を見てください。全体では9×9のマス目があり,その中が3×3のマスに分かれています。縦横の列に1~9までの数字がそれぞれ一つずつ入ります。また,3×3のマスにも1~9までの数字が一つずつ入ります。このルールで空白のマスを数字で埋めるアルゴリズムを考えてください。 NHK教育テレビの「ピタゴラスイッチ」という番組をご存知でしょうか。「ある物は,ある考え方で構成されている。その考え方はほかにも使われているから,そうした基となる考え方を知ろう」という趣旨に基づいて,考え方や物の成り立ちを児童向けに教える,とても面白い番組です。児童向けなのに周りのプログラマたちはだいたい見ています(笑)。 この番組の制作には,「だんご3兄弟」の作詞者として著名な佐藤雅彦氏が参加しています。佐藤氏の著書「毎月新聞」(毎日新聞社)には,要約すると以

    第1回 ナンプレを解いてみよう
    wacky
    wacky 2007/01/23
    数独を解くアルゴリズムを考える。C言語で実装。
  • 地球にやさしいアルゴリズム---目次 - 地球にやさしいアルゴリズム:ITpro

    アルゴリズムを構成している楽しい仕組みを紹介しながら,あなたに「おおっ」と言わせることが,連載の最初の目的です。興味を持てたなら,アルゴリズムに関する文献や情報を抵抗なく読めるようになるはずです。アルゴリズムを使いこなしたり,作ることも無理なくできるようになるでしょう。 まずはいろいろなアルゴリズムの面白いところを見て,楽しんでみましょう 第1回 ナンプレを解いてみよう 第2回 パズルみたいに楽しいデータ圧縮 第3回 「場面」の移り変わりに注目する 第4回 できるだけ短いルートでゴールに到達する 第5回 隣の区画と異なる色で地図を四色に塗り分ける 第6回 上手なアルゴリズムの見つけ方 第7回 多対多の関係を賢く扱う 第8回 倉庫番を解くアルゴリズム 第9回 プロトコルを実現するアルゴリズム 第10回 麻雀の役を判定する 第11回 プログラム同士の対戦ゲーム 第12回 対戦ゲームの戦略を考

    地球にやさしいアルゴリズム---目次 - 地球にやさしいアルゴリズム:ITpro
    wacky
    wacky 2007/01/23
    アルゴリズムの楽しさを気づかせる連載。
  • Turbo Delphiで“なっとく”プログラミング---目次

    Turbo Delphi Explorerは,米Borland Softwareが提供する無償の統合開発環境です。連載では,このTurbo Delphiで自由にプログラミングするための基礎知識を解説していきます。連載は,何らかのプログラミング言語で,ほんの少しでもプログラミングした経験がある人を想定して,解説を進めます。 第1回 簡単なサンプル・プログラムを通してDelphiの基を学ぶ 第2回 手続き/関数,イベントハンドラ,デバッグの三つを学ぶ 第3回 ファイル入出力とエラー処理を習得する 第4回 COMオブジェクトを活用してみる 第5回 Canvasを使った描画とサブフォームを作成する 第6回 オブジェクト生成/解放を覚えてゲームを作る

    Turbo Delphiで“なっとく”プログラミング---目次
    wacky
    wacky 2007/01/19
    Turbo Delphiでプログラミングするための基礎知識を解説。ITproの連載。
  • 第11回 読み込み時間が短いページを作るには ~ パレートの法則

    皆さん,こんにちは。連載は年に入って今回で2回目ですが,実際には年が明けてから書いている原稿は今回が初めてです。いまさらという感じですが,改めまして,明けましておめでとうございます。 さて,今回はページの応答時間について考えてみることにします。ページの応答時間とは,利用者がリンクをクリックしたり,URLをブラウザのアドレス欄に入力してから,実際にページのコンテンツがすべて表示されるまでにどれくらいかかるか,ということです。 8秒ルールをご存じですか まずは昔話からはじめます。皆さんは「8秒ルール」という,かつてよく使われていた言葉をご存じでしょうか。これは1999年にZona Research社というアメリカの調査会社がまとめた報告書の中に,「ECサイトのページの応答に8秒以上かかると,訪問者の1/3は利用するのをやめてしまう」と書かれていたことに基づいたもので,これ以上利用者を待たせ

    第11回 読み込み時間が短いページを作るには ~ パレートの法則
    wacky
    wacky 2007/01/17
    80対20の法則。ページ応答時間の内訳は、HTML読込みが20%、それ以外が80%。如何に80%の部分を減らすか。
  • 1. 関数の知られざる引数(print_r関数、session_regenerate_id関数)

    PHPの関数の中には、最初は引数として用意されていなかったものの、後々 追加されたものが多く存在します。今回はその中から、よく使われる2つの 関数、print_r関数とsession_regenerate_id関数の知られざる引数を紹介し ようと思います。 print_r関数は、変数やオブジェクトの中身を美しく表示してくれるため、 開発時に重宝している方も多いでしょう。たとえば下のように使用します。 print_r($a); これで、変数$aの内容が美しくフォーマットされて、ブラウザに出力されま す。実は、PHP 4.3.0からは2番目の引数が追加されました。これは、trueを 指定すると、ブラウザに出力するのではなく、その文字列を返却してくれ るものです。たとえば $dump = print_r($a, true); と記述すると、ブラウザに出力されていたデータを$dump変数で受け取る

    1. 関数の知られざる引数(print_r関数、session_regenerate_id関数)
    wacky
    wacky 2007/01/16
    PHP 5.1以降のsession_regenerate_id関数は、第1引数にtrueを指定すると古いセッションファイルが削除される。必ず指定すること。
  • 第6回 ソーシャルブックマーク件数で人気評価

    あけましておめでとうございます。 連載も好評のうちに,無事,新年を迎えることができました。 ありがとうございます。 昨年,2006年は企業からの Web サービス API の公開も相次ぎ, Ajax 技術の普及でリッチ・インタフェースを備えたマッシュアップ・サイトも大変増えてきました。 そうした先端的な Web サイトのメリットはまだまだ一部の限られたユーザーが享受しているに過ぎないでしょうが, 今年は一般のより多くの人も利用しやすいように拡がる年になるのではないかと期待しています。 連載では今年も,実践的なマッシュアップのテクニックや, 使いやすい Web サービス API をご紹介していくことで【とりあえず実際に触ってみる】こと, そして手軽にマッシュアップや Web サービス API 利用アプリの開発に取り組める, そんなサポートができればと思います。 よろしくお願いいたします。

    第6回 ソーシャルブックマーク件数で人気評価
    wacky
    wacky 2007/01/12
    連載『マッシュアップ・ラボ』の第6回。はてなブックマーク、livedoorクリップ、del.icio.usのブックマーク件数取得APIの使い方。