いつも、本当にありがとうございます。
いよいよGWに突入しましたね。今年のGWも、俺カレンダー1通り勤務のtakaxiです。
拙著『スッキリわかるJava入門』についても、あたたかい書評をいつもありがとうございます。
その筋の学者肌な方には顔をしかめられてしまうような「ゆるふわ系Java入門書」であることは、前回のブログ記事で書いた通りですが、「わかりやすさ・ファースト」の想いを読み手の方に汲んでいただけていること、本当に有り難いことだと感じて日々過ごしています。
スッキリシリーズに仲間が増えました。
そんなスッキリシリーズに、この4月下旬、仲間が増えました!
スッキリわかるJava入門シリーズで大変ご好評いただいている、わかりやすい解説と楽しいイラストで、データベースとSQLをスッキリマスターしていただけます。
もちろん、Java入門書では編集長の目を盗んで索引に「ぬるぽ」を仕込むなどした著者ですので、今回も「学び手の心に大事なことが残るように」いろいろ仕込ませていただいてます。
Javaともども、どうぞ宜しくお願い致します。
告白:「結合と正規化で頭ぽかーん」な新人時代
偉そうにSQL入門書とか書いていますが、正直に告白します。
私、データベースは超ニガテでした。
どのぐらいニガテだったかというと、
人生初の昇進試験で、ある大問(正規化)を、まるまる白紙で出した
ぐらいニガテでした2。
学生時代からプログラミングをしていたので、DBとかもすぐにモノにしそうなものですが、どうもこのSQLやDBの世界になじむのに時間がかかっちゃってですね...。特に、どうも肌に合わないと感じたのが以下の3点です。
- ドリルとかでたくさんSQLを書くと構文を覚えるんだけど、細かいところをすぐ忘れちゃう3。
- 結合の考え方がどうもしっくりこない。なんか、言われればわかるのだけど、腹おちしないというか...。
- とにかく正規化がわからん。ノリ・勢い・フィーリングで、第3正規形風なものができたり、できなかったり。
これらは一度理解してしまえば「どうして悩んでいたんだろう?」と思うようなことなのですが、すごく苦労したことだけはよく覚えています。
そういう方・そうだったという方、けっこういません? 私だけかなぁ...。
私にとってのガンだった、「結合」の解説図
たとえば結合について、私が何につまづいていたかというと、以下のような「よくある解説図」が原因でした。
この図にだけは個人的に相当ウラミがあります4。
一体何なんスか、この「宝箱と見せかけて、実はミミックで血だらけ」っていう懐かしい感じ。
結局「表と表を繋いでいるんではなく、行と行を繋いでいるんだ」ということを理解したのは、随分あとになってからのことです。
『スッキリわかるSQL入門』では、私のように誤った結合のイメージを抱かないようにさまざまな解説を加え、また正しいイメージをしっかり腹おちしていただけるように心がけました。
疑問解決率100%! 紙工作で結合を体験する
そんな私もいまや、データベース系の入門学習をお手伝いするようになりました。実際に学習の様子を拝見していると、SQLの基本命令まではスイスイ理解できたのに、結合(JOIN)が登場して急に「んっ...?!」と悩み始める方は多いです。
一方、技術を伝えるプロの視点で考えても、実はこの「テーブルの結合」という分野は「初心者に対して、文章でも図でも説明が難しい」という特性があります。
そこで今回、『スッキリわかるSQL入門』では、講義でよく使う奥の手を盛り込みました! それは、
ノリとハサミを使った「紙工作」
このSQL入門書、あるページを開くといきなり「ノリシロ」とか書いてあるページがあります6が、印刷所に乱丁のクレームを入れないよう注意してください。仕様です。
このページにある2つのテーブルの内容をコンビニコピーで印刷し、ハサミで切り抜き、実際にDBMSがやっているのと同様に結合作業を手で行うのです。
「それぞれの行について、外部キーが同じ行の紙をもってきて、表の横に貼り付けていく」というこの作業。実際に講義の中で行うと、明らかに学び手の目の輝きが違いますね。さっきまでうつろだった瞳の中に、自信に満ちてきます。
これまで、この方法で結合の挫折から立ち直れなかった学び手はいません。
この春SQLを学ぶみなさんの中に、私同様、JOINがどうもしっくりこない方がいらしたら、ぜひ本書p251掲載の紙工作をやってみてください!
「わからない気持ち」をわかる価値
日々過ごしていると、「この人、頭いいなぁ。作りが違う」と感じる方と出会うことがあります。
超凡人な私は、はじめて学ぶ当時、スッキリとSQLを理解できませんでした。
でも、そのおかげで「わからない気持ち」が少しわかるのかもしれないと、10年以上たった今は思えます。
SQLに限らず、今、新入社員研修や授業で「難しい・わからない」と悩んでいる方も、安心してください。
今回のまとめ
「すんなり理解できなかった者だけが得られるもの」だって、たくさんあるんですよ。
参考
このブログ記事は、著者の個人ブログ(flairDays)から移転掲載されたものです。