タグ

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

  • フリーランスになって10年:Geekなぺーじ

    気がつくと、フリーランスになって10年目です。退職するまでは身元を明かさずにブログを書いていて、退職後に退職エントリを書いたのが2007年の12月でした。 これまでの仕事 これまで、いろいろなことをやりました。基的に、あまり自分で営業活動をせず、ご連絡をいただいた内容に応じてそのときどきで仕事をしているので、仕事の方向性はバラバラです。。。そういった要素もあり、会社員時代と比べて収入は半減以下になってしまっているのという悩みを抱え続けながら生きています。 書籍執筆 マスタリングTCP/IP RTP編(監訳) Linuxネットワークプログラミング インターネットのカタチ - もろさが織り成す粘り強い世界(共著) マスタリングTCP/IP OpenFlow編(共著) アカマイ - 知られざるインターネットの巨人 ポートとソケットがわかればインターネットがわかる 雑誌およびWeb媒体での執筆

    piro_suke
    piro_suke 2017/09/12
  • svn+TeXでcommitするとPDF - オーム社開発部の出版システムでの書籍執筆:Geekなぺーじ

    以前、オーム社開発部の出版体制を取材しましたが、今回、私自身がそのシステムを使ってを書きました。 Subversionでバージョン管理をしつつLaTeXを書く形式です。 複数人でを書く時にバージョン管理ツールを使わないと、誰がどこをどういじったのかがわからなくなったり編集箇所が競合する場合が多いのですが、Subversionを使うことでそれらが解決可能です。 さらに、筆者か編集者のうちの誰かがsvn commitを行って最新版を更新すると、それに連動して最終原稿として印刷所に入稿されるものと同じ形のPDFが自動的に生成され、DTP作業がゼロになるとともに、筆者がアウトプットを細かく確認ができるという特徴もあります。 しかも、Subversionのコミットメールを編集者側も見ていて、該当部分に対する編集やコメントがすぐに投入され、こちらが文章を書いた数分後に編集側意見が含まれるPDF

  • Geekなぺーじ : IPv4アドレス枯渇。その意味と恐らくこれから起きること

    今のインターネットはIPバージョン4で動作していますが、そのIPv4で各機器を識別するためのIPv4アドレスが遂に事実上枯渇しました(参考)。 長年「枯渇する」と言われ続けていましたが、それが遂に現実の物となりました。 ここでは、IPv4アドレス枯渇とは何かと、それによって何が起きるのかを紹介します。 IPv4アドレス枯渇に関して、アナログ放送の停波と地デジへの移行や、原油枯渇と似たようなものであるような認識が多く見られますが、個人的にはIPv4アドレス枯渇後のIPv4アドレスのアナロジー(類比)としては相撲の親方株の方が近い気がしています。 まず、アナログ放送の停波と地デジへの移行ですが、アナログ放送は2011年7月に一斉に停止します。 しかし、IPv4アドレスの場合は、ある日突然IPv4が使えなくなるわけではなく、今まで使っているIPv4アドレスはそのまま使い続けられるという意味でアナ

  • ローカル検索機能を表示する:Geekなぺーじ

    (注意!)この記事は、旧APIであるGoogle Maps API version 2を解説したものです。version 2の利用は推奨されていないので、意図的に旧バージョンの情報を探していない場合は、新しいバージョンの解説をご覧下さい。 Local Search コントロールを使うと、ローカル検索機能が実現できます。 ここでは、Local Search コントロールを表示する方法を説明したいと思います。 ローカル検索サンプル 以下のサンプルはGoogle MAPS APIを使ったページのソースです。 強調してある部分がポイントです。 以下のサンプルを使うには、「YOUR_KEY」と書かれている部分をご利用のGoogle Maps API Keyに書き換える必要があります。 下記サンプルには、置き換えが必要な「YOUR_KEY」が2箇所あるのでご注意下さい。 <!DOCTYPE html

  • 現場で遭遇するかも知れない、こんなプログラマ達:Geekなぺーじ

    「10 types of programmers you'll encounter in the field」という面白い記事がありました。 ひたすら毒ばかりで笑えました。 以下、要約です。 誤訳などの可能性があるため、詳細は原文をご覧下さい。 1. ガンダルフ 指輪物語のガンダルフのような風体をしていて、コードの世界において魔法が使える。 細かくどうでも良い事を議論するのが大好きという欠点はあるが、絶望を救うものとしてチームにキープしたい人材。 2. 殉教者 仕事中毒。 家では風呂と寝るだけ。 会社で寝ることにプライドを持っている。 3. マニア少年 語りだしたら止まらない。 ドラゴンボールZとガンダムWの違いについて熱く語る。 何故プレステ3がXBox360より優れているのかを熱く語る。 多くのものが日からの輸入。 職場が趣味で占拠されている。 そして、仕事中も趣味の事を考えている。

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

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

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

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

  • プログラマから起業家へ転身する際の注意点:Geekなぺーじ

    「10 Tips for Moving From Programmer to Entrepreneur」 という記事がありました。 面白かったです。 要約してみましたが、間違っているかも知れないので詳細は原文をご覧下さい。 1. コーディングはあなたの仕事の5%でしかない コード書きに夢中になってしまう起業家がいます。 コードを書くことも重要ですが、いくら美しいコードを書いても、誰もその製品を使ってくれないのであれば意味がありません。 税金を払い忘れて逮捕されてしまったら書いたコードは無駄になります。 ソフトウェアのライセンスに無頓着であるために訴えられたら、コードは無駄になります。 ブログやフォーラムでコードの事ばかりを話題にする起業家を見る事がありますが、多くの場合、コードよりもビジネスの側面について考えた方が良いと思われます。 もちろん、コードについて語る方が簡単ですが、そもそも起業

  • Geekなぺーじ:こんなあなたは駄目プログラマ

    「Signs You're a Crappy Programmer (and don't know it)」という記事がありました。 こんな人は自分が気づかないうちに駄目プログラマになっているそうです。 笑えました。 Java以外はいらない(知らない) 20行以上になる関数/メソッドには断固として反対する 何でもかんでも「デザインパターンだ!」 CPUサイクルは非常に貴重な資源であるというのが信念である。プログラミングスタイルと利用言語はいつでもその信念を貫いている。 関数/メソッド内に複数のreturnポイントはあってはならないと考えている 「ユーザが間抜けなんだ。自分のソフトウェアのせいでユーザが間抜けになっているわけがない」と思っている 書いた行数にプライドを持っている 似たような機能はコピペでサッと仕上げる エラー処理とは全てのexceptionをcatchして、logを取って、動

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

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

  • Geekなぺーじ:フリーランスWebデザイナが注意すべきこと

    「Some tips for Freelance Web Designers」 という記事がありました。 フリーランスWebデザイナ向けに書かれていますが、内容としてはWebデザイナだけではなく、プログラマやその他職種にもあてはまると思いました。 面白かったので要約してみました。 詳細は原文をご覧下さい。 1. 時給で働くべからず 時給にしてしまうと技能が上がれば上がるほど損になっていきます。 そのうち、5時間働いたところを8時間働いたとごまかして申告するようになってしまいます。 これをやってしまうと、雇い側からは効率が悪く技能の無いフリーランスのように見えてしまいます。 また、10分で終わるメンテナンスなども細かく計算しなくてはならず、非効率です。 2. クライアントを知ること 自分が8万円で作ったサイトを使って、クライアントが月に50万円を稼いだら非常にもったいないことをした思いになっ

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

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

  • Geekなぺーじ : Second Lifeをやってみて思ったこと

    最近、何かと話題のSecond Lifeをやってみました。 最終的な感想としては「超ワクワク、色々やってみたい!」だったのですが、その感想になる人は少ないと思いました。 私は、「Second Lifeの仮想空間での生活はどうでもいいけど、LSLスクリプトで遊びたい。」という感じなので、少数派だと思います。 で、一般的な感想としては岡田有花記者が書かれていたことが非常に適切であると思いました。 個人的な感想としては一般の人は以下のような感じになるかも知れないと思いました。 とにかく難しい。 慣れる前にやめてしまいたくなる。 普通の人は、がんばって慣れようと思うようなインセンティブが見つけにくそう。 という感じですかね。 まず、私は最初の初心者用 Help Islandをクリアできませんでした。 途中で、「イベントがどこで発生するんだよ!ムキー!」となってしまって main landに飛んでし

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

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

  • コンピュータ関連名言(迷言)集:Geekなぺーじ

    コンピュータ関連名言(格言?)を集めてみました。 「computer quotes」や「IT quotes」などの単語で検索してみましたが、そこらじゅうに同じようなサイトがあり、どれがオリジナルだかわかりませんでした。。。 いくつか楽しいと思ったのをピックアップしてみました。 他にも色々あったので、興味のある方は検索をしてみて下さい。

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

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

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

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

  • 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++