プログラミングを楽しむにはどうしたらいいですか?
答えのない質問だとは思いますがそれでも聞かせてください。
ベストアンサーは主観的な考えで選びます。
いろいろなご意見を聞きたいので回答期限は3日ぐらいにします。
私はプログラミングを楽しめません。
何が面白いんだとか意味とか答えを考えてしまいます。
特に感動することもありません。
プログラミングを楽しみ方を教えてください。
私は勉強が嫌いです。
新しい技術を覚えるのには頭が痛くなります。
3回ぐらい本を読まないと理解できません。
できることが増えたりモノ作りは好きです。
プログラミングや作品ができたときはうれしいです。
聞きたいこと
あなた独自のプログラミングを楽しみかた。
プログラミングのこだわり。
明るい未来のイメージの仕方。
向上心や姿勢の保ち方。
好きな先輩や尊敬できるプログラマー。
設計の面白さやこだわり。
勉強の楽しみ方。
プログラミングに感動の仕方。
プログラミング愛を語ってください。
プログラミングを通しての夢。
やる気の出し方。
上記以外でもなんでもご自由に語ってください。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/25 04:24
回答17件
0
ベストアンサー
プログラミングを楽しむにはどうしたらいいですか?
そもそも、「楽しめるようになるために頑張る」という発想自体、方向性がずれていると感じます。
楽しめないなら趣味として続ける必要はありませんし、仕事としてどうしてもしないといけないのなら、「楽しまないといけない」という強迫観念にとらわれるよりは、「仕事は仕事」と割り切ったほうが、精神的に楽になると思います(どうしても合わないなら「転職」という手段もありますし)。プログラミング界の話ではありませんが、将棋のトッププロである渡辺明さんも、もはや「将棋は仕事」と考えて指しているとのことです(参考)。
リーナス・トーバルズさんの「それがぼくには楽しかったから」や、まつもとゆきひろさんの「手段のためには目的を選ばない」(Rubyの開発も、もとから使い道を考えていたわけではなく、単に「作りたい」という情熱がエネルギーだった)というように、有名なプログラマーの人は元からやる気に満ち満ちている人も多いです。
投稿2017/10/25 00:53
編集2017/10/25 00:59総合スコア145121
0
心理学的にやる気と作業の難易度は密接な関係があるとされます。
すなわち、現在の実力に対して目標が簡単すぎても難しすぎてもやる気が出ません。
当然のことと思うかもしれませんが、その当然のことができてないからやる気がでないのです。
teratailの質問を見る限り、初心者は目標を高くしがちなので、
潔く目標を下げることが有効と考えます。
目標の下げ方ですが、大本の目標があるなら、それを分割するのがいいです。
例えば私はゲームプログラミングなんてやったことないですが、
Unityでテトリスを作ろうと思いたったとすると、
- Unityをダウンロードする
- プロジェクトを保存してみたりする
- なにか文字でも表示してみる
- 箱でも表示してみる
- 箱を動かしてみる
...
ぐらい初歩的なことから、細かく目標立てると思います。
次やろうとした目標が実は難しそうだと気づいたら潔く目標を置き直します。
また、参考書に沿って進める場合は、ただ写経していると、目標が高い方へ強制連行されがちです。
ですので自分の実力と現在の目標がちょうどいいかより一層の注意が必要です。
まとめると
- 身の程を知る。
- 自分ができる目標を立てる。
- 立てた目標ができそうにないなら目標の方を変える。
のが結局やる気出ます。
投稿2017/10/25 02:30
編集2017/10/25 03:04総合スコア13512
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ものすごく根本的なところをお伺いしますが、
なぜ楽しくないプログラミングをやってるのですか?
かくいう私も、
「プログラミング大好き! 三度の飯も寝る間もかなぐり捨ててやりたい!」
というほどではないです。
冷たい言い方かもしれませんが、プログラミングは 問題解決の手段 です。
もし、ゲームを作りたいのであれば、もしかするとそれはボードゲームやアナログゲームにしたほうが適切な場合もあるかもしれません。
また、仕事だったら、無理にプログラミングせずとも、Excelを使いこなせばすぐ済んでしまう計算かもしれません。
勉強は嫌いとおっしゃいますが、好きなことに対する探究心があれば、それが理解に苦しむことだったとしても、自分は理解しようと、文献を漁ったり、それこそコーディングして実験してみたりします。たとえ他人がそれを勉強とは言わなくても、本人にとっては立派な勉強ですよ。本人含めて気づいていないだけで。
幸い、完成したときに達成感を感じる感性は死んでいないようですね。
それでいいんです。
達成したときのことを想像しながら、プログラミングが最適な問題解決の方法だと思うものを、ひたすら作るんです。
tl; dr
自分は正直人間が嫌いなためにコンピューターにずぶずぶハマっていったといっても過言ではないかもしれません。
とにかくおもちゃをばらしたり、機械の内部構造がどうなってるかあれこれ空想を膨らませ、それに近いものやよくしたものを作るのが、友達とテレビやゲームの話をするよりも楽しいという人間です。
おかげで27歳まで彼女も居ない、友達はいるけど、話しててあまり楽しくない。というような寂しい人間です。
だからこそ、友達はパソコンだけみたいなもので、問題解決の手段としてのコンピューター利用を目的にしてしまうくらいのバカなことはしょっちゅうやります。つい最近も、どうしても左右分離式キーボードが欲しいからと自作しようとか、一聞すると「は?」となることを考えています。
プログラミングをいやいややっているのなら、プログラミングはおろか、パソコンからいったん離れた創作活動をするといいと思います。
それで、
「あー、これコンピューターとかプログラム組んだら楽できそうだなあ」
と思ったら帰ってきたらいいんです。でやっぱりだめなら離れればいいし。
曖昧な答えを入れたら答えてくれないコンピューターと付き合って、疲れている、もしくは疲れやすいのでは?
まあ、ゆっくり付き合えばいいんですよ。それでやっぱり嫌いなら嫌いでいいんですよ。
投稿2017/10/25 01:11
総合スコア2244
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/25 04:41
2017/10/27 03:04 編集
0
心の持ち用の話であれば
- 義務だと思えばつまらないが、権利だと思えばたのしい
- 仕事だと思えばつまらないが、自己表現だと思えばたのしい
- やらされてると思えばつまらないが、やっていると思えばたのしい
- ノルマだと思えばつまらないが、達成目標だとおもえばたのしい
- つらいと思えばつまらないが、楽だと思えばたのしい
しかし、こういうのって経営者や管理者側の論理であって
洗脳によって社畜になりブラック企業化していく流れです
仕事というものはそもそもつまらないものなんだからさっさと終わらして、
仕事がおわったら愉しめばいいじゃないですか
投稿2017/10/25 01:25
総合スコア114572
0
ものすごく単純な意見ですが・・・
作りたいものがあれば作る。
なければ作らない。
だけですかね。
作りたくないものを作ってもおもしろくないですし
作りたいものを作ってるから楽しいんだと思います。
masa.netさんも
できることが増えたりモノ作りは好きです。
プログラミングや作品ができたときはうれしいです
とおっしゃっているので、それが全てだと思います。
あとはそれがどれだけの割合を占めているかだけかもしれませんね。
もちろん楽しくない時だってあります。
特にお仕事にされているのであればつまらない割合の方が多いかもしれません。
(プログラマの仕事を始めたばかりの時はそうでしたかね。
設計やテストばかりで実装するのなんて1年のうち10%ぐらいでしたし・・・)
今は割と楽しいですし、自分が作ったものがお金にもなっているので
とても未来のある分野だとも思いますよ。
プログラムが働いてくれれば自由な時間も増えますしね。
意見は他にもありますが長くなりそうなので
もし何かお聞きしたいことがあればコメントいただければお答えします^^
投稿2017/10/25 00:50
総合スコア928
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/25 04:54
2017/10/25 05:02
0
PC触っていて、不便だなぁと思っていて、それを解決するためのツールをググっても存在しない時に、自分で作ります。その時には「俺この領域で第一人者だわぁ。俺の時代来たわぁ」って思えます。
投稿2017/10/25 01:45
総合スコア29
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
興味がないから楽しくないんでしょうね。
興味がある人なら「これはどうやるんだろう?」「あれはどうやっているんだろう?」「これを作ってみよう」と興味が尽きないものです。
そして自分が目的としたものが苦労してできたときは達成感があります。
しかしこれが特に苦労せず、過去の知識の組み合わせでできてしまうと、たいして楽しくもなかったりします。
ただ手を動かしてただけ。頭を使わないと楽しくないんですね。
私の場合はですが。
料理に例えたらどうでしょう。
0. 喜んで料理する人
0. 仕方なく料理する人(家族のため)
0. 仕方なく料理する人(お金のため)
0. 料理は面倒だけど特定のジャンル(例えばお菓子作りなど)は好きな人
0. 料理なんて面倒、店で食べればOKな人
0. 誰かに食べてもらいたくて料理する人
質問者様は3か5でしょうかね。
1なら申し分ないんでしょうけど、4か6のような理由があると「やろう!」という気になるかもしれません。
投稿2017/10/25 01:06
総合スコア16996
0
身も蓋もないですが、たぶんあなたにプログラミングは向いてないんですよ。
プログラミングは向き不向きがすごくある分野だと思うので、こればっかりは仕方ないです。
自己満足のためにスキルを磨く職人肌の人が向いてます。
シンプルで綺麗なロジックが書けた時は、たまらない気持ちになりますねぇ。
でも、それをシンプルだと思うのも、綺麗だと思うのも主観なので、やっぱ自己満足ですねぇ。
楽しみ方もなにも、コンソールに "Hello World" と出ただけで、とても興奮しました。
JavaScriptでalertが出ただけで楽しかった。
現在も、今までできなかったようなことが、できるようになっていく技術の進化に興奮します。
あなたみたいなタイプはたぶん、企画とか、マーケティングの方が向いてるんじゃないかと思いますね。
作るのは誰かに作ってもらえばいいだけです。
プログラミングを楽しいと思わない人は、楽しんでいる人よりも、
決していいものを作れないと思っています。
本気でプログラミングを好きな人には、マジで勝てる気しませんからね。
私はプログラミングを楽しめません。
新しい技術を覚えるのには頭が痛くなります。
と
できることが増えたりモノ作りは好きです。
プログラミングや作品ができたときはうれしいです。
ここに矛盾を感じますが。。。
「好き」や「うれしい」と「楽しい」は別ってことなんですかね。
投稿2017/10/25 02:46
編集2017/10/25 03:02総合スコア4666
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
プログラミングを楽しみ方を教えてください。
私は勉強が嫌いです。
お勉強が好きな人間はそもそも東大みたいな名門大学に入って、
文系の官僚や大企業の幹部候補として入って口開けて呆けてるだけで大金が転がり込むような仕事してるでしょ。
もしくは経済学を専攻して経営者や投資家でエンジニアリングとは別の所でお金を転がして儲けてる。
エンジニアってのは、そのレールから外れてるわけで不快感を覚える人間が相対的に多いってわけ。
勉強嫌いの人間が居ても良いんだよ。
どうしても技術に対する勉強にモチベーションが保てないなら、
いざという時の為に基礎体力でも作っておいたらどうかな?
個人的に推奨するのは下記3つ
- タイピング速度の練習
- ターミナルやVim or Emacs等のCLIエディタの操作を覚えたり、.vimrc等をひたすらいじる
- 他人のツイートや勉強会等に参加してみる
例えばタイピング速度ならTyping.io行けばWPMという数値でタイピング能力が表示されるからゲーム感覚で楽しめるし、
ターミナル環境を弄ったりCLIエディタをいじると、画面がダイナミックに変わって楽しい。
しかもこの3つの要素は相乗効果で学習の成果を一気に引き上げる効果もある。
タイピング速度が速くて、ターミナルに慣れていると、
勉強会で他人のセッションやLTを聞いている最中、ぱぱっとターミナルを起動してREPLで動作を確認なんて事も出来るようになる。
例えばMacbookならターミナルでopen [URL]
というコマンドを打ち込めばWebサイトを開けるからね。
自己紹介の最中にこいつ何者やねんまで確認できちゃうわけ。
投稿2017/10/25 02:32
編集2017/10/25 02:33総合スコア21158
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
それ、楽しむ必要ある?
他の人と被っていますがせっかくなので回答します。
プログラミングをするのは「何かを作る為」でしょうか?
それとも「プログラミングをする為」でしょうか?
「何かを作る為」ならば、まず「わざわざ苦労してまでプログラミングをする必要はあるか?」という考慮が必要です。
別の言語やツールではダメなのか? 既製品は使えないのか?
仕様の方を変えられないか? よしんば誰かに丸投げ出来ないのか? などなど、
**「楽しくないならば、やらない(ように出来ないだろうか)」**という考え方をします。
「プログラミングをする為(会社の方針でどうしてもその言語を覚えないといけない等)」ならば、そこに意味も答えもありません。
**「楽しくなかろうが、やらなきゃいけないならば、やる」**だけです。
つまらないなりに、どうしたらもっとマシなものに出来るのか。
どうやったら理解出来るのか。独学が無理なら誰かに助けを求めるのも1つの手かと。
この「手法を考える」行為そのものが嫌だ、金目的であってももうやりたくないということなら……
それをしなくていい方法(仕事を辞めるとか)も必要だと思います。
ちなみに本の理解についてですが、1冊ではなく色々な文献を読んで、使ってみることが大事かと。
理解出来ないのはその資料が悪いかもしれません。(既にやっていたら申し訳無い)
3回で分かるなら良い方なんじゃないですかね?
何にせよ、プログラミングをするだけがプログラマーではないので
「自分なりの問題解決方法」を模索するのが良いかと思います。
私の場合
プログラミングで楽しいと思うことは、
「ちゃんと動いた時」「効率化出来た時」の2点です。
動かないプログラムは楽しくないです。
ググっても解決方法の分からないエラー、リファレンスに並ぶ謎の単語、合っているのか分からないHowtoサイト……このような壁にぶつかっている最中は当然面白くないです。
が、何とかかんとか修正した時(或いは上記のような問題にぶつからず、奇跡的にすんなりと動作した時)、「すげぇ!楽しい!」と感じます。
逆にどうしても無理そうなら別手法を考えたり前提条件を変えちゃいます。「何かを作る為」の開発であって、「その手法を使う為」の開発ではないからです。
後者は更に趣味性が高いのかなと。
ぐちゃぐちゃなコードを綺麗にまとめ上げたり、処理速度を高速化させるのは個人的に楽しいです。手作業で行っていた作業を自動化!なんて最高です。
テトリスやぷよぷよ等の「積み上がっていた物を消すゲーム」が好きな自覚があるので、その延長線なんだと思います。
こちらはある意味「プログラミングをする為のプログラミング」と言えるかと。元コードがクソな程燃えます。
投稿2017/10/25 01:39
総合スコア11425
0
何が面白いんだとか意味とか答えを考えてしまいます。
意味がないことはやらないのがプログラマです。
プログラムが楽しめないのは無理もないことだと思います。
やってみたら判るということもありますが、すでにやってみたのですから、目的を捜すことから始めるのがよいと思います。それに向かって最低限の勉強をしましょう。
それで、しっかり一から勉強しなきゃダメだと思ったらしたらいいです。
(私も、すっごい退屈でしたがHTMLのタグ辞典を読破しました。忘れても読んでおくことが大事だとおもったからです。)
投稿2017/10/25 01:40
総合スコア2883
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
できることが増えたりモノ作りは好きです。
プログラミングや作品ができたときはうれしいです。
その通りですよね。
何か自分が使う便利なツールを作り出せたらたのしいです。
それにつながって、便利なツールを素早く作るための
ライブラリやフレームワークや関数ができると楽しいので
その積み重ねをして楽しんでやってます。
新しい言語とかも、今までとは違う分野の何かを作り出せる
あるいは、今までとは違う速度で何かを作り出せる
から嬉しいのだと思います。
大きい目標に至るまでの、段階をつけて
「これができたら嬉しい」を簡単にできる段階踏んで実現していくと
楽しめるのではないでしょうか。
あなた独自のプログラミングを楽しみかた。
言語を使いやすくするような汎用部品のライブラリを作る。
一度作ったものは二度と作らないような感じに作る。
RPGで経験値を積み重ねて自分の武器が増えていくイメージ。
プログラミングのこだわり。
より読みやすいプログラムが作れるように気を配る。
高速化よりまず動くもの。
明るい未来のイメージの仕方。
高収入を目指したりとか、
周りの人に自作ツールを作ってもらえて喜んでもらえること。
向上心や姿勢の保ち方。
人のQiita記事みて学ぶ。
好きな先輩や尊敬できるプログラマー。
周りに幾人かいる。ありがたい仕事場にいる。
そういう高いスキルの人がいる仕事場を選べてよかった。
自分が技術的に一番できてしまう仕事場もたくさんあって
そういうところは学ぶことは少なかったのでつまんない。
設計の面白さやこだわり。
そこは面白くない。
設計なんて考えてる暇あれば、プロトタイプを作る。
勉強の楽しみ方。
実現したいことをイメージして腕をあげる。
プログラミングに感動の仕方。
プログラミング愛を語ってください。
プログラミングを通しての夢。
よい仕組みができたときとかうれしい。
自分の作る部品やツールを他の人に作ってもらえたら嬉しい。
あるいは、Qiitaやブログなどに投稿するテクニックで
他のプログラマによい影響を与えたい。
やる気の出し方。
誰かの役に立てるってことかな。
スキルが高ければ高いほど、他の人ができないことができるので
いろいろ感謝してもらえて、
そうすれば、収入は高くなっていく、
みたいなふうになっていくのを目指したりです。
投稿2017/10/25 01:39
総合スコア196
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/25 04:25
2017/10/25 13:08
0
プログラミングとはパズルに似ています。ある結果(パズルの答えを得る)ために、いろいろな手順を踏んで、一つ一つ処理をしていくのですから。
プログラミングを楽しむ、とはすなわちパズルを楽しむのと同じだと思います。
クロスワードでも、ナンバークロスでも、ナンバープレイス(数独)でも、間違い探し(ウォーリーを探せとか)でも、何かしらのパズルを「解く過程が楽しい」なら、プログラミングも楽しめるでしょう。
※この手の人がさらに深く耽溺すると、研究者になるような……
投稿2017/10/25 01:36
総合スコア13703
0
楽しみ方
マゾになることです。ままならないことでうっぷんを溜め、うまく行ったときのカタルシスを楽しむ、これが私の楽しみ方です。あとは自分がRPGの主人公かなにかになった気分でいることです。新しい技術を覚えるのはレベルアップして技を覚えていくのと同じです。新しい言語を覚えるのはダーマ神殿の転職のようなものです。転職して覚えた技術は別の職業になったときも役に立ちます。こうすることであらゆる技術に精通した勇者が出来上がります。
勉強法
3回ぐらい本を読まないと理解できません。
ぶっちゃけ私だって読んだ技術書全部理解して覚えているかと言われるとそうではないです。他のことを学んでいるうちに、「あ、あの本の言っていたことはこういうことだったのか!」と歯車が噛み合って、初めて理解に繋がることも多いです。それに、読んだことがある、という記憶さえ残っていれば、その問題に引っかかったときにあの本を読んで調べればいい、ということに繋がります。なので、何度も読んで暗記するのは諦めて、さらっと流し読みするだけでいいのです。むしろプログラマはそれよりも数をこなして知を広げるべきです。覚えられないことにうじうじ悩んでもしょうがないです。アインシュタインだって数学の公式を全部覚えているわけではありません。彼はざっくりいって「調べればわかるじゃないか。なんでそんなこと覚えなきゃいけないんだ」という考え方でした。私もそれに感銘を受け、「知る事」と「覚える事」は別であるという考えにいたりました。なので、勉強なんて「全部覚える必要」なんてないのです。今はネットが発達して、いつでもどこでもかなり詳しい情報を調べることができます。
投稿2017/10/25 01:07
総合スコア9206
0
できることが増えたりモノ作りは好きです。
プログラミングや作品ができたときはうれしいです。
これだけに集中して、これをより多く達成してください
投稿2017/10/25 03:13
編集2017/10/25 03:16総合スコア158
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
趣味は楽しい?
楽しいから趣味になってるんです。
じゃあ、趣味を仕事にできたら楽しいでしょうか?
仕事にすると、楽しくないことも生まれてきます。
純粋に、「楽しさ」>「辛さ」ならまだ趣味の延長として継続できるでしょうけど、
多くの人は純粋な「楽しさ」だけだはない、「辛さ」を上回る何かによって、
やり遂げているのだと思います。
それは、「責任感」であったり、「使命感」であったり、「家族の為」であったり。
そういう人たちは、それらを「楽しい」ことに置き換えることが出来ているわけです。
脳は楽しいことをやろうとします。楽しくないことからは逃避します。
これは生きていく上で当たり前のことです。
なので、脳を上手に騙すことが必要になってきます。
こちら(脳を騙すことによる効果とは?自信やモチベーションアップに繋げる方法)紹介しておきます。
投稿2017/10/25 02:26
総合スコア25138
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。