つてとのブログ

【必見】徹底考察!趣味のプログラミングはつまらない?【趣味と仕事の違いも解説】

f:id:tachitutetoNosuke:20220123162929p:plain

 

 

こんにちは、たちつてとです。

 

プログラミングっておもろいんすか?

うーん、どちらかというとつまらんよ。

マ?やっぱ趣味にするのやめとこうかな...

おもろいときもあるよ。

どういうことやねん...

 

本記事は

  • プログラミングって面白いですか?
  • プログラミングってつまらない?
  • 「センス」があるか/続けられるか不安

という方に向けて書いています。

 

即答えを知りたい方は、上の目次より

リンクを踏んでみてくださいね。

 

僕はというと

  • プログラミングは楽しいとは思う
  • 中小IT企業で2年目
  • 大学3年〜大学院で研究内容に物理シミュレーションを利用
  • 自作アプリを独りで利用
  • 自作の掲示板システムを相方と利用

です。

 

近年、小中高の学生までもプログラミングが

授業として導入され、教える方も教えられる方も

大変だなという状況です。

 

学生はもはや選択の余地がありませんが、

大学生や社会人の方、

趣味としてのプログラミングってどうなの?

という疑問にお答えしようと思います。

 

ちなみに、面白いかという話はともかく

プログラミングを学ぶメリットはこちら。

tachitutetonosuke.hatenablog.com

 

趣味と仕事で答え方が異なる

一緒くたにおもしろい!とはなかなかいえないんですね...

また、「どの部分」が面白いというのも

人によって違うかなと。

 

だから、つまらなくもあるし、面白くもあります。

 

さて、

この順番で記事を書きました。

  1. 趣味としてのプログラミング
  2. 仕事としてのプログラミング
  3. 共通する、必要な適正(センス)

適宜、趣味と仕事で何が異なるか

についても触れていきたいと思います。

 

趣味としてのプログラミング

 

 

面白い or つまらない

エラーでつまったら、つまらない。

思い通りのものができたら、面白い。

これにつきます。

 

つまらない要素

例えば、ゲームとか半沢直樹とかって

ある程度のストレス要素があるから

問題を解決したときの爽快感がある。

 

このストレス要素が強すぎると

ユーザ/視聴者は離れていきます。

プログラミングは、まさにこれです。

 

面白い要素はあるんですが

エラー吐かれて解決できないときの

ストレスフルな感じが大変強いです。

 

エラー吐かれると、作業が止まってしまいますからね...

面白い要素

これは作る「過程」だと思います。

 

自分で作りたいものを決め、

ちゃんとその作りたいものが出来上がる。

 

この瞬間も満足感はありますが、

作りたいものを実現するためには

どうしたらいいか、自分の頭ひとつが頼りです。

(もちろん具体的なコードの書き方とかはググりますけどね!)

 

例えば、ググって出てきた

あのコードとこのコードをいい感じに合体させれば、

自分のやりたいことできるのでは?

 

これに成功すると、めちゃくちゃ嬉しいです

このような完成する過程の中で

プチプチと嬉しい瞬間があります。

 

ストレス要素と楽しい要素のバランスが、微妙な感じっすね...

合理的ではある趣味

例えば、

  • 場所を取らない
  • (他の趣味に比べると、)経済的

という利点があります。

場所を取らない

必要なものといえば

  • パソコン
  • 勉強用の書籍
  • インターネット

これくらいなので、ほとんど場所を取りません

作成物も当然、電子的なので

全てパソコンの中に入っています。

コンパクトですね!

 

木から机を作るぜ!!!

→いらなくなった...

はちょっと困りますが、

アプリ作りではゴミ箱に

そっとドラックすればいいですからね。

 

経済的

趣味としてはお安い部類に入ると思います。

パソコンさえあれば、

勉強するための書籍があればOKです。

 

1万円くらいで、3冊は購入できます。

たぶん、いりませんが。

 

お金儲けをしたいか

スマホアプリには、「課金」があります。

プログラミングをする=アプリを作るってことは

「課金」をされる側になりますが、

お金儲けのためのプログラミングなのか

っていうのが大事になります。

 

そうなると、趣味というより

仕事してのプログラミングを意識する必要があります。

(これはこのあと)

 

とはいえ、最終目標が金儲けであれ

最初は誰もが初心者。

 

最初の段階で

プログラミング、結構楽しいじゃん!

となった場合は、その感覚を楽しむほうが重要かと思います。

 

仕事としてのプログラミング

趣味との違いは

  • 納期がある
  • 改修しやすいプログラムを組む必要がある

ですね。これについては後述。

 

まずは。

面白い or つまらない

つまらないどころか大変です。

面白さを感じる余裕がありません。

が、最近は少しずつ楽しくなってきました。

 

というのもお客さんが

何をしたいのか共感できるようになってきたからです。

 

最初は上司の方に言われたことを

精一杯やることしかできなかったですが、

最近は、少し余裕が出てきて視点が広くなってきました。

 

ってこれ、プログラミング関係ないか。

まあ、お客さんの業務を理解すること

「楽しい」っていうのは間違いなくあります。

 

知識欲が旺盛な人ほど、お得です。

 

さて、最後に僕を追い詰めた原因についてです。

納期がある

要は期限です。

