スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Google上位表示 64の原則 藤井慎二郎




最近、このブログのアクセス数が急激に増えてきているので、
何でだろう?とアクセス解析結果を調べてみたところ、


なんと、Googleの検索結果によるアクセスが1日に40単語以上
来ているのが分かりました。今までの倍です。


最近、相互紹介や相互リンクをやっていたので、その影響もあるかと思いますが、
アクセスアップのメインは検索上位表示された結果のようです。


主にやったことと言えば、SEOの内部リンクです。
↓これ。


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/




さて、検索結果に関連した内容で、Google上位表示64の法則 という本を読んでみました。


ブログ運営者としては実に興味深い本です。いわゆるSEO対策本ですね。


サイトには全て検索順位があります。


たとえばGoogleの検索窓で「クリスマス」と検索すると、
Googleがクリスマスに最適なサイトをランク付けして、
1位から数百、数万件を順位付けして表示しているわけです。


1位になるメリットは非常に大きいです。
Google検索した結果で、たいていの人は1位のサイトをクリックしますから。


ブログやHPのGoogle検索順位を上げる方法として、この本を読んでみました。


今まで、こういうことをしたら検索上位表示が可能だろう。
という本は世の中にたくさんあり、今までに5冊以上は読んできました。


内心はそれぞれのSEO対策について本当にそう言い切れるのかな?
たぶん、これは効果あるけど、実際のところどうだろう?
SEO対策の中でどれが一番効果があるのかな?


という疑問がまったく消えませんでした。


この本は、「検索上位に表示するためにはこれをしたらどうなるだろう」
というものを合計64件について仮説を立て、
実際に検証したSEOに対する、おそらく初めての統計本です。


データマイニングという統計手法を用いているので本格的で、
少なくとも証拠を載せずに、こうだろうと書いてある本よりは信頼できます。


効果について星の数で表現されていて、とても分かりやすい本になっています。


効果あるもの、無いもの色々ですが、効果無いものは無視して、
星の数が最大の 一番効果あるものから一部をピックアップして紹介します。



ページランクが高いと上位表示されやすい
ページランクというものを簡単に説明します。Googleはウェブページ重要度を
表現する方法として、ページランクというものを採用しています。


これは、Google創始者であり、ページランクの発明者であるラリー・ペイジのペイジの
名前を文字っているのですが、 Google創設の際に商標や特許でライセンス登録済みです


下の図に示すとおり、他のウェブページからの人気投票みたいなものと考えてもらって良いです。


リンクされたサイトのページランクが高いほどページランクは上がりやすく、
また、被リンクの数が多ければ多いほど自分のサイトのページランクは上がりやすくなります。


 


内心これは当然だろうという気持ちがあったので納得です。
唯一SEOとして目に見える指標といえます。


本書ではページランク3の「普通のサイト」を目指すことを推奨しています。
ちなみに、読書一覧ブログは様々なSEO対策の効果もあってか、
作成から短期間でページランク3になることができています。



Webサイトの重要度は「ドメイン年齢」で判断される
ドメイン年齢というのは、ドメインを取得してからの経過時間を表します。


結論から言うと、3500日~4000日(約10年~11年)を境にgoogleの
ドメイン評価基準が上がるようです。


SEO対策にはできることとできないことがあり、
このドメイン年齢に関しては「できないこと」の部類に入ると思います。


たとえば、ビールという検索ワードで上位表示しようとしても
ドメイン年齢がかなり古いと推測される大手ビールメーカーを
押しのけて一位になるのは、まず不可能と考えてよいです。


中小企業であれば、ドメイン年齢が古くてもページランクが3とか低い
サイトはたくさんあるので、まだSEOで戦って勝てるかなという感じです。



Googleは画像よりもテキストを重視している
これもSEOを勉強されている方にとっては、当然ですね。
でも実際にデータ取得して、結論付けられているので確信が持てます。


画像にalt属性をつけて、「この画像はこういう画像だよ」と文字で説明する
方法もありますが、alt属性についても多少なりとも効果はあると書いてありました。


alt属性とは、例えばこういったものです。
< img src="image/sample.gif" alt="画像の説明文" >


やはり、上位表示を目指すなら画像だけのサイトよりは文字がたくさんある
サイトにした方がよさそうです。



関連キーワードを多く含むコンテンツを作るとよい
SEO対策では、あるキーワードで上位表示することを決めて
それに対してSEO対策を施すわけですが、


たとえば、「アイス」というキーワードだったとして、本文中に
「アイス」という単語を散りばめるのはSEO対策としてよい方法として紹介されていました。


同じキーワードではなく、「アイス」であれば、「冷たい」、「甘い」、「白熊」
というのが関連キーワードになります。


こういった関連キーワードをさりげなく散りばめることがSEO対策に都合が良いのです。


本書でも紹介がありましたが、

あるキーワードを入れたら、自動でそれに関連するキーワードを
創り出すユニークな無料ツールがあるので紹介します。

連想検索エンジンReflexa(リフレクサ)です。
http://labs.preferred.jp/reflexa/


Amazonで探す
Google上位表示


楽天で探す
Google上位表示64の法則 藤井慎二郎


この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



スポンサーサイト

Facebook世界を征するソーシャルプラットフォーム 山脇伸介




フェイスブックの語源
フェイスブックという言葉は、アメリカの大学では学生名鑑のことを指しているそうです。
顔写真がたくさんならんでいるものです。まさに、顔の本というもの。


SNSを本気で作るのは楽でない
2003年~2004年はフェイスブック以外にも多数のSNSが流行っていた。
SNSの業界は無料で参入できるからリスク無しでできると思っていたが、
実際は急成長によって、その組織構造を急激に大きくする必要が出てくる。

たとえば、サーバー数などがこれにあたるが、会員数が増えてきた場合、
これに見合ったサーバーを作らない場合はアクセスが遅くなり会員数が激減する。


その点、フェイスブックは困難を乗り越えてきたわけだが、
そのほかにも、フェイスブックは以下の点で優位に立って生き残ることができたという。

フェイスブックのSNSとしての優位点
  1. リアル
  2. クール
  3. ムーブファスト


リアルとは?
現実のこと。フェイスブックは基本的には本人の顔写真を載せており、
実名で登録してある。これによって、SNS=仮想現実という考えを崩した。
リアル生活の充実、それそこがフェイスブックの凄さの一つと言える。


クールとは?
トップページのデザインやロゴが洗練されていて、広告が少ないということ。
多くのSNSはコンテンツマッチ型の広告が目立ちすぎていて景観を損なっている。


ムーブファストとは?
SNSなどのインターネットの業界では、特に早い決断と行動が求められる。
マーク・ザッカバーグは天才的プログラマーであるが、それと同時に強いリーダーシップを
発揮して先手先手で開発を進めたからこそ、大成功することができたという。


フェイスブックの広告の凄さ
グーグルは検索結果や購入した商品をもとに、この人はこういう広告が好きだろうといって
広告を表示している。いわゆるインタレストマッチ型の広告と呼ばれるものです。

しかし、このインタレストマッチ型の広告は、コンピューターが自動的にこの人はこの広告が
いいだろうといって表示している訳なので、その人のニーズを完璧に捕らえている訳ではない。

それに対して、フェイスブックはリアルな情報がたくさんあり、それを元に広告を出している。
googleが検索結果や購入品を元に広告を出しているのに対して、フェイスブックはその人は
どんな人で、どんなことが好きで、どういう人と交流があるか?という情報から広告を出している。


マーク・ザッカーバーグの予言
フェイスブックの創始者マーク・ザッカーバーグは
これから5年以内に、ほとんどの産業はソーシャル化するだろう」と言っています。

ソーシャル化した世界とは、すべての行動に人と人とのコミュニケーション取りつつ、
あらゆる行為が行われるということ。

たとえば、セールスの世界ではAIDMAの法則というものがあるが、
人が物を買うまでの順序としてA(注意)→I(関心)→D(欲求)→M(記憶)→A(行動)
であった。

しかし、ソーシャル化した世界におけるセールスは次のようになるという。
それがAISAS。A(注意)→I(関心)→S(検索)→A(行動)→S(共有)

Amazonで探す
Facebook世界を征するソーシャルプラットフォーム 山脇伸介

楽天で探す
Facebook 世界を征するソーシャルプラットフォーム 山脇伸介


この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



「どこでもオフィス」仕事術 中谷健一




