このページに来る人は
①プロのお遊び
②初心者or初心者に毛の生えた程度の人
のどちらかでしょうが、HTMLとは…CSSとは…といった
基礎の基礎である説明はこのページではしません。
一つの意見として参考にしてくださればと思います。
一般の理系大学で扱われるプログラミング言語「C」は、
”初学者には向かない”
とよく言われています。
個人的には大学生になる年齢くらいまで生きているなら
内容的にはCから学習しても問題ないと思います。
プログラミングのステップアップという観点から見るとお勧めはしませんが。
結論から言えばまったくの未経験からプログラムをいじるのであれば
Processingをお勧めします。
最近副業推進の動きからWEB系(ブログ系)のHTMLやCSS、
またWordPressを扱うためにPHPやJavaScriptなどを学習したいという人が
増えてきました。
今でこそ「C言語」(C++)由来の「MQL」
(FXのチャートを表示するので有名なソフトウェア
”メタトレーダー”に使われている言語)
が理解できるようになりましたが、
私も最初はHTMLとCSSから入りました。
そして一言いいたいのは
”いや、HTMLとCSS難しいでしょ‼”
ということですね。
確かに複雑な関数がなく、用語や概念も難しいものがないので
「他言語に比べて簡単」という「経験者」が多いのもうなずけます。
しかしここで主張したいのは
私も含めて「プログラミング言語学習経験者」で現在も生き残っている人は
「他言語に比べて簡単だ」と答えるくらい
プログラミングはそもそも初心者が理解をするハードルが高く感じるということです。
やってみて初めて分かると思います。気になる人はやってみてください。
そして、
HTMLとCSSは難しくないと書いてある記事
をあなたは見たことがありますよね?
そこにはもれなく
プログラミングスクールの勧誘広告(バナー)
が配置されていませんでしたか?
もちろん全員とは言いませんが、
絶対その人たちプログラミングやったことも勉強したこともないでしょ?
そして「体験したけど良かった」「評判がとてもよい」って
なぜ3校も4校も紹介しているの?
プログラミングスクールの値段わかっていて何校も足を運んだのでしょうかね。
まあ冗談はさておき、
そのような人の幸せを考えることを忘れてしまったアフィリエイターが
ネットを見ると「”簡単”と書いてあるHTMLとCSS」をそのまま
無心に「HTMLとCSSは初心者でも難しくない!」と転写
したものが広まりすぎた結果なのかなと
実際にHTML/CSS/PHP/JavaScript/Python/Ruby/C++/Processing/MQL4/MQL5
に一年触れてみたことで感じました。
以下では私が取り組んだ順番に掲載しています。
目次の最後の項目で学習順について主張したいことがまとめてありますので
お買い物をしたい人、学習順を参考にしたい人、
各自好きなところを参照してください。
学習した書物(買った書物)
<コメント>
内容の間違いが目立つ。もし初心者で中学や高校までで
「自己解決能力」が身に着けられなかった人や
大人になってからも「周囲の意見の方を大事」にしている、
単刀直入に言えば「自分の核がない人」は
”これ間違いじゃないかな…”と不安になってしまうので向いていない。
しかし、小型で1冊にHTMLとCSSの両方がまとまっているので
必要に応じて辞書のように引きだせるのはとても便利。
フルカラー。たぶんもっといい本がある。
人によっては最終的にここに戻ってくるかも。
後述するが技術評論社。
<コメント>
わかりやすい。どこを目で追えばいいか視覚的にわかる。
印刷の緑色が目に優しい。関数の扱い・説明が丁寧。
混同しやすい箇所をキチンと説明している。
あくまでWordPressユーザー向け。
<コメント>
この頃の実力で1週間ほどで8割読んでいったんやめた。
内容は最初から読んでいけば迷うところはない。
6章目でjQueryがでてきて、以前お問い合わせフォームを自作しようとしたときに
(1つも、HTMLの知識さえない時の話)
に「jQueryのせい」でうまくいかないという思い込みがあったため
ここでいったん次に説明するjQueryの本に移行。
全体的に見て良書。
今は古びていると言われる技術。
一部では「学習する意味はない」「これを学ぶくらいならReact学ぶ」
といわれ続けている可哀そうな技術。
しかし、それらは「知っている人」つまり「体験者からの助言」
なのでやってやると決意。
学習コストは限りなく低いと言えるのでまだjQueryがどんなものか想像できない人で、
これらの論に振り回されている初学者は
これを買って3日以内にいっきに仕上げてしまうことをお勧めする。
そして、実際にどうなのかを判断すればよい。
3000円払って3日で悩みから解放されるか、
お金と一時的な時間をかけない代わりに悩みを消さないで日々を過ごすかは
自分で決めればよい。
<コメント>
これがかなり大変だった。
評判ではPythonそのものが簡単な言語と言われているところが多く、
この本の書評に目を通している際も良書と判断したので買ってみた。
Pythonの記述の仕方はとても勉強になったし(記述が)簡単といわれる理由もわかった。
この本ではPythonの基本が順におさえらていっているのを
読者としても感じることができる。
しかし、用語がどんどん出てくるので、
他言語での学習経験がない人は出てきた用語をおろそかにすると、
「新しい専門用語が既出の専門用語で解説される」という事態に対処しきれなくなる。
この本を読み切った後はレベルアップしたと実感(錯覚?)した。
Sassを導入しようとしたときに、あまりよく覚えていないが
「Rubyのなんかのやつ」(すみません、後で調べなおしておきます)が
必要でRubyそのものを知っていなくとも大丈夫なのは想像できていたが、
いい機会だと思ったので購入。
バックエンドの技術だとかフロントエンドの技術だとか選り好みする権利は
しっかりと学習を続けた人が初めて口にできることだと考えていたため即決。
内容は、ここまでの本(特にPythonの本)を解決する能力がある人には
難しいことはない。
Rubyの全体像を俯瞰するのにちょうどよい。
ジェネラティブアート-Prccessing-
ジェネラティブアートの定義だとかは
いくらでもでてくるのでここでは言及しないとして、
Processingも「芸術」に関するプログラミング言語の一種です。
もともと私は芸術人間だと自分で思っているのですが、
端的に言えば絵や音楽といった芸術分野がとても好きなのです。
この頃Processingの存在を知り、
①芸術×プログラミングという魅力にひかれた
②日本でプログラミングを生業とする人の中で、この実社会に役に立ちそうのない「芸術」用のプログラミングを極めている人口の少なさ
③自分の将来像として、ビジネスとして役に立つという直感
これらを主な理由として
完全にハマってしまいました。
ということで以下はProcessingの関連本になります。
買ってみたProcessingの本
Processingは初心者にこそお勧めだと思います。
私がProcessingに出会ったのはプログラミングにだいぶ慣れた後だったのですが、
プログラミング特有の関数的な難しさは
直感的にスケッチ(エディタ)上に結果として反映されるので
プログラミングアレルギーが起きにくいと同時に、
「プログラミングってこういう構成・感覚なのね~」
というのがとても分かりやすいのです。
これを学習初期に手に入れられれば以後の学習が簡単だと思えるはずです。
Processingに関してはなかなか本の価格が高いものが多く手を出しずらいです。
しかし、私は今後もまだまだ極めていくつもりです。
結局初心者に言いたいことやまとめ
まず第一に
HTMLやCSSなどよりはProcessingの方が挫折率が低いと思う
ということを述べさせていただきたいです。
理由は単純でそっち(Processing)の方が面白いからです。
小中学校などで図工や美術などが好きだった人ほどお勧めです。
※ちなみにPCへの導入方法も簡単。特殊な環境はいらない。
(自分の作ったプログラムによっては
クアッドコアのCeleron,RAM8GBだと快適とは言えないことがある)
※私のPCの話です。
もし、WEB系プログラミングをするつもりだったのに
Processingにハマってしまったらそれを極めればよいし、
また雰囲気は違いますが「装飾」という観点から言えば
いずれCSSを勉強した時にも活かせるタイミングが来るはずです。
あえて自分が思い描く道や目標があり、
ブログ等を持っているのであれば
迷わずHTMLやCSSなどから始めてもよいとは思います。
次に本に関してですが、
技術評論社とSBクリエイティブという出版会社が買った本では多くなりました。
どちらも良書が多いのですが、技術評論社は少しお堅いというか難しめな印象で
SBクリエイティブは見てて疲れず丁寧な印象です。
「出版会社」というのは一つの目安になります。
自分がより高い実力を持って批判の目を持つことができる分野で
ある本を眺めたとき、「よい」と判断できた時は
他の自分の実力が及ばない範囲の分野の本を決めるときも
その「出版会社」から出ているものを買うとまず間違いありません。
私が中学・高校生の時によく学習本を「よい」と判断できたものは
ほとんど旺文社でした。
結局はこれらが自分に合っていたのですね。
ですから、学習本は必ず自分の意志で最終決断を下し付き合っていくべきです。
あえて私が初心者に勧めるならSBクリエイティブです。
ところで、HTMLとCSSはいろいろな言語をあたってきた今でも難しいと思います。
もし初心者がHTMLの学習が続かないとしたら「世界観」がないからだと断言します。
私は幸い自分のブログを持っていたので弄り回して
そうした「世界観」やモチベーションを更新できました。
また、一般に言われる手を動かす(コードを書きながら)
というのも半分正解で半分間違っていると断言します。
コードを書きながら学習を進めると理解と慣れという観点から
効率がよいというのには私も同意します。
少し私の話になりますが、
執筆時、塾講師をしています。
客観的に見ても
「教え方と人気と理解という意味では優秀である」と言いたいと思います。
ここで何が言いたいかと思われたかもしれません。
一つ事実として、私は数学が好きなのですが数学は得意ではありません。
しかし、教えを受ける側から人気を得るほど
「納得させる順序の組み立て」と「繋がる膨大な知識」さえあれば
相手は自発的にわくわくしてくれるのです。
なぜ楽しいかは理由はシンプルで
「なぜか?」が解決するだけでなく、
「背景(知識)が繋がった瞬間」がたまらなく楽しいからです。
そして教える側である私と言えば特殊能力を使っているわけではなく、
ただ本を読んで楽しんでいるだけです。
正確に言えば、たくさん本を読んで一つに繋げ直しているだけです。
その組み替えたストーリーを
適切な順序で、適切タイミングで公開しているだけです。
文章で書くほど実は簡単ではないのですが、
これがプログラミング学習でも言えると思うのです。
「フロントエンドとバックエンドではバックエンドの方が難しい」
「HTMLとCSSが難しい」
「泳ぐことが難しい」
これらに共通していることは
世界観を獲得していない初心者である
という点ですよね。
世界観とは世界「観」というくらいなので
個人特有の主観の一種なわけです。
普段から鍛えていない人はここが弱いままなのです。
筋トレでいう超回復のように負荷をかけてようやく世界観も成長します。
つまりわからないものはわからないということです。
そしてつながった瞬間が面白いということです。
だからこそ次にどういうトライをするのかが大事なわけで、
もう一度進むのか、それともやめるのかで
目の前の壁を崩せるのか、超えられるのか
小さくするのか、それとも遠回りするのかが決まります。
世界観は自信によってもある程度成長します。
そして自信は知識があればカバーできることが多いです。
つまり、知識の暴力さえあれば世界観を支配できます。
ということで「私流」の学習の進め方は
どんどんやる。わからないものはわからないのだから堂々と保留する。
保留したものは毎日少しだけ考える。
わからなかったらまた保留。
そしてわからないなりに別の関連書物で学習する。
これを繰り返す。
これによって
自然と先に進めるという状況が今までも何度もありました。
時が解決してくれるという表現は
時が”仕方ないから”「解決してくれる」のです。
限りある自分の人生、時に任せてどうするのですか‼
自発的にエネルギーを燃やさずに道は開けません。
最後は少し熱くなりましたが、
結局は
①自分にあっている書物か
②やる気はあるか
③解決する勇気はあるか
だけです。
上記で出てきたものを見やすいようにまとめておきますので
是非アクションを起こしていきしょう。
一覧