■補講 10日で覚えらなかったら・・・  本書のタイトルは10日で覚えるとなっていますが、覚え方は人それぞれです。読んだだけで理解できる人もいるでしょうし、実際に手を動かさないと覚えない人もいるでしょう。3日坊主の方は他に補習講義を用意してありますので、そちらをお読み下さい。  10日で覚えられなくても(仕事だとなかなか難しい部分もありますが)がっかりする必要はありません。一応何もないところから学習してプロになれるまでには、だいたい7000時間から1万時間が必要だと言われています。もちろん、目安ですので人によっては、もっと時間がかかることもあるでしょう(遅咲きの場合で考えても5万時間やればよさそうです)。  ところで7000時間を仕事する時間と思われる8時間で割るとどうでしょう? だいたい2年半くらいの日数になります。会社であれば当然休みなどがありますので、3年〜4年の間でしょう。3年もすれば一人前と言われるのは、ここらへんにあるのでしょう(昔から言われるので経験則だと思われます)。  10日で駄目だったら、もっと長く続けてみるとよいでしょう。継続は力なりと言いますが、いろいろやり続ければ、次第に経験が知識としてもたまっていき、ある時からすんなりと理解して作れるようになります。RPGゲームで言うレベルアップした!という事になります。ずっとやっていても前々理解できず1年くらい駄目なこともあります。それでも、続けているとあっさりと分かってしまう時が来ます。 ------------------------------------------------------------------------------------------------ ■作って覚えるタイプ  本書は作って覚える形式を採用しています。やはり何かを作らないと、それに必要な技術、ノウハウが分からないからです。どこか1つのレッスンでもやってみて、自分にこの方法があっていると分かったら、作って覚えるタイプの本やWebサイトをチェックしてみましょう。そして、いろいろ作ってみることをおすすめします。  最初から巨大なWebアプリケーションを作らずに小さいものをいくつか作っていきましょう。そこでノウハウをためてから、大きなアプリケーションに挑戦するとよいと思います。例外的に最初から巨大なアプリケーションを作れてしまうタイプの人もいます。その場合、その能力は大変貴重なものですから、うまく使ってください。 ------------------------------------------------------------------------------------------------ ■パターンで覚えるタイプ  プログラムには一定のパターン(定型)があります。この処理を行う場合には、このように書くというものがあるのです。デザインパターンとも言われます。  パターンを覚えてしまえば、プログラムはレゴブロックのようなものですから、組み合わせてどうにか作っていくことができるでしょう。  本書はHTML5のデザインパターンを覚えるタイプのものではないので、他の本を探すかWebで検索してみるとよいでしょう。また、アルゴリズムというキーワードで検索すればプログラムの処理パターンがいろいろ出て来るはずです。ちなみにアルゴリズム事典という本も出ています。 ------------------------------------------------------------------------------------------------ ■1つずつ命令を覚えるタイプ  覚え方は人それぞれですが、思ったほど役にたたないのが1つずつ命令を覚えることです。プログラムというのは全ての命令を知っていても作れるものではありません。日本語の平仮名、片仮名、漢字を全て覚えたとしても、面白い小説を書けるわけではないのと同じです。ですので、あまりこの方法はおすすめできません。  ただし、例外があります。それはすでにプログラムに関して十分な知識があり、多くのプログラムを作ってきた場合です。つまり熟練者です。この場合は「作って覚える」「パターンで覚える」方法よりも逆に命令を覚えていく方が効率的です。W3Cの仕様ページと各ブラウザメーカーに用意されたAPIリファレンスをチェックするとよいでしょう。 ■Geolocation API http://www.w3.org/TR/geolocation-API/ ■Audio & Video http://www.w3.org/TR/html5/video.html ■Canvas 2D Context API http://www.w3.org/TR/html5/the-canvas-element.html http://dev.w3.org/html5/2dcontext/ ■Web Workers http://www.w3.org/TR/workers/ ■Drag & Drop http://www.w3.org/TR/html5/dnd.html ■File http://www.w3.org/TR/FileAPI/ ■Web Storage http://www.w3.org/TR/webstorage/ ■Offline Web Application http://www.w3.org/TR/html5/offline.html ■Form http://www.w3.org/TR/html5/forms.html ■Text Selection/Editiing http://www.w3.org/TR/html5/editing.html http://www.w3.org/TR/DOM-Level-2-Traversal-Range/ ■Touch Event http://www.w3.org/TR/touch-events/ ●MDC (Firefox) https://developer.mozilla.org/ja ●Apple Safari http://developer.apple.com/library/safari/navigation/ ●JScript (IE/Microsoft) http://msdn.microsoft.com/ja-jp/library/72bd815a(v=vs.80).aspx ------------------------------------------------------------------------------------------------ ■どうしても理解できないタイプ  プログラムは理解できない人には、まったく理解できないものです。どうやっても、覚えられない場合にはプログラマに向いていないかもしれません。その場合は、HTML5のプログラムやマークアップなどを覚えるよりも、HTML5で何ができるか、どのような機能があるかを把握した方がよいかもしれません。機能を把握した上で他の人に指示して作らせる方が向いているかもしれません。