Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
大きく挙げたのは7冊なので、7日の休みで1日1冊ですね! 連休の間に読んでおいて、友達に差をつけよう! うっかり、先輩にも差をつけちゃえばいいと思います。 プログラムを組むとはどういうことか 本を挙げる前に、まずプログラムを組むとはどういうことかということを考えておきます。 ざっくりとした説明なので、だいたいこういう感じ、だと考えてください。 その上で、どのような本が必要かを考えて、本を選んでいきます。 以前描いたものですが、プログラムを作るということと各分野の関係はこのようにあらわせます。 まず、プログラムは最終的にユーザーに使ってもらうためのものです。 ただ、ユーザーはプログラムを直接使うことはできません。プログラムはハードウェアで動かす必要があります。そして、ユーザーインタフェースを介してユーザーが使います。 (ハードウェアからプログラムへの矢印は逆のほうがいいですね) このような、
等である。 Seaside はこうしたルールを全て破った Web アプリケーションフレームワークだ。 Web 開発でこれまで叡智とされてきたことを放棄してみると何が得られるのか? 実に多くのことが、得られたのだ。 つまり、Seaside では今まで Web 系でお約束とされてきたことに反する以下のような特徴を持ちます。 できる限り状態を保持する URL は一過性のものを使う テンプレートを利用しない なんだかめちゃくちゃのようですが、意味もなく反逆しているわけではありません。 これにより、隅から隅まで、徹底してオブジェクト指向の Web アプリフレームワークを実現しています。 一般的な Web アプリフレームワークは、だいぶ洗練されてきているものの、まだまだ手続き指向であるものが多いと言えます。 オブジェクト指向でプログラミングというよりは、フレームワークが用意する複雑な設定ファイルをいろ
<< 2010/10/ 1 2 3 4 1. mixi アプリ版 ToriSat をリリースしました! 5 6 7 8 9 10 11 12 13 14 15 1. Facebook アプリ "SightSpaceStation" 公開 16 1. Facebook アプリ作ろうぜ (その1 準備編) 2. Facebook アプリ作ろうぜ (その2 はじめての Graph API 編) 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >> ■ [Facebook]Facebook アプリ作ろうぜ (その1 準備編)Facebook アプリの作り方をぼちぼち書いていこうと思います。Facebook まわりは、新旧 API の情報があって混乱しがちなんですよね……。 Facebook の API はいろんな言語・プラットフォームから使えます。
Wiki構文(Wiki記法のルール)は山にようにイッパイあります。 「新たにもう1つ構文を付け加えても別にいいだろう」と考えるか、「これ以上新しい構文を増やしてはいけない」と考えるかは人によるでしょう。僕は、「集約・統合してWiki構文を減らすべきだ」と考えています。それで、標準的なWiki構文としてWikiCreole 1.0を採用し、KuwataさんがCreoleパーザーを実装しています。 ところが、WikiCreoleの構文記述が曖昧過ぎてサッパリわからんのです。Kuwataさんもイライラしている様子。このような状況はWikiCreoleに限りません。たいていのWiki構文の記述はイイカゲンです -- いやっ、仕様書があるだけでマシなのです。イイカゲンな仕様に適合した(conformantな)処理系を作れと言われてもそりゃ困りますわな。 WikiCreole仕様の曖昧さは以前にも話題
ラムダ計算は, 多くのプログラミング言語, とくに関数型言語の原形になっています. ラムダ計算について理解しておくことは, 多くのプログラミング言語の習得に役立つでしょう. ラムダ計算はチューリング完全で, 計算能力としてはふつうのプログラミング言語と同じです. ラムダ計算で計算を書く訓練をしておくことは, 任意の計算を関数のみを使って(他の制御構文を用いずに)書くときに役立ちます. ふつうに書いたら煩雑な処理を, 関数型言語のやり方で書くとすっきりすることが多々あり, コードを自由自在に書くためには必須の考え方と言えるでしょう. 項 ラムダ計算の式を項(term)と言います. 項は変数, 抽象, 適用のいずれかです. 変数 変数(variable)はふつう1文字で書きます. 変数には関数内の束縛変数(bound variable)か自由変数(free variable)かという区別があり
知っている人は当たり前なネタですが、知らないと素通りしてそのままにしてしまいそうなネタです。 多くの言語に Round() 関数が用意されていますが、これは四捨五入する関数ではなく、「丸め」る関数です。 名前のまんま。 実は私、最近まで「丸め」とは「四捨五入のコンピュータ系方言」くらいに思っていたのですが、実は違いました。もっと広い言葉です。 まず、「丸め」とはある精度以下の数値情報を捨てる処理のことで、「四捨五入」を含みます。他に少なくとも切り上げ、切捨て、そして今回話題にする「偶数丸め」があります。(もっとあるかも知れません) 「偶数丸め」は IEEE 754 で定められており、JIS や ISO にも同じ規定があります。 多くの Round() 関数の挙動もこの IEEE 754 に則った「偶数丸め」です。 「偶数丸め」は四捨五入とほぼ同一ですが、次の1点が違います。 「丸め単位の丁
プログラミングを始めてから今日に至るまで、 様々なタイプのプログラマーと開発を共にしてきたが、 驚くべき速度で高い品質のソフトウェアを作り上げるプログラマーには、 一つ共通の特徴があるように思える。 それは、「はまる」時間が極端に短い、ということである。 風のプログラマー」を指向しており、開発速度を重要視している。 例えば平成14年未踏ソフトウェア創造事業「PICSY」では、 発表直前に知人でプロジェクトリーダーの鈴木健にレスキュー隊として呼ばれて 2,3日でGUI全般と、クライアント/サーバー通信部分の設計と実装を終わらせたのだが、 このときなどは、大体の要件を口頭で聞いた後は、 ほぼまったく手が止まらずコードを書き続ける感じで開発をしていた。 「はまる」時間の長さは開発速度に直結するわけだが、 プログラマーが「はまる」場合にはある程度の傾向があると思うので、 今日は「はまる」プログラマ
http://metatoys.org/oxymoron/oxymoron.html 京大でこないだのアランさんの講演 http://d.hatena.ne.jp/squeaker/20090120#p1 があった後に、kckm さんが 今回の話と http://d.hatena.ne.jp/sumim/20080806/p1 で紹介されていた「Is "Software Engineering" an Oxymoron?」の関連についてつぶやいていた のでなるほどと思って読み返してみました。ついでに暇だったので訳しました。といってもほとんど sumim さんの箇条書きを単に並べただけで新しい情報は無いですが、箇条書きが嫌いな人には読みやすいかと思います。間違っている場所があったら教えてください!また、この日記は下書きという事にして、読みやすくした分を http://metatoys.org
Latest update: 30th November, 2008 The Book Of Ruby is a comprehensive free tutorial to the Ruby language. Eventually it will form a book of more than 400 pages in 20 chapters. It is being provided in the form of a PDF document in which each chapter is accompanied by ready-to-run source code for all the examples. The Introduction explains how to use this source code in Ruby In Steel or any other e
ダイクストラ法が小さなサンプルデータで動いたら、実際のデータを使ってみたくなるのが人情。東京を走る地下鉄のデータでやってみたいと思った。 JavaScriptとPrototype.jsとGoogleMapsAPIとすったもんだしたあげく、なんとか動くものができた。 502 Bad Gateway テストアプリはこちら JavaScriptのソースはここのhtmlに 駅や路線のデータは駅データ.jpのものを使わせてもらいました。 使ったのは東京メトロ+都営+山手線 駅(ノード)の数は、同じ駅でも路線ごとで別にカウントして 322 駅同士をつなぐ線路(エッジ)の数は、徒歩や乗換えを含め 912 体感もっさり感じるけど、経路の検索以外のところがかなりかかってる Tips Prototype.js Array.without は超重い、使うな! Hash.keys で返ってくるキーはすべて文字列に
UPDATE!!: id:propella さんがすばらしい翻訳を公開してくださいましたので、そちらをどうぞ 「ソフトウェア工学」は矛盾語法か? "-- -- -- -- -- -- -- -- -- -- -- -- -- --" Is "Software Engineering" an Oxymoron? [PDF(勝手ミラー版)] タイトルの訳はよく分からないのですが「“ソフトウエア工学”は矛盾表現か?」みたいな感じでしょうか。 これは、Croquet(Squeak システム上に構築された仮想3D空間オーサリング用のフレームワーク。Qwaq 社による商用化もされている)の最初の公開バージョンのマニュアル(Croquet0.1.pdf)の付録に掲載された文章なのですが、なぜか公式サイトからは消えていて、ググって見つけた勝手アーカイブから入手できる元の PDF でも絵が壊れていたので、そ
http://www.amazon.co.jp/dp/4873113679 http://yugui.jp/wiki/LearningRuby この手の系図には間違いがつきものなのですが、「プログラム言語の系譜で、Lisp→Smalltalkの線を引いてるのはこの本だけ!」と言われてしまうとつい反応したくなるのが人情というものでして…汗。 ▼ Pascal → Simula !? '70 → '67(SIMULA 67 の場合。SIMULA I なら '66) というのは時系列的にまずいと思います。ここはオーソドックスに、ALGOL 60 から線を延ばして、 ALGOL 60 → SIMULA と、すべきかと。 SIMULA: an ALGOL-based simulation language (ダウンロードは有料) Some features of the SIMULA 67 lang
プログラマーの後輩として、どのようにプログラミングを学ぶべきか――わたしの下に届いた1通のメールにはいろいろと考えさせられるところがあります。 先日、見ず知らずの方からメールをいただきました。プログラマーの後輩として、どのようにプログラミングを学べば良いか尋ねる内容です。以下、引用します。 はじめまして。 僕は、今15歳です。 僕は、コンピュータにとても興味があり、近い将来、ITにかかわる仕事がしたく、まつもとさんのような超優秀なプログラマーになりたいと思っています。そこで、いまからITについて猛勉強しようと、いろんなWebサイトを見て回りましたが、何しろ情報量が非常に多く、かえって混乱してしまいました。そこで、ご質問なんですが、具体的にどのようなことから勉強を始めればいいですか。それから、入門に適切な書籍やWebサイトなども紹介していただければ幸いです。 お忙しいでしょうが、お返事をお待
Javaエンジニアにこそ、Rubyの良さが分かる:JavaエンジニアのためのRuby入門(1)(1/2 ページ) 実は共通点の多いRubyとJava。Javaエンジニアであり、JavaとRubyの両方のインストラクターでもある筆者が贈る、JavaエンジニアのためのRuby入門。 「Rubyはハードルが高い」。本当にそうですか? 昨今、急速にITエンジニアの注目を集めているRuby。中でも、RubyのためのWebアプリケーションフレームワークであるRuby on Rails(以下、Rails)は、「Javaの典型的なフレームワークの10倍の生産性」と宣伝されたこともあり、とりわけJavaエンジニアの皆さんにとって気になる存在なのではないでしょうか。 とはいうものの、「Rubyは触ったことがないし、ソースコードを少し読んではみたものの、さっぱり意味が分からない。勉強するにはハードルが高い」と感
Googleは2月25日(米国時間)、2007年に引き続き今年もGoogle Summer of Code 2008を開催すると発表した。GoogleはSummer of Codeを通じてFLOSSプロジェクトの活発化と学生へプロジェクト参加の機会を与えている。出資はGoogleがおこない、プロジェクトが成功すれば学生とプロジェクトに資金が進呈される。GoogleはFLOSSの発展そのものが同社に有利に働くため、結果的に学生、学生を支援するプロジェクト、Googleの3者両得の関係になっているところがポイントだ。 2005年から毎年開催されている同プロジェクトだが、日本からの参加はメンターおよび学生の双方を合わせてもほとんどいないというのが現状だ。Google Summer of Codeは当然ながらすべてのやりとりが英語でおこなわれる。英語が扱えるメンターで学生の面倒を見る時間と技量があ
http://q.hatena.ne.jp/1203667934 ソフトウェア開発やプログラミングのスピードを上げる方法はありませんか? プログラマーとして生きていこうと決めたのですが、いつも見積もりの3倍時間がかかってしまいます。 そのため いつもつらい思いをしています。 環境を良くしようとHHKLite2を使い、カスタマイズソフトでホームポジションから離さずにプログラミングしています。 マウスもゲーム用の高精度のものを使っています。 調べ物にもタブブラウザを使い、拡張し続けて効率化をしています。 DualCoreマシンを使いメモリもたくさん積み、障害がないように心がけがけています。 出始めのころから効率化のためにエクストリームプログラミングも取り入れていました。 単体テスト、リファクタリングも当然行いますが、余計に開発速度が落ちています。 しかし開発速度は効率化とは無縁だとすら感じてい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く