タグ

programmingに関するdeloreanのブックマーク (288)

  • 脳みそでコードを書く人と脊髄でコードを書く人:Geekなぺーじ

    最近、私は、世の中には2種類のプログラマが存在すると考え始めました。 脳みそでコードを書く人と脊髄でコードを書く人です。 脳みそで書く人は、まず最初に設計図を書いていきたくなります。 脊髄で書く人は、まずコードを書いて、それから考えます。 個人的な感想では、脳みそで書くタイプの人は業務でしっかりと書くのに向いていると思います。 脳みそで書く人の方がしっかり考えてから手を動かし始めるので、開発中にコードがドラスティックに変わることが少ないと思われます。 一方、脊髄で書く人は能の赴くままにオープンソースソフトを書くのに向いていると思います。 コードを書くスピードは脊髄で書くタイプの方が速く、いわゆるUNIXハッカーな方々はこのタイプが多いように思います。 両方のタイプの人がお互いの欠点を補完しながら協調すれば凄く効率が良いと思いますが、今まで見てきた感じでは、互いに馬が合わない事が多いようで

  • ひげぽん OSとか作っちゃうかMona- - ハッカー養成塾:ハッカーへの遠回り

    オープンソースマガジン2007年1月号に向けて書いた記事の元の原稿です。 前回のアルファギーク舘野君から、バトンを渡されたひげぽんです。 Mona OSというオープンソースOSを開発しています。 僕はハッカーと呼ばれるには実力不足ですが、知り合いのスゴ腕ハッカーに少しでも追いつこうと日々実践していることをいくつか紹介します。 ハッカーに学ぶ オンラインでもオフラインでも構いません、自分よりも優れているハッカーを探してお手とすることから始めましょう。 彼(または彼女)が何を勉強し、発言し、考えているかを観察することで多くのことを学べるはずです。 周りにハッカーがいなければ、勉強会・カンファレンスに参加したり、ブログを利用してコミュニケーションをとるのもひとつの方法です。 「ハッカーに交わればハッカーになる」とまではうまくいきませんが、周りは自分より優秀な人ばかりであるという環境を作り上げる

    ひげぽん OSとか作っちゃうかMona- - ハッカー養成塾:ハッカーへの遠回り
  • ソフトウェア開発者のための推薦図書

    Code Complete 2 [ Code Complete第2版―完全なプログラミングを目指して (上・下) ] スティーブ・マコネルのCode Completeはソフトウェア開発者のための「楽しい料理だ。このを読むということは、自分の仕事を楽しんでいるということであり、自分のすることに真剣であるということであり、もっと向上したいと思っているということなのだ。Code Completeの中で、スティーブは平均的なプログラマが読む 技術書は年に1冊に満たないと指摘している。このを読んでいるという時点で、あなたはおそらく周りにいる開発者たちの90%と違う行動を取っていることになる。それもいい方向にだ。 私はこのがすごく好きで、ここから自分のWebサイトの名前(Coding Horror)を取ったくらいだ。このではやるべきでない悪い例には"coding horror"アイコンで印

  • Fine Software Writings

    最近のもの 目標でなく恐怖を明確にすべき理由 (Tim Ferriss) 我々が築き、掘っている未来 (Elon Musk) 表計算ソフト誕生の話 (Dan Bricklin) Linuxの背後にある精神 (Linus Torvalds) 先延ばし魔の頭の中はどうなっているか (Tim Urban) 好きになる仕事はどうしたら見つかるのか (Scott Dinsmore) 人間に新たな感覚を作り出すことは可能か? (David Eagleman) 人工知能が人間より高い知性を持つようになったとき何が起きるか? (Nick Bostrom) 厄介な問題を解決したい? ではトーストの作り方を説明してください (Tom Wujec) 子供の夢を奪う学校というシステム (Seth Godin) 彼らがいなくなってしまう前に (Jimmy Nelson) 頭良さそうにTED風プレゼンをする方法 (W

  • 機能変更、お知らせなど - はてな技術発表会日記 - 3月22日の技術勉強会 - ActionScript3 / Flex / Apollo 勉強会

    8月17日の技術勉強会 - Flexレイアウト手書き勉強会 8月17日に行われました技術発表会の内容を撮影した動画ファイル/資料を公開いたしました。内容は以下のとおりです。 テーマ Flexレイアウト手書き勉強会 発表者 d:id:secondlife 勉強会動画 ダウンロード…

    機能変更、お知らせなど - はてな技術発表会日記 - 3月22日の技術勉強会 - ActionScript3 / Flex / Apollo 勉強会
  • 見つけて得するソースコード専用の検索エンジン - @IT

    Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします。(編集部) プログラミングと検索エンジンは切っても切れない プログラミングと検索エンジンの関係は切っても切り離せないものです。プログラミングに役立つドキュメントやノウハウを探したり、参考になるサンプルプログラムを見つけ出せます。 さらにバグの回避方法を見つけたり、エラーメッセージを検索エンジンで探して、解決方法が見つかることも多いでしょう。良質のソースコードから、的確なアルゴリズムや、思いもしなかったようなコード例を見いだすのも新たな楽しみです。 さて、ここではプログラミングの際に便利に利用できるソースコード専用の検索エンジンをいくつか紹介しましょう。ソースコード専用の検索エンジンを利用した検索

    見つけて得するソースコード専用の検索エンジン - @IT
  • kajidaiの日記 - 新しいプログラミング言語を習得するための15の方法

    ↓で紹介されてた新しいプログラミング言語を習得するための15の方法についてhttp://forums.programming-designs.com/viewtopic.php?pid=3482I've working knowledge of a bunch of programming languages but job demands to learn a new language frequently in a short time. Instead of reading hundreds manual/book pages, I quickly read 10-15 pages of tutorial or primer. (As you know google is the best search engine to look for such stuff). I keep p

  • 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(単純性): 単純化された設計をしましょう。複雑さは必要な時だけ追加しま

  • 人力検索はてな - 有能なプログラマが嗜んでいる言語・技法・テクニックとは何ですか? この場合の、有能なプログラマの定義については以下のURLをご覧ください。 http--d.hatena.ne.jp-f..

    有能なプログラマが嗜んでいる言語・技法・テクニックとは何ですか? この場合の、"有能なプログラマ"の定義については以下のURLをご覧ください。 http://d.hatena.ne.jp/fromdusktildawn/20070217/1171679191 すなわち、「つまらない仕事の生産性」をあげるための手法を質問しているのだと思っていただいて結構です。 注意:上記のような「つまらない仕事の生産性」を上げるためには、もちろん心構えや生まれ持ったものも大きいでしょう。 それを答えていただいてもかまいませんが どちらかというと、技術的な面を聞きたいです。 プログラマを大工に例えるならば 一流の棟梁の道具箱に何が入っているのかを 聞いているのです。

  • いやなブログ - スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl

    スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl スクリプト言語用の CUIのデバッガの使い方を簡単にまとめました。対象言語は Ruby, Python, Perl です。 私は C, C++ でプログラムを書いているときはデバッガ (主に GNU/Linux 上の gdb) を頻繁に利用します。しかし、スクリプト言語ではそれほどでもありません。これはおそらく次のような理由によります。 ビルドが不要なので printf デバッグが容易 (ある程度大きい C++ のプログラムではビルド時間が長いので printf の挿入はしんどい) 異常終了時にスタックトレースが表示される (Ruby, Python なら自動、Perl の場合は use Carp; $SIG{__DIE__} = \&Carp::confess; など) オブジェクトのインスペクトが簡単 (Ru

  • アルファルファモザイクより「プログラマのオススメフリーソフト」

    あんまりどっかの雑誌で紹介されてたソフト一覧を 全部貼るとかじゃなくて、自分が実際に使ってるもんを説明つけて貼ってく方向で・・・ 1レス1ソフトで、実際にどうやって使ってるのかも書いてくれるとうれしいです。

  • Fortranから最新言語まで、約2500種類のプログラミング言語の系図

    史上最初のプログラミング言語である1954年に考案された「Fortran」(フォートラン)から、今の各種最新言語に至るまで、いろいろなプログラミング言語が発展していく様子をまとめた巨大な系図を見ることができます。ちゃんと印刷できるようにPDFファイルなども置いてあります。自分の使っている言語がない場合には連絡して欲しいとのことです。 閲覧は以下から。 Computer Languages History (preview) 元のページはココ。A4用紙11枚に及ぶ印刷用PDFファイルなどをダウンロードできます。 Computer Languages History こうやって眺めてみると、いろいろな言語がお互いに少しずつ影響を与えているのがよくわかります。さすがにあまりにもマイナーな言語はサポートしていないようですが、作者に連絡すれば入れてもらえるかも。 一応全言語の一覧は以下から検索できま

    Fortranから最新言語まで、約2500種類のプログラミング言語の系図
  • 【インフォシーク】Infoseek : 楽天が運営するポータルサイト

    日頃より楽天のサービスをご利用いただきましてありがとうございます。 サービスをご利用いただいておりますところ大変申し訳ございませんが、現在、緊急メンテナンスを行わせていただいております。 お客様には、緊急のメンテナンスにより、ご迷惑をおかけしており、誠に申し訳ございません。 メンテナンスが終了次第、サービスを復旧いたしますので、 今しばらくお待ちいただけますよう、お願い申し上げます。

  • 東大での講演 - squeakerのブログ

    (ちょっとだけ追記しました。その他1/25のあたりも見てみてください。) "Can programming be reinvented?"というタイトルでの発表。東工大と東大で似たような発表をしたのだが、ストーリーラインが比較的新しいため、先にやった東工大での発表には反省点がいろいろあり、それが東大での発表に生かされた形になったのは否めない、かもしれない。以下は、かなり再現性の低いメモ。詳細はさらに聞いてください。「私」はもちろんAlan Kayを指します。 近所の人から、「なんで新しいコンピュータのほうがWindowsの起動やMS Wordの起動が遅いの?」、「大きいディスクがついているはずなのに、なぜ使える容量が少なくなるの?」、「アップデートをしたら、何で再起動しなくてはいけないの?」という質問をされる。なかなか良い質問である。 私自身も、コンピュータに関する疑問がある。「なぜ、コン

    東大での講演 - squeakerのブログ
  • kaihachu.com - 開発合宿好きの技術者のためのコミュニティブログ

    This domain may be for sale!

  • なんちゃって個人情報

    なんちゃって個人情報は「Generator of the Year」にて【便利賞】を受賞いたしました!! 投票して下さったみなさま、当にありがとうございました。 今後もどんどん使ってやって下さい。 プログラム等に使えるかもしれない個人情報のテスト用データを作成できます。特に説明が必要なものでもないので、とりあえずやってみていただければわかると思います。 念の為書いておきますが、生成した偽個人情報により発生したいかなる損害も当方は一切関知しません。たまたま名前が実在の人物と同姓同名になってしまうかもしれませんし、特に電話番号や携帯については実際に使われている番号と重なることがありますから、扱いには十分注意して下さい。 何かご要望とかありましたらお気軽にブログまでコメント下さい。 HTML シンプルなHTMLのテーブルで出力します。 XML ルートを<records>、各レコードを<reco

  • ペアで働くと効率4倍 (ビジネス基礎体力):NBonline(日経ビジネス オンライン)

    「ペアプログラミング」と呼ばれる手法で、伊藤さんらプログラマーの間ではよく知られている。仕事の効率は「4倍、5倍にもなる」というのが実感だ。誰でも1人の時はついついメールをチェックしたり、ウェブサイトを見たりして、さぼってしまいがち。でも他人が横で見ているとさぼれないため、100%仕事に集中できる。 例えば数カ月前に作ったプログラムを見直して修正を加えるなど、あまり気が進まない作業をする際、伊藤さんはペアプログラミングをよく利用している。 メリットは「速さ」だけではない。仕事の質も向上する。横で見ている人がミスを指摘するので、間違いが起こりにくい。また、1人の時なら使わない、新しい技術を使おうという誘因が働く。「人が見ていると格好いいところを見せたいと思うから」と伊藤さんは言う。 伊藤さんは「仕事のエンジンがかかるのが遅い方」と自認している。自分を鼓舞して仕事にすぐ取りかかるために、ペアプ

    ペアで働くと効率4倍 (ビジネス基礎体力):NBonline(日経ビジネス オンライン)
  • inforno :: キーボード派のWindows開発環境

    そういえば、こういうサイトに定番っぽい開発環境を書いたのがないので、自己紹介?も兼ねて晒してみます。 開発はだいたいWindows上のvmware(Debian)でやってます。ただし、そこは定番どころばっかりなのでパス。まぁvim+screen+zshです。puttyでつないでますよ。sambaでマウントしてますよ。ええ。それぞれ結構設定しまくっていて、グローバルなSVNサーバーにおいてあります。 Windowsでの開発環境 あんまりWindowsは好きではないけど、Macよりは好きだったりする。というわけでWindows。普段使いのOSでもあるので、主に自分用の小物を書くことが多いです。怠け者なので、自動化できるものはすぐプログラムに置き換えちゃいます。でも言語は結構様々。もとから言語にこだわらず、一番適しているものを使う主義なので小物が多いにもかかわらず、言語は結構多いのかも。 今のと

  • キミのコードが汚い理由 ― @IT情報マネジメント

    リスト1は、同じ処理を繰り返すようなコードで初心者プログラマーがよく使う幼稚なスタイルで書かれている。必ずしも複雑ではないが、筆者には散らかっていて効率が悪く見える。リスト2の方が複雑な条件になっているが、Javaを理解していれば、かなり読みやすい。唯一疑問を抱くかもしれないとしたら、最後の「else if」の中にある条件の最初の部分だけだ。このクローズに来るということは、どちらかのプレーヤーが勝ったことを意味する。 いずれのインプリメンテーションも間違ってはいない。実際、これらはどちらも非常に小さく、つまらない例にすぎないので、これらのリストでコードがいかにクリーンか論ずるのはあまり有益ではない。ただ、何をもってインプリメンテーションがクリーンなのかについて読者の興味を深めることはできるだろう。 クリーンなコードについて扱った記事、Webサイト、書籍は多数存在する。何をもってコードをクリ

  • ひたすら読みにくいCコード:Geekなぺーじ

    「The International Obfuscated C Code Contest」という面白いコンテストがあります。 1984年から行われているこのコンテストは、どれだけ読みにくいC言語プログラムを書けるか競うものです。 wikipediaでは、以下のように説明されています。 IOCCCとは「The International Obfuscated C Code Contest(国際邪悪なCコードコンテスト)」の略称。汚く読みづらいC言語コードをあえて書き、その汚さを競うというC言語ハッカーの奇祭である。むろんただ汚ければよいというわけではなく、目にした瞬間のインパクト、実行結果の美しさなど、さまざまな要因でアーティスティックなものが選ばれる。多くのコードはそもそも全くC言語に見えない。コード全体がアスキーアートになっているものなどが典型的である。 第一回大会は1984年に行われ、