私がプログラムをそこそこ組めるようになって

1ヶ月が経った頃のことです。

 

 

なんとか動くハリボテのような

プログラムは組めるようになり、

 

 

難しいアルゴリズムも

考えて作れるようになりました。

 

 

この頃には

プログラミングを楽しく感じていて

 

 

もっと書けるようになりたい!

なんかすごい機能を自分も作ってみたい!

 

 

と思うようになりました。

 

 

当時の同僚にもいましたが、

 

本当にすごい人はプログラムのほとんどを一人で

 

仕上げてしまいます。

 

 

 

いわゆる『第一線で活躍するエンジニア』ですね。

 

 

彼の前では、ほとんどの人は「邪魔者」同然で

 

 

彼が作ったものはいつでも綺麗に動きました。

 

 

自分でサービスを立ち上げているようで

現金収入のルートをいくつも持っているようでした。

 

 

年に10回は海外へ行き、オーストラリア、イタリア

などのお土産をもらったりしました。

 

 

 

私もこのレベルまで到達したい!

 

 

切実にこう思いました。

 

 

1人でシステムを作りたい

 

サービスを立ち上げて不労所得の源を作りたい

 

自由な時間を使って月1回は海外で遊びたい

 

周囲の人間が驚いて気絶するような

プログラミングのスキルを身に着けたい

 

 

ただ、ほど遠い気もしました。

 

 

当時の私のプログラムは

 

辛うじて動くようなもの

針に糸を通すようなギリギリ感でなんとか動いているもの

 

ばかりでした。

 

 

 

 

機会があったので

彼に直接相談してみました。

 

 

単刀直入に

 

 

あなたみたいに自由な生活ができるようになりたい

 

 

と言ってしまいました。

 

 

彼は少し笑いながらも

誠実に答えてくれて

 

 

「さすがに今日明日じゃ無理かもしれないけれど、

 

1ヶ月あれば、ある程度のレベルまでは来れると思う

 

 

今となっては

励ますための言葉だったのか

本気だったのかはわかりません。

 

 

けれど、私にとってこの先の生活に

光が差したような気がしました。

 

 

「それなら、

今から意識しておかないといけない大事なことがある

 

 

〜先を見据えて今からやるべきこと〜

 

サービスを作る上でとにかく大事になることは

 

デバッグを必ず行うことだ

 

と言われました。

 

 

ユーザー登録のあるもの

 

現金の絡むもの

 

 

これらのサービスでプログラムのミスは命取りです。

 

 

よってあなたは、

 

今からデバッグをする癖をつける

 

必要があります。

 

 

ハッカー的視点を持つことも必要になってきます。

 

 

数字を入力するなら

 

 ・負の値

 ・0

 ・とても大きい値

 

最低限これくらいは試してみる必要があります。

 

 

状況ごとになりますが、このように

「これは試す」というものを作り上げていってください。

 

 

〜これは危険な入力か〜

 

PHPで入力を受け付けて

それをそのまま入力する場合を考えてください。

 

 

例えば、その入力された文字列に

「//」が含まれていると

 

結果はどう得られるでしょうか?

 

 

PHPでの「//」はコメントの記入になりますよね?

 

できれば、あなたは今すぐ試してみてください。

(試してみた人は↓へ)

 

 

 

 

 

 

 

 

 

 

 

P.S.

 

今回のはエラーも何も

起きなかったと思います。

 

 

でも、「これどうなるんだ?」

と感じたはずです。

 

 

そうやって

デバッグの癖をつけていくことが大事です。

 

 

実際に、入力によっては人権侵害や情報漏洩で

訴えられるようなマズいことになるものも存在するのです。

 

 

最後まで読んでいただき、ありがとうございました。