集中の法則
仕事の内容や身体のサイクルに応じて働く場所を意図的に変えることができれば、より快適により効率的に仕事ができる。場所としては、オフィス、カフェ、自宅、電車、新幹線、机の無い場所では太ももの上にPCを置いて作業できる。

ノマドワーキングを実践するための環境整備
  1. 基本ツールをそろえる
  2. オフィス環境を整える
  3. デジタル管理を行う

ノマドワーキングの基本ツール
  1. ノートPC (軽くて丈夫でバッテリーの持ちがいいレッツノートがお勧め)
  2. スマートフォン
  3. ノート

外出時の便利グッズ
ネット上に上げれば、どこでも仕事ができる。ドロップボックスやシュガーシンクなど。

PCの盗難防止
トイレなどで席を離れる場合は、PCにケンジントンロックなどを持ち歩き、PCをテーブルや椅子につないで盗難防止する。

どこでもプリントアウト
セブンイレブンの店舗が近くにあれば、どこでもプリントアウトが可能。A4サイズなら白黒1枚20円、カラー60円。ミニストップも同様のサービスを行っている。ローソンはUSBメモリやSDカードから印刷可能。

アナログからデジタル化
紙のメモをデジタル化するにはスキャンスナップを利用する。


「どこでもオフィス」仕事術 中谷健一をAmazonで探す!


この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



ピープルウェア トム・デマルコ




本書はプログラミングを作成する側、つまりプログラマーについて書かれた本。どちらかというとプログラマーの為のマネジメントに関する本と言ってもいい。人材の大切さと、プログラミング作成環境について述べられている。

以下、抜粋しながら紹介する。

管理者の大部分は人は交換可能な部品として扱う失敗をしがちだ。

「実際のところ、ソフトウェア開発上の問題の多くは、技術的というより社会学的なものである」
管理者のほとんどは、技術面よりも人に気を配っていると思い込んでいるが、本当にそうしている管理者は滅多にいない。

仕事の納期と質
「早くヤレとせかされれば、雑な仕事をするだけで、質の高い仕事はしない。」仕事を早くするには、、製品の品質と仕事の満足間を犠牲にせざるを得ない。確かに、あせってプログラミングしてもミスを見落としてしまったり、精神的に追い詰められてしまう。プログラマに質の高い仕事を依頼する場合は、むやみにあせらすものではないかもしれない。

品質と生産性
「エンドユーザーの要求をはるかに超えた品質水準は、生産性を上げるひとつの方法である。」これは、一見すると矛盾に思えるが、日本のソフトウェア事情について優れた解説者である、田島、松原の論文の一説を紹介する。「価格と品質はトレードオフの関係にあるという考えは、日本には存在しない。反対に、高品質がコスト低減をもたらすという考えが広く受け入れられている。これは、外国人にはない日本人特有の国民性と言える。

プログラマーの環境
「プログラマーは知的な作業者であり、脳ミソを振り絞って仕事に打ち込もうとするたびに、オフィスの騒音・雑音に悩まされ、精神集中が乱される哀れな犠牲者なのだ。」プログラマーは電話がなったり、声をかけられただけでそれまでに考えていた内容を一生懸命思い出そうとして生産性を下げている。逆に、こういったものを排除できれば、生産性をあげることができる。

プログラマーの生産性との相関
プログラミングコンテストを行った結果、生産性と不快関係にあると従来思われていた以下の要因は、実は全く無関係か、あるいは、ほとんど関係ないということであった。
  1. プログラミング言語
  2. 経験年数
  3. 残存不良数
  4. 年収
逆に、意外な要因がプログラミングの生産性と相関があったという。それは、誰とチームを組んでいるか。である。つまり、同じ企業の風土で働いている人は同じ生産性を持つことが分かった。それゆえ、会社の環境というものがいかに大事かということが分かる。

「企業におけるプログラマーの能力差は10倍であるといわれている。しかし、企業事態の生産性も10倍の開きがある」
『ソフトウェアの生産性』ハーラン・ミルズ


E係数
オフィス環境の善し悪しが精神集中時間と密接に関係する。割り込みなしの環境を計測すると、オフィス環境の善し悪しを示す意味のあるものが出てくる。それが環境係数(E係数)である。

E係数=割り込みなしの時間数/机の上に座っていた時間

チーム殺しの戦略
プログラマのチーム育成とは逆に、チームを殺したいなら以下のことをすればよい。
  • 自己防衛的な管理
部下を信頼せずに、プロジェクトの成功を保証しようとして自己防衛的手段をとること。信頼しないことは、部下の生産性を低下させ、チームの結束する芽をもつぶしてしまう。
  • 官僚主義
頭の使わないドキュメント作成を重要視すること。
  • 作業場所の分散
電話すればコミュニケーション図れるだろうと言って、同じメンバーなのに別の建物に移したりすること。
  • 時間の分析
4人で4つのプロジェクトを行うと生産性があがらない。一人に一つの仕事を割り当てることが、チームに結束を与える機会を与える。
  • 品質低減製品
品質の低いものを出すことは、プログラマの自尊心を傷つけ、楽しみを奪ってしまう。

  • さばを読んだ納期
上の品質低減製品とからむ話だが、短納期にすれば、品質が下がり、結果としてプログラマのモチベーションも下げてしまう。

  • チーム解体の方針

素人の人事部によりチームを解体させられると、メンバーの相互作用がなくなり良い製品が生まれなくなる。


続、チーム殺しの戦略
過度の競争はチームをばらばらにする。それは、仲間同士のコーチングを阻害するため。そのほかにも、不平等な評価などはチームの結束を脅かす。
  • 年次の給与または功績の見直し
  • 目標管理
  • 大きな功績を成し遂げた特定の従業員の表彰
  • 功績と結びついた表彰、賞、ボーナス
  • あらゆる形態の成果の評価

チーム形成のための戦略的要素
  • 品質至上主義を作り出す
  • 満足感を与える打ち上げをたくさん用意する
  • エリート感覚を醸成する
  • チームに異分子を混ぜることを奨励する
  • 成功チームを解散させないで保護する
  • 戦術ではなく戦略を与える

退職のリスク
退職すれば、同じ能力のプログラマを入れればいい。では済まされない。新しく採用されたプログラマは、同じ能力であったとしても、少なくとも6ヶ月はまともに生産性を上げることができない。その間の生産性低下を見込んだ上で、大事に人材を育てる必要がある。


ピープルウェア トム・デマルコをAmazonで探す!



この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



知らないと恥をかくプログラミングの常識 日向俊二




プログラムの構造化
特定のまとまった機能を持つプログラムコードをサブルーチンにしたり、それを利用してプログラムを組み立てること。

プログラムの構造化の利点
  • 分離した特定の機能のロジックだけをプログラム全体と切り離して検討が可能。
  • 特定の機能を繰り返して何度でも利用できる。
  • プログラム全体の流れがわかりやすい。

プログラミング言語と特徴
プログラミング言語にはさまざまな種類があり、どれが良い悪いと一概に決めることはできない。それは、どんな自動車が移動するのに最適化というのと同じことで、バスなら運転せずに本を読んだりできるし、自家用車なら好きな場所に寄り道したりもできる、タクシーなら最短時間で移動できるなどです。

プログラミング言語とその特徴を以下に示す。

  • C言語

プログラミング言語の中で比較的歴史のある言語で、オブジェクト指向の要素がまったくない手続き型言語ですが、そのために習得が良いで、複雑な構成でないプログラム要素の実装を詳しく検討するときなどに適している。

  • C++
オブジェクト指向プログラミング言語として普及している言語ですが、もともとはC言語に対してオブジェクト指向の要素を取り込んでいったもの。C++ではC言語のソースコードをほとんどそのまま利用できる。大規模なプログラム開発に向いている。
  • C#
オブジェクト指向プログラミング言語の特徴を最大限に引き出せるように、ゼロから作られたプログラミング言語。熟練したプログラマがより使いやすいように配慮されている。
  • FORTRAN
高水準言語として20世紀中ごろに開発された最も歴史のある言語。科学技術計算用に開発されたプログラミング言語で、スーパーコンピュータでのプログラミング言語としてよく使われる。
  • Java
JavaはJava仮想マシンというソフトウェア上で実行され、プラットフォームに依存しないアプリケーションソフトウェアを開発できる言語として登場した。JavaをコンパイルしたJavaバイナリファイルはOSに依存せず実行できる。Javaも構造化プログラミング言語として設計されており、熟練したプログラマがより使いやすいよう配慮されている。
  • BASIC