スマホアプリで「課金」してもらいたいって方も

意識する必要ありです。

 

お客さんとこの日までに

このアプリ/システムを使ってもらうと

約束します。

 

車で言うと納車だったり、

約束という意味では、

この日に冷蔵庫を下宿に運んでください

と同じ。

 

これ、1日でも遅れたりすると、

イラッとしませんか?

そういう感覚です。

 

スマホアプリの「課金」の話では納期はないかもですが、

要望に対してなるべく迅速な対応をしないと

ユーザが離れる可能性があります。

 

その代わり、アップデートで喜んでもらえたら、自分も嬉しそう!

改修しやすいプログラムを組む必要がある

勉強でいうと、

後から見返しやすいノートを作る

って感じでしょうか。

 

全部黒文字のノートって見にくいですよね?

書いた時はいいんですが、後から見返すと

何が大事だったんだっけ?となる。

大学生の時の僕です

 

プログラミングでは、コメントといって

コードの補足を日本語で書くこともできます。

 

コメントもそうですし、コードの書き方自体も、

思いついたものをそのまま書くと、

後々めんどくさいことになった

ということが多々あります(ひどい時は書き直し)。

 

人のソース見るときは、いつもドキドキです。

そうか...自分の作業時間もコードの書き方で決まるんか...

 

いずれの要素もめんどくさい

納期も改修のしやすさ=保守性もめんどくさい。

 

入社当時から1年間と半年くらいは、

納期が本当にプレッシャーだった。

入社して2年経たないくらいでなれてきました。

 

保守性は正直いまだにわからない

これは

お客さんがどういう要望を飛ばしてくるか

=お客さんの業務を理解しているか

が要になります。

 

業務を理解して、要望をきれいに予測しておくと

いいんですがこれが難しい。

 

ってな感じで、仕事としてのプログラミングです。

これから本職になるって方の参考になればいいな。

 

必要な適性を具体的に

最後にこういうタイプの方はハマるんじゃないかな?

という話です。

 

以下が必要な適性かなと思います。

  • 忍耐力・粘り強さ
  • クリエイティブが好きか
  • 論理思考に慣れているか(必須ではない)

ちなみに、重要度もこの順番(降順)かと思います。

順番に詳しく見ていきます。

 

忍耐力・粘り強さ

最も重要です。

4,5年以上プログラミングやってる僕が断言します。

あとの要素はおまけです。

 

本当に、何度も何度も何度も何度も

パソコンからエラーをはかれます。

 

慣れてくると、さくっと対処できますが、

特に経験が浅いほど、エラー解決に時間がかかる。

それでフラストレーションが爆発なんてことも。

 

ひどい時は3時間以上

同じエラーで悩みました。

今思えば、一人で全部解決しようと

してたからですかね?

 

以下で述べる、論理思考能力も要は慣れです。

この忍耐強さがあれば、論理思考も自然と身に付きます。

 

何しろ、自分が思ったものが完成するまで

プログラムを組み続けるという

忍耐強さが最も重要なのです。

※組んだのはいいけど、

 思ってたのと違う、がごく稀にあります。

 

クリエイティブが好きか

要は、ものづくりが好きかと同じことです。

自分がサービスを受ける側ではなく、

作る側になるのは好きか。

 

といっても、

自分が頑張って作ったものが完成して

嬉しくない人はなかなかいないでしょう。

 

これは気分にもよりますから

そこまで重要ではないです。

 

僕の話になりますが、

僕はどちらかというと好きです。

だらだらyoutube見る、とかがあんまり好きじゃない。

 

しかし、常にアプリ作りてええええええええ!

って思っているわけでもないです。

仕事で疲れている時や、日曜日の夕方とかは

全くプログラムを組みたいと思いません。

 

気持ちも一貫してるわけじゃないのね。

 

論理思考に慣れているか(必須ではない)

  • Aならば、B
  • Bならば、C
  • CとDを認めるとE

プログラミングの基本です。

が、プログラミングをやってたら

自然と身に付きます。

 

特に

エラーの原因は何かを調査したり、

自分の実現したいことをプログラミングに落とし込もうと

するときに、著しく成長する能力ではないかと思います。

 

だから、

得意な方はもちろんですが、

得意でない方も特に気にする必要はありません。

根気のほうが大事なので。

 

最後に

迷っている方は、とりあえずやってみたらいいと思います。

別にプログラミングを学んで、

プログラミングだけができるようになるわけではなく

その過程で「様々なこと」を学べます。

 

tachitutetonosuke.hatenablog.com

 

「様々なこと」については、↑過去記事にありますので

もしよろしければご覧ください。

 

時間は取られる趣味ですが、

なかなか知的でいい趣味じゃないかな、と

僕は思っています!

 

ちょっとかっこいいよね...

そうかな、鼻につきそう。

おだまり!

 

過去記事でも紹介していますが

プログラミング教室もあります。

2マン!?なのは僕も痛いほどわかるんですが

資料請求は無料なので、請求得かと思います。

 

資料は僕もみています。

コースについてあるのはもちろん

IT技術者へのニーズ、トレンド等も書いてあって

へぇーと読んでいました。

こちらもご検討してみては?

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

 

この記事を気に入っていただけた方は、

ブックマークツイートしていただけるとうれしいです。

ブログを更新する励みになります。