タグ

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

  • Geekなぺーじ:10のUNIX小技

    IBMのサイトで「Learn 10 good UNIX usage habits」という記事が発表されていました。 面白かったので要約してみました。 変な部分があるかも知れないので詳細は原文をご覧下さい。 原文とは一部異なります。 ページスペースなどの関係でコマンド引数などを短く省略しています。 原文のサンプルコマンドが間違っていたりするので、修正している部分もあります。 原文を修正しているのは、tar.gzをzオプションを使わないでxfvしようとしているところと、xargsにlsではなくls -lを渡している部分です。 あと、説明文を短くしてしまっています。 1. ディレクトリの作成 良く使うコマンドの一つであるmkdirですが、面倒臭い使い方をしていませんか? 悪い例 ~/ $ mkdir a ~/ $ cd a ~/a $ mkdir b ~/a $ cd b ~/a/b/ $ m

  • Geekなぺーじ

    「Geekなぺーじ」へようこそ。 このサイトは、同類を増やすべく技術メモを公開しています。 内容としては、情報技術/通信技術(インターネット技術)の分野で初心者~中級者向けです。 お探しの情報が無い場合には、お問い合わせ頂ければできる範囲で内容を増やして行きたいと思います。 暖かい心で見守って頂ければ幸です。

  • Geekなぺーじ : 優秀な社員を辞めさせない方法

    「16 Ways to Keep Your Best Employees -- Without Breaking the Bank」という記事がありました。 ITworld.comの記事です。 原文には、「多くの社長はビジネスのルールが変わったことに気がついていない。昔はお客様が神様だったが、最近は従業員を満足させる事で従業員がより良いサービスを提供して顧客を満足させるということが求められる。従業員がより芝が青い土地に移動すれば顧客もその従業員についていくだろう。」というような事が書いてありました。 新天地を探すというのは、既に辞める気持ちが発生しているということなので、そもそも従業員が「より青い芝」を探し始める時点で手遅れだそうです。 原文には、自分の土地をより青く保つための「種」を16個紹介しています。 以下、それらの要約です。 誤訳などがあるかも知れないので、詳細は原文をご覧下さい。

  • Geekなぺーじ : Rubyネットワークプログラミング

    ここでは、Rubyによるネットワークプログラミングの説明を行いたいと思います。 ここで対象としている読者は、ネットワークプログラミング初心者(もしくは入門者)です。 TCP 簡単なTCPサーバとクライアント TCPクライアント(エラー処理付き) 何度も受信できるTCPサーバ TCPサーバ(acceptした相手の確認) UDP UDPを使う UDPでブロードキャストを使う UDPでマルチキャストを使う(マルチキャストを送信する) UDPでマルチキャストを使う(マルチキャストを受信する) UDPでマルチキャストを使う(TTLを設定する) Web 簡単なHTTP GET(Net::HTTP) HTTP HEADと全てのHTTPヘッダの表示(Net::HTTP) HTTP POST(Net::HTTP) 簡単なRSSクライアント その他 IO::selectを使う IPアドレスからホスト名への変換

  • Geekなぺーじ:選択肢を減らすことの重要性

    Google TechTalksでBarry Schwartz博士による講演が公開されていました。 「The Paradox of Choice - Why More Is Less」というタイトルでした。 最初は、UNIXコマンドのmoreがlessよりも劣っている理由の事だと思って見始めましたが、そうではありませんでした。 何でも選べてベストじゃないと満足しないというのは、アメリカ人っぽい気もしましたが、かなり面白かったです。 ユーザビリティと機能の問題は良くある問題ですが、お店で展示されている商品の種類を減らした方が売り上げが上昇する話などが新鮮でした。 以下に要約してみました。 ここでは書いていない部分も多いので、詳細はビデオをご覧下さい。 字幕も入っていますし、ゆっくりと話してくれる人なので非常に見やすいと思います。 ただ、スライド(PPT?)が見られないので、何故観客が笑ってい

  • Geekなぺーじ:勝者と敗者の違い

    「The Big Difference between Winner and Loser」という記事がありました。 面白かったです。 勝者は間違ったときには「私が間違っていた」と言う。 敗者は「私のせいではない」と言う。 勝者は勝因は「運が良かった」と言う。例え運ではなかったとしても。 敗者は敗因を「運が悪かった」と言う。でも、運が原因ではない。 勝者は敗者よりも勤勉に働く。しかも時間は敗者より多い。 敗者はいつでも忙しい。文句を言うのに忙しい。 勝者は問題を真っ直ぐ通り抜ける。 敗者は問題の周りをグルグル回る。 勝者は償いによって謝意を示す。 敗者は謝罪をするが同じ間違いを繰り返す。 勝者は戦うべきところと妥協すべきところを心得ている。 敗者は妥協すべきでないところで妥協し、戦う価値がない所で戦う。 勝者は「自分はまだまだです」と言う。 敗者は自分より劣るものを見下す。 勝者は自分より勝

  • Geekなぺーじ : Google MAPS APIプログラミング

    ここでは、Google Maps JavaScript API(version 3)を使って遊ぶ方法を説明したいと思います。 Google Maps JavaScript APIを使うと、グーグル社が提供する衛星写真や地図を使ってホームページ上で色々なものを作れます。 対象とする読者は初心者もしくは入門者です。 Google Maps APIJavaScriptを使って書いてあるので、JavaScriptの知識があった方がわかりやすいと思いますが、Java Scriptがわからなくても何と無くわかるような説明を目指したいと思っています。 基Google Maps APIの単純な例 地図の種類を切り替える 地図の中心を移動する 地図上にふきだしを表示 地図がクリックされたときの処理 マップタイプコントロールを無効にする 緯度経度取得ツール 要望が多いので緯度経度情報を取得するツールを

  • Geekなぺーじ : 人生の全てはTCP/IPに学んだ

    1. ゆずり合うこと TCPはネットワーク帯域を他のTCPセッションと譲り合います。 TCPには、ネットワークが混雑(輻輳:ふくそう)してくると、送信されるパケット量を減らす仕組みがあります。 この譲り合いがあるからこそ、現在のインターネットは多数の人間が同時に使えています。 同様に、現実世界においても無理な競い合いを行うよりも譲り合いを行った方がスケーラビリティが上昇します。 2. 信頼はきめ細やかな確認応答で実現されること TCPでは、信頼性を確保するためにAck(Acknowledgement、確認応答)を送信してデータの到着を伝えます。 TCPのセッションが確立している間は、Ackが細かく送受信され続けます。 このきめ細かな確認応答が信頼の根幹であると言っても過言ではありません。 現実世界においても、きめ細かく応答を行う事が重要です。 メールなどを受け取っても、全く返事をしない相手

  • Geekなぺーじ:Googleの高度な検索応用方法。。。

    「Turn Google into Napster 2000」という記事がありました。 Googleを2000年頃のNapsterのように使ってしまうという記事でした。 MP3PDF、ビデオ、何でもダウンロードできると書いてありました。 Apacheで「Options Indexes」を指定していてindex.htmlなどのindexファイルが無いディレクトリを狙っているみたいです。 サイト管理者の意図しない使われ方になってしまっていて非常に怖さを感じました。 例えば、これらによってGoogleで1位表示などになってしまうと場合によってはサイト管理者が著作権侵害で訴えられてしまいます。 Nirvanaの音楽ファイルの場合。 -inurl:(htm|html|php) intitle:"index of" +"last modified" +"parent directory" +desc

  • Geekなぺーじ:技術の盗み方

    新入生や新社会人として組織に入ったり、他の組織から畑違いの場所に異動すると、ゼロからのスタートになるときがあります。 そのときに、先輩からいかにして技術を「盗む」かが重要な要素になると思われます。 ここでは、自分の養分として吸収するために、先輩から技術を引き出す一手法を紹介したいと思います。 先輩から見て教え易い後輩や、ついつい必要以上に色々教えてしまう後輩などがいます。 今回は、そのような人の特徴を考えたり、過去の私が失敗したと思われる点を思い出しながら書いてみました。 ここで紹介する方法は、あくまで方法の一つであり偏っています。 性格によって向き不向きがあると思います。 また、あまりに露骨にやり過ぎると嫌われてしまう場合もあるのでご注意下さい。 あまり参考にはならないかも知れませんが、まあ、許してください。 やる気を見せる 非常にやる気があって、色々やっている人を見るとついつい応援した

  • Geekなぺーじ:フリーランスとして成功する方法

    「7 Habits of a Highly Successful Freelance Web Designer」という興味深い記事がありました。 原文はフリーランスWebデザイナとして成功する方法を説いていましたが、内容を見るとプログラマや、その他フリーランサーにも当てはまりそうな内容でした。 以下、要約してみました。 誤訳などの可能性があるので、詳細は原文をご覧下さい。 1. 仕事を愛す 大企業で働いていれば、まわりに合わせて仕事をすることができます。 その日に仕事が終わらなければ次の日にまわしたりもできます。 自分が何をしているのかに対して興味を持たない従業員が多い組織もあります。 彼らにとっては、日々の仕事は単なる報酬に対する対価でしかないのです。 フリーランスとして成功するには、自分が行っている仕事を愛する必要があります。 情熱があれば、カフェインの力を借りながら夜遅くまで働き続け

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

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

  • 確実に失敗する方法:Geekなぺーじ

    「10 Steps You Can Take To Guarantee Failure」という面白い記事がありました。 逆説的な表現がかなり笑えました。 以下に要約してみましたが、かなり削って意訳していますし、誤訳している可能性もあるので原文もご覧下さい。 1. 目標を曖昧にすべし 「もっと」や「ちょっと」という表現を多用した目標設定をしましょう。 例:「もっとお金が欲しい」「ちょっと体重を減らしたい」「何かの仕事をしたい」。 2. 目標を解りにくくすべし ゴールを曖昧にして、あれもこれも、あれでもいい、これでもいいとしとけば、何も達成できないようになれます。 3. 目標を後ろ向きに考えたり語ったりすべし 「できない」「難しすぎる」を多用して兎に角自分を蔑みましょう。 4. 途中経過をすっ飛ばして目標だけを考えるべし 地道にマイルストーンを積み重ねた目標を作ってしまうと失敗しにくくなるので

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

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

  • Google maps簡単作成ツール:GMapCreator (v2 API 対応版)

    Google MAPS APIを使ったプログラムを簡単に作るツールを作ってみました。 目標はJavascriptなどが全くわからない人でも簡単にGoogle mapをブログやホームページに貼り付けられる事です。 左クリックでマーカを設置、もしくは開始位置を設定できます。 マーカを左クリックすればマーカ画像を変更したり、マーカをクリックした際にジャンプするURLを設定したりできます。 徐々に機能を充実させていく予定です。 Bug Report、機能追加要求、解りにくい、などご意見は大歓迎します。 ご意見はこちらへお願いします。

  • プログラマレベル:Geekなぺーじ

    レベル0 レベル0の人はプログラムを一度も書いた事がありません。 レベル0の人は、プログラミングとはどのような作業なのか想像もつきません。 世の中のほとんどの人は、このレベルです。 レベル0の人は、プログラムをかけるプログラマはいわゆるオタクだと思っています。 ありがちな発言 「プログラミングできるんだ。ふーん。凄いね。」 レベル1 レベル1の人は学校の授業の課題としてプログラムを書いた事があります。 しかし、あまりプログラミングには興味を持てず、コンピュータに詳しい知人に課題をやってもらったり、教えてgooなどで課題の答えを聞いたりしているので、仕事としてプログラミングはできません。 ありがちな発言 「教えて下さい」 レベル2 このレベルの人は、2度ほど何かの小規模プログラムを書き上げた経験を持っています。 段々とプログラミングへの興味が広範囲に及ぶようになり、勉強をするのが楽しくて仕方

  • プログラミング言語ヒエラルキー:Geekなぺーじ

    「Programmer Hierarchy」という面白いネタがありました。 結構笑えました。 一部日語化してみました。 図中の矢印は「相手よりも上であるとみなしている」事を示しているそうです。 もともとは「Geek Hierarchy」というオタク同士が「俺はこいつらよりオタクではない」と思いあっているというネタがあって、それのプログラマ版のようです。 ちょっとアメリカ文化ですが、元ネタのオタク版も面白いのでもしよろしければご覧下さい。 おまけ:プログラミング/技術関連お笑いネタ プログラマレベル 人生の全てはTCP/IPに学んだ いいから殺せ。後はこっちでなんとかするから 技術系シモネタ

  • Geekなぺーじ:アイディアを潰す上司、アイディアを引き出す上司

    「Idea killers: ways to stop ideas」 と 「Idea helpers: ways to grow ideas」 という記事がありました。 面白かったので一部訳してみました。 コメント欄にも色々書いてあって、その中の項目も訳してみました。 削ったり意訳しているものもあるので、詳細は原文をご覧下さい。 アイディアをつぶす人 これらの発言は考える事を阻害してしまいます。 また、これらの発言は理由を説明せずに意見を却下するために利用されます。

  • Geekなぺーじ [インターネット技術メモ]

    「Geekなぺーじ」へようこそ。 このサイトは、同類を増やすべく技術メモを公開しています。 内容としては、情報技術/通信技術(インターネット技術)の分野で初心者~中級者向けです。 お探しの情報が無い場合には、お問い合わせ頂ければできる範囲で内容を増やして行きたいと思います。 暖かい心で見守って頂ければ幸です。

  • Geekなぺーじ:UNIX哲学の基本原則

    「Basics of the Unix Philosophy」でUNIX哲学の基原則がまとめられています。 UNIXの設計思想として紹介されていますが、多くは普通のソフトウェアを設計する場合にもあてはまると思われます。 1. Rule of Modularity(モジュール性): きれいなインターフェースで接続された、簡潔な部品を書きましょう。 2. Rule of Clarity(明瞭さ): 明瞭さは賢さよりも良いです。 3. Rule of Composition(構成): 他のプログラムと接続できるようにプログラムを設計しましょう。 4. Rule of Separation(分離): ポリシーとメカニズムを分離しましょう。エンジンとインターフェースを分離しましょう。 5. Rule of Simplicity(単純性): 単純化された設計をしましょう。複雑さは必要な時だけ追加しま