オブジェクト指向の要素をまったく含まない、手続き型プログラミング言語として登場した。フォームにコントロールを配置することでウインドウをデザインすることができるように改良されたものがVisual Basic。Visual Basicは本質的にはオブジェクト指向プログラミング言語だが初心者のプログラマ向けの配慮も随所にある。


専門のプログラマとして活躍したいのであれば、C言語、C++、C#、Javaのいずれかふたつ以上はマスターしておきたいもの。

オブジェクト指向とは?
オブジェクト指向プログラミングでは、ほとんどのものをオブジェクトとして扱います。たとえば、ウインドウやボタン、メニューやツールバーといったもの。そういった「もの(オブジェクト)」を抽象的に扱うことでプログラミングを作成することができるプログラマにとってやさしい技術。

オブジェクト指向プログラミングで使われる用語

  • オブジェクト:ほとんどすべてを「もの」として扱う対象。
  • クラス:オブジェクトが属するもの。たとえばウインドウクラスならウインドウに関するオブジェクトが属するもの。
  • インスタンス:クラスの中にある具体的な「もの(オブジェクト)」のこと。
  • プロパティ:オブジェクトの属性(オブジェクトに属する特性) たとえば、オブジェクト.プロパティ(なんらかの特性)=○
  • メソッド:オブジェクトを操作したり状態を変えたりする一連のプログラムコード。たとえば、オブジェクト.メソッド(操作や動作の命令)
  • イベント:ウインドウシステムが認識する出来事のこと。たとえば、「ユーザーがボタンをクリックした」など。
  • 継承:あるクラスから派生したクラスが、元のクラスが持つ特性や動作を引き継ぐこと。

変数名、関数名の名前のつけ方
  • 名前には英数字の文字を使う
  • 名前の先頭は数字にしない
  • 言語のキーワードやOSのコマンド名と同じ名前は使えない
  • 名前の途中に空白を入れることはできない
  • 単純な整数変数にはi,j,k,l,m,nを使う。(FORTRANの暗黙の型宣言と呼ばれるルールから継承)
  • 変数の先頭は小文字
  • オブジェクト指向プログラミングでは、クラス名の先頭は大文字、オブジェクト名の先頭は小文字
  • 日本語名は使わない(日本人以外が読む場合、非常に困難になる)
  • ローマ字の名前を使わない。たとえば、goukei(合計)など。変数名かサブルーチンかわからなくなる。

グローバル変数
グローバル変数は原則使わなくて済むならば使わない方がいい。

スマートな(短い)コードがかならずしも最適ではない。何をやろうとしているか誰しもすぐに分かり、誤りを犯しにくいコードが最良と言える。

プログラミングの実行速度は速ければいいものではない。速いほどメモリ消費が激しいので、パソコンのスペックとの兼ね合いになる。また、ユーザーのマシンはプログラマほど速くはないことを頭に入れてユーザ目線のプログラミングを行うべき。

究極のデバッグ技法
究極のデバッグはバグを起こさないコードを書くということ。プログラムを設計する段階からバグの出ないコードを考えることが大事。それでもバグが発生したら、①症状の把握、②バグの発生場所の特定、③バグの修正の順にデバッグを行う。

例外の処理
例外とはファイルを開く場合にファイルが存在しない場合などでプログラミングが停止すること。例外の処理原則は二つ。①例外はすべて処理する。②例外は階層の下から順に処理する。です。オブジェクト指向プログラミングにおいては、例外クラスは階層構造になっていて、階層の上のほうの例外を先にキャッチしてしまうと、階層の下の方の派生クラスのcatchブロックは実行されません。つまり、取り逃ししてしまう。

プログラムの学習方法
プログラムの学習方法は体系的学習(本を読んで学ぶ)と実践的学習(実際にプログラムを組んで学習)を併用しながら、経験を重ねながら学習していく。まずは、単純なプログラムを実際に書いてみて、動かせて見ること。つまり、第一歩は実践的学習からのアプローチが有効。


知らないと恥をかくプログラミングの常識 日向俊二をAmazonで探す!


この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



iPhone情報整理術 堀正岳ほか著


【送料無料】iPhone情報整理術 [ 堀正岳 ]

iPhoneは音楽データ以外にありとあらゆる情報を入れておく使い方を薦めている。写真、メール、カレンダー情報はもちろん仕事で利用するPDFファイル、word/excelファイル、プレゼンテーションファイルの動画、オーディオブック、ありとあらゆる情報を詰め込むことが可能です。

また、今までの携帯電話では実現できなかったが、iPhoneをクラウドと組み合わせて使うことにより、保存容量が非常に大きく、いつでも情報が取り出せるといった使い方ができるようになります。

以下、本文の抜粋です。

書類が捨てられないのは、書類を見ないと忘れてしまいそうな何かを思い出すために捨てられない。「整理」とは書類をどこかに保管することではなく、どうやったら安心して捨てられるようにできるかを考えること。

iPhoneでクラウド・オフィスをつくることは、整理不要な無限の空間を生み出しているのに等しいのです。

ScanSnap


ScanSnapとは紙の束をまるごとスキャンしてPDFにしてくれるスキャナー。PDFファイル化すれば、検索機能が使えるようになり、欲しい情報を即座に取り出すことができる。名刺やカードの情報をiPhoneに保存することができる。

以下のステップで、全ての名刺データを画像データとしてiPhoneに取り込み、連絡リストとして整理することができる。
1.名刺を受け取る
2.ScanSnapなどでデジタルデータ化する
3.iPhoneをパソコンにつなぐ

Dropbox
会社や家庭など複数のパソコンを使う際、同じファイルを他のパソコンでも見たり編集したい場合が多々あると思います。その問題点を解決してくれるのがDropboxです。2GBまでは無料、年99ドルで50GBまで増やせます。

Dropboxの利点
1.同一アカウントを持っていれば、複数台のパソコンのフォルダ内容を同一の状態に保つことができる。
2.Dropboxユーザ同士であればファイル共有が非常に容易
3.ファイルを間違って上書きしても、すぐに元に戻せる

iPhone+Dropboxという組み合わせを使えば、「超」整理法で整理していた資料を、ポケットサイズに収めてしまうことが可能です。

100GBのiPhone
iPhoneのメモリ(iPhone3GSで最大32GB)+MobileMe(20GB)+Dropbox(50GB)。ネットワークストレージを活用すれば、あたかも100GBのデータを持つiPhoneとして使うことが可能です。

Good Reader
大容量のPDFファイルの閲覧に特化したアプリケーション。Good Readerがあれば画像がたくさんあるPDFでも難無く見ることが可能。

iPhoneで整理上手
iPhoneのカメラ機能で机の引き出しや本棚の最も整理されている状態を撮影して、いつでも見ることができるようにしておけば、手早くもとの状態に片付けることが可能。

GTD(Getting Things Done)
アメリカの企業コンサルタントDavid Allen氏によって考案されたタスク管理法。詳細は『ストレスフリーの整理術』参照。



時間とタスクの両方を同時に管理する必要がある人には、GTDの考え方を取り入れると良い。
GTDを実行するには、OmniFocusというアプリを使うと良い。コンテキスト・ビュー(場所によってTODOを管理する)に優れている。

タスク管理アプリ
・Remember The Milk(スピード感を重視した設計)
・Toodledo
・Appigo Todo(万能Todoリスト)

iPhoneで録音
録音を使いこなすメリットは多い。たとえば、次のような場面で録音機として使うとよい。
・アイデアメモ
・インタビューの録音
・会議などの議事録
・書籍メモ(本の内容をブログに投稿したい場合など)


ポケット文庫SkyBook
iPhone用の電子書籍リーダー。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



ソフトウェア開発の名著を読む【第二版】 柴田芳樹著




本書ではソフトウェア開発の不朽の名著10冊を紹介している。

1~4 ソフトウェアは人が開発するという事実を直視している本。
5~6 ソフトウェアエンジニアとしてどのように取り組むべきかが書かれている本。
7~10 読みやすいコードを書く方法が書かれた本。

以下、気になった内容を抜粋した。

1.『プログラミングの心理学』ジュラルド・M・ワインバーグ著

プログラミングを読むことの重要性について次のように述べている。
「ものの書き方を学ぶための一つの方法は書いてみることだが、それ以外にもう一つ、どういう種類の書き物についても、読んでみるという手法がある。」

