ざっくりした半分雑談のような質問になってしまいますが・・・
プログラミングを始めて間もないのでまだまだ勉強が必要ですが、色々な人の意見を聞いて見たいので質問してみます。色々プログラミングができる人に聞いてみたいので箇条書きですが色々聞いてみます。
・プログラミングって個人差はありますが、難しいですか?
・この先プログラミングができるということは社会的に価値を持つでしょうか?それともあまり重宝されなくなっていくのでしょうか。
・私は文系で、技術そのものに興味があるというより自分のアイデアを実現することを目指して勉強しています。今プロトタイプを作ろうとして、それでも大変さを実感しているのですが、いずれ自分の作りたいものがすぐ作れるようになるのでしょうか。
・プログラミングが得意なのは、やはり数学や物理が得意な人が多いんでしょうか?これは数学や物理の知識がプログラミングに必要という意味ではなく、数学や物理に必要な適性がプログラミングにも必要かという意味です。私はプログラミングをやっていて、英語や国語や社会より数学をやっている時と同じ頭の部分を使っていると感じることがあります。
・簡単なシューティングゲームやそこそこ実際に使えるWEBサービスを作るのに、毎日3時間くらい勉強してどれくらいの期間がかかりますか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答7件
0
・プログラミングって個人差はありますが、難しいですか?
どんな事でも個人差はあります。ただ、プログラミングは他に比べて個人差が激しいと思われます。しかし、実際に統計的に調べたものがあるかどうかもわからないので、嘘か本当がまではわかりません。
個人差と言っても、数学のテストで点数が低い子と高い子がいるのと同じです。同じ課題をプログラミングするとしても、数分で終わるか、数時間かかるか、数日かかるか、数週間かかるか、数ヶ月かかるか、数年かかってもできないか、という違いであらわれます。そのため、一定以下のレベルの場合は、仕事にならないと判断されます。
・この先プログラミングができるということは社会的に価値を持つでしょうか?それともあまり重宝されなくなっていくのでしょうか。
会社にとって個人が持つ技能を重要視するときに考えるのは「仕事の役に立つか?」です。
プログラミング自体が仕事であれば、プログラミングが出来ることが最低条件になるでしょう。プログラマーでなくても、そのまわり、デザイナーやSEと言ったIT関係の職種であれば、プログラミングが主の仕事で無くても、自分の仕事と変わりがあるプログラミングに造詣が深い場合、それを考慮した仕事ができると期待できます。チームの人数が少ない場合は、一部を兼務するなどの柔軟なチーム作りができるため、会社からは重宝されるでしょう。
では、ITとは全く関係無い職種の場合はどうなのでしょうか?事務処理まわりですと、プログラミングが役に立つことがあります。Excelで簡単なマクロを作ったり、毎日手作業でやっていることをツールを作って自動化したり、と効率が良い事務処理が期待できます。ですが、この方法には欠点があって、周りはプログラミングがわからないため、そうやって作られたマクロやツールを保守できないと言うことです。会社としてプログラミングが出来る事務職員を常に確保する体制を作ると言ったことが無いと、その人だけで終わってしまいます。それなら、誰でも扱えるシステムやツールを買ってきた方が得だと考えます。システムやツールを買えない小さな会社であれば重宝されるかも知れませんが、経営者としては、あなたが会社を辞めたときにどうするかが悩みの種として残ります。
最後に「プログラミングにより養われた論理的思考力」がどうであるかです。プログラミング力と論理的思考力に相関関係が存在するという論文もあるようですが、プログラミングができるから論理的思考力があるのではなく、論理的思考力があるからプログラミングができるだけのような気がします。プログラミングができることは論理的思考力があることの指針にはなるかもしれませんが、採用面で考えるとそれをどうやって計るのかは難しいところです。プログラマー募集でも無い限り、事前にプログラミング力を試すようなテストをする余裕があるところは少ないと思います。
・私は文系で、技術そのものに興味があるというより自分のアイデアを実現することを目指して勉強しています。今プロトタイプを作ろうとして、それでも大変さを実感しているのですが、いずれ自分の作りたいものがすぐ作れるようになるのでしょうか。
わかりません。ただ、文系とか理系という枠組みで考えることは個人差が大きすぎるので意味が無いと思います。
・プログラミングが得意なのは、やはり数学や物理が得意な人が多いんでしょうか?これは数学や物理の知識がプログラミングに必要という意味ではなく、数学や物理に必要な適性がプログラミングにも必要かという意味です。私はプログラミングをやっていて、英語や国語や社会より数学をやっている時と同じ頭の部分を使っていると感じることがあります。
プログラミングと数学や物理の成績に相関関係があるかどうかの資料を探したのですが、見つけられませんでした。ただ、一般的にはそう信じられているようです。
先の論文では論理的思考力が関わっているのではと言う結論になっていましたが、では、論理的思考力さえあればプログラミングも数学も物理も得意になるのかというと、そうでは無いと思います。他の要因で不得意のままである可能性もありますし、全く別の思考構造でうまくいく場合もあるかも知れません。所詮、統計というのは傾向の分析であり、個々の事情まで深く見れば、個人差によってどうにでもなるものだと思います。
・簡単なシューティングゲームやそこそこ実際に使えるWEBサービスを作るのに、毎日3時間くらい勉強してどれくらいの期間がかかりますか?
どれぐらいのものを作ろうとしているのかによりますが、出来る人であれば、最初の3時間できます。逆に出来ない人であれば、何十年かかっても出来るようにならないでしょう。
なにはともあれ「やってみないとわからない」です。悩むぐらいなら、一度やってみることです。自分に合わないと思うのであれば、止めれば良いし、合うなら、進めれば良いだけです。
出来る人と出来ない人の差が激しい分野です。出来る人は一ヶ月もしないうちに、ほとんど出来るようになります。逆に出来ない人は何十年かけても出来るようにはなりません。仕事としてやっていくとしたら、毎日研修や簡単な仕事として与えられて一年ぐらいで何かが掴めるようにぐらいが目安だと思っています。と言っても、一年で実用レベルのシステムをまるごと全て作れる人は希ですので、プログラミングとは何か、このまま行けば、数年後ぐらいにはこれぐらいのレベルになれそうっていう先が見えると言うことです。それにわかるようになるまでの期間が約一年だと思います。
ただ、二~三年するとあまりの先の長さに絶望し、数年すると流れの速さに絶望し、十年すると若い奴に簡単に負けていることに絶望するのがこの分野です。好きで無ければやっていけないと思っていますので、流行りだからと言うことでやるのであれば、やめておいた方が良いと思います。
投稿2017/12/31 02:27
総合スコア21739
0
ベストアンサー
・プログラミングって個人差はありますが、難しいですか?
何処をゴールとして設定するかで難易度はいくらでも変わります。
将棋やオセロに近いものと感じています。
コマの動きやルールは1日程度で身につきますが、プロとして食べていくには相手の棋士を倒し続ける必勝パターンを山のように覚えて引き出せる事が求められます。
公式のチュートリアルを見ながら自分で打ち込んでHello World!
を表示するまでなら1日程度で出来るでしょうけど、
こうしたいというアイデアから製品を完成させるには相当な努力が求められます。
質問者さんは自分のアイデアを形にする所がゴールなので、
メンテし続けるという課題は抜けていますがおいおいといったとこでしょう。
従って、まぁまぁ難しいですが個人開発で無理という事もありません。
・この先プログラミングができるということは社会的に価値を持つでしょうか?それともあまり重宝されなくなっていくのでしょうか。
プログラミングというのは機械と人間が同時に理解出来る文を作る能力というのが本質です。
Twitterのネタとして「OK、Google。なんか盛り上げて」というのがありましたが、
そんなレベルの一般人と、そもそもプログラミングでシステムを作り上げる事を知っている人ではどちらが新世界のAIを活用したシステム構築で有利かなんて一目瞭然でしょう。
プログラマは文章を通じてパソコンと意思疎通しています。
新時代になってもそのパソコンの意思疎通をする手段が変わるだけで、本質は変わりません。
現状プログラミングが出来る事を驕らず、新時代の意思疎通手段に付いていけばプログラマはこの先も価値を見出し続けられるでしょう。
・私は文系で、技術そのものに興味があるというより自分のアイデアを実現することを目指して勉強しています。今プロトタイプを作ろうとして、それでも大変さを実感しているのですが、いずれ自分の作りたいものがすぐ作れるようになるのでしょうか。
人間の脳はストレス溜め込みながら試行錯誤して頭に詰め込んだ後に、睡眠を取ることで脳が強化されます。
その結果、昨日できなかった事が今日はすんなり出来る仕組みになっています。
なので文系・理系というジャンル分けをして「私には無理」と決めつけるのは、単なる甘えです。
もちろん「嫌いだから1日1時間も継続できない」というなら仕方ないことです。
私も営業特有の飲みニケーションや水面下での主導権の取り合いといったちまちました心理戦は大嫌いで勉強する気にもなりません。
なので、もし「私はこういう理系特有のちまちまとした作業を続けるのは耐えられない、営業・経営者になってプログラマを雇う!」と決定したのであればそれはそれで一つのポリシーとして尊重します。
話を戻して、いくら上級者なプログラマーでも最初の1回目の作業はとてつもなく遅いです。
しかし、2度目以降なら試行錯誤もなく目的地までいけるのでそれなりに速く作れます。
速く作るに関してのヒントとして、RPGのRTA動画を一度見る事をオススメします。
ドラゴンクエスト3を僅か3時間以内でクリアする凄腕プレイヤーがいます。
RPGはプレイヤーの操作能力でタイムを縮める事はほぼ不可能で、チャート(ボス撃破の条件、レベルの上げ方、お金の稼ぎ方)を練る必要があります。
一度見ておくと、速く作るとはどういう事かというのが感覚として理解出来るんじゃないでしょうか?
現状日本ではプログラマというのは時間給です。
つまり、様々な準備をして開発速度を上げると安い人材として買い叩かれるわけですね。
なので誰しもが速く作れた方が良いのはわかりきっているけど、模索するという行動には至っておらず、そのための情報も極端に出回っていません。
何度も同じものを作り直したり、速く作るにはどうすればよいかを常日頃から考える癖を付ければ自然と速く作れるようになります。
・プログラミングが得意なのは、やはり数学や物理が得意な人が多いんでしょうか?これは数学や物理の知識がプログラミングに必要という意味ではなく、数学や物理に必要な適性がプログラミングにも必要かという意味です。私はプログラミングをやっていて、英語や国語や社会より数学をやっている時と同じ頭の部分を使っていると感じることがあります。
見てくれが数学の式に見えるからそう感じるだけでしょう。
テトリスやぷよぷよ等のパズルゲームや謎解きが好きな人は適正があります。
その次に英語や国語の文章を作る能力が求められます。
そしてあるべきロジックが、あるべきディレクトリやファイルに収まっている名付けや仕分けの能力がプログラマの良し悪しを分けます。
アプリを作ったり、アイデアを形にする為にオープンソースのライブラリを利用する位ならば、数学の知識は一切必要ありません。
統計学やAIのライブラリを作る側に回る時点で初めて求められます。
・簡単なシューティングゲームやそこそこ実際に使えるWEBサービスを作るのに、毎日3時間くらい勉強してどれくらいの期間がかかりますか?
絵描きの素人が「萌え絵を描いて有名になりたいのですが、毎日3時間くらい勉強して…」と聞くのと同じです。
勉強いうな、質問する暇があったら手を動かしてクロッキー帳を1ページでも埋めろが正解です。
プログラミングも同様で、1行でも多くパソコンに打ち込んで実行させてみるのが正解です。
これをやらない人間は10年経っても20年経っても出来ませんし、
実際手を動かす人間は2ヶ月程度でもしょぼいながら動かすものを作って持ってきます。
そこまでいけば実際にプロがあれこれつついてレビューしてくれるので、そこから一気に見識が広がり、手を動かしたものが再現出来る技術として身体に定着します。
要するにベクトルとやる気だけの問題なんで勉強時間に応じた恩恵が受けられるジャンルではありません。
読書も勉強もプログラミングも時間をかければ良いというものではないので、1〜2ヶ月で期限を切って作り上げて下さい。
期限を設けないと人間はずるずると何もせずに無駄に時間を消費する生き物ですからね。
投稿2017/12/31 03:05
総合スコア21214
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
・プログラミングって個人差はありますが、難しいですか?
→
そうですね。一回も触れたりみたりしたことがないと、最初はかなりハードルが高いかもしれません。
人間の都合とパソコンの都合は全く違うので、そこに馴染むのに時間がかかる気がします。
・この先プログラミングができるということは社会的に価値を持つでしょうか?それともあまり重宝されなくなっていくのでしょうか。
→
プログラミングができるというのはかなり抽象的で、プログラミングにも色々専門分野があります。
例えば、Webアプリケーションだったりを作る方やNativeアプリケーションを作る方、そのデータやサーバー構築をしたりする方など。(かなりざっくりしてますが)またそれらは一つの言語で作ることはできません。
ただアプリがどのように動くか、サーバーのことなど、ある程度プログラミングを知るとシステムがどのように動くかがイメージつくので、事業や物事を考える上でシステムとしての側面で考える際の手助けにはなりそうな気がします。
そうした意味で自分はプログラミングを始めて、今手元のアプリや、様々なWebサイトがどのように動いているのかイメージできるようになったのでそこは結構でかいかもですね。
・私は文系で、技術そのものに興味があるというより自分のアイデアを実現することを目指して勉強しています。 今プロトタイプを作ろうとして、それでも大変さを実感しているのですが、いずれ自分の作りたいものがすぐ作れるようになるのでしょうか。
→
実現方法としてプログラミングを使ったプロダクトに行き着いて、ご自身で手を動かそうと思ったのであればとてもいいと思います。手を動かさないとどれだけハードル高いかわからないですし、人を雇うのにもコストがかかると思いますので、自分で作成できるのでしたら自分で作成したほうがいいと思います。
ただ最初の方が回答していたように、それは本当に作りたいものにより、どこまでこだわるかにもよります。
まずはそのプロダクトを実現したい時期を考えて、周りのプログラミングを知ってそうな人に「実際こういうもの作っているんだが、間に合うか」聞いてみてそれが無理そうだったら、エンジニアにお金を払って作ってもらう。
お金がないんだったら諦めるか、時期をずらしてひたすら勉強して自分で作成する(自分で作成したほうが勉強にもなりますし)それでいいのではないでしょうか?
・プログラミングが得意なのは、やはり数学や物理が得意な人が多いんでしょうか?これは数学や物理の知識がプログラミングに必要という意味ではなく、数学や物理に必要な適性がプログラミングにも必要かという意味です。 私はプログラミングをやっていて、英語や国語や社会より数学をやっている時と同じ頭の部分を使っていると感じることがあります
→ 自分自身は同じ頭を使っているとかそんなことは意識しなかったのですが、そこまで関係はない気がしますね。
プログラミングやその勉強している言語のルールを把握して、それを実際に書いて動かす。それだけだと思ってます。
僕自身も文系でむしろ高校まではスポーツとかそっちの方ばかりだったので、数学とかは苦手な方です。ただプログラミングは手を使って動かして見ると、実際に動いているものが見えるので、それがモチベーションとなって続けていくことができました。
投稿2017/12/31 00:58
編集2017/12/31 01:01総合スコア275
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
私は文系で、技術そのものに興味があるというより自分のアイデアを実現することを目指して勉強しています。
やりたいことと実現する方法が乖離していないか、見直してみたほうがイイですよ。
プログラミングは、手段の一つですが、目的を最短で実現手法になっているのは微妙なところです。
文面だけ見ると、企画屋やマーケティング屋、起業家といったキーワードが思い浮かびます。
質問とはずれた回答になりますが、参考まで^^
投稿2017/12/31 04:42
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
できるかどうかは本人の技量と物事の難易度の問題なので一言では言えません。
「プログラミングする」というのは実際2段階のプロセスがあり「頭の中で作り」「それをコードにする」
という作業をやっています。プログラムの8割ぐらいを占めるのは「頭の中で作る」部分です。
頭の中がクリアならその順序通りに「コードに翻訳」していけばプログラムはできます。
プログラマーやSEの技量というのはこの頭の中や物事を「コードに翻訳」する早さです。
というわけで必要なのは論理的な思考です。「頭の中でどこまで正しく組み立てができているのか」
「自分のスキルではどの辺りのコーディングができないのか」というのがわかっているというのが重要です。
物理や数学が得意かどうかはあまり関係がないと思います。
投稿2017/12/31 00:39
総合スコア3830
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
・人によりますし作るものにもよります。
・我々が生きている間は大丈夫でしょうが使われる言語やフレームワークやプログラミングの方法などは変わっていくでしょう。今と同じやり方が通用するのは数年かもしれません。
・作りたいものによるでしょう。大規模なものは複数人で作ります。自分一人で無理なら他人と協力することを考えるのが文系のやり方だと思います。協力というのはソースをねだったり検索を代行させることではありません。
・論理的思考は必要です。しかし物理が苦手だからプログラミングできないとは限りません。プログラミングが苦手かどうかはプログラミングで判断しましょう。
・人によります。人によっては一生かけてもできません。
投稿2017/12/30 23:37
総合スコア28671
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
プログラミングと数学物理についてだけ
プログラミングで数学・物理と共通するのは、やりたいことを簡潔な形に書き下ろす能力だと思います。
問題を簡単で理解しやすい形にして整理する、それから解くということになります。
コードを書くこと自体は言語なので時間をかけて慣れれば誰でもできるようになります。
例えば偶数を出力することが目的の時、すべての整数を並べて2で割ってあまりが0のものを取り出すのと、整数を並べて2かけたものを出すのは結果としては同じになります。
ただし同じ量の偶数を書き出すのに前者は後者の2倍の時間がかかります。
for文を使ったかwhile文を使ったかは表現の自由なので優劣はありませんが、問題の取り組み方自体にははっきりとした優劣が出てしまいます。
現実の問題だと桁違いに計算時間の差が出るのでよいプログラムと悪いプログラムの区別が出てきます。
問題が複雑になっていくとより高度な数学理論を理解している方がアイデアが浮かびやすくなります。
それでも実用上どんな書き方しても1秒以内に終わるような問題にしか遭遇しないのであれば不都合はありませんが。
投稿2017/12/31 04:37
総合スコア8562
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/12/31 02:40
退会済みユーザー
2017/12/31 07:31