タグ

プログラミングに関するhi-rocksのブックマーク (22)

  • Matzにっき(2006-04-24) - プログラミング≒デザイン

    << 2006/04/ 1 1. [言語] Perlish Magazine 20060401 号 2 1. [教会] 司会 3 1. [原稿] オープンソースマガジン 2006年6月号 4 1. 東京出張 2. [Ruby] .c( whytheluckystiff )o. -- The Fully Upturned Bin 3. [言語] The Scala Programming Language 4. カプセルホテル 5 1. 会社訪問 2. [言語] だめんずうぉ〜か〜 6 1. [Ruby] Drecom Award on Rails 2. [言語] The World's Most Maintainable Programming Language 7 1. 新人研修 2. [原稿] 日経Linux 2006年6月号 3. [Ruby] 島根県のWebサイト,“地元発”の技術

  • How To Become A Hacker: Japanese

    なぜこんな文書を書いたか わたしは Jargon Fileの編集者で、またその他似たような有名文書いくつかの著者なので、しばしば熱心なネットワーク初心者から「ウィザード級の大ハッカーになるにはどうやって勉強すればいいの?」といったようなお尋ねメールを頂きます。でもかつて 1996 年に、こんな大事な問題を扱った FAQ や Web 文書 はみあたらないことに気がつきました。というわけで、これを書き始めました。多くのハッカーがいまやこれを決定版と見なしているし、つまり実際に決定版なんだと思います。でも、この問題について自分が唯一無二の権威だと主張するつもりもありません。気にくわなければ、自分なりのヤツをどうぞ。 この文書をオフラインで読んでいるなら、最新版は次のところにあります。 http://www.catb.org/~esr/faqs/hacker-howto.html なお、この文書の

    hi-rocks
    hi-rocks 2006/04/26
    (未読)定番らしい。途中まで読んだ。「LISP は、それをモノにしたときのすばらしい悟り体験のために勉強しましょう」
  • 高木浩光@自宅の日記 - CSRF対策に「ワンタイムトークン」方式を推奨しない理由

    水色の四角は画面を表し、白抜き実線枠の四角はボタンを表す。 これを、Webアプリという実装手法を選択する場合に特化すると、図2のような遷移図が描ける。 実線矢印はブラウザが送信するHTTPのrequest(ヘッダおよび、POSTの場合はボディを含む)を表し、黄色の丸がサーバ側での1アクセスの処理を表し、点線がその処理結果を返すHTTPのresponse(ヘッダおよび、HTML)を表す。responseの上の文はHTMLの内容を説明するものである。黄色の丸の中の文は処理内容の説明であり、ここから複数のresponse矢印が出ている場合、処理の結果によって遷移先の画面が異なる場合であることを表し、破線の白抜き四角がその分岐の条件を概説している。 この図で例に用いているのは、ECサイトやblogサービスなどに見られる典型的な「登録個人情報変更」の機能である。「メインメニュー」画面の「登録情報変更

  • 「プログラミングをしない人が考えていること」を聞いてみた:ITpro

    ちょうど1年前に日経ソフトウエアというプログラミング雑誌の編集部に異動になって以来,「プログラミングって一体何だろう?」とずっと考えて続けている。今度,日経ソフトウエア6月号で“プログラミングをしたことのない人向けの超入門記事”を書くことになり,プログラミングの質について考えてみるいい機会だと思った。そこでふと気が付いた。「プログラミングをしたことのない人が考えていることが,自分にはわからない」ということに。 私には職業プログラマの経験はないし,長いプログラムを書いた経験もない。いわゆる「コードが書ける」人間だとはお世辞にも言えない。自分が記事の中で書いたサンプル・プログラムをあとで見返して,不自然な部分を発見して赤面するなんてことはよくあるし,最近よく参加している勉強会(注1)では演習問題が解けなくて苦しんでいる。 注1:「素人くさいSICP読書会」といいます。SICP(Structu

    「プログラミングをしない人が考えていること」を聞いてみた:ITpro
    hi-rocks
    hi-rocks 2006/03/31
    (未読)
  • Teach Yourself Programming in Ten Years 日本語訳

    以下の文章は、Peter Norvig による Teach Yourself Programming in Ten Years の日語訳である。 翻訳文書については、以下の方々にご教示を頂きました。ありがとうございました。 Shiro Kawai さん:誤訳の訂正 三好博之さん:誤訳の訂正 竹中明夫さん:2001年7月改版分の訳、誤訳の訂正(共訳者にクレジット) Toshihiko Ono さん:誤訳の訂正 アクビさん:訳注3に関する情報 どうしてみんなそんなに急ぐの? どの屋に足を運んでも、『7日で学ぶ Java』といったハウツーを見かけるし、そのそばには Visual Basic や Windows やインターネットなどについて、同じように数日や数時間で学べると売りこむが無限のバリエーションで並んでいる。Amazon.com で以下の条件で検索してみたところ、 pubdate

    Teach Yourself Programming in Ten Years 日本語訳
    hi-rocks
    hi-rocks 2006/02/25
    (未読)「プログラミングを独習するには10年かかる」
  • どのような勉強をすればプログラミングができるようになるのですか

    「どのような勉強をすればプログラミングができるようになるのですか」という質問をいただいたので、お返事します。 この質問を聞いたときにすぐに思いついた答えは、 その答えは『どのような勉強をすれば文章が書けるようになりますか』という質問への答えに似ているでしょう というものでした。その心は、 プログラミングが「できない→できる」へデジタル的に変化するのではない。しだいにできるようになっていく。 という意味です。 …という前置きはさておき、これまでにも私はあなたのような方から同様の質問を受けてきました(きっと今後も受けるでしょう)。以下の文章群の中に「あなたへのヒント」が含まれていると良いのですが…。もしも以下の文章でピンと来ないときにはまたお尋ねいただければありがたいです。 どのようにしたらプログラムを1から書けるようになるのでしょうか 結城さん自身はどういう参考書でJavaを学んだのですか

    どのような勉強をすればプログラミングができるようになるのですか
  • 超特急: 一時間でわかるML超入門

    hi-rocks
    hi-rocks 2005/10/28
    (未読) ちょっくら遊んでみてもいいかもしれない。
  • 眠る開発屋blog - 統一ランキングと情熱

    AFTERTOUCH surreal SxGx maniac cinema&book; review *めぐりあうたびに溺れて 見失うたびに胸焦がしてた* InverseDiaryFunction SxGx キェェェェ N山家の人々 Dairy ☆質問ダイアリー☆ ネタ帖 むらみぃ 世の中とあたしの繋がり GOOBERS ++今日のechiko++ ロストマインドガール * mayumi blog * モウソウtagebuch 読書感想日記☆ネタバレ注意警報! 癌と煙草と酒と 俺の道 toro's blog. ++ torog ++ ココアシガレット・アンダーグラウンド Deportare gorf net AFTERTOUCH surreal 2ちゃんねるの超怖い話 maniac cinema&book; review CARLTON1976 平凡な日々 秘密のホンネ ゴリラ秘話。 L

    hi-rocks
    hi-rocks 2005/10/21
    流用って実際にはそう簡単にいかなかったりもするけど、それも元の設計がまだ甘いってことでしょうかね。
  • 「生涯一プログラマ」に悔いなし

    先日,経済産業省などが20歳以下の若者を対象に開催した「U-20プログラミング・コンテスト」の審査会に立ち会う機会があった(関連記事)。それは記者にとって予想以上に楽しい経験だった。 「ネットワークでチョークが飛んでくる黒板シミュレータを」 プレゼンテーションでは作者がプログラムにこめた思いを審査員に語る。個人部門の最優秀賞を受賞した神奈川県立多摩高等学校普通科2年 秋山博紀氏の,チョークの粉が落ちる黒板シミュレーション「AKI黒板 Ex」のプレゼンテーションでは「黒板消しで字を消すと,拭き後がうっすらと残るようにした」(秋山氏)などの“こだわり”に「円を書くコンパスが欲しい」,「ネットワークでチョークが飛んでくる機能を」など,多くが教育関係者である審査員からも次々とアイデアが提案される盛り上がりとなった。 また団体部門の最優秀賞を受賞した沖縄県立球陽高等学校理数科3年石田智也氏,赤嶺一樹

    「生涯一プログラマ」に悔いなし
    hi-rocks
    hi-rocks 2005/10/19
    プログラマはクリエーターだ!常にそうありたいですな。
  • ナチュラルなコードとは?:An Agile Way:オルタナティブ・ブログ

    題名は、音楽の話に聞こえるかもしれませんが、ソフトウェア開発の話です。 以前、咳さんが体験談として >「お前のコードはナチュラルでエレガントだ」 >と言われた時は うれしかったなあ と語ってくださったことから、ちょっと思い起こしてみました。「ナチュラルなコード」とはなんだろうか、ということを考えてみたい。ぼくは、何かのかインタビューで読んだ、Ward Cunningham の言葉がとても強く印象に残っています。 ...(要約するとこんな感じ)... そのコードは、すばらしいコードだった。ソースリストをプリンタに出力すると、 それは、「どこからでも読み始めることができ、意図が明確だった」 ............................ 「どこからでも読み始めることができる」(!)というのは、オブジェクト指向のよいコードの特徴じゃないだろうか。 (以前、oosquare-ml だっ

    ナチュラルなコードとは?:An Agile Way:オルタナティブ・ブログ
    hi-rocks
    hi-rocks 2005/09/14
    「実行時にどう処理が流れるか、ということではなく、世の中はこう組み立てられている、という感覚」
  • LLXX - MoriMoin

    こんなLLはXXだ 高橋メソッド版 言語仕様 中括弧とインデント両方必須 for x in lst{ hoge(x) --> Syntax Error 全部の変数の型を明示 Integer x [Integer] lst Integer -> Integer hoge for x in lst: hoge(x) よめない(whitespace 全部大文字 FOR X IN LST: HOGE(X) 制御がgotoとifだけ max = len(lst) i = 0 loop: if i > max: goto eloop hoge(lst[i]) i += 1 goto loop eloop: ifが後置だけ hoge(x) if x; ASCIIにない記号が入ってる π=3.1415 ユーザーが俺だけ ( と { と [ が同じ意味だ dict_user{func_h

    hi-rocks
    hi-rocks 2005/08/30
    ダメだ。ゆるーい笑いがおさえきれなくて会社では最後まで見れない。。。
  • いやなブログ: 配列操作の比較表: Ruby, Python, JavaScript, Perl, C++

    配列操作の比較表: Ruby, Python, JavaScript, Perl, C++ プログラムを書いていると、他のプログラミング言語の記憶とごっちゃになって、「配列の後ろに要素を追加するのは push だっけ、 append だっけ」などと混乱することがあります。特に Ruby, Python, JavaScript はコードの書き方が似ているので、この問題が起きがちです。 そこで、備忘録として、 Ruby, Python, JavaScript, Perl, C++ の配列操作の比較表を作りました。一番慣れている Ruby を基準にしています。間違いなどがあったらご指摘いただけると助かります。他の言語のもあるといいなあ。 Ruby (Array) Python (list) JavaScript (Array) Perl (@) C++ (std::vector)

    hi-rocks
    hi-rocks 2005/08/30
    言語の別配列操作の比較表
  • Scheme:Schemeプログラマのレベル10

    emeitchさんのリクエストより。元ネタは Perlプログラマのレベル10。 私家版、Schemeプログラマのレベル10 くれぐれも気にしないように。 レベル0 SchemeとかLispとかいうカッコだらけですごくわかりにくい言語があることは知っているが、 最強とか主張する信者がいるらしいのでなるべく関わらないようにしている。 EmacsLisp?もその親戚らしいけどコードを見ただけでくらくらする。 でも便利なマクロは自分の.emacsにコピペしている。 レベル1 Schemeに関するwebサイトを見たり、大学の講義での説明とかを聞いて、 factorialとかappendとかreverseとかを書いたり、 ネストした木構造のノードの数を数えたりできる。 でもそれが何の役に立つかわからない。こんな言語で実用的な プログラムが書けるなんて信じられない。 カッコの位置を間違えて動かないプロ

    hi-rocks
    hi-rocks 2005/08/16
    うーむ、さっぱりわからん!でも、ちょっとSchemeの世界をのぞいてみたい気もしてきたw
  • Perl の開発環境 - naoyaのはてなダイアリー

    人力検索でPerlの開発環境はどんな感じ?という質問があがっていて、にわかに盛り上がって(?)いますね。僕も回答してみました。 一般的にPerl使ってる人はWindowsで開発する人が多いんですかね?サーバにログインして、ターミナル上で開発をする人って結構少ないのかなぁ。 自分なんかローカルで一応Active Perlをインストールしているけど、ほとんど使わないし…。普段はサーバにログインしてそこでemacsで開発、ローカルでやるとしたらcolinuxにログインしてそこで開発って感じです。Windows上にソースを置くということはしてませんねぇ(あ、colinuxWindows上か…) その感想として Emacs とか vi 使わないの? っていう話。mixi なんかを見てても僕の周辺で同じ感想を持ったひとが多かったようで。 やっぱり PerlPC-UNIX を含む UNIX との

    Perl の開発環境 - naoyaのはてなダイアリー
    hi-rocks
    hi-rocks 2005/08/15
    関係ないけど、Cocoa系アプリは基本的に始めからEmacs風キーバインドですよね。
  • http://www.fastwave.gr.jp/diarysrv/arino/200508a.html

    hi-rocks
    hi-rocks 2005/08/14
    「実現不能な方法論では現実は救えない」熱いね。
  • http://developer.apple.com/ja/documentation/cocoa/Conceptual/CoreData/index.html

    hi-rocks
    hi-rocks 2005/07/23
    本家Apple提供のCore Data プログラミングガイドの日本語訳
  • 【連載◎開発現場から時代を眺める by arton】第2回

    【連載◎開発現場から時代を眺める by arton】第2回 テスト駆動開発(TDD)が分かると従来の設計手法の問題が見えてくる(前編) 稿では,テスト駆動開発(Test-driven Development――以降TDDと略す)について解説する。TDDは,その名の通りテストを主としてプログラムを開発する手法だ。ここで重要なのは,TDDはテスト手法ではないということだ。では何かと言えば,TDDはその名の通り開発手法なのだ。さらに正確に言えば,プログラムの開発工程を設計,実装,テストの3段階に分割した場合の最初の段階,すなわち設計を主眼とした開発手法なのである。その意味では設計手法と言い切ってもそれほど間違いではない。TDDによってプログラムの開発工程(設計,実装,テスト)がイテレーション(反復)される以上,最初に来る「設計」がTDDの主眼となることはある意味当然のことだ。 稿の目的は,T

    【連載◎開発現場から時代を眺める by arton】第2回
    hi-rocks
    hi-rocks 2005/07/04
    (未読)
  • hori-uchi.com: SledgeによるWebアプリケーションフレームワーク入門

    [ThinkIT] 第1回:Webアプリケーションフレームワークとは (1/4) SledgeによるWebアプリケーションフレームワーク入門という連載がThinkITでスタートしたようです。 Sledgeは使いこなせればすごく便利なフレームワークだと思いますが、ドキュメントが少ないので、さぁフレームワークを導入しようとなったときにちょっと手を出しにくいなのかなぁって気がします。 なので、こういうわかりやすい記事が出てくるのはいいですねー。 僕の会社でもフレームワークを導入して結構たちますが、最近思うのはフレームワークだけ導入しても、その来の目的である「工数の削減」「品質の均一化」「メンテナンス性の向上」を達成するのは難しいということです。フレームワークを利用してもその上でどういうコードを書くのかという規則、つまりその会社のコーディング規約のようなものがきちんとできていないと、結局品質のば

    hi-rocks
    hi-rocks 2005/06/09
    品質の均一化、コーディング規約はペアプロにより体で覚える
  • Amazon.co.jp:本: Happy Macintosh Developing Time ! ProgrammingDashboard 始めてみようウィジェットプログラミング

    Amazon.co.jp:本: Happy Macintosh Developing Time ! ProgrammingDashboard 始めてみようウィジェットプログラミング
    hi-rocks
    hi-rocks 2005/06/08
    mkinoさんのDashboard本。買っとくか?
  • 【レポート】Quartz Composerによるビジュアルフロープログラミング (1) Tigerの隠し球? - Quartz Composer | エンタープライズ | マイコミジャーナル

    Apple ComputerのMac OS X 10.4(Tiger)には、標準で「Quartz Composer」というアプリケーションが付属している。このアプリケーションは、開発環境であるXcode Toolsの一部という立場のせいか、Appleにもあまり取り上げられていない。しかし、この開発ツールにしてグラフィックツールであるQuartz Composerは、実は非常にエキサイティングで、とても大きな可能性を持っている。 Quartz Composerとは何かと聞かれたら、ビジュアルなフローを使ってグラフィックモジュールを作成できるプログラミング環境、という答えになるだろうか。だが、こんな説明よりも、Quartz Composerの動作画面を紹介すれば、一目で理解できるだろう。次の図が、それだ。 Quartz Composer動作画面 Quartz Composerには、パッチと呼ば