私がプログラムを
そこそこ組めるようになって
1ヶ月が経った頃のことです
なんとか動く
ハリボテのような
プログラムは組めるようになり
難しいアルゴリズムも
考えて作れるようになりました
この頃には
プログラミングを楽しく感じ
もっと書けるようになりたい
なんかすごい機能を
自分も作ってみたい
と思うようになりました
というのも
本当にすごい人は
プログラムのほとんどを
一人で仕上げてしまいます
いわゆる「最強男」です
彼の前では
ほとんどの人は
「邪魔者」同然で
彼が作ったものは
いつでも綺麗に動きました
自分でサービスを
立ち上げているようで
現金収入のルートを
いくつも持っているようでした
年に10回は海外へ行き
オーストラリア、イタリア
などのお土産を
もらったりしました
私もこのレベルまで到達したい!
切実にこう思いました。
1人でシステムを作りたい
サービスを立ち上げて
不労所得の源を作りたい
自由な時間を使って
月1回は海外で遊びたい
周囲の人間が
驚いて気絶するような
プログラミングのスキルを
身に着けたい
ただ、ほど遠い気もしました
当時の私のプログラムは
辛うじて動くようなもの
針に糸を通すような
ギリギリ感でなんとか
動いているものばかりでした
機会があったので
彼に直接相談してみました
単刀直入に
「あなたみたいに
自由な生活が
できるようになりたい」
と言ってしまいました。
彼は少し笑いながらも
誠実に答えてくれて
「さすがに今日明日じゃ
無理かもしれない
けれど、1ヶ月あれば
ある程度のレベルまでは
来れると思う」
今となっては
励ますための言葉だったのか
本気だったのかはわかりません
けれど、私にとって
この先の生活に
光が差したような気がしました
「それなら、今から
意識しておかないといけない
大事なことがある」
先を見据えて今からやるべきこと
サービスを作る上で
とにかく大事になるのが
『デバッグを必ず行うことだ』
と言われました
ユーザー登録のあるもの
現金の絡むもの
これらのサービスで
ミスは命取りになります
なので
あなたは、今から
デバッグをする癖をつける
必要があります
ハッカー的視点を持つことも
必要になってきます。
数字を入力するなら
負の値
0
とても大きい値
これくらいは
試してみないといけません
このように
「これは試す」というものを
作り上げていってください
これは危険な入力か
JavaでString型の
入力を受け付けて
それをそのまま入力する場合を
考えてください
例えば、その入力された文字列に
「//」が含まれていると
結果はどう得られるでしょうか
Javaでの「//」は
コメントの記入になりますよね?
できれば、あなたは
今すぐ試してみてください
(試してみた人は↓へ)
P.S.
今回のはエラーも何も
起きなかったと思います
でも、「これどうなるんだ?」
と感じたはずです
そうやってデバッグの癖を
つけていくことが大事です
実際に、入力によっては
人権侵害や情報漏洩で
訴えられるようなマズいことになる
言語も存在するのです