タグ

ブックマーク / www.geekpage.jp (42)

  • Geekなぺーじ:ブログネタ用ニュースを探す方法

    ブログを書くようになって「どうやったら一風変わったネタを仕入れられるだろうか?」という事を考えるようになりました。 そして、ネタを探すために色々試してみました。 今回は、色々なネタ探しの手法を探していくうちに見つけた情報源をいくつか紹介してみようと思います。 (自分一人では消費しきれないので。) ネタ収集の参考になれば幸いです。 公的機関からの情報 テレビや新聞で多くの情報が流れていますが、報道されない情報も数多くあります。 以下の公式情報源から上手く大手で報道されない情報を拾い続けられれば、ちょっとしたニュースサイトを作り上げられる気がします。 以下のサイトでは、事件や告知などが日々更新されています。 警察庁 http://www.npa.go.jp/ 警察庁:サイバーフォース http://www.cyberpolice.go.jp/ インターネット治安情勢や定点観測が面白いです。 脆

  • RSSクライアントの作成(XML::RSS)

    ここでは、LWP::SimpleとXML::RSSモジュールを使ってRSSを取得して解析する方法を説明したいと思います。 RSSクライアントサンプル 以下に単純なRSSクライアントを示します。 #!/usr/bin/perl use LWP::Simple; use XML::RSS; # ここを変更して下さい $rssurl = 'http://www.geekpage.jp/rss.php'; $rssxml = get($rssurl); $rss = new XML::RSS; $rss->parse($rssxml); # channel information print $rss->channel("title"); print "\n"; print $rss->channel("link"); print "\n"; print $rss->channel("descri

  • オープンソースコミュニティ運営方法:Geekなぺーじ

    Google Videoに「 How Open Source Projects Survive Poisonous People (And You Can Too)」という54分のビデオがありました。 Subversionの開発者達が、オープンソースプロジェクトを運営上の注意点を解説していました。 面白かったです。 ボランティア開発者の集合体によって実現しているオープンソースプロジェクトを運営する方法を解説するという題目ですが、 最後のオチでは、「これはオープンソースに限らない」と言っていました。 確かに、一般的な開発でも参考になる部分は多いと思いました。 また、掲示板やブログのコメント欄でも一部は適用できそうなノウハウであると思いました。 要約してみましたが、結構いい加減で間違いなどがあると思うので詳細はビデオをご覧下さい。 「Poisonous People」は「有害な人」と訳してみま

  • フリーランスが請けたくないプロジェクトの特徴:Geekなぺーじ

    「7 Signs Your Project Will Never Make it to Production」 という記事がありました。 フリーランスとして働いている著者が、プロダクトとして発表されるに至らないプロジェクトの特徴を述べています。 このような特徴を持つプロジェクトに参加しても、自身のポートフォリオに新しい製品を追加する事はできないそうです。 面白かったので要約してみました。 全てにおいて真であるとは思いませんが、何と無くありそうな話だと思いました。 1. クライアント側でUIモックアップを制作したことが無い クライアントは自分が何を制作したいのかを良くわかっていません。 2. クライアントは、ドキュメントではなく電話越しに内容を伝えようとする かなり危険な状態です。 何らかのドキュメンテーションが出来上がるまでは仕事を請けるべきではありません。 3. クライアントの個人的欲求

  • Googleによるマルウェア論文:Geekなぺーじ

    「The Ghost In The Browser Analysis of Web-based Malware」というUsenixの論文がありました。 PDFがダウンロード可能なので、興味のある方は読んでみる事をお勧めします。 この論文は、HotBots 07というボットネットに関してのWorkshopで、他に発表されていた論文も面白そうでした(まだ他のは読んでいません)。 NATやファイアウォールの普及によって、最近ではワーム(Worm)の勢いが衰えてきて、マルウェア作者にとってはWebが活動の主体になりつつあるそうです。 この論文は、Google社の社員5人によって書かれています。 Googleのクローラが収集しているWebページリポジトリを利用して解析を行った論文です。 この論文では、ふるいにかけたURLをバーチャルマシン上のInternet Explorerに渡して実行状況をモニタ

  • 中小企業にプログラマはいらない:Geekなぺーじ

    「Small ISVs: You need Developers, not Programmers」という記事がありました。 2003年5月の記事のようです。 半分根性論な気もしましたが、この記事の視点は非常に面白かったです。 そうなのかもと思う面もありました。 この記事を書いている人は25人の社員がいるソフトウェアベンダを運営しているそうです。 6年間会社を続けてわかったこととしては「小規模な企業にプログラマは居てはならない」だそうです。 必要なのは「プログラマ」ではなく「開発者」だそうです。 以下が駄目な「プログラマ」の特徴だそうです。 小規模企業では以下のような人は「いらない」そうです。 新しい機能を実装することばかりする たまにバグを修正する 仕様書を書かない ドキュメンテーションを書く手伝いをしない 自動化されたテストを作成しない テスト実行を手助けしない 開発環境を最新に保たな

  • 企業ブログマニフェスト:Geekなぺーじ

    「The Corporate Weblog Manifesto (PDF)」というものがありました。 「企業ブログを始める前に読んでおくべき心得」だそうです。 マイクロソフト社に勤めるブロガーが2003年に書いたもののようです。 面白かったので詳細は原文をご覧下さい。

  • ペアプログラミングに必要な知恵は全て幼稚園の砂場で学んだ:Geekなぺーじ

    「"All I really need to know about pair programming I learned in kindergarten", Communications of the ACM, Volume 43, Issue 5 (May 2000) Pages: 108 - 114」という論文を読みました。 幼稚園(もしくは保育園)で習うような社会生活の基礎から、ペアプログラミングを遂行するときに注意すべき点を論じています。 ペアプログラミングは、二人で一緒にプログラムを書くという手法です。 XP(eXtreme Programming)などで利用されています。 面白かったので一部を抜き出して要約してみました。 さらに興味のある方は論文をご覧下さい。 何でも分け合うこと ペアプログラミングでは一つのものを二人が作り上げます。 片方がプログラムを書き、相方がレビューを続

  • スモールビジネスで失敗をしたときにすべき事:Geekなぺーじ

    「What to do when your small business screws up」という記事がありました。 小規模経営で失敗してしまったときの顧客対応に関して説明をしていました。 スモールビジネスでは、たった一つの顧客を失うだけで致命的になる場合があるので、失敗から回復するのは重要であるそうです。 面白かったので要約してみました。 間違えてしまったときに間違いを正しく認めることは非常に勇気が必要で困難な事だろうと思いました。 ただ、自分には責任が無い間違いの責任を取らされてしまうなどもあり得るのでケースバイケースかも知れないとも思いました。 1. 間違いを認める 間違いを認めない相手とは二度と付き合わないそうです。 正しく間違いを認めて代替案を提示すれば、耳を貸してくれる顧客もいるかも知れないそうです。 2. コミュニケーション 失敗時のコミュニケーション不足によって多くの顧客

  • インターネットの次:Geekなぺーじ

    「A New Way to look at Networking (Google Video)」を見ました。 Van Jacobson氏による1時間21分のプレゼン映像でした。 ビデオでは、コペルニクス的発想が必要だとか、昔は電話システムを前提に皆が議論をしていたからインターネットの仕組みはあり得ないと当初は皆が言っていた、という内容の事を何度か言っています。 確かに、私も聞いていて「WinnyかBitTorrentをDRMと組み合わせたもの?」という感じの方法論を考えてしまいました。 恐らく、今の仕組みで作ってしまう方法を考えるのではなく、アーキテクチャとしてこの案を考えなくてはならないという物だと思いました。 きっと、ここで言っている話が実現するとIPの上でも動くけど、下にその他の通信形態が来ても動くという新たなアドレッシング手法に近いものを提案しているのだと思いました。 どうしても現

  • Geekなぺーじ:他人のやる気を引き出す方法

    「8 simple things you can do to encourage others」という記事がありました。 当たり前の事ばかりかも知れませんが、ついうっかり忘れがちであるような気がしました。 原文のブログを書いている人は起業を目指している(もしくは起業中)のソフトウェアエンジニアのようです。 原文著者は、やる気がなくなってきたときに家族や友人が励ましてくれることが大変ありがたいそうです。 そこで、どのような励ましを受けると自分がやる気になるかなどの経験を元に、他人のやる気を引き出す方法を紹介していました。 以下のような事を、何かをしようとしている友人に対してしたり、自分の子供と向き合うときにしたりすることを原文では提案しています。 やる気が出れば物事の達成度も上がると思われます。 1. 凄く興味を示す 原文では、最も効率よく相手のやる気を引き出す方法であると書いてありました。

  • Geekなぺーじ:ダメな中小企業Webサイト

    「Ten clues that your Web site is dead」という記事がありました。 コンピュータ関連ではない小規模な企業などでは、このような考え方は確かにありがちかもしれないと思いました。 面白かったので要約してみました。 誤訳などの可能性があるので、詳細は原文をご覧下さい。 1. 「インターネットはまだこれからだ」と思っている インターネットによる革命は既に数年間続いており、膨大な数のユーザもいます。 2. Webサイトを持っていない Webサイトを持っていないのは自社の名前をつけていないのと同じぐらいの事です。 Kitch氏によると、小規模ビジネスの3割はWebサイトを持っていないそうです。 そのような企業はすぐに消えてしまうそうです。 3. 自分のWebサイトの更新方法を知らない Kitch氏によると、小規模ビジネスのWebサイトはデザインのみに頼っても意味が無いそ

  • フリーランスの利点と欠点:Geekなぺーじ

    Going Freelance - The pros and cons」という記事がありました。 面白かったので要約してみました。 ただ、利点と欠点と言いながら、詳しく書いてあるのは欠点(というより注意点)でした。 誤訳などの可能性があるので、詳細は原文をご覧下さい。 フリーランスというと、以下のような利点を思い浮かべる方は多いと思います。 パジャマで仕事 長時間ゆっくりランチ 週末前の平日を海で過ごす 一国一城の主 自分の労働に対する成果を独占 実際、フリーランスになることにより、スケジュールの柔軟性は向上します。 クライアントが示す納期に間に合えば、それで良いのです。 誰と、いつ、どこで、働くかは自分で決定できます。 しかし、フリーランスには以下のような欠点も抱えています。 1. 寂しさ 多くのフリーランサーは孤独を不満な点として挙げます。 場合によっては、一日中、毎日、あなたとコン

  • n大○○、○○nヶ条 いっぱい:Geekなぺーじ

    ○○カ条をいっぱい探す方法を探してみました。 以下リストで発見した「○カ条」とflickrなどへのリンクなどを組み合わせると、例えば「新春特別企画!最高に美しい世界四大遺跡特集 beta」のような記事を作れるかも知れません。 最初はネタで色々探してましたが、それぞれ見てると結構面白いものも含まれていました。 例えば、Googleとかで「プログラミング + カ条」とか「セキュリティ + カ条」とか、検索すると意外に新しい発見と発想が得られるかも知れないと思いました。 ○○ヶ条系の記事は発想を連想させるブレスト効果を期待するには良いかもしれないですね。 wikipedia 世界三大一覧 日三大一覧 世界四大一覧 日四大一覧 中国四大一覧 日五大一覧 世界五大一覧 世界六大一覧 世界七大一覧 百選 Googleで検索 Google検索 : 世界三大 Google検索 : 世界四大 Goog

  • 外国からのコメントスパム対策:Geekなぺーじ

    外国からのコメントスパム対策を思いついたので、このブログのコメント欄にコメントスパム対策を実装してみました。 このサイトに来るコメントスパムは、ほとんどが外国からのものです。 日に日に量が増えてきています。 最初はIPアドレスや禁止ワードなどで弾こうとしましたが、同じスパマーと思われる書き込みでもIPアドレスはバラバラだったり、内容が多岐に渡っていたりしていて9割弾けてもいくつかは書き込まれてしまいます。 大抵はスクリプトと思われる書き込みが続き、こちらが対策をしてある程度すると、人間と思われる書き込みが行われます。 人間による書き込みは、禁止ワードなどの調査をしているようです。 相手もプロのようで、一般的なフィルタリング手法は良く知っていて、巧みにこちらの設定を調べていきます。 例えば、特定の禁止ワードを含むものと含まないものを入れてみたり、同じ内容を複数のIPアドレスから入れてみたりし

  • Geekなぺーじ:クラッカーがGoogleを使って脆弱なサイトを探す方法の例

    Googleを使って脆弱性のあるサーバを探す手法を「Google Hacking」と言いますが、その検索方法を大量に集めた 「Google Hacking Database (GHDB)」というサイトがあります。 そこでは様々な検索キーワードが紹介されています。 紹介されているものを、いくつかピックアップしてみました。 (ただし、多少古いです。) このような検索を行って脆弱性のあるサーバを探している人が世の中に結構いるみたいです。 サーバを運用している方はご注意下さい。 これらの情報は既に公開された情報なので、検索結果にはワザとこのような情報を流して侵入を試みる人を誘い込もうとしているハニーポットが含まれている可能性もあります。 秘密鍵を探す 秘密鍵は公開鍵と違って秘密にするものなので発見できてしまうのは非常にまずいです。 BEGIN (CERTIFICATE|DSA|RSA) filet

  • Geekなぺーじ:成功している中小企業が持つ5つの要素

    「Five Secrets of High Performing Organizations」という報告書(PDF)が公開されていました。 この報告書はアメリカで10~100人規模の企業300社以上を調査して、成功している企業が持つ要素を5つにまとめています。 さらに、それぞれの要素を実現するためにはどのような努力をすれば良いかを解説してありました。 面白かったので要約してみました。 かなり意訳気味です。 誤訳や勘違いなどがある可能性があるので、詳細は原文をご覧下さい。 効率良く成果を出しているスモールビジネス(small business)は以下の5つの特徴を持ちます。 強いリーダーシップ 質の高い人材を引き付け、確保する能力 計画性 戦略的に技術を利用する能力 外部機関との連携 1. 強いリーダーシップ 調査の結果、最も大きな要素はリーダーシップを取るシニアの実力でした。 ある経営者は

  • Web2.0の落とし穴:Geekなぺーじ

    「What's Wrong with Web 2.0? - Bubble, What bubble ? -」という記事がありました。 面白かったので要約します。 かなりの皮肉がまじった記事でした。 誤訳などの可能性があるので、詳細は原文を参照して下さい。 以下要約ですが、かなり意訳してます。 あと必要なのはユーザだけだ (User driven content: Now all we need is users) Web2.0は、ユーザによる何らかのソーシャルな部分がある事が質です。 これは、例えばユーザがコンテンツを作成したり、ブログを書いたりコメントをつけたりする事です。 いくつかのサイトは全てをユーザに依存しています。 例えば、Digg.comは完全にユーザに依存しています。 誰もリンクを登録しなければDiggは存在し得ません。 このようなユーザに依存しきったサイトは、ユーザが興味

  • Web2.0サイトを開始するための7つのルール:Geekなぺーじ

    「Seven rules for Web 2.0 startups」という記事がありました。 面白かったので要約しました。 誤訳などがある可能性があるので、詳細は元記事をご覧下さい。 書いている人はユーザの立場から、Web2.0サイトを構築するときに注意すべき事を書いているようです。 以下要約です。かなり意訳気味です。 1. ユーザが楽に移行できるようにしてあげる事 前使っていたサービスからの移行をスムーズにしてあげる必要があります。 例えば、Vox blogでは最近になって他のブログサイドバーに入れられるHTMLを生成するジェネレータを公開しました。 これによって、他のブログサービスを使っているユーザはVox blogに移動する事を宣伝しやすくなりました。 2. ユーザがサービスを試しやすい事 ユーザからすると、何が出来るかを試すためだけにメールアドレスを要求されるのは嫌なものです。 良

  • プログラミング言語の速度比較:Geekなぺーじ

    Gentoo : Intel Pentium 4 Computer Language Shootout」というプログラミング言語のベンチマークをしているサイトがあります。 このサイトでは、Linux入りPentium 4マシンを使って様々な言語で書いたプログラムのベンチマークを公開しています。 今回はC言語とC++,C#,Javaを比べてみました。 あと、その他言語もそれぞれ比べてみました。 グラフの白い棒がCPU時間を表しています。 白い棒が延びている側の方が実行速度が速い事を現しています。 黒い棒はメモリ利用量を表しています。 黒い棒が延びている側の方が省メモリです。 なお、以下のグラフは特定のベンチマークの結果だけであり、言語自体の優劣ではないので、念のため。。。 その他の言語の組み合わせも色々できるので興味のある方は試してみてください。 C言語 (gcc) vs C++ (g++