ひどいプログラムを書く人について次のようにもコメントしています。
「それにしてもプログラム開発者は、自分の作品を他人にレビューしてもらったり、他人の仕事をレビューすることによって自分の技量を高めようと考えたりすることに対して、なぜあれほどの抵抗をかんじるのだろう。面白いことに、すぐれた開発者ほどウォークスルーやインスペクションに価値を見出し、そうでない開発者は価値を見出さないものだ。だから、いつものことだが、すぐれた人々はますます腕を磨き、駄目な連中はますます駄目になってくのだ。」



2.『人月の神話』フレデリック・P・ブルックス著

ソフトウェアの世界では、開発工数を「人月」で見積もることが従来から行われてきましたし、現在も広く行われていると思います。

本書の内容が時代遅れにならない理由を以下のように述べている。
「「人月の神話」は、人とチームについて書かれているため、そう簡単に時代遅れにはならないのである。」

プログラミングを作る喜び
1.物を作り上げる純粋な喜び
2.他の人々に役立つものを作る楽しさ
3.複雑なパズルのような組み立て部品を完成させ、それが巧妙に転回するのを眺めるおもしろさ
4.常に新しいことを学ぶという喜び
5.非常に扱いやすいメディア(媒体)で作業する喜び

なぜ、プログラミングが楽いのか?
「プログラミングが楽しいのは、私たちの心に深く宿っている創作意欲を満たしてくれるからであり、また、私たちすべての人間に共通な感覚を楽しませてくれるからだと言える。」

一方でプログラミングは作る苦しみもあり、それに対して以下のような記述もあります。
「プログラム開発は、多くの人々が目的達成のため、もがき苦闘するタールの沼であるとともに、また独自の喜びと苦悩を伴った創作的活動でもある。多くの人々にとって、喜びが苦悩よりはるかに勝っているのであり、本書はそういう人のためにタールを渡る架け橋を提供しようとするものである。」

ブルックスの法則
遅れているソフトウェアプロジェクトへの要員追加はさらに遅らせるだけだ。

ソフトウェアは結局は人間の問題であることとして、次のように述べられています。
「ソフトウェア技法をどう改善したらよいかという中心的疑問は、これまで、ずっとそうであったように、人間の問題に集中する。」

【送料無料】人月の神話新組新装版

【送料無料】人月の神話新組新装版
価格:3,360円(税込、送料別)




3.『ピープルウェア』トム・デマルコ著

人は交換可能な部品ではないことについて、次のように述べています。
「実際のところ、ソフトウェア開発上の問題の多くは、技術的というより社会学的なものである。」

プログラミングの生産性とオフィス環境
「プログラマーは論理的に物事を考える知的な作業者であり、脳ミソを振り絞って仕事に打ち込むたびに、オフィスの騒音・雑音に悩まされ、精神集中が乱される哀れな犠牲者なのだ。」

同一企業で2人組で参加し、課題として配布された仕様書に基づいて作成するプログラミングコンテストでは、誰とチームを組んでいるか。つまり、同じ企業に属している人の生産性は似通っていると述べている。したがって、プログラマーが働く企業の文化は、生産性に何らかの影響を与えていることになる。

【送料無料】ピ-プルウエア第2版

【送料無料】ピ-プルウエア第2版
価格:2,310円(税込、送料別)



4.『デッドライン』トム・デマルコ著

生産性を高める方法
・短期的に生産性を高める方法などない。生産性は、長期的な投資によって向上する。
・短期的な効果を約束するものは、いんちきである可能性が高い。

設計とデバッグについて(仕事のやり方を変える)
・デバッグの時間を大幅に減らさなければ、プロジェクトの成績を通常より大幅に高める方法はない。
・優れたプロジェクトは、デバッグに費やす時間の割合がはるかに低い。
・優れたプロジェクトは、設計に費やす時間の割合がはるかに高い。

残業と生産性
・プレッシャーをかけても思考は速くならない




5.『ソフトウェア職人気質』ピート・マクブリーン著

ソフトウェアを書くことは芸術であり、本当にうまくなるには10年を要する。つまり、プログラミングというものが熟練の必要な技芸であることを述べている。

技芸の熟達
「経験豊富な優れた開発者を探し出す上での問題点は、継続的な学習という技芸の伝統をすでに実践している人を探し出すという点にあります。これは、すでに優れた水準にあるものの、ソフトウェア開発の熟達度をさらに向上させようと絶えず努力している開発者を探すということなのです。」

この継続的な学習をしている人は探すだけでなく、育成するのも困難であると「ソフトウェア開発の名著を読む」の著者は述べています。


【送料無料】ソフトウェア職人気質

【送料無料】ソフトウェア職人気質
価格:2,415円(税込、送料別)



6.『達人プログラマー』アンドリュー・ハント著

達人プログラマーの性格
1.新しい物好き
2.研究好き
3.批判的
4.現実的
5.何でも屋
6.自らの技術に関心を持つこと
7.あなたの仕事について考えること

割れた窓を放置しておかない
割れた窓は周辺を荒廃させるのと同様に、プログラミングにおいても他人が修正すると壊されてしまう。割れた窓(つまり、悪い設計、間違った意思決定、質の悪いコード)は放置のままにせず、発見と同時に修復することです。



7.『コードコンプリート』スティーブ・マコネル著

読みやすいコードを書く
本書の大半は、読みやすいコードを書く上での細かなスタイルや解説から構成されている。

慎むべきデバッグ方法
・欠陥は憶測で探せ
・問題を理解しようとして時間を無駄にするな
・真っ先に思いついた方法で問題を修正せよ

エンジニアの4つのレベル
1.初級者(1つの言語の基本的な機能を使用できる)
2.中級車(複数の言語の基本的な機能を使用できる)
3.上級者(言語、環境、または両方の専門知識を持っている)
4.指導者(人とのコミュニケーションを重視し、人が読むための澄み切ったコードが書ける)





8.『プログラミング作法』ブライアン・W・カーニハン著

プログラマーにとって基本的かつ不可欠な事項が述べられているが、すべてマスターしている人は意外に少ない。

きれいなプログラムを書くことは、プログラミングの基本であり、常に心がける必要がある。良いコードでは、コメントを多用する必要も無くなる。

デバッグに対する考察
1.やみくもにデバッガを使って調べても生産性は上がらない
2.同じ間違いを繰り返すな
3.デバッグは今すぐに
4.打つ前に読め

【送料無料】プログラミング作法

【送料無料】プログラミング作法
価格:2,940円(税込、送料別)




9.『リファクタリング』マーチン・ファウラー著

今ではソフトウェアエンジニアの常識となったリファクタリングを提唱する、ファウラーの代表作。

リファクタリングの定義
外部から見たときの振る舞いを保ちつつ、理解や修正が簡単になるようにソフトウェアの内部構造を変化させること。(単にコードを修正して、コードの保守性を向上させることがリファクタリングではない。)

【送料無料】リファクタリング

【送料無料】リファクタリング
価格:5,040円(税込、送料別)




10.『ビューティフルコード』ブライアン・カーニハン他

33名の著名なプログラマーがそれぞれの想いを語る超大作




この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



クラウド・コンピューティング 西田宗千佳著



ブロードバンドの普及とコンピューター、ソフトウェア技術の向上により、ソフトウェアの世界に次のような現象が起きている。

・ソフトウェアは利用者がパッケージを買ってきてインストールしたりバージョンアップしたりするものではなく、ネットを介して利用することが普通になってきた

・ソフトは「ツール」というより「サービス」の形態で提供されるようになった

・その基盤となっているのがブラウザーとブラウザー上で動く「ウェブアプリ」であり。

アンドロイド
Googleの携帯電話向けOS。携帯自体はGoogleが販売するのではなく、形態電話メーカーが行う。アンドロイドは無料で提供している。無償提供している理由としては、ウェブ利用はパソコンで10億台に対して、携帯電話は30億台が世界に出回っており、Google検索を携帯電話で一般化し、結果として収益を上げようとしているため。

モバイル技術(ワイヤレスブロードバンド、スマートフォン)の発展と、ゲーム機器や家電の「コンピュータ化」により、次のような現象が起きている。

・アイフォーン、ブラックベリーに見られるような携帯電話の「ネット端末化」

・ネット経由でデータを常に最新の状態に保つサービスの普及

・同じような流れはゲーム機器や家電にも及んでいる

