タグ

2011年7月10日のブックマーク (23件)

  • それでも出版社が「生き残る」としたら: たけくまメモ

    http://www.apple.com/jp/ipad/ ↑appleiPad」公式 ついに噂のiPadの全貌が公開されて、ネットもマスコミも上を下への大騒ぎであります。ここに来て、すでに報道されているアマゾンのKindleをはじめ「電子出版」を普及させるための役者(インフラとデバイス)が出揃った感があります。日ではまだ普及以前の段階ですが、昨今の出版不況を脱出するための突破口は、もはや電子出版しかないというのは、衆目の一致するところではないでしょうか。 さて、かねてから電子出版による「個人出版支援」に力を入れているアマゾンやアップル、ソニー(の米国法人)といった企業は、自社と出版契約を結んだ著者に対して、「印税35%を支払うぞ、いやうちは50%支払う、それならうちは70%だ」という具合に、「印税率競争」をヒートアップさせて著者を引き込もうとしています。日では印税率は通常8~10%

  • あなたを次のレベルに押し上げる「集中的訓練」の方法

    ただ「できる」だけではない、多くの有能な人と最高レベルで競い合うことのできるスキルを磨くにはどうすればいいのでしょう? 一人の「天才」的な才能を生み出すのに必要な時間は、マルコム・グラッドウェルが Outliers で紹介したように、10000 時間と言われています。 しかしこれは必要条件であって、十分条件であるとは限りません。普通にチェスを 10000 時間実践していれば、たいていの選手よりは強くなれます。しかしあとになればなるほど時間あたりに得られる経験値は少なくなりますし、強くなればなるほど自分のレベルを高めてくれる相手を探すのが難しくなるので、グランドマスターになりたいのなら、さらに絞り込んだ訓練が必要になります。 ゲームでたとえるなら、「スライムばかり倒していてもレベルは上がらない」と言い換えられるでしょうか。 ただ秀でているというところから、当に「天才」というレベルにまで人を

    あなたを次のレベルに押し上げる「集中的訓練」の方法
  • 最終回 「語りえぬこと」〜言語の限界〜とは:ITpro

    この連載も,いよいよ最終回となった。最後に,「論考」の結びの言葉である「語りえぬものについては沈黙せざるをえない」と,プログラミング言語の関係について考えてみたい。 プログラミング言語の限界が思考の限界だ エイダ(以下A):「私,あなたが言う『語りえぬものについては沈黙せざるをえない』の意味について,最近よく考えるんだけど,やっぱり分からないの」 ウィトゲンシュタイン(以下W):「プログラミング言語についてずいぶん説明してきたから,そろそろ分かってもらえると思っていたのだが……」 A:「もちろん,分かったこともたくさんあるわ」 W:「そう言ってくれるだけでも,嬉しいよ」 A:「これまでのあなたの説明で,私なりに理解してきたことを話すわ。まず日常の言語は,論理という観点に立つと曖昧だわ。だから,論理的に理想的な言語が必要なのよね?」 W:「ヤー(そうだよ)」 A:「それがプロ

  • 第11回 オブジェクトは現実世界の像だ - スキルアップの宝箱:ITpro

    前回,オブジェクトと変数について話をした。今回は,このテーマを補足する意味で,ウィトゲンシュタインの「像」という概念について説明する。 エイダ(以下A):「ねえ,この前の話の続きが聞きたいんだけど……」 ウィトゲンシュタイン(以下W):「何の話だったかな」 A:「オブジェクトと変数の関係について,今度話してくれるっていっていたじゃない」 W:「そうだったね」 A:「あなたは単純明快に“言語には関数と変数しかないんだ”と言ったわよね。じゃあオブジェクトは不要なの?」 W:「不要じゃないよ。僕の頭の中ではオブジェクトは変数なのさ」 A:「ああ,やっぱり分からない」 W:「分かりやすく例えてみよう。関数は部屋などの空間で,変数はその空間内のオブジェクト,つまり机とか椅子に対応するというわけさ」 A:「ふーん。あなたが考えている“関数”や“変数”は,けっこう大きな概念なのね」

  • 第10回 オブジェクトは変数だ - スキルアップの宝箱:ITpro

    プログラムを作るには,どんなプログラムを作るかという設計図が必要だ。この設計図のことを通常,「詳細仕様書」や「プログラム仕様書」と呼ぶ。プログラマは,それらの仕様書に従ってプログラムを作る。 仕様書には,大きく2つのことが書かれている。1つは,そのプログラムで扱うファイルやデータベース,画面や印刷物のレイアウトのような,入出力データの記述に関する仕様。もう1つが,ロジックと呼ばれるプログラムでの処理内容,つまり条件や処理の流れだ。 通常の事務系のプログラムでは,処理はそんなに難しくなく,どちらかというと,入出力データをどのように設計するかが重要となる。このデータ部分の記述が,「変数の定義」や「変数の宣言」と呼ばれるものである。 「変数」については,すでに説明した。今回は「対象」つまり「オブジェクト」にまで視野を広げて,「変数」の問題を扱ってみたい。 「変数」と「オブジェクト」や「ク

  • 第9回 プログラミングと実行 - スキルアップの宝箱:ITpro

    プログラミング言語で書かれたプログラムはコンパイルして機械語に変換したり,インタプリタによって解釈させたりして,実際にコンピュータ上で実行される。つまり,プログラミング言語は,プログラムを作成する時点と,プログラムを実行する時点の2つの状況がある。「そんなこと常識でしょ」と言われそうだが,ウィトゲンシュタインの「論考」では,この区別が結構,重要なものとして語られている。 「論考」に出てくる「示す」と「語る」という2つの表現。この区別を哲学的に理解しようとすると,かなり難解だ。しかし,先に挙げた「プログラミング」と「実行」という時点での違いを当てはめてみると,分かったような気になるから不思議だ。ウィトゲンシュタインは実はコンピュータを知っていたのではないか,と思いたくなる。 今回は,この「示す」と「語る」という違いを通して,プログラミングにおけるコンパイラやインタプリタの意味について考え

  • 第8回 プログラム命令の実行順序の制御 - スキルアップの宝箱:ITpro

    プログラムは命令の集まりだ。ただし,これらの実行順序を制御する必要がある。この実行順序の制御には,「順次」「選択」「繰り返し」という3種類しかない。 「順次」とは,命令が書かれた順に実行することで,実際には制御構造は存在しない。「選択」とは条件分岐のことで、“If-Then-Else”や“Case文”で表される。つまり,ウィトゲンシュタインの論理空間(デシジョンテーブル)における事態(ケース)が成立するかどうかで,実行される命令の種類を変えるものだ。「繰り返し」は「ループ」とも呼ばれ,通常はある条件を満たすまで,命令を繰り返し実行する。 プログラミング言語,ひいてはコンピュータの世界では,この単純な3つ,実際には2つの制御構造で事足りることが重要なのだ。 ここで,少し考えてみたい。日常言語の世界には,このような制御構造は存在しない。「ループ構造」を国語の授業で習うことはない。コンピュ

  • 第7回 ラッセルのパラドックスって何だ:ITpro

  • 第6回 関数とは何か? - スキルアップの宝箱:ITpro

    プログラミング言語のには,前回に説明した「変数」と関連して「関数」という言葉がたびたび登場する。今回は,この「関数」について考察しよう。 実はウィトゲンシュタインの著書「論考」にもたくさん,「関数」という言葉が出てくる。「論考」は哲学書とは思えないくらいに,数式だらけの数学の教科書のようなだ。「言語とは何か」を追求したウィトゲンシュタインは,「関数」を一体どんな風に解釈していたのだろうか。 エイダ(以下A):「ねえ,プログラミング言語を勉強していると『関数』という言葉がよく出てくるのだけど,これは数学の関数と同じものなの?」 ウィトゲンシュタイン(以下W):「ヤー(そうだよ)。数学で『f(x)=2x+1』などと書かれた関数と同じさ」 A:「そう。でも数学の関数がプログラミング言語とどう関係するのかしら…」 W:「この前『変数』の話をしただろう。“x”という変数は,関数“f(x)

  • 第5回 変数とは何か? - スキルアップの宝箱:ITpro

    プログラミング言語の勉強で,最初の関門となるのが「変数」だ。数式「y=2x+3」の「y」や「x」と同じだと言われても,どうもピンとこない。会社の先輩に「変数って何ですか?」と質問しても,「メモリー上の領域に付ける名前だよ」とか「そのうち慣れるよ」と言われるだけで,要領を得た回答はえられない。こんなとき,ウィトゲンシュタインだったら,どう説明するだろうか。 ウィトゲンシュタイン(以下W):「エイダ,Visual Basic(VB)の勉強は順調かい?」 エイダ(以下A):「それがね,変数のところでギブアップしてるのよ。私,数学は得意なんだけど,VBの変数については,どうもしっくりこないわ」 W:「数式の変数もプログラミング言語の変数も基的には同じだよ」 A:「そうなんでしょうけど……」 W:「じゃあ,こんな例で考えてみないか。『アリストテレスは哲学者である』という文章,つまり命題がある。この

  • 第4回 人間は“AND”“OR”“NOT”で考える機械!?:ITpro

    第4回 人間は“AND”“OR”“NOT”で考える機械!? ウィトゲンシュタインに学ぶプログラミング言語の質 記事一覧へ >> プログラミング言語は,条件判断をするための命題(ステートメント)と,その条件に従ってコンピュータにアクションを要求する命令文(コマンド)の集まりである。この条件判断(IF-THEN-ELSE)には,論理演算子と呼ばれる“AND”“OR”“NOT”が使われる。今回は,この論理演算子について考えてみる。 エイダ(以下A):「最近,おかしなことが気になり出して,不眠症なの」 ウィトゲンシュタイン(以下W):「それは困ったね。一体,何が気になっているというのかい?」 A:「実は毎年この時期になると,郊外にある別荘に紅葉のスケッチに出かけているんだけど,去年まで近くにあったイチョウ並木が,開発でなくなっていたの。とってもショックだったので,なくなったことを絵で表現した

  • 第3回 プログラミング言語には疑問文がない:ITpro

  • 第2回 ウィトゲンシュタインはデシジョンテーブルの発明者:ITpro

    前回,プログラミング言語は,私たちが日常使用している言語を単純化したものだと書いた。そして,このプログラミング言語の必要性を主張しているのがウィトゲンシュタインなのだ。 今回は,プログラミング言語の根底となる考え方である「論理空間」について考えてみることにする。「論理空間」というと,取っつきにくく聞こえるかもしれないが,別に難しいことを言っているわけではない。 (ウィトゲンシュタインとエイダについては末尾に紹介) エイダ(以下A):「コンピュータは0と1でできているのよね?」 ウィトゲンシュタイン(以下W):「ヤー(そうだよ)」 A:「それってつまり,ONかOFF,YESかNOってことかしら?」 W:「ヤー。つまり真か偽,TRUEかFALSEという二分岐を膨大に組み合わせたものがコンピュータなのさ」 A:「でも,それはコンピュータの世界のことで,私たちが住んでいるこの世界とは無関係でしょう

  • 第1回 ウィトゲンシュタインとの対話:ITpro

    ソフトウエア開発とは,究極的にはプログラミング言語によるコーディング作業である。世の中にはVisual Basic,C++JavaCOBOL,FORTRANなど,数え切れない種類のプログラミング言語がある。これらの言語はそれぞれ少しずつ書き方も文法も違っており,複数の言語を覚えるのは結構大変である。 ところで,プログラミング言語とは一体何なのか考えたことがあるだろうか。多くの人は,「コンピュータのプロになるにはプログラミング言語を覚える必要がある」というだけの理由で言語を習得しているのではないかと思う。だがITプロフェッショナルはそれでは済まされない。 知識を定着させる,短期間で知識を習得するコツは,その質を理解することである。プログラミング言語の質が理解できると,たいていのプログラミング言語はすぐに理解できる。 「論理哲学論考」(通称「論考」)という哲学のを知っているだろうか。

  • 最終回 アリストテレス先生,さようなら - ITプロフェッショナル・コラム:ITpro

    アリストテレスはこの世の中を「実体」という概念を使ってモデル化しようとした。この考え方はオブジェクト指向の発想に類似していることは,第1回目に紹介したとおりだ。この連載も今回で終わり。そこで今までアリストテレス先生との問答で理解したことを以下にまとめる。 <オブジェクトと実体>・・・(詳しくは第1,2回参照) ●オブジェクト指向でいう「オブジェクト」はアリストテレスのいう「実体」に対応する。「実体」には2種類ある。オブジェクト指向では「インスタンス」の集合を「クラス」と呼ぶ。これはアリストテレスの「第一実体」と「第二実体」に対応する。 ●「実体」である「オブジェクト」は,第一実体であるインスタンス(個としての実体,例えば『アリストテレス』)と第二実体であるクラス(集合としての実体,例えば『人間』)から構成される。 ●リレーショナル・データベースの「エンティティ」も「実体」である。テーブルに

    WhatAmILookingFor
    WhatAmILookingFor 2011/07/10
    オブジェクト指向についての良記事
  • 第7回 “カプセル化”は自然の摂理 - ITプロフェッショナル・コラム:ITpro

    オブジェクト指向では住所や氏名などのデータの部分を「属性」,そして住所や氏名などの情報を取り出す操作(処理手続き)部分を「メソッド」または「操作」と呼ぶ。メソッドはデータを操作し,アクセスする手段である。このメソッドを呼び出して使用するために,オブジェクト間でやりとりするのが「メッセージ」である。 オブジェクト指向が登場する以前においては,データと処理手続きはそれぞれ独立して設計され扱われていた。だがオブジェクト指向では,このデータと処理手続きをまとめて取り扱う。このことを「カプセル化」と呼ぶ。今回は,この「カプセル化」の考え方について,アリストテレス先生に聞いてみたい。 (アリストテレスの経歴と業績などについては,末尾に詳しく紹介) <問答> 筆者(以下筆):「先生,オブジェクト指向の特徴の1つに,“カプセル化”という考え方があるのですが,これがまた難解なのです」 アリストテレス(以下ア

  • 第6回 メソッドは2種類に集約できる - ITプロフェッショナル・コラム:ITpro

    オブジェクト指向では,オブジェクト(クラス)を定義するとき,属性(データ)とともに「メソッド」を記述する。メソッドは,あるオブジェクトから別のオブジェクトに働きかけて,属性にアクセスしたり何らかの操作を行うための手段になる。いわばオブジェクト同士のつなぎの役割を果たす。 今回は,メソッドについてアリストテレス先生に解説してもらうことにしよう。 (アリストテレスの経歴と業績などについては,末尾に詳しく紹介) <問答> 筆者(以下筆):「先生,これまでオブジェクトの属性について,いろいろと伺ってきました。しかし,オブジェクトを操作するには『メソッド』が必要です。このメソッドについてどう考えればよいのか,先生のご意見をお聞きしたいのですが……」 アリストテレス(以下ア):「メソッドについては,既に説明しているはずなんじゃが」 筆:「え,当ですか?」 ア:「0のカテゴリーについて話したとき,『能

  • 第5回 トピカとオブジェクト指向 - ITプロフェッショナル・コラム:ITpro

    前回,「トピカ」というの中に特性や類の見分け方などが書かれていると述べた。アリストテレスの論理学は通常「オルガノン」と総称されるいくつかの書物から構成されている。この「オルガノン」というグループの中に「トピカ(英語ではトピック)」がある。「トピカ」は弁論の場において,どのように論理を展開したらいいのかという観点から書かれた実践書である。この「トピカ」の中には,337個の「トポス(場,トポロジーの類語)」が収録されている。そこで今回は,このトピカについて,もう少し補足することにする。オブジェクト指向とどう関係があるのか,アリストテレス先生に聞いてみたい。 (アリストテレスの経歴と業績などについては,末尾に詳しく紹介) <問答> 筆者(以下筆):「先生,『トピカ』というすごいがあると,この前お聞きしたのですが」 アリストテレス(以下ア):「ああそうじゃったな。これがトピカじゃよ」 筆:「

  • 第4回 「継承」って何? - ITプロフェッショナル・コラム:ITpro

    オブジェクト指向における考え方の1つである「継承」を,一度は聞いたことがあるだろう。何となく意味はわかっても,どうもなじみにくい言葉だ。しかしこの考え方を理解しなければ,オブジェクト指向を自分のものにすることはできない。ここは一つ,アリストテレス先生に伺って,「継承」とは何かをすっきり整理しよう。 (アリストテレスの経歴と業績などについては,末尾に詳しく紹介) <問答> 筆者(以下筆):「「先生,また質問があるんです。オブジェクト指向には『継承』という考え方があるのですが,これはどう捉えたらいいのでしょうか?」 アリストテレス(以下ア):「継承? 話し言葉や書き言葉で使う“継承”の意味ならわしも知っているが……。ふむ,ソフトウェアの世界では妙な言葉を使うんじゃな」 筆:「そうなんですよ。どうもピンとこないのです。たとえば長椅子というクラスは椅子という親のクラスの性質を継承できるという風に説

  • 第2回 似て非なる言葉「オブジェクト」と「エンティティ」の関係 - ITプロフェッショナル・コラム:ITpro

    「オブジェクト」と似て非なる言葉に「エンティティ」がある。リレーショナル・データベース設計で使用されるER図(エンティティ・リレーションシップ・ダイアグラム)の「エンティティ」だ。だが「エンティティ」という言葉は,オブジェクト指向のにも登場する。それが「エンティティ・クラス」という言葉だ。また,UML(Unified Modeling Language)という表記法が登場するまでは,オブジェクト指向分析・設計においてもクラス図の代わりにER図が使用されていたことがある。 それと同様に,いくら説明を聞いても釈然としないのが,リレーショナル・データベースとオブジェクト・データベースの違いだ。それらの違いを概念から探り,整理していく必要がありそうだ。 今回は「オブジェクト」と「エンティティ」の概念の違いについて,アリストテレス先生に聞いてみたい。 (アリストテレスの経歴と業績などについては,末

  • 掃除屋歴7年の俺がしつこい汚れの落し方を教えるよ - 床のトルストイ、ゲイとするとのこと

    (2009/12/31 追記あり) 学生時代にホームクリーニングのバイトを7年間やっていたので、大抵の汚れなら落し方分かります。このあいだ #pandacleaning というハッシュタグで掃除の仕方を淡々とつぶやいていたら評判がよかったので、ここらでまとめておくよ。 参考: mirakui によるパンダ掃除相談室 #pandacleaning - Togetter 掃除のために絶対に用意しなければならないもの 雑巾 すべての掃除に雑巾は必須です。雑巾はいくらあってもいいです。買ってくる必要はなくて、ボロくなったタオルを使うと良いです。縫ったりする必要はないです。ちなみに、プロの間では、上級者ほど雑巾の使い方がうまいです。雑巾が汚れる→交換する→時間のロス につながるので、ベテランの職人ほど一枚の雑巾で沢山の汚れを見事に拭き取ります。 バケツ 雑巾とバケツは常にセットです。バケツなしに水拭

    掃除屋歴7年の俺がしつこい汚れの落し方を教えるよ - 床のトルストイ、ゲイとするとのこと
  • Tomcat 7も対応したServlet 3.0の6つの主な変更点

    実装する仕様は、以下のバージョンにアップデートされました。 Servlet 2.5⇒Servlet 3.0 JSP 2.1⇒JSP 2.2 EL 2.1⇒EL 2.2 連載では3回の連載を通して、Tomcatの最新メジャーバージョンであるTomcat 7について説明します。第1回目と第2回目でServlet 3.0を紹介し、第3回目でTomcat独自の新機能を紹介する予定です。 Servlet 3.0における6つの主な変更点 第1回目となる今回は、Tomcat 7が実装したServlet 3.0について説明します。Servlet 3.0とはJSR-315のことを指します。Tomcatは、このJSR-315仕様を実装しています。 Servlet 3.0では、Servlet 2.5に対して主に、次のような仕様変更を導入しました。 Ease of Development(EoD、開発容易性)

    Tomcat 7も対応したServlet 3.0の6つの主な変更点
  • 人生は出逢った言葉の質と量で決まる!死ぬまで仕事に困らないために20代で出逢っておきたい100の言葉 | ブクペ

    まえがき『人生は出逢った言葉の質と量で決まる!』 これがコンサルタントとして数々の著名ビジネスパーソンと対話をしてきた著者の下した結論である。 著者は大学時代に一万冊の書籍を読破。書籍に書いてあったことを実世界で実践してきた。 人間は自分が発している言葉どおりの人生を歩んでいる。 特に20代のうちは良い言葉との出会いを増やしておくことが重要。 良い言葉と出会うためにできることは2つ。「人と会うこと」と「読書」である。 以下、特に印象に残ったところを一部抜粋させていただく。 ・99%の人は準備だけで人生を終えてしまう。 準備不足で失敗するのではなくて、準備ばかりして挑戦しないから何も成し遂げられない。 ・親や学校の先生が、反対するほうを選んでおけば、たいてい間違いない。 それが正解かどうかよりも、当に自分が好きな方を選んだかどうかのほうが大切。 ・周囲の顰蹙を買ったら、チャンス。 昔ながら

    人生は出逢った言葉の質と量で決まる!死ぬまで仕事に困らないために20代で出逢っておきたい100の言葉 | ブクペ