- 締切済み
プログラミングは歳を取ってからでも習得できますか
私は勉強ができないのですが、 どうしてもプログラミングを習得したいのです プログラミングはとても頭を使うことなので難しいでしょうか? 私が頭の中で思い描いているようなパソコンソフトを自分で作りたいのですが、 プログラミングの知識&技術がありません 私の頭の中にある理想のソフトを作るにはどれだけのプログラミング知識&技術が必要ですか? また私が「こんなソフトを作りたい」といって、プログラミング技術者に口頭、テキストで伝えて、 それを作れるプログラマーというのは居ますか? プログラミングに詳しい方教えて下さい
- みんなの回答 (10)
- 専門家の回答
みんなの回答
- lv4u
- ベストアンサー率27% (1862/6715)
No.4です >>数学的知識がまったく無く、算数は小学校1年生レベルです 暗記力もあまりありません プログラミングは、CGなどのプログラムを作るなら必要ですけど、多くの場合は不要です。ただし、論理的思考能力は必要です。 自分の作ったプログラムが正しく動かないとき、原因を突き止めるためには、推理力や論理的思考能力は不可欠です。 ちなみにC言語では、ポインターの理解が必須ですけど、どうしても理解できない方が一定の割合で存在するようです。Javaもポインタは無いといいながらも、概念として理解していないと厳しい気がしています。 また、記憶力がないと、苦しいですね。例えば、2千行のプログラムの後ろのほうを見ていて、「あれ、この変数って何だっけ?」ってことで、何度もリストの先頭のほうを見直していたら、余分な時間がかかりますからね。まあ、そうであっても、プログラムが完成すればいいのですけどね。 私の場合も記憶力がイマイチなので、ソースをプリンターで印刷してデバッグしますけど、以前の職場では、ある人が「私も同じように、紙に印刷してデバッグしている。こういうやり方をする人って古いのかなあ?若い人は画面だけでやっているみたいだけど・・・」なんて言っていました。 >>HTMLのようにこういうタグを入れると文字がでかくなる、色が変わる、 といったわかりやすいものは理解できますが、 javascriptは許容オーバーな感じです javascriptって、簡単そうに見えるのですが、プログラミング言語としては、最先端に近いものです。オブジェクト指向プログラミングの知識がないと理解できないことが多いです。甘く見てはいけませんよ。
- vaidurya
- ベストアンサー率45% (2714/5983)
プログラミングの難しさは、初めて見ないとわからないものですし 必要とするソフトウェアが、どのくらい難しいものなのかも、わからないものです。 逆に、場合によっては、既存のものを組み合わせることで実現できる場合もあるでしょうし 既存のものを、一部改修することで実現できる場合もありえます。 大きな負担にならないところから、まず始めてみていいでしょう。 現在では、オープンソースソフトウェアが盛んになることによって プログラミングを行なうにしても、無償のソフトだけで 大規模な開発を行なうこともできるようになりました。 プログラミングの根本は、単純な連続した自動実行にあり 条件分岐や操作を取り入れることで複雑化し GUIやグラフィック描画などは、現在ではそのためのライブラリーを組み合わせることで 20年前よりは、簡便に高度なプログラムを作成できるようになっています。 ですから、どの程度のことをやろうとしているのか?それによって必要な努力は大きく違います。 いきなり、Visual Studioのような高価な開発環境を購入しなくても Eclipseのような、無償で利用できる開発環境もありますし… UbuntuやCentOSのようなオープンソースを中心としたOSでは その開発にも、gccなどオープンソースの開発環境を用いた開発が盛んです。 そういったOSの環境を見れば、素人目には、GUIシステムを構成している多様なソフトウェア群に見えますが 中には、スクリプト言語で、別のソフトウェアを呼び出すことで 既存のソフトに、別の機能を実現したり、より簡便に扱えるようにしたものも多々あります。 たとえば「CentOSのGUIの中に、画面表示を90度回転するボタンを、追加したい」と思ったとします。 専用のソフトを開発すれば、いろいろと複雑な資料を調べて 複雑なプログラミングを行なうことになります。プログラミングに慣れない人なら 何をすればいいのかすらわからない段階からのスタートです。私もわかりません。 でも、それはGUI用のボタンが無いだけで、xrandrコマンドで可能な機能ですから スクリプト言語で、それを呼びだせば実現できます。つまり xrandr -o left 一行、ほんの数文字で最小限の画面回転ボタンは作れます。(実際にはスクリプトをアイコンとして置いて代用します) この場合Windowsのバッチファイルにあたる、シェルスクリプトで済みますし シェルスクリプトでも、条件分岐などを組み込めば、一つのボタンで回転と復元を実装したりもできます。 これに解像度切り替えなどの多様な機能を追加しようと考えれば、操作インターフェイスが必要ですが Tkl/TkのようなGUIを作成できるツールキットで、比較的簡単に行なうことができるようです。 必要であれば、オープンソースソフトウェアであるxrandrコマンドを ソースコードを入手し、参照し、改修し使うことも自由ですし その、オープンソースライセンスに従って、改修したものを公開配布することも自由です。 でも、私は、めんどうくさいし、自分で作って そのバグで失敗することがばからしいので プログラミングは、しなくなりました。 「プログラミングした」と言えるのは、もはや旧世紀の出来事となります。 1990年代後半にはフリーソフトが普及し、21世紀にはオープンソースソフトウェアが広まり 「買うか、自分で作らなければ…」という状況になることは減りましたから… 今となっては、スクリプトを書くにしても、条件分岐などは使いませんし 変数の代入も、あまり使いたくありません。 まぁ、プログラミングに必須の能力には… 自分が作ったソフトが… というより、自分が作りかけているソフトが どういう構造で、どういう仕組みになっていて どこをどう書き換えれば、どう変化するのか細部まで把握する能力が必要です。 これができないタイプの人は、若くても習得は困難で、効率は良くなりません。 でも、歳を取っていても、そういう考え方が習慣にあるような人は 比較的あたりまえに理解していくことができると考えられます。 まぁ、向き不向きはありますよ。
お礼
回答ありがとうございます。 自作パソコンなどで、故障した場合どこが壊れているか一つ一つチェックして炙り出すような作業が苦痛でない人、という事ですかね・・・それより格段に高度でしょうけど。 私の場合面倒くさくて全部とっかえてしまうタイプなので、プログラミングにはあまり向いていないかもしれないですね。
プログラミングのコツはザックリ言ってどうなの・・・I/O言語だけ? 1、製品パーツの工場製造工程から組み立て工程、機械改良、機械製図、機械プログラミング、製造機械の仕様書、配線図、メンテナンス。 2、自社製品のプログラミングと動作仕様書、デザイン、製品の組み立て図(配線図)、製品のネットワーク機能仕様書、取扱説明書、カタログ、ホームページ、製品の宣伝。 3、社内ネットワーク、社内システム、社内配線、建物管理、会社プログラム。 一連の流れを掴む事からイメージして行きましょう、生産コストや仕入れと販売(輸入、輸出)も有ります。ゲームを作るにしても何にでも当てはまる事をイメージしましょう!
お礼
回答ありがとうございます。 基本的に自分のためだけに作りたいものなので、 あまり人目やコストは気にしなくてもよさそうです。
- b0a0a
- ベストアンサー率49% (156/313)
プログラミングを学習していると、用語以外にも新しい考え方や価値観、そしてツール等にも沢山出会います。 それらの多くは基本的に分かってしまえば単純なものです。 プログラミング上達に重要なのは学力ではありません。 新しいことを消化し、自分の物にできる頭の柔らかさです。 しかしそれよりももっと大切なのが、まず新しいことを受け入れる心の柔らかさ、 そして大変そうで難しそうなことにも向かっていける強い心です。 絶対に分からないことという物はありません。 自分はきっと受け入れられる、必ず分かるようになれるはずだと、とにかく信じて学ぶのです。 また質問者さんの考えるソフトの具体的な部分は分かりませんが、 雰囲気から楽ではなさそうなものではないかと感じます。 一定以上の規模の物は、いくら知識や技術があっても勝手にはできません。趣味ならやる気が非常に重要です。 逆に言えば、初心者の状態でも、むしろ初心者の時だからこそ、 馴れた上級者にとってはつまらないものでも、魅力的に見え、やる気で作りきってしまうことは十分できます。 反対に上級者になって頭の中で想像ができるようになると、それだけで満足したり、大変さが分かってしまうことでやる気が冷めてしまうこともあります。 何年、何十年勉強をしていっても、やる気が持続する瞬間がなければ、そのソフトは永遠に完成することはありません。 そして、最も重要な事は、プログラミング自体を好きになれるかどうかです。 実際、最初こういうのを作りたいと思って勉強していくうちに、中々成果が出ずどうでもよくなってくると思います。 もしそこでプログラミング自体に興味がなければ、やめてしまいます。 楽しく勉強してたら、何時の間にかソフトを楽々作れるようになっていた、くらいが理想です。
お礼
回答ありがとうございます。 プログラミングより、こういうソフトウェア!という妄想のほうが先にきていますので、 勉強のモチベーションが保てるかが一番難しそうです。
知恵熱って知ってますよね。 私は20年前、情報系の学校で、課題を出されて、ある仕様のインストラクションセットを持つCPUを搭載したコンピュータのシミュレータを作らされました。 3か月くらい、根を詰めてプログラムを作成し、本当に熱がでました。知恵熱って本当にあるんですよ。 質問者さんの今のお年は分かりませんが、今から勉強をスタートし、来年春に、そこそこの大学に合格するくらいの勉強量が必要だとだけ申し上げておきます。
お礼
回答ありがとうございます プログラミングをマスターするにはやはり勉強好きな方でないと難しいようですね
- SPROCKETER
- ベストアンサー率26% (2129/8001)
今はプログラムを作る為のソフトがたくさん出ていますから、それを購入して習熟すれば比較的簡単にプログラム出来るようになりますが、昔は一からプログラムの勉強をするのは大変だった記憶があります。 最初はBASICプログラムの勉強から始まって、機械語、アセンブラと進み、ゲームなどのソフトを作れるようになりましたが、一度覚えたコンピュータ言語を変えるのは面倒なので、今でもアセンブラで開発している事が多いですね。 ゲームなどは、ゲーム作成用ソフトが販売されているので、それを使えば、高度な処理でも比較的容易にプログラム出来ますので、開発用ソフトを家電量販店で探してみてはいかがでしょうか。 こんなソフトを作りたいと言って、iPadのようなシステムを考えるのは誰でも出来ますが、それを実際にプログラムして動くまでにするのは大変な難作業になります。途中で社員が何人も身体を壊して倒れる事態にもなりかねませんし、自分でプログラムしてみれば、理想と現実の違いがわかるだろうと思います。
お礼
回答ありがとうございます なかなかiPadと同レベルに快適なタブレットが出ないのは、 やはりプログラミングが難しいからなのでしょうか
- lv4u
- ベストアンサー率27% (1862/6715)
>>私の頭の中にある理想のソフトを作るにはどれだけのプログラミング知識&技術が必要ですか? 一般的に、ソフト会社で、仕事として、毎日プログラム関係の仕事をやっていて、3~5年で一人前になってきたと見られることが多いようです。ただし、その段階で、質問者さんが思う「理想のソフト」が作れるかどうかわかりません。 必要なプログラミング知識&技術は、昔に比べて、とても多くなっています。たとえば、昔なら、パソコンの入出力はカセットだったし、通信は、RS232Cの非同期通信で、音声回線を使ってやっていたから、DVDなどの知識も、インターネット関係の技術も不要でした。自分でインターフェース回路やメモリーボードを組み立てる方もわりと多かったように思います。 OS(DOS)の入っているFDやHDDの中に入っているファイルは全て把握することも可能でしたし、レジストリなんてものも有りませんでしたからね。 昔からやっている方は、追加された差分技術を追いかけながら学習すればよかったのですけど、これから始めるかたは、膨大な知識を前にして、取捨選択して学ばないといけないでしょう。そうやっても、全部を理解するのは難しくなっています。 まあ、ソフトはツールですし、真っ黒画面で、入力は、全てキーボードから入力するだけだとしても、要求する目的を達成してくれれば、使うのが自分だけなら、自分自身にとってはそんなソフトでも「理想のソフト」といえるかもしれません。 >>また私が「こんなソフトを作りたい」といって、プログラミング技術者に口頭、テキストで伝えて、 それを作れるプログラマーというのは居ますか? 経験上、自分が「こんなソフトが欲しい!」と思って作り始めても、形が出来て少し動作させると、「ここを変えてほしい、あと、こんな機能が欲しい」って思うものです。 その要望は当然だとしても、それを実現するには、大変なこともありますから、作れるかどうかはわかりません。 そして、そういうプログラマが居るかどうか、わかりませんが、大金を積めば見つかるかもしれませんね。 >>プログラミングは歳を取ってからでも習得できますか 可能でしょうけど、先は長いと思います。 たとえば、「WordPressに、自分の思うような機能を追加したい!」と思ったとします。そうしたばあい、データベース、SQL、ApacheWebサーバと各種設定ファイル、PHP、JavaScript、HTML、CSS、さらには漢字コードなどの知識も必要でしょう。さらにWordPressそれ自身の構造も知らないといけません。きれいなオリジナル画像を作ろうとすれば、PhotoShopやIllustratorの使い方も学ばないといけないかもしれませんね。 そうそう、そんな開発作業をする前に、Linuxサーバの設定やviコマンドなど、基礎的なunixのことを学ばないとダメですね。 そして、それらを全て学んだときに、詳しい人から「なんでWordPressなんて使っているの?貴方のやりたいことは、そのソフトの拡張だと難しいよ!」と忠告されたり・・・。 もし、オブジェクト指向プログラミングを学ぶのであれば、まずは構造化プログラミングを学ばないといけなかったりします。 まあ、文系の勉強、書籍であれば、それまでの経験や暗記力を武器に、専門書でもスラスラと読みこなすことが可能かもしれません。でも、コンピュータ系の専門書って、そんな感じで読むことは難しい気がします。 ひとつひとつの学習で半月から、1ヶ月くらいかかることも多いかもしれません。根気をもって1つずつ理解・マスターし続けていけば、いいんじゃあないでしょうか?
お礼
ご回答ありがとうございます 「こういうソフト」という構想はできあがっているのですが、 数学的知識がまったく無く、算数は小学校1年生レベルです 暗記力もあまりありません HTMLのようにこういうタグを入れると文字がでかくなる、色が変わる、 といったわかりやすいものは理解できますが、 javascriptは許容オーバーな感じです
- yonesan
- ベストアンサー率25% (347/1368)
どうしても習得したいなら努力するしかないです。 頭の中にある理想のソフトが作れるかは別ですが。 仮に才能があったとしてもソフトの規模によっては1名では不可能ですからね。 ちなみに私は学生時代に1年で挫折しました。 >また私が「こんなソフトを作りたい」といって、プログラミング技術者に口頭、テキストで伝えて、 >それを作れるプログラマーというのは居ますか? 頭の中にある理想のソフトを作るには、委託先に仕様をきちんと伝える力が一番重要。 プログラミング知識&技術は「あれば良い」程度のものです。 実際企業が社内システムを作成するとき、多くの場合開発担当はプログラミングの素人です。 社内業務の流れを正確にSEへ伝えることが開発担当の仕事なので、プログラミングは素人でも問題ありません。 プログラマーは良くも悪くも言われた通りに作りますから、出来上がりと頭の中が違う場合伝え方に問題があるのです。 委託するならプログラミングを勉強するよりも、頭の中にある情報を他人に文字で正確に過不足無く伝える練習をした方が良いですよ。
お礼
回答ありがとうございます 素人でも依頼はできるのですね 構想はできるだけ詳しく書き溜めています
- karorumon
- ベストアンサー率26% (25/94)
>私の頭の中にある理想のソフトを作るにはどれだけのプログラミング知識&技術が必要ですか? 理想のソフトがどのようなものか分かりかねるので、答えられません。 >また私が「こんなソフトを作りたい」といって、プログラミング技術者に口頭、テキストで伝えて、 >それを作れるプログラマーというのは居ますか? まぁ…大体できるのではないでしょうか? >私は勉強ができないのですが、 >どうしてもプログラミングを習得したいのです では、勉強してください。 プログラムは、数学のようなものだったりもします。 ソフトを作るにしても、一つの見方だけではダメです。 「もしかしたらこういう行動を取る人が居るかも!」という見かたで 動作を何通りも考えないといけません。(たぶんですが) 1から10まで全て文章にできるのであれば、 作れると思います。
お礼
ご回答ありがとうございます 数学が一番ニガテなので、やはり理想のプログラムをすべて自分で作るのはむずかしそうです
歳を取ってからも習得が出来ますね。 1、グラフィックス処理をするのか物を動かすのか。 2、あなたのお考えのイメージを具現化する。 3、最初は簡単なものから初めて徐々に難易度を上げる。 *佐村河内氏のようにゴーストライターを頼む。 *それが嫌ならまずは身近で出来る事から始めよう。
お礼
ご回答ありがとうございます 優秀なゴーストライターがいるなら依頼したいです 修正等も付き合ってくれるなら全財産出したいです。たいした資産ではありませんが
お礼
回答ありがとうございます。 PCの画面上より紙のほうが冷静に見れるという面はありますね。