・ネットの力を利用することで、すべての家電機器がコンピュータ化し、パソコンと同じような「サービス」を利用できるようになってきている。

Gmail
Gmailの最大の利点は大容量ではない。それを履き違えたウェブメール提供会社はこぞって大容量化を果たしたが、Gmailには到底互角で渡り合えなかった。1GBという容量は、一生メールを消さずに使えることを狙ったもの。Gmailの革新の本質は操作性の良さにある。Ajax技術を駆使して、ショートカットキーで思い通りに操作が可能。

Gmailの利点
1.迷惑メールの排除(Gmailには迷惑メールを自動的に排除する機能が付いている)
2.検索機能の優秀さ(Google検索同様、ほぼ一瞬で検索結果が出てくる)
3.携帯電話とパソコンの連携(携帯電話向けGmailサービスも用意されている)

グーグルは世界でも大量のハードディスクを保有する企業だが、10万台のパソコンを使用した結果分かったことは、ハードディスクは使い始めて5年間で四分の1のハードディスクが何らかの故障をしているとのこと。

一般的なパソコンはハードディスクを1台しか搭載していない。しかし、クラウドに使われるサーバーは複数のハードディスクを搭載し、データを重複して記憶する仕組みが採用されている。つまり、個人でデータを保有するよりもクラウドのほうがデータ消失しにくいと言える。

クラウドの概念
クラウドの言葉の生みの親はGoogleのエリックシュミット氏。2006年8月、サーチエンジン戦略会議の中で以下のような発言をした。「我々は、まさにいま新しいモデルに直面しています。ですが、それがどのくらい大きなチャンスをもたらすか、理解していません。(中略)PCかマックか、携帯電話かは無関係です。"雲(クラウド)"のような、巨大なインターネットにアクセスすれば、その利益、恵みの雨を受けられる時代になっています。」

クラウドの特徴
1.サービス化
インターネットの向こうあるサーバーで処理を行い、処理結果の確認のために携帯電話やPCを利用する。

2.ボーダレス化
サービス化したソフトを利用できるウェブブラウザさえあれば、携帯電話、パソコン、テレビといったことが問われない。どこでも、どのような機器からでも同じサービスが受けられる。

3.分散
データはサーバー内にあって、複数の機器にまたがって保持される。

4.集約
Web上にあるサーバーで処理を行うというのであれば、個人が持っているパソコンや携帯電話に、それほど能力が必要なくなる。

一言で言えば、クラウドとはネットワークの力を最大限に発揮することを前提としたコンピュータの利用形態ということになる。

クラウドは、最初から方向性を持った「技術」ではなく、それぞれ独立して発展した様々な技術革新の成果が現れた、一つの「現象」である。

クラウドの問題点
1.プライバシーの問題
その企業は本当に信頼できるのか?ということ。ウェブ上に画像データや個人情報データを預けており、それらの情報がたとえばハッキングされたりして他に漏れ出す可能性はないかという危険性がある。

2.通信依存
「通信の切れ目」が「サービスの切れ目」となる。GoogleではGearsと呼ばれる、ウェブの最新情報を常に取り込んでおいて、回線がつながっていないと判断するとGears内の一時情報を利用する仕組みを持っている。たとえば、グーグル・カレンダーなどはGearsに対応している。

3.信頼性の確保
SLA(サービスレベル・アグリーメント。サービス品質保証制度)が上がらないと業務に使えない。つまり、サーバーのメンテナンスやトラブルで使えなくなる時間があるというリスク。大企業にとってはこれがクラウドを積極的に使えない理由となりうる。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



プログラムをつくるとは? 大澤文孝著



BIOS(Basic Input Output System)
電源を切っても消えないROMに格納されたプログラム。CPUは電源投入直後にBIOSによってI/Oに接続されたデバイスの初期化を行っている。

API(Application Program Interface)
外部プログラムから制御できる機能群を指す用語。OS以外にも、ある程度の規模のアプリケーションやインターネット・サービスが外部に公開する機能のこともAPIと言う。OSで動作するプログラムでデバイスを制御したい場合は必ずAPIを経由する必要がある。APIさえ理解すれば、その下に繋がるI/OやBIOSがどのような構成になっているかを知る必要は無い。

Windowsには「win32 API」というAPIが実装されている。

ライブラリ
他のプログラムから呼び出すことができるプログラムの総称。

ライブラリのメリット
1.プログラムが簡潔で済む
2.ミスを少なくできる
3.未熟であってもプログラムを作れる
4.OSのAPIを覚えなくて済む

フローチャート
アルゴリズムを書くことなくプログラムを書くことはできない。アルゴリズムはフローチャートで記載する。フローチャートで持ちいる図はJIS規格のJIS X0121として標準化されている。

Webアプリケーション
Webブラウザから、インターネット越しにあるWebサーバに配置されているプログラムを実行し、その結果を表示するという形態のアプリケーション。

どのような種類のWebアプリケーションを動かすことができるかは、まず、サーバのOSによって決まる。WebサーバはUNIX系OSとWindows系OSに分けることができる。

UNIX系のOSではApacheというフリーのWebサーバ・ソフトが使われ、Windows系ではIIS(OSに標準で付属)というWebサーバ・ソフトが使われることがほとんど。

Windows系OSには、Windows版のApacheをインストールすることができるが、Windowsではあまり採用されることはない。

Apacheとよく組み合わされるプログラミング言語はJava、Perl、PHPなど。

Webアプリケーション開発をするためのプログラミング言語
1.ASP.NET
NET Framework上のアプリケーションであり、開発にはC#、やVisual Basic.NETを使う。イベントドリブン型のプログラミングであり、例えば「ページに配置したリンクがクリックされた何かを処理する」といったプログラミング・スタイルとなる。

2.Java
最終的にプログラミングはサーブレットで実行されるが、より簡単にプログラミングできる方法としてJSPという仕組みがある。

JSPで作ったプログラムは、最終的にはサーブレットに変換された上で実行される。

JSPはホームページを構成するHTMLの中に、特殊なタグでJAVAのプログラムを入れると、その部分が実行されるというもの。

JavaBeans(ジャバビーンズ)
JavaでWebアプリケーションを作るときには、JavaBeansと呼ばれる概念を用いる。JavaBeansとは「簡単に言えば、データの保存や、ユーザからの要求を処理するためのオブジェクト」

3.PHP、Perl、Rubyなどのスクリプト言語
スクリプト言語はソース・コードを記述するだけで実行できる簡易なプログラミング言語の総称。

・PHP
特殊なタグの中にプログラムを記述して実行するもの。もともとWebアプリケーション開発用に作られたプログラミング言語。近年、Webアプリケーション開発において、もっとも人気のあるプログラミング言語。

・Perl
もともとテキスト処理のために開発されたもので、文字処理が得意。Perlは文法が特殊で習得が少し難しく、Webアプリケーション開発に必要なライブラリを別途インストールしないといけないためPHPに人気を奪われている。

・Ruby
スクリプト言語ながら、オブジェクト指向的な要素が採り入れられているのが特徴で構造化された分かりやすいプログラムが書ける。しかし、Rubyに対応したレンタルサーバは多くないのが現状。

Webアプリケーションの動き
1.入力フォームにアクセス
2.入力フォームのページを送る
3.ボタンをクリック
4.結果ページを送る

ウェブアプリケーション作成に必要な知識
1.Webサーバの基礎知識
Webサーバとどんなプログラミング言語が使えるか、Webサーバのどこにどのようなファイルを置けばいいか?など
2.HTMLの知識
3.プログラミング言語の文法
4.ページ遷移の方法
ページ遷移のためのCookieやセッションといった知識
5.その他の技術
データベース等

JavaScript
Javaとはまったく異なるプログラミング言語。Webブラウザ内部で実行されるアプリケーションはJavaScriptを使って作る。

Ajax
Webブラウザ内で実行されるJavaScriptをWebサーバに置かれたプログラムと非同期で通信するような仕組み。たとえばGoogle Mapsなど。

マッシュアップ
プログラマが、すでに公開してあるWebサーバ側のWebアプリケーションをJavaScriptから呼び出すことに専念するという概念。1つのWebサービス(JavaScript)から複数のWebサービスを組み合わせて使うこともできる。例えば、駅名を入れると、乗り換え情報と飲食店情報、地図が一気に表示されるといったプログラムが組める。

JavaScriptアプリケーションを作るのにあたって必要な知識
1.JavaScriptの文法
2.DOMツリーの理解
JavaScriptではDOM(Document Object Model)と呼ばれるものを使って、HTML要素(タグ)を階層的に管理する。
3.各種ライブラリの使い方
代表的なライブラリとしてprototype.jp(http;//www.prototypejs.org/)などがある。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



つくって覚えるPHP入門 オフィス加減著



本書はPHP入門というのにふさわしい本です。非常に分かりやすくかいてあります。PHPで必要となるXAMPPのインストールから、各種設定まで詳しく書いてあります。簡単な問い合わせフォームの作成、画像アップローダーの作成、アンケートフォームの作成、会員制掲示板の作成といったMySQLを活用したものまで丁寧に説明してあります。

この本を見ながら実際にPCで操作しすれば、一通りPHPを使ったサイトの作成ができそうです。以下、設定に関する記述の抜粋。

まず、PHPプログラミングを始める準備として、開発環境を準備する必要がある。XAMPP(ザンプ)と呼ばれるものをダウンロードすれば、Apache、PHP、MySQLを動作させることができる。

XAMPPの設定
1.Apacheを起動するとPCがWebサーバとして公開される。そこで、外部からアクセスさせないように、Apacheの設定ファイル「httpd.conf」(C:¥xampp¥apache¥comf¥httpd.conf)を書き換える

具体的には以下の項目について説明してある。

 ・Apacheのドキュメントルートへのアクセスをローカルホスト以外は許可しない設定にする。
 ・ApacheのCGIのルートへのアクセスをローカルホスト以外は許可しない設定にする。
 ・XAMPP管理ページへのアクセスにBASIC認証をかける。

2.PHP環境の設定
使用するマルチバイト言語の指定がニュートラルになっているので、Japaneseのコメントアウトを解除して日本語に指定する。

MySQLのセキュリティ設定
XAMPPインストール直後はMySQLの管理ユーザ「root」にパスワード設定されていない。これは誰でもデータベースの全ての操作(データの書き換えやユーザ削除など)ができてしまい、大変危険。


PHP習得は最初の環境づくりで挫折される方も多いそうです。他にもPHP初心者向けの本を持っていますが、この本ほど分かりやすく書いていませんのでおすすめです。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



プロになるためのWeb技術入門 小森裕介



CGI(Comon Gateway Interface)
サイトにより多くの人に来てもらうためにはコンテンツを増やす必要があるが、全てを手作業でやっていては大変。CGIはWebサーバとプログラムの間でリクエストとレスポンスをやり取りするための規約のこと。コンテンツを生成する目的で主に利用されたのがPerlというプログラミング言語。Perlがあまりにも多く利用されたためCGI=Perlという誤解が生まれたが、そうではない。

CGIの動作
1.Webサーバがクライアントから受け取ったリクエストをWebサーバ上で動作するプログラムへ渡す
2.プログラムはリクエストを参照してHTMLを生成し、Webサーバに渡す
3.Webサーバはプログラムから受け取ったHTMLをあたかもあらかじめ用意してあったかのようにWebクライアントへ渡す

サーブレット(Servlet)
CGIの問題点は、Webブラウザからリクエストが届くたびにプロセス(コンピュータ上で動作するプログラムの単位)を起動し、それが少し時間がかかってしまうこと。アクセスが殺到すれば、膨大なプログラム処理が必要となり、Webページにアクセスしてもなかなか画面が表示されずに苦情が殺到する事態を招いた。そこで、登場したのがサーブレット。サーブレットはJavaで作られたHTMLなどのWebコンテンツを生成するためのプログラム。Webコンテナと呼ばれるWebサーバと同じプロセスの中でプログラムを動作させるため、プロセスを毎回起動する必要がなくなった。

JSP
サーブレットにも問題点があった。それはWebデザイナーがHTMLを修正したい場合、サーブレットはJavaコードの中にHTMLを埋め込んでいたため、プログラムをいじる必要があり知識の無いWebデザイナーにとって修正しにくかった。そこで登場したのがJSP。JSPはHTMLの中にJavaコードを埋め込むもの。これにより、プログラム開発者はJavaコードの部分に集中し、WebデザイナーはHTMLの部分に集中すれば良くなった。

Webアプリケーションフレームワーク
サーブレットやJSPでは高層ビル(高度なソフトウェア開発)を行うには不足していた。現在Webアプリケーション開発と言えば、Webアプリケーションフレームワークが使われている。プログラムを再利用してアプリケーション開発を進めるための土台がフレームワーク。フレームワークを土台に必要な部分を作り足していけば短期間でアプリケーション開発が可能となります。

横取り丸とInetSpy
WebブラウザとWebサーバの通信内容をのぞくためのツール。HTTP通信の様子を観察することができる。

HTTPリクエストの内容
1.HTTPリクエストライン
GET http://www.○○○.html HTTP/1.1
 ①  ②          ③

 ①メソッド
  リクエストの種類。GETは「URIで指定した情報を送ってください」の意
 ②URI
 ③HTTPバージョン

以下、<フィールド名>:<フィールド値>の形式で書かれている。

2.Accept
Webクライアントが受け取ることのできるデータの種類を表す。
3.Accept-Language
Webクライアントが受け取ることのできる自然言語の種類を表す。
4.User-Agent
利用しているWebブラウザの種類やバージョンを表す。
5.Host
リクエストの送信先ホスト名やポート番号を指定する。

URI(Uniform Resource Identifier)
URI=URL(Uniform Resource Location)+URN(Uniform Resource Name)。URLの考えを拡張したもの。URLはインターネット上の住所のようなもので、URNは名前。URNはリソースが引越ししてしまい場所が変わると分からなくなる問題を解決するために生まれたがあまり使われていない。


HTMLレスポンスの内容
1.ステータスライン
 HTTP/1.1  200  OK
  ①     ②  ③

 ①HTTPバージョン
 ②ステータス・コード
  200:OK(リクエストが正常に完了)
  302:Found(リクエストされたリソースが一時的にURIに属している)
  401:Unauthorized(ユーザ認証失敗)
  404:Not Found(リクエストURIに一致するリソースが見つからない)
  500:Internal Server Error(CGIプログラムなどサーバ内部のプログラム実行におけるエラー)
 ③レスポンス・フレーズ

2.メッセージヘッダ
3.メッセージ・ボディ

IPアドレス
IPアドレスはインターネットに接続されたコンピュータの識別番号。ピリオドで区切られた8ビット4桁(256×256×256×256=約43億通り)で表す。IPアドレスはISP(インターネット・サービス・プロバイダ)が持っているIPアドレスのうちの1つを一時的に割り当てられる仕組みのため、IPアドレスが毎回同じではない。

モック
Webアプリケーションシステムの開発を行う際に、画面状態遷移図(クリックしたらどの画面に飛ぶか)を作る。モックとは、実際にプログラム作成して画面を作る前に張りぼてのHTMLを作成すること。モックにより画面遷移のイメージを確認して、画面の不足、仕様の抜けを洗い出すことができる。

PHPの実行
Webサーバのプログラムの中にモジュールとして組み込まれている。(Apacheなど)PHPモジュールが組み込まれていると、ディスクから読み込んだファイルの中を調べて、<?PHP~?>でくくられた部分をPHPスクリプトとして認識して実行するようになる。

Cookie(クッキー)
CookieはWebブラウザに状態を持たせる技術。具体的には名前=値(例 Cookie: user=○; pass=□)の情報が保持される。異なるサーバへはCookie情報は送らない。ただこれだけの仕組み。

セッション
Cookieに関する問題点は、HTTPリクエストやレスポンスにパスワード等の重要な情報がCookie情報として記載する点であり、HTTPリクエストやレスポンスを読み取られたら、そこから大事な情報(ログイン情報など)を盗まれる可能性がある。そこで、安全に情報を保持するための方法として登場したのがセッション。セッションは、一連の処理の流れを都度Webサーバとやり取りするのではなく、CookieにセッションIDと呼ばれる受付番番号を格納するだけで済み、安全性も高い。

データベースを構築することにより、大量の情報を保存し、生かすことができる。また、商品を更新したい場合、プログラムをその都度書き換えるのではなく、DBを変更するだけでプログラム変更の手間をなくすことができる。

データベースの操作CRUD(クラッド)
・生成(Create)
・読み取り(Read)
・更新(Update)
・削除(Delete)

SQL(Structed Querry Language)
データベースに対して欲しい情報を効率よく伝えるための言語。

代表的なデータベース製品
1.Oracle Database
製品の歴史も長く、性能や信頼性に定評のあるデータベース。
2.Microsoft SQL Server
Windowsとの親和性がある一方、Windows以外のプラットフォームでは利用できない。
3.PostgreSQL
オープンソースとして公開されているデータベースの草分け的存在。商用データベースに引けをとらない内容を無償で公開している。
4.MySQL
オープンソースとして公開されているデータベース。PostgreSQLと遜色ない。個人で利用する分には無償で使える。


Webシステムの三層構造
1.Webサーバ
2.データベースサーバ
3.アプリケーションサーバ

参考図書、サイト
Lesson0
なぜ、あなたはJAVAでオブジェクト指向開発ができないのか JAVAの壁を克服する実...』 小森裕介
オブジェクト指向でなぜつくるのか 知っておきたいOOP、設計、関数型言語...』 平澤章

Lesson2
サイトのみのため割愛

Lesson3
ネットワークはなぜつながるのか第2版』 戸根勤著

Lesson4
PHP 5徹底攻略』  堀田倫英ほか
PHP 5徹底攻略(エキスパ-ト編)』 廣川類

Lesson5
逆算式SQL教科書 ぐんぐん実力がつく! / 小野哲 【単行本】』 小野哲

Light Weight Java―JSF/Hibernate/SpringによるフレームワークでWebアプリケーションの開発効率向上』岡本隆史著
オープンソースワールド』川崎和哉著

Lesson6
Apache Strutsハンドブック改訂版』 黒住幸光
ソフトウェアア-キテクチャ』 F.ブッシュマンほか
J2EEパターン 第2版 / ディーパック・アラー』 John Crupiほか
J2EE1.4対応実例で学ぶサーブレット/JSP』 赤沢直木
StrutsによるWebアプリケーションスーパーサンプル第3版』 高安厚思

Lesson7
Webアプリセキュリティ対策入門』 大垣靖男
暗号解読(上巻)暗号解読(下巻)』 サイモン・シン
OpenSSHセキュリティ管理ガイド』 新山裕介

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



ウェブで学ぶ オープンエデュケーションと知の革命 梅田望夫ほか



いま、ウェブ上で大学の授業を受けることができる仕組みであるオープンコースウェア(OCW)が注目されている。

オープンコースウェアは2001年にMITが世界に先駆けて始めた。それまではMITはオープンコースウェアについては出遅れていたが、他大学のオープンコースウェアは有料化して儲けることを前提としていたがビジネスモデルが見つからなかった。MITは逆転の発想で社会貢献のために無料化で実施してはどうかと提案し実行に移した。

2010年までに全世界で250校のオープンコースウェアが開講している。

オープンコースウェアにおいては、オープンラーニングイニシアチブといって、世界の名だたる超一流の大学の授業をそのまま公開したのでは一般の人は分かりにくいだろう。そのために、一般向けに分かりやすくするという教育の質を改善する仕組みも特定の大学(カーネギーメロン大学)で起こっている。

現状のオープンコースウェアは当初実現すればノーベル賞が取れるだろうという話も挙がっていた。しかし、現状はただ公開しているのみで、Google的な度肝を抜くようなブレークスルーが起きていないし、これからそいうものが期待されている。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



図解雑学 量子コンピュータ 西野哲朗

【送料無料】量子コンピュ-タ [ 西野哲朗 ]

【送料無料】量子コンピュ-タ [ 西野哲朗 ]
価格:1,680円(税込、送料別)




現状のコンピュータの問題点は因数分解などの膨大な計算が必要な問題に対して、逐次処理では膨大な時間がかかること。

現在のスーパーコンピュータで1TFlopsの場合2の12乗ビット程度だが、量子コンピュータの場合は量子ビットと呼ばれる単位で表し、100量子ビットだと2の100乗の圧倒的な計算能力を持つことになる。

量子コンピュータは量子力学的な波の干渉を使って、膨大な数のパソコンを同時並行させるのと同じ演算が可能。

計算量クラスの分類
1.NP
答えがYesとなる証拠が与えられれば、それが正しいかどうかを多項式時間以内に確認できる。
2.NP完全
NPの部分クラス。NPに属する問題の全てを還元(帰着)可能な問題。
3.NPI
クラスNPに属するがPやNP完全ではない問題の集まり。
4.P
多項式時間アルゴリズムで解ける問題の集まり

量子コンピュータが完成すれば、従来のコンピュータで膨大な時間がかかっている公開鍵暗号であるRSA暗号があっという間に解けてしまう。

量子コンピュータ実現に向けての課題
1.十分な数の量子ビットを備える
2.量子論理ゲートを実現できる
3.計算に必要なデコヒーレンス時間を確保する

実現はまだまだ先と言われている量子コンピュータだが、世界に先駆けてD-Wave Systems社が既に開発し、商用化に向けて進めているとのこと。(本当であれば素晴らしい成果)

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



Google問題の核心 開かれたシステムのために 牧野二郎



本書は検索エンジンとして万能と思われるGoogleについて、その現状の問題点について深く記載してある。

検索エンジンとしてのGoogleの4つの限界
1.非web情報が検索できないという構造的課題
非web情報とは、web上に上がっていないリアル世界における情報。

2.リンクの機能的限界
自動検索ロボットであるクローラはリンク先は移動できても、リンク元には移動できない限界がある。そのため探せないサイトもある。また、Googleを含めた複数のクローラはスパム行為を検出できないという。たとえば、①リンクファーム型、②リンク配布型、③紛れ込ませページ配布型など。

3.検索できないDeepWebの存在
たとえば、①データベースから自動生成されるWebページ②他からリンクを受けていないページ③動的に動くFlashなどで動くページ④パスワード認証が必要なWebページなど。

4.情報大爆発現象への対応能力
世界のweb上の情報量は500万テラバイトといわれており、Gooleではその全てをインデックス化したいが、社内では200年かかると言われている。Googleは1兆個のサイトを見つけてリスト化しているが、それらを読み取る時間が無いという。

Google八分問題
ある日、突然サイトの検索結果が外され、表示順位が極めて低くなったり表示されなくなる問題のこと。いくつかのサイトでこの問題を元に訴訟が行われているが、いずれもGoogleが勝訴している。

図書館プロジェクトと呼ばれる図書館の全書籍を電子化しようという試みがある。これは著作権法を違反していると訴えられているが、アメリカでは和解成立に向けて着々と進んでおり、ますます電子書籍化が進むことが予想される。

全世界のインターネット上の全てのアクセスの内、1/4がGoogleなどのクローラによるアクセスだという。それを解決する方法として、公開インデックスという手法が提案されている。

公開インデックスとは、検索ロボットが各管理部を担当して、それぞれの検索ロボットが検索した情報をインデックス化し整理、体系化して共有できるようにするもの。web上のエコシステムといえる。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



仮想世界で暮らす法 内山幸樹



仮想世界で暮らす法 「Web2.0」社会でどう生きるか

ネット世界には月100万円稼ぐ小学生がいる。それは、リアルマネートレーディングと呼ばれる、仮想世界で冒険し、その中で実際のお金に変換できるマネーを手に入れる方法によって実現している。たとえば、ウルティマオンラインといったゲームなどがそう。

本格的仮想世界として注目されているセカンドライフでは、仮想世界の中で実世界と同じように車や、家を購入したりできる。リンデンドルという仮想通貨だが、これも実際のお金に交換できるので、それが実際の収入につながる。

日本でセカンドライフの会員になっているのはいまのところ個人ではなく、情報収集目的の企業がほとんど。たとえばセカンドライフで年収2000万円を稼ぐ強者も出てきた。

その他にも、最近ではアフィリエイトやドロップシッピングなどにおいて勉強して知識すれば、web上で稼げる段階に来ているのだと思う。特に、Web2.0の特徴であるロングテール戦略という言葉が出始めてからはトップの商品じゃなくても何でも売れる状態にあるので、稼ぎやすい環境になりつつある。

これは10年前は全く想像もできなかった。

本書は『進化しすぎた脳』などの著書で有名な東京大学大学院薬学系研究科准教授の池谷裕二氏と対談も書かれてあり、脳とインターネットの対談がなされている。

その中で、リコメンデーション・サーチエンジン(「この商品を買った人は、この商品も買っていますといった関連商品紹介サービス)が流行っているという話が出ていた。

これからのパソコンには、単に情報検索した結果を表示するだけではなく、個人個人のニーズに合った情報を提供すること、つまりコンピュータに気遣い、心遣いを持たせることが大事になってくるのかもしれない。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



アップル、グーグル、マイクロソフト クラウド、携帯端末戦争のゆくえ 岡嶋裕史



マイクロソフト
マイクロソフトは既存の技術を元にクラウドを進めており、クラウドには積極的ではない印象がある。既存のウインドウズをそのままクラウド的に使えるようにしたウインドウズアズールなどで、変化を嫌う会社経営者向けの戦略に出ている。クラウドへの接続としての携帯端末やOSはアップル、グーグルに一歩先に行かれている。

グーグル
グーグルは「世界中の情報を整理すること」を目的とした企業。クラウド自体には興味が無く、クラウドは目的ではなく手段でしかない。

グーグルはクラウドを構成するデータセンタはコンテナに多数のサーバを格納するスタイルで運営している。コンテナ内は外に野ざらし状態で、空調設備さえ無く、故障したら取り替えるだけ。

そのような運営にしている理由は、サーバはクラウドを構成するための道具でしかなく、交換可能で貴重ではないから。設備費や人件費を無駄にはしたくないのだろう(グーグルはクラウド自体も道具でしかないと書いてある)

どの企業でもデータセンタの電力供給源をどうするかについては頭を悩ましているが、グーグルは電力会社さえ立ち上げてその問題を解決しようとしている。目的に対して妨げとなるものは全て無力化していこうとする態度は恐ろしい感じがする。

日本は逆にデータセンタに空調完備させ、エンジニアがすぐに駆けつけれるよう大事に扱う文化がある。そのため、膨大な設備運営費がかかる。

アップル
アップルの場合、iPhoneを使って便利に楽曲やスケジュールの同期を行っていたら、生活情報のほとんどがクラウド化していたという感じ。

クラウドを構成する要素としては、モバイルミーやアップストアなどがある。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



グーグルGoogle既存のビジネスを破壊する 佐々木俊尚

グーグルGoogle 既存のビジネスを破壊する

グーグルGoogle 既存のビジネスを破壊する
価格:798円(税込、送料別)



グーグルは1998年にスタンフォード大の大学院生だったサーゲイ・ブリンとラリー・ページにより設立された小さなベンチャー企業。

グーグルといえば検索エンジンというイメージが強いが、既存の検索エンジンとは異なる革新的な2つの技術がある。そのひとつがクラスタリング(結合)と呼ばれる技術で、膨大な数の普通の安価なパソコン同士を結合してあたかも一つのコンピュータとして動作させるもの。数多く用意すればスーパーコンピュータ並み、もしくはそれを上回るPCができるという。

もう一つは、ページランクテクノロジー。これは人気のあるサイトからリンクが張られているサイトは価値が高いという思想から作られたもの。グーグルの検索エンジンはこの思想で全てのウェブページをランク付けしており、その結果、検索順位が決まる。

グーグルは既存のビジネスを破壊している。その一例を挙げると、

破壊例1:グーグルニュース
グーグルは様々なサービスを展開しているが、そのひとつにグーグルニュースというものがある。グーグルニュースはウェブ上にある世界中の数千ものニュース媒体からニュース記事の見出し文字とそのページへのリンクアドレスを自動で取得し、一覧表示するというもの。しかも数分単位で自動更新されるという。

これによって、新聞各社のホームページ上の広告収入が減るという記載があった。新聞社は主にトップページに報酬率のバナー広告を張り、それによる収入を得ている。しかし、グーグルニュースが発達するに従い、ユーザーは各記事の書いてあるページにしか入らなくなり、トップページにへのアクセスが減り、収入減につながるらしい。

破壊例2:グーグルオフィス(予想されているだけで実際に開発されていない?)
2005年ごろから現れたAjaxという技術がある。AjaxとはAjax(エイジャックス、アジャックス、アヤックス)は、ウェブブラウザ内で非同期通信とインターフェイスの構築などを行う技術の総称。

例えばgoogle mapのように自由に左右上下に移動できる技術を言う。既存の地図サイトでは上下左右に移動するボタンを押してから移動が開始するが、このAjaxはキーを押した時点で即座に反映できる。

Ajaxを応用すれば、ウェブ上にワードやエクセルに変わるものを作成することができるという。現在はマイクロソフトがWindows独壇場となっているOfficeソフトに対して、OSに依存せずウェブに繋がっているPCさえあれば操作が可能となる。


グーグルの収益の9割はグーグルアドセンスとグーグルアドワーズからなる。グーグルアドセンスはブログやホームページのコンテンツに合った広告を自動で配信するコンテンツマッチ型の広告。

グーグルアドセンスの利点はありとあらゆるところに最適な広告が貼れることである。

上記のようなサービスを無料で提供し、グーグルアドセンスによって収益を得るというスタイルを突き通している。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



セキュリティはなぜ破られるのか 岡嶋裕史



リスク三要素
1.資産
2.脅威
3.脆弱性

リスクを顕在化させないためには上記いずれか一つを消せばいい。

ファイアーウォールは通過するものを内外問わず
監視している。

公開かぎ暗号
暗号を作るためのかぎと、解読するためのかぎが異なるもの。


この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



iPadを作った男 大谷和利

【送料無料】iPadがつくる未来 [ 大谷和利 ]

【送料無料】iPadがつくる未来 [ 大谷和利 ]
価格:760円(税込、送料別)



iPadの外装ケースはわざと傷が付きやすくしており、
それによりユーザが大切に使うようデザインされている。
傷が付きにくいのが良いというものではない。

「僕は手に入れられる最高のものが欲しいんだよ!」
ジョブズの完璧主義を表した言葉。

キーノートはMS社のパワーポイントのライバルにあたるソフト。

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



グーグル10の黄金律 桑原晃弥



1.採用は全委員で
 A級の人材採用が次のA級人材採用につながる
2.あらゆる必要を満たせ
 独自の福利厚生
3.一箇所に詰め込め
 大部屋はコミュニケーションに効果的
4.調整が容易な環境を
5.自社製品を使わせろ
6.創造性を奨励せよ
7.合意の形成に努めろ
8.邪魔になるな
9.データが判断をもたらす
10.効果的なコミュニケーションを

成功に導く唯一の道は失敗をたくさんすることだ サーベイ・ブリン

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



ウェブ進化論 梅田望夫

【送料無料】ウェブ進化論 [ 梅田望夫 ]

【送料無料】ウェブ進化論 [ 梅田望夫 ]
価格:798円(税込、送料別)



あちら側:インターネット空間に浮かぶ巨大な情報発電所。バーチャルな世界
こちら側:インターネット利用者に密着したフィジカルな世界。

google
・あちら側
・テクノロジー

yahoo
・こちら側の技術。
・メディア

オープンソース
オープンコースウェア(オープンソースが難しい実例)

この記事が少しでも何かのお役に立てましたら、
人気ブログランキングの応援クリックをお願いして頂けると幸いです☆


本・書籍 ブログランキングへ


読書一覧ブログTOP
http://shingoonline.blog.fc2.com/



         
本・書籍ブログランキング

有名なブログランキングの本・読書カテゴリで 10位/612サイトになりました!

プロフィール

Author:freedom
リンク、相互紹介は大歓迎です。任意の記事へコメント頂けたらと思います。
また、献本も歓迎します。献本頂けましたら、ブログ、facebook、twitter等にてご紹介させて頂きます。

ブロとも申請フォーム

この人とブロともになる

ブログ情報

2011/10/17
ブログ新規作成

2012/01/08
リンク見直し、ランキング追加

2012/02/06
googleページランク3到達

2012/04/14
リンク見直し

2012/12/25
googleキーワード検索「読書 ブログ」で第6位」

2013/01/03
SEO対策済みテンプレートに変更

メールフォーム

献本のご依頼はこちらへお願いします。

名前:
メール:
件名:
本文:

ご献本履歴 感謝♪

☆自由国民社 館野愛 著『夢を引き寄せるお金の授業』
☆早川書房 木村尚義 著『ひらめく人の思考術』
☆リトル・ガリヴァー社 武田久生著『月光町ブルース』

サイトマップ

全ての記事を表示する

検索フォーム

ブログ内検索ができます。検索キーワードを入れてください。

ブックマーク登録


カウンター

アクセスカウンタ


現在の閲覧者数

リンク

このブログをリンクに追加する

アンケート

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。