こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

回答受付中の質問

新入社員プログラマーですが周りについていけません

文系出身新入社員プログラマーの22歳の女です。
今月入社致しました。プログラミング経験はないです。

今は研修期間で、C言語を学んでいるのですが、周りに全くついていけていない状態です。
同期も文系卒のプログラミング初心者が何人かいますが、その同期は自分でプログラムを組めるのに私だけが組めません。何をすればいいのか、どういう風に書けばいいのか考えればいいのかわからないのです。

研修中に質問したりもしますが、何度聞いても何を言っているのか、どうしてそのコードを書くのか理解できません。

もちろん帰宅後や休日も参考書などを使って遅くまで勉強はしていますが、それでもどうすればいいのかわからないのです。勉強の仕方が間違っているのかもしれません。参考書を読んで載っているコードを書いて、あとは章末の問題を解いて…(わからないときはページを読み直したり)を繰り返しているのですが、それでもできません。まず専門用語なども中々理解できなくて辛いです。

C言語を学び始めてから食事も中々喉を通りませんし、精神的にとても苦しく、情けないのですが行き帰りの電車の中で泣いてしまっています。
1ヶ月しか経っておらず、まだ仕事の内容もわかっていないのにこの状況です。
向いていないのではと思い、転職も考えましたが、転職するにもこの早さで辞めても流石に先があるとは思えないので出来ればしたくないです。頑張りたいです。

同じような悩みをお持ちだった方や業界の方、いらっしゃいましたら勉強方法、仕事の仕方のアドバイスなど宜しくお願いいたします。

投稿日時 - 2016-04-29 09:29:33

QNo.9165486

困ってます

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(27)

ANo.27

研修が一番つらいと思います。職種によりますが、配属されてしまえば0から書くことは少ないと思いますし、研修のようなストレスも少ないと思います。
ベンチャーに近いとほぼ0から書くというのがほとんどだと思うので、最初はつらいかも。
とりあえず研修は乗り切って、配属後にどんな雰囲気の職場なのかで判断されたほうが良いと思いますよ。

投稿日時 - 2016-05-01 07:48:26

ANo.26

C言語がわからないということですが、プログラム言語全般がわからないのだと思います。
プログラム言語の最初に詰まることといえば、おそらく以下のいずれかではないかと推測しました。
(1)printfとか#includeとかが何かわからない
(2)x=x+2などの式とか変数がわからない
(3)ifとかforとかの制御構造がわからない
(4)関数の呼び出しとかローカル変数とか返り値がわからない
(5)そういうのは分かってるけどどう組み立てていいかがわからない

そのあたりは分かってるよというのであれば以下は読み飛ばしてください。そのレベルであれば他の回答にもあるような参考となる本を読んでプログラム組んでいればいずれ組めるようになります。

(1)printfとか#includeとかがわからない場合
これは少なくとも当面は暗記するものだと思ってください。
意味はあるのですが、その意味を理解するまでにかかるのははるか先にしておいた方が効率的です。

(2)x=x+2などの式とか変数がわからない
「なんでx?そもそもxに2足したものがxってそんな数値なんて存在するはずないし。そもそもどうして値をいれたものが中身が変わるの?」
もしここで詰まっている場合、考え方が中学生の頃の方程式で止まっているか、グラフ構造をなんとなくで逃げてきてしまっているので、本音をいうと中学校数学を勉強しなおすことをお勧めします。
そんな時間がないのであれば、「x=1とはりんごが1つ、x=2はりんごが2つ、x=x+2は今あるりんごが2個増えたらいくつ?」と具体的に考えてみてはどうでしょうか?
(正直この説明で分かるかどうか自信がありません)

(3)ifとかforとかの制御構造が分からない
「if (x==1 or x==2) { x=x+2; }とか言われてもxが1かxが2以外の時とかが気になる、またはx=x+2のことを考えているうちにxがなんだったか忘れてしまう」
変数を扱うキャパシティが未成熟なケースですね。めんどくさいとは思いますが、当該コードを印刷して「今はx=1、x=x+2;実行後にx=3」とコメントを書きながら、変数の変遷を追えるようにしてみてはどうでしょうか?
本当の意味でifとかforの意味がわからない場合は(1)にあるように覚えるしかないです。

(4)関数の呼び出しとかローカル変数とか返り値がわからない
「main()関数でx=2といってるのに、sub()関数でx=3とか入れてる意味がわからない。どうしてsub()関数の中での処理結果がmain()に伝わらないかもわからない」
これはそういうものとしかいいようがないのですが、変数を扱うキャパシティが未成熟だと混乱しやすいのはたしかです。
もし自分でソースコードを書き直すことができる環境であれば、main()関数内の変数はmain_x、sub()関数内の変数はsub_xのように関数名つきで書き換えると処理を追いかける際の混乱は避けられるかもしれません。

(5)そういうのは分かってるけどどう組み立てていいかがわからない
一つ一つの(C言語の)文の意味は分かるけど、「じゃ、1から10までの数字の合計を表示するプログラムを作ってみて」と言われると、何から手をつけたらいいのかわからないような場合
2つ方法があります。
1つ目。あまりお勧めはしませんが、全部暗記する方法。門前の小僧習わぬ経を読む作戦。論理的な思考なんて後回し、全ては記憶力でカバーという、ある意味若いうちなら通用する方法です。
簡単に書きましたが、ここでいう覚えるとは「暗記する」です。暗記の方法にまでは踏み込みませんが、少なくともお題を言われたら何も見ずに全部書き出せるようにしてください。

2つ目。日本語を読み解く作戦。実はプログラムを仕様通り作るという仕事の大半はあまり理系の能力を必要としません。すごい高速化とかすごい効率化とかするなら話は変わりますが。
先の例でいえば「1から10まで」で「変わる変数が必要」「forで回す(whileでもいいですけど)」、「合計」で「加算、つまり+」、「表示」で「printf」と読み解きます。
あとはこれの組み合わせですね(変数の宣言とかは除きます)。
sum=0;
for (x=1;x<=10;x++) {
sum=sum+x; /* sum+=x;でもよい */
}
printf("sum=%d\n",sum)

要するにある目的を達成するのに対して、何をしていけばできそうかというのを日本語で書き起こしていくことができれば、それが最終的にプログラムになります。
私はフローチャートを書くことに対しては否定的ですが(記憶領域の無駄だと思う)、どうしても書いた方がわかりやすいというのであれば書いてもいいかと思います。

ただ、行き帰りに泣きたくなるのも、食事も喉が通らないのも、たいていの仕事ではよくあることなので、適度なストレス発散方法は身につけることをお勧めします。

投稿日時 - 2016-05-01 01:24:34

ANo.25

プログラム言語はとても不自由な言語です。言葉はせいぜい50ぐらいしかありません。
その言葉を組み合わせて、なんとか機械に人間のしてもらいたい動作をやってもらうのが、プログラム言語です。
サンプルの答えを自分なりに日本語にしてみて下さい。幾つか日本語に訳してみるとパターンが分かって来るはずです。
日本語で、機械にやってもらいたい作業を分解出来れば、あとはそれをプログラム言語に訳すだけです。
慣れるまでは、プログラム言語で考えるのは無理です。慣れるとどのパターンを組み合わせればいいのか自然と出て来るようになります。
焦らず、日本語でじっくり考えるようにして下さい。

投稿日時 - 2016-05-01 01:23:12

ANo.24

まず、深呼吸しましょう。
次に自分が理解できない一番簡単なプログラミングの例題を選んで、どこがわからないのか書き出してみましょう。『全部が」ではダメです。1つでも複数個でもいいから、わからない事を書く。
終わったら一番話のしやすい先輩に例題と書き出した「わからない点」のメモを持って会話してみましょう。質問が明確なら忙しい先輩の手間ヒマが軽減されます。
会話しているうちに、きっとあなた自身が一番最初に解決すべき事に気づくと思いますよ。

プログラミングの適性の有無なんて、本人にしかわかりません。文系出身で20年やってる私のようなのもいるんだから大丈夫。

投稿日時 - 2016-05-01 01:20:55

ANo.23

こんにちは。29歳からプログラムを始めてもうすぐ3年が経つ者です。
私も最初はC言語から初めて苦労した記憶があります。
まずはじめに、「C言語は難しい」です。これははっきり断言できます。
そもそもプログラムを書いて動かす環境の準備が初心者向きではないからです。
また、プログラムに必要なほぼ全てが詰まっているので難しいです。
初心者がいきなり手を出していいものではありません。

初心者はPythonというプログラム言語が一番だと思います。
正直、あなたの会社は教育が古すぎると感じます。
組み込み系の職種なのでしょうか?

前置きはさておき、まず1ヶ月で出来ないのは当たり前です。心配しないでください。
同期の初心者の方が出来ると書かれてますが、本当は初心者ではないのでしょう。
どこかで少し本を読んだことがあるとか、興味があってアプリの作り方を調べてみたことがあるのかもしれません。

勉強方法ですが、英語は読めますか?読めると世界が広がるので、時間があれば勉強をおすすめします。
参考書はなんでもいいのですが、「プログラミング言語C 第2版 ANSI規格準拠」が一番良いです。
これを読めるレベルが「C言語を最低限出来る」ということです。
私も苦しかったですが、頑張って読みました。問題は解いても解かなくてもいいと思います。
これを繰り返し何度も読んでください。わからない言葉はネットで検索しましょう。

また、プログラムの書き方ですが、英語と同じで文法という決まりがあります。
書き方に疑問を持つのは無駄です。そう書くものだと諦めてください。

仕事の仕方ですが、「わからないところをわかる」のが大事です。
質問をするときも、何がどうわからないかを説明できるのが理想です。

投稿者さんは真面目な方だと思うのですが、もう少し気楽にいきましょう。
新卒のうちはなんでも聞いて良いのが強みです。じゃんじゃん聞いちゃいましょう!!

大変だと思いますが、頑張ってください。

投稿日時 - 2016-05-01 00:23:57

ANo.22

私はC言語の初めの一歩を理解するのに3年ほどかかりました。
それまではBASICという言語でガンガンにプログラムを書いて、雑誌に投稿するくらいだったのですが、C言語を習得しようとし始めて、BASICとC言語の考え方の違いにとまどい、克服するのに3年ほど必要だったのです。

いったんわかってしまえば、あとはノリノリで書いていけるようになったのですが、その最初のきっかけをつかむまでが大変でした。

当時もやはり「プログラミング言語Cを読め」だの「K&Rを読め」だのアドバイスをもらいましたが、私には何の役にも立ちませんでした。

自分の場合の考えかたの転換点は、以下のようなものです。
C言語は、main()を起点(頂点)として、そこから条件に応じて分岐していく巨大なツリーです。関数 xxx()というのは、その巨大なツリーを構成するパーツにすぎません。
(業務として作成するプログラムは、その関数を作っていく作業です)


質問者さん、
main()で、Hello World. を画面表示するところまで行きましたか?
概念的な説明だと、いつまでたっても堂々巡りするだけで時間の無駄です。
具体的に、どんな内容でつまづいているのか、書いてしまったほうがアドバイスが着きやすいですよ。

投稿日時 - 2016-04-30 21:58:44

ANo.21

あまりに気の毒に思いましたので、会員登録をして回答します。

まず「プログラミングという困難な課題に果敢に立ち向かう姿勢」が素晴らしいと思います。
現在では私が社会人になった十数年前よりも様々な技術が進んでいますし、コンピュータの普及が進んだことで新卒学生のプログラミングスキルも平均としては向上しています。そうするとあなたのように、学生時代に経験のなかった方が、遅れをとってしまうのがかつてよりもずっと目立ってしまうと思います。

さて、2つ大事な質問があります。あなたはプログラミングを好きになれそうですか?
もうひとつはあなたの会社の規模です。

好きになれそうも無いのならば、まずは研修は「勉強」と割りきったほうがいいと思います。プログラミングを通して、社会勉強をすると思うのはどうでしょうか。
他の人には簡単なものがあなたには難しいとしてもそれでいいのです。別段、それはあなたの知性が劣っているからではありません。
しかし、プログラミングには社会で役立つ様々な知恵やスキルが潜んでいます。

複雑な問題を、バラバラに分解して一つ一つ確実に解決してやり遂げる。
一つの手順の次に別の手順を積み重ねてゴールに到達する。
状況に応じて、実施する手順を状況に応じて切り替えることを予め織り込んで計画を立てる。
ある条件が成り立つまで繰り返す。

この4つが学べれば十分だと思います。
回りのことは気にせず、プログラムが動いたときの達成感をえながら勉強してください。

さて、お勤めの会社はどのくらいの規模でしょうか?
従業員が数百人から数千人規模の会社であれば、研修の後に配属を決めるためのプロセスがあると思います。
その過程で、どのような職種につきたいのか希望を聞かれるはずです。
好きになれない職種につきたいなどとは絶対に言ってはいけません。
まともな会社ならば、適正がないことを本人が自覚している職種には付けないはずですし、すくなくとも付けないように努力するはずです。そんなことをしてもあなたにも会社のためにもなりませんから。どのような職種につきたいか、きちんとした考えを早めに固めたほうがいいと思います。

小さな会社だとそこまでの余裕がないこともありえますが、その時は転職も考える必要が生じるかもしれません。
配属が決まった後にもう一度ご質問なさってみるといいと思います。

投稿日時 - 2016-04-30 21:35:49

ANo.20

同業者です。むぎ@SEと申します。

他の方が既に詳しい回答をされているので、私は簡潔に伝えますね。

情報技術や理数系の勉強は、みんな順を追っていかないと読み解けないものが多いです。勉強のコツは、まず基本的な考え方を理解すること。順を追っていくことです。

イメージが出来てない状態でどんどん先に行っても習得に時間がかかってしまいます。

冒頭が読みやすい、わかりやすい自分のレベルにあった参考を探して1ページ1ページ理解していくこと。あとは行き詰まったらすぐ人に聞くことです。(先輩に沢山質問できるのは、新人の特権です。)

文系出身で活躍しているSEも沢山います。苦手意識を持たずに楽しんで下さいね。

参考URL:https://twitter.com/mugi1208?lang=ja

投稿日時 - 2016-04-30 21:17:16

同じような悩みをもっていた4年目のプログラマーです。
私も新卒文系の未経験スタートで、プログラミングが理解できず辛かったです。
同期の中で一番"できない"人です。
向いてないと思い、1年目は本気で辞めようかと思ってました。
まず何の処理から実装すればいいのか…
どう書けばいいのか…
このコードは何を意味しているのか…
等、とりあえず、分からないことが分からないレベルで理解できていませんでした。
でも3年目になったあたりから、分からないなりにも楽しいと思い始めました。
1年目は特に、分からないことだらけなのが普通なので、気に病むことないです。2年間プログラミングやってみてから、転職は考えてほしいなと思いました。

具体的なアドバイスではないですが…

1.分からないことは、できれば時間を決めてネット等で調べて、ここまでは理解できたけど、ここが分かりませんと先輩に質問すれば、自分の知りたいことが聞きだせると思います。
2.なんでこの書き方なのか分からないと思うことが多いかもしれませんが、その書き方が正解(というか、良い書き方?)とは限らないので、あまり悩まなくてもいいと思います。
3.『全部分からない』のではなく、『分からないことが分かる』レベルになれば、少しずつ理解できるようになって、楽しくなると思います。
4.休日に勉強されているとのことなので、書けるようになると思います。私は不真面目なので、休日にあまり勉強しませんでした…。

投稿日時 - 2016-04-30 20:02:07

ANo.18

47歳男現役のSE24年目になる。年齢的に使いこなせる言語はCOBOL,VBだけだがな。

プログラマーっていうのは適性があるかないかがハッキリしてしまう。
知識以前にものの考え方、感覚を身に付けないと理解もおぼつかないものなのだ。

私も一度だけC言語を習ったことがあるが忘れてしまった。だけど、やり直せる自信はある。(さすがにJAVAは無理と断念した。)

問題集を解くことがC言語の勉強にならないんだよね。とにかく簡単なものでも自力で作ってみる。あとはその数をこなす。
コンピューターに何をさせたいのか?それをさせるにはどんな命令を使えばいいのか。
こういう考え方をまず身に付けることは絶対条件だね。

そもそもの言語に関係なくPCでプログラミングを始めたのは中学1年のときだ。当時はBASICしか言語が無かったけど、大学ノートにBASICのプログラムを書きまくった。親はそれを見ても全然分からんって言ってたけどね。でも当時、そういう経験をしてたおかげで今でもSEを続けていられるんだと思う。

どんな言語でもIF命令は必ずある。この命令を使いこなせないようではお話しにならないかな。
C言語に限らず、ほとんどの言語は文系理系の差はないぞ。理系色の強い言語はFORTRANかアセンブラぐらいなものだよ。

一ヶ月で適性がないってお話しを終わりにしてしまうのは、早すぎるかな。そんなんではどんな業種に就職したって長続きしないからだ。
まずは3ケ月続けることだ。

あと、親兄弟、彼氏、友人にSEの知り合いはいないのか?
分からないで困っているのなら泣く暇はない。誰かに教えを乞うことはやらねばならないぞ。

投稿日時 - 2016-04-30 18:38:12

ANo.17

SEやってます。
いまでは、質とスピードを両立したプログラムを多くの言語で作れるようになりましたが、私も最初はつまづきました。

学生の頃にプログラムに興味を持ったことがあり、入門書を買って学んでみたのですが、そのときはほとんど理解できずプログラムを諦めていました。
ところが、数年後プログラマーとして就職してしまったのです。

不安もあったのですが、基本情報とプログラムを一から学んだ結果、歴代最速で研修問題をクリアすることができ、プログラマーとしてやっていくことができました。

その経験から言いますと、プログラムは自分がわかるところから少しずつ積み上げて理解していく方が結果的に早くできるようになります。
わかった気になって飛ばしたり、応用から入ったりするのはNGで、理解できない所が一つもなくなってから次のステップに進むのが原則です。
理解できない箇所は人によって違うので、できる人に尋ねて理解できなかったとしても落ち込む必要はないです。
あせらず自分がわかるところから勉強してみてください。

-----

以上が勉強の話ですが、実はプログラムに向かない人もいます。
たぶん2人に1人ぐらいの割合でいます。個人的には物理や数学が苦手だったり、暗記で乗り越えた人は向かないと思います。

向いてないことをわかっているのに続けている人もいますが、私はおすすめしません。
社内でも他の業務があると思いますし、無理そうなら上司に相談してみたらいかがでしょうか?
やめることはいつでもできますので、まずは社内に留まる方向で検討したほうが良いと思います。

誰でも向き不向きがあり、私もアルバイトを通して自分に向いてない職業がいくつもあることを知りました。
向いてないことにたまたまぶつかるのは仕方ないことですし、自分に向いている仕事を探すためにも必要な過程だと思います。

投稿日時 - 2016-04-30 14:50:55

ANo.16

プログラムはコンピュータへの命令です。

コンピュータは何も知らない子供のようなものです。包丁の使い方を知らない子供にニンジンを切ってと伝えても子供は切ることができません。包丁の持ち方、手の置き方、動かし方をひとつずつ伝える必要があります。

コンピュータには、ひとつずつ命令を噛み砕いて伝える必要があります。人間同士であれば「あれ切っといて」で伝わるかもしれませんが、コンピュータには伝わりません。命令を噛み砕くスキルが求められます。

噛み砕くスキルは人間同士でも有効です。生きてきた背景や文化が異なれば噛み砕いて伝えなければわかり合えないことがあるでしょう。プログラマーになろうがなるまいが、身に付けておくとよいスキルです。

コンピュータは子供のようなものです。こちらの都合はお構い無しです。子供のことを理解するように、コンピュータのことを理解しましょう。子育てをするときに理解するスキルが役立つでしょう。

コンピュータを理解するときに、何を伝えるとどんな結果になるのか理解しましょう。コンピュータは命令したことしかやりません。命令を変えれば、結果が変わります。命令したことと結果を観察して、法則性を見つけましょう。人間よりも分かりやすいです。人間は機嫌で結果が変わりますが、コンピュータは命令のままに動きます。

日本人に伝えるには日本語を使いますが、コンピュータに伝えるにはプログラミング言語を使います。質問者さんはC言語を学ばれていますね。C言語は日本語同様に言語です。文法があって、語彙があります。質問者さんはどうやって日本語で話せるようになりましたか?幼い頃に、試行錯誤したのではありませんか?C言語も同じです。試行錯誤してみましょう。

日本語で話していても最初は思うように伝わらなかったのではないでしょうか?C言語でも同じです。最初は自分の予想とは異なる結果が帰ってきて戸惑うでしょう。その結果から学んでください。やってみた結果から学ぶ姿勢はどんな仕事でも役立つでしょう。

質問者さんは他人と比べて焦ったり、自分はダメだと思っているのではないでしょうか?理解の仕方は人それぞれですし、早さはそれぞれです。なんとなく言葉を並べて意味もわからず英会話できてしまう人がいるかと思えば、しっかりと正しく話そうと準備を重ねてから話す人もいます。早い人が必ずしも理解しているとは限りません。なんとなくで前進して、失敗したら修正して学習する方法もあります。その手のタイプの人は悩まず行動するので習得が早いかもしれません。

プログラミングは特別な能力を求めているわけではないと私は思っています。試行錯誤する、結果を観察して法則性をみつける、語彙と文法を学んで使う、という基本的なことができれば行えると思います。

教える人と学ぶ人の相性もあります。相性が悪く上手く伝わらないときは運が悪かったと思って、他の人に教えてもらいましょう。

投稿日時 - 2016-04-30 14:44:13

ANo.15

それは、教え方が悪いのです。
プログラミングは言葉ですから、文科系の人の方が伸びる傾向があります。情報処理試験の高度の試験でもまったく不利にはなりません。むしろ、文科系の人は一般的に向いているのですね。しかし、プログラミングの初心者教育では、何が不足して理解できずにいるか、教える側が考える必要があります。それができているようには見えませんでした。会社が良くないのかもしれません。

向き不向きはありますが、やりたい仕事がどうか。
やりたい仕事なら、専門学校などに行ってから改めて仕事を探してもやり直しがきくのではないかと思います。

なぜ、そのようなコードを書くか。
納得できるまで説明しようとしない、または、出来ない会社なら、やめても惜しくはありませんよ。
そして、そのなぜ、がとても大切なポイントだったりします。

投稿日時 - 2016-04-30 12:50:18

ANo.14

No.2です。

質問者さんがいくら勉強しても分からないっていうのは、たぶんCプログラマが知っておくべき分野の知識がゼロだからではないでしょうか?。
以下のようなことが理解できていないのでは?

1.プログラム言語に関係なく、いかにプログラムを組み立てたらいいか。
2.OS(WindowsとかUnix等)の機能とそれらのおおよその動作原理。
3.ASCIIやShift-JISなどのコード体系と画面や印刷に表示される文字の関係。
4.コンパイラやリンカー、C標準ライブラリの機能。

1。を学ぶには、「ソフトウエア作法」「ソフトウエア書法」(いずれもB.W.カーニハン/P・J・プローガー)「ソフトウエアの信頼性」(G.J.マイヤー)がお勧めです。いずれも、理解しながら読み通すには、数ヶ月以上かかるかもしれません。

2.については、日経BPからでている「Windowsはなぜ動くのか」などが良いでしょうね。

3.については「プログラマのための文字コード技術入門」がいいかもしれません。ただ、この分野は深入りしないほうがいいです。

4.でお勧めの本は、「BINARY HACKS ハッカー秘伝のテクニック100選」

なお、90年代以前は、書店に行くとプログラム関連の月刊誌やゲーム関連の雑誌が山のように並んでいたものです。
そのものずばりの「Cマガジン」とか「UNIXマガジン」って月刊誌が出ていましたし、洋書では、DDJ(Dr. Dobb's Journal)という月刊誌が秋葉原のコンピュータ館などに並んでいて、C言語を学ぶ初心者にとても役にたちました。
でも、現在では、C言語など開発系の月刊誌の多くが休刊・廃刊となってしまいました・・・。

なお、私にとっては以下の書籍がC言語を学ぶに役立ちました。

・「C/その実践と応用・I/金井隆」 :アマゾンの古本で143円で買えるみたい

・「6809プログラミング デザイン/箕原辰夫」:アマゾンでは、定価2、500円のこの本が21,000円で出品されている!

・「Cの宝箱/アレン・ホラブ」:現在、入手不可能みたいです
 この書籍の27章にある「ドロップアウト宣言」がちょっと考えさせられる部分です。
 著者は、航空機の制御システム開発に参加していたそうですが、その航空機がF-16のものであることを、ある時知ったそうです。
彼は、兵器開発に参加することに疑問を感じて、彼しかできず、高給がもらえるはずのその分野からリタイアし、収入が少ないプログラム教育の分野に転身したことが書かれています。

・エキスパートCプログラミング--知られざるCの深層 :アマゾン等で中古品として入手可能です
 Cを学ぶとき、ちょっと疑問に感じるけど、知らないでも、とりあえずはなんとかなってしまうことあります。
でも、そういった漠然とした疑問にきっちりと答えてくれる唯一の書籍がこれです。


追伸:プログラムを教える立場になってみて・・・

私は現在C#で開発しています。現場に「C#をちょっとやっていました」という方がいます。
プログラム経験年数は長そうでしたが、実際には、C#開発経験がほぼゼロって感じでVBの、それも狭い範囲での経験だけって感じでした。
「まあ、C#は難しい部分があるから、VB6の方にはきついかも?」と最初は思っていたのですけど、それ以外の分野においても、素人っぽい部分が多くて、「こんなことも知らないの?」と思うことが多発しました。

教える側としては、「○○と△△と××が理解できていないのだろうなあ・・・」と推測はしますが、それを仕事中に、全部教える気にはなりません。
そういう人に教えていると、仕事中の多くの時間が取られてしまいますし、自分の仕事ができなくなりますからね。

たぶん、研修においても、先生役の人は質問者さんが分かっていないと理解しているのでしょうけど、「この人だけに手をかけ続けるわけにはいかない」ってことで、「頑張って努力してついてこれれば良し。ダメならそのうち辞めるだろう・・・」って思われているのかもしれません。

もし、質問者さん(の容姿等)を気に入ってくれる先輩男性がいるなら、そういう方に頼み込んで個人授業をしてもらうといいかもしれませんね。


ちなみに、私が以前の会社で仕事でプログラミングしていたら、「遊んでないで仕事して!」って言われたことあります。「なんで?」って聞いたら、「そんなに楽しそうにPCに向かっているのは、ゲームしているに違いないと思ったのよ」と言われました。

投稿日時 - 2016-04-30 11:17:24

ANo.13

IT業界で10年ほどSE・プログラマーを経験した後、今は教育機関で学生にプログラミングを教えている者です。
質問者さんは、文章がとてもしっかりしているので、頭が悪いわけではないことははっきりとわかります。
それでも、まったくプログラムがわからないということは、残念ですが、完全に向いてないのです。資質が無いのです。
職業によって、向き・不向きがあることはわかりますよね?
わりと誰でもできる職業もありますが、プログラマーという職業は逆に、向いてない人はとことん向いていない、人を選ぶ職業です。

資質があまり無いのに、だましだましプログラマーを続けている人も多いですが、はたから見て、なんて不幸なんだろうと思います。
プログラミングというものは、好きな人にとっては、とても楽しい行為なのです。好きな人にとっては、プログラミングの勉強は苦ではなく、遊びや趣味の一環です。
しかし、資質が無い人にとって、プログラミングの勉強は苦行以外の何物でもないでしょう。
かたやストレス解消、かたやストレス源です。

学校でプログラミングを教えていても、1分で理解できる学生もいれば、数時間かけても理解できない学生もいます。
単に理解できない学生の頭が悪いというわけではなく、数学はできたりします。本当に不思議なものです。
不真面目なのにプログラミングはできる学生もいれば、真面目なのにプログラミングができない学生もいます。

とにかく、向いていない人には本当に向いていません。
質問者さんは文面から真面目な人に見えますが、無理して続けないほうが良いですよ。一生酷いストレスとともに仕事をすることになるか、鬱になるかです。

他の回答者さんからもありますが、もし社内でプログラマー以外の職への配置転換が可能そうであれば、上司にかけあってみると良いでしょう。
それが無理なら、本当に、無理してプログラマーを続けずに、全く別の職へ変えたほうが良いですよ。
それか、もはや達観してだましだまし続け、現場で良い独身男性を見つけ、早々に寿退社することです。

これは純粋な興味なのですが、何故プログラマーになろうと思ったのでしょうか?

投稿日時 - 2016-04-30 10:39:21

お礼

ご回答ありがとうございます。

おっしゃる通り、やはり向いていないのかもしれませんね。
しかし向いていないなりに続けたいのです。一生とは言いません。いよいよ無理になって辞めたとして、転職が不可能にならない程度に続けたいのです。

>これは純粋な興味なのですが、何故プログラマーになろうと思ったのでしょうか?
多分もう見る人が見ればバレているのだとは思いますが、その理由を言うと、いよいよ完全に特定されそうなので回答は差し控えさせて頂きます…。すみません。

投稿日時 - 2016-05-01 06:06:08

ANo.12

何人か新人が入ってきましたが
質問者様と似た様な方は3人程いました。
1人は1週間しない内に辞め、
残りの二人は1年ぐらいで辞めてしまいました。
後者の二人は仕事中にガチ泣きした事もあったりして
相当つらかったんだろうなぁと。
ある意味すぐ辞めた人が一番精神的にマシだったのではないかって気がします。

>何をすればいいのか、どういう風に書けばいいのか考えればいいのかわからないのです。

これきついパターンですよね。順序立てて物事を考える能力が低いからなのか、
単純にC言語の文法や仕組みが理解出来ていないからなのか。
後者だったらまだ救いはあります。

>研修中に質問したりもしますが、何度聞いても何を言っているのか、どうしてそのコードを書くのか理解できません。

これは教えてくれる先輩が丁寧な教え方なら、なんとかなりそうではありますね。
どこまでわかっているのか頭から確認しながら探っていかないといけないパターンだから
他の人と同じ様に質問に答えてたら、ちんぷんかんぷんになるでしょうね。
最後らへんは空気読んで質問の答えがわからないけど、わかりましたって返事してたりしないですか?

>参考書を読んで載っているコードを書いて

載ってるコードそのまま書くのってあんまり意味ないですよ。
英単語を覚えるとかじゃあるまいし。
そのコードで起こる結果を少し変える様に作って
想像通りに動くかどうかとかでいいんじゃないですか?

極論ですが、文法とかで何が出来るかをおぼろげに覚えておいて
コードを書く時は、それらを組み合わせていって
書き方忘れたら見直すで良いと思うんですよね。
パズルみたいな感じです。

正直質問者さんにアドバイスするのは、書かれた情報だけじゃ非常に厳しいです。
何がわかってて、何がわかっていないのかが判断出来ないからです。
もし、頑張って続けていきたいのであれば
わからない箇所をネットで一つずつ質問して下さい。
ネットには親切に教えてくれる人が結構いるので。
本当はネットではなく、直接口頭で説明するのが理想ですが
会社の先輩にそれを求めるのはきついかもしれません。
時間的問題もありますし。出来れば先輩に今の現状を
包み隠さず伝えてください。
教える人も教える人でスケジュール管理とかありますんで。
後で蓋をあけたら…ってのが一番嫌なパターンです。

もし辞めたい辛いと思うのであれば、
質問者さんの上司、管理職などに相談してください。
配置換えなどをしてくれるケースがあるかもしれません。
プログラマの会社だからと言って
プログラマしかいないとは限りません。会社の規模にもよりますが
事務、営業、経理など他に業務があるかもしれません。

転職も新卒の時より選択肢が減りますし
何故すぐ辞めたのですか?って質問されるのが予想され、
苦労するかとは思いますが、まったく
再就職出来ないって事はまずないはずです。
仕事の適応力に関してプログラマより断然良くなる可能性が
高いので、先が無いなど悲観する必要もないと思いますよ。

投稿日時 - 2016-04-30 03:46:23

お礼

ご回答ありがとうございます。

私と似たような方が一つの会社に3人ほどいらっしゃったのですね。とても気持ちがわかります。

こう…九九の表を作りたい、となったとき、「ここでfor文の入れ子構造使えば出来るのでは?」と考えが及ばない感じですかね…。まず「どうすれば出来るの?」となってしまいます。恐らく能力だけでなく想像力も貧困なのだと思います。

>最後らへんは空気読んで質問の答えがわからないけど、わかりましたって返事してたりしないですか?

2、3回同じことを質問して相手が疲れているのを見るとつい言ってしまいます。悪いことだとは思うのですが…。

>先が無いなど悲観する必要もないと思いますよ

これほどまでに能力がない癖にわがままだとは思いますが、転職するとしたら次も正社員で働きたいのです。1ヶ月で辞めて正社員になれるとはあまり思えませんのでなんとか頑張りたいです。

投稿日時 - 2016-05-01 05:52:17

ANo.11

私はリーマンショック直撃の2010年卒で、新卒採用は某フランスのファッションコングロマリットの総合職でしたが、希望のブランドに配属されず、リテール研修先が外れ店舗で労基法アウトの劣悪な労働環境に耐えられなくなり、新卒入社9ヶ月目に転職しました。でも、最初の会社に見切りを付けて自らさっさと転職してしまったことを後悔しているので、今のあなたに伝えたいと思い、今夜初めてokwaveに登録して書いています。
私が辞めた当時も、今のあなたと同じように、食欲がなくなり何を食べても味気なく、仕事の行き帰りの電車で涙が止まりませんでした。当時の私は病院には行きませんでしたが、今のあなたは急激に大きなストレスにさらされて、それが体調に出ている状態です。生真面目に頑張りすぎて無理を続けると、適応障害になってしまうので、疲弊しすぎる前に対処しましょう。

まず、今すぐに自ら退職する必要はありません。辞めてしまおうかという覚悟まで出来ているなら、今の会社で失うものはもう何もないという心持ちで、まずは会社と状況の改善にむけて交渉しましょう。(私がやらずに後悔しているのはここです。)
新卒プログラマーになったのは、プログラマー職種に限定した形での採用でしたか?それとも総合職で採用されて、配属がプログラマー職でしたか?雇用契約を見てみましょう。
もしプログラマー職に限定した採用ではなかったのであれば、望んでもいなかったあなたにC言語をいきなりやらせようとしている会社側に判断ミスがあります。あなたには配置転換を求めて自分の適性に合う職種に社内で変更してもらう道が残っています。プログラマー限定での採用だったとしても、診断書があればまだ交渉の余地はあります。
会社との交渉の前に、心療内科か精神科に行って、現状を話して診断書をもらっておくのも大事な一手です。会社に配置転換を願い出たいということも合わせて医師に話せば、おそらく適応障害だと診断してくれると思います。もしかしたら1ヶ月の休職という形で診断書を書こうかと打診されるかもしれませんが、自分の気持ちとして職種が変われば気分も変わって頑張れるし休みたくないなら、そうハッキリ伝えれば医師も考慮して診断書を書いてくれます。
研修中ならまだ試用期間も終わっていないので、会社にこの相談をすることで試用期間中の雇用契約終了をちらつかされる可能性もあります。その際の対抗手段に診断書を手元に用意だけしておいて、研修担当者か人事部に今のあなたの状況を話し、プログラマー以外の職種に配置転換してもらえないか相談しましょう。良識のある会社なら、すぐに配置転換してくれるはずです。もしかしたら出世コースから外されるかもしれませんが、新卒最初の2-3年くらいは出世コースかどうかなんて関係ないし外からも分からないです。配置転換後に今の会社じゃ展望がないと思ったら、勤めながらゆっくり準備してブランク0日での転職を目指せばいいんです。
もし配置転換に会社が難色を示したり解雇をちらつかせたら、労働局に助けを求めましょう!あなたが自ら辞めるのは、労働局と動いてみて、それでもどうにもならなかった時です。診断書に休職が必要と書かれれば、就業規則に則って会社も休職させざるを得ません。その間に転職活動するなり次の進路を考えるなりすればいいんです。

今すぐ自ら辞めてから転職活動するんじゃなくて、まずは今の会社で受けるべき対応を求めるべきなんです。

ちなみに私は、その後もなかなかベストな仕事に出会えず、2社目の法律事務所では弁護士からストーカーを経てのパワハラによる適応障害も一度経験しましたが、無理しながら毎回ブランク無しで転職活動してこれまでに計3回転職。この2月からやっと自分にぴったりの仕事に辿り着けました。天職につくまで卒業から6年かかりました。
でも、新卒の会社で配置転換を求めていれば、2社目に転職してストーカー&パワハラにあうこともなく、私の人生こんなにバタバタと彷徨わずに済んでいたんじゃないかと、とても後悔しています。

あなたには同じような苦労をしてほしくないです。どうか今の状態で無理を続けないでくださいね。

投稿日時 - 2016-04-30 03:22:22

お礼

ご回答ありがとうございます。

とてもつらい体験をなさっていますね…。
うちの会社では、おそらくプログラミング以外の業務にはつけないと思います…。

これほどまでに能力が無いのに、わがままなのは重々承知ですが、転職するとしても今のような正社員になりたいのです。
近々心療内科に行くので、その際にまた考えてみたいと思います。

わざわざ登録してまで回答してくださり、本当にありがとうございます。
無理をしすぎないよう気をつけます。

投稿日時 - 2016-05-01 05:34:46

ANo.10

厳しいこと言うと、文系からの挑戦は無謀です
プログラミングは奥が深く理系の私でも他人のコードを理解するのに苦労することがあります
初歩を独力で勉強できないようだと畑違いの人には厳しいです

それを踏また上でJiamari459さんは、自分で努力したり素直に質問したりできる方みたいなので決意は固いという前提で書きます

まず、コンピューターが動作する仕組みを知ってください
そこを知らないとプログラミングの入門書も解らないと思います
ここに辿り着けたということはインターネットで調べ物をするくらいはできるでしょうから、「コンピューター 仕組み」で検索して出てくる(参考URLのような)サイトを覗いてみてください
解らない単語が出てきたら、その単語を検索して調べます

何か知りたいときは、インターネットで調べるように癖を付けると良いと思います
コンピューターやプログラミングに関する情報は、ほぼ全てインターネットにあります
書籍はまとまっていて読み易いかもしれませんが、情報が古くなっていることが多いので、汎用的、体系的、学術的に著名である書籍以外は、読む必要はあまりありません
インターネットで調べて独りで解決、自分が解り難かったことは後進の為にインターネットにメモを残しましょう
「MPU(CPU)」「メモリー」「OS」「アプリケーションプログラム」などを理解して、ある程度コンピューターと単語を頭の中でイメージできるようになったら、プログラミングの入門書を読むといいでしょう

可能なら師匠になってくれる人をを探しましょう
どうしても独りで解決できないときは自分よりスキルがありそうな人を師匠と仰いで頼ってみましょう
コミュニケーション苦手な人が多い業界ですが、頼られて嫌な気分になる人はあまりいませんし、私も含め教えたがりの人は多いです

参考URL:http://itpro.nikkeibp.co.jp/article/COLUMN/20061220/257441/

投稿日時 - 2016-04-30 00:55:23

お礼

ご回答と参考URLをありがとうございます。

コンピュータが動く仕組み、確かに理解していないように感じます。
載せてくださったURLを参考にさせて頂きます。

同期には頼りすぎて迷惑をかけているので、ほどほどに頼ってみたいと思います。

投稿日時 - 2016-05-01 05:11:39

ANo.9

プログラミングはそもそも難しいものなので、そこまで悲観することはありません。

英語を初めから読める日本人はいません。
C言語を初めから読める人もいません。
言語を一つ覚えるわけですから、時間がかかるのは当然のことです。

また引っかかるところも人それぞれで、コツを掴めばあなたの方が他の人よりも優れている可能性もあります。
焦らず一行一行読んでいけば、段々とわかるようになるはずです。
周りの人に合わせず、自分のペースで一行一行読んでください。
映画やドラマに出てくるハッカーのように、スラスラ読んで書いてを繰り返してはいけません。
意味を理解することが大事です。
とにかくプログラミングに対する一切の先入観を捨て、自分が理解できるペースで読むことが大事です。

あなたのように周りの環境に流されてしまうことは、初心者にありがちです。
人によって成長速度は違うので、自分のペースでやってください。

初めは参考書で学ぶことが鉄板になってくると思いますが、
ある程度力が付いた後は、自分の興味のあるものを作ることで上達できるでしょう。
逆にソフトウェア制作に全く興味がなければ、プログラミングは後々拷問でしかなくなります。
作りたいものを探すことも上達への近道ですよ。

本当に向いていないと思ったときは、早めに逃げるが吉です。
あなたの人生、仕事だけに賭けるのはもったいないですよ。
転職も簡単なことではないことはわかりますが、どうか自分自身を大切にしてください。
あなたの成功を祈っています。

投稿日時 - 2016-04-30 00:29:45

お礼

ご回答ありがとうございます。

おっしゃる通り私は周りの空気にとても左右されてしまいます。しかし焦ってしまっては身につくものも身につかないですよね。

今月から研修が本格化するので、本当にダメだと思ったらまた考えてみようと思います。

投稿日時 - 2016-05-01 04:59:56

ANo.8

悪いことは言いません。すぐに会社を辞めなさい。まだ1ヶ月しか勤めていないですよね。
良かったじゃないですか。研修中に合わないことがわかって。

研修期間が試用期間中にあたるかわかりませんが、社会保険に入ってなければ、儲けもの。
入ってても、1ヶ月では職歴として書けるわけもなく。面接で聞かれても、
うまく回答すればどうとでもなるでしょう。

貴方が続けたい、頑張りたい。と言っているので、皆さんその方向でアドバイスされてますが、
人には合う合わないがあり、無理なものは無理です。何年か後に出来るようになったとして、
それまでの地獄を耐え抜けれますか?よく考えて下さい。
まだ研修のおそらく初歩段階でこれです。実業務について仕事が出来る様になるまでに
待っているのは、多忙な業務と、先輩方の使えないヤツ。と言った評価と態度ですよ。

このまま続けても心が殺られて退職し、次の職に就くまでに何年も費やすでしょう。

まぁ、反省するとしたら学生時代の貴方が就職活動何をしていたんですか?
ということです。安易に考えてこれまでやったことも無いプログラマーなんて
技術職を選んだ貴方の考え方と、出来る様になるまでの覚悟を考慮しかなった事が問題です。
学校の就職課なんてものは、就職率を上げるために適当なこと言って就職させようとするので、
結果として、この状況を考えずに就職してしまった貴方自身の責任なんで。

これまでの学生時代は、頑張ることが美徳でしたが社会人は違います。
生き抜く力が必要となります。あらゆる意味で結果が重要となります。
心が殺られて、金が無くなれば、ゲームオーバーです。

挽回出来る年齢があるとして、貴方はまだまだまだまだ、どうとでもなる年齢です。
世の中には様々なあらゆる職があり、次は自分にあった職業を選べば良いのです。
今回辞めたとして、辞め癖をつけず次の職で頑張ってください。
どうしても就職できなかった場合は、風俗関係の仕事に就くこともありです。

引きこもらず、今回のミスマッチが起きた原因を理解したうえで次の職に就き、
お金を稼いでください。

投稿日時 - 2016-04-30 00:01:51

お礼

ご回答ありがとうございます。

向いていないのではとは思いますが、1ヶ月で辞めても転職活動が難しいのでは、と思い、心は既に半分殺られた状態ですが、一年は勤めたいと思います。1ヶ月も一年も変わらないかもしれませんが…。

投稿日時 - 2016-05-01 04:55:01

ANo.7

SEをやっております。
文系出身です。
新人研修で、はじめてコンピュータにさわり、マクロアセンブリというものをやり、参考書を購入し、電車で読んでいたことを思い出しました。

専門用語がわからないということですが、OSの初歩の本を読むと良いかと思います。プログラムはコンピュータを操作するためのものであり、プログラムはOSを介してコンピュータを操作するため、ベースの知識はOSを知ることで得られます。OSとはWindowsなどのことです。

操作中心の本ではなく、OSの仕組みを解説しているものが良いと思います。

また、プログラムを書くさいは、まず日本語で何をするのか説明できない限り書くことはできません。C言語の参考書を読むさいも、ソースコードを自分で、日本語で説明できるかどうか考えると良いと思います。

いろいろな新人さんと仕事をしてきましたが、一年もすればプログラムは書けるようになると思います。
時間が解決してくれます。

新人時代ははるか昔なため、まとはずれな部分もあるかと思いますが、ご参考願います。

投稿日時 - 2016-04-29 23:48:12

お礼

ご回答ありがとうございます。

おっしゃる通り、プログラムを書く際にまず日本語で書くことを意識してみたいと思います。
お恥ずかしいのですが、行き当たりばったりでとりあえず使えそうなコードを打っていました。

とりあえず一年を目標に頑張ってみたいと思います。

投稿日時 - 2016-05-01 04:49:16

ANo.6

最初はシャープ、HPのポケットコンピュータでしたね。
雑誌に有るコードを入力して動作を確認して遊ばれた物です。
その後仕事で『マシン語』の世界で、まずフローチャートを記載し
それに必要なコマンドを取り出して作成していました。
当時専門学校卒が作成した物を引き継いだ時コードを全て
書き直して完成させたけどその後は検査部門で検査機器
のコード修正をした事も有りますね。

参考にしたのは『コマンドが書いてある雑誌』
考え方としては
これをするのにどのコマンドが使えるかです。
全て独学で専門学校で学んだ事は有りません。
その関係かMacに移行してWindowsは単なるサブ機
(珠に電源を入れるだけ)
に成ってます。
久しぶりに連休にプログラムでも書いてみようかな。

投稿日時 - 2016-04-29 13:54:26

お礼

ご回答ありがとうございます。

やはり、好きこそものの上手なれ、ですね。

楽しくプログラミングなさっているようで羨ましい限りです。私もなんとかその段階まで登れるよう頑張ろうと思います。

投稿日時 - 2016-05-01 04:43:27

ANo.5

完全にコンピュータ業界とは無縁の素人ですが・・・。

私は、c言語、java、sql、dbで開発するまでには、それぞれに最低でも6ヶ月。

私の場合は、毎日、10時間を言語習得にあててそれでも6ヶ月してはじめてプログラムを書けるようになりました。

要は、学習量の蓄積の程度です。最初は、一冊をマスターしてもほとんど初心者の域をでません。二冊目、三冊目と頑張っても、やはり、レベルとしては初心者のそれです。でも、そこで諦めずに学習と実地とを蓄積していけば、ある日突然に開発者が眺めているステージが目の前に開けます。つまりは、学習量がスキルという質に一気に転換したということです。

山だって1500mまで登らないと辺りの景色は山地帯から亜高山帯には変わりません。プログラミング言語の学習だって同じこと。1500mまで登り切った者だけが次のステージの存在を知ります。ですから、500mまで登るスピードなんてどうだってよいのですよ。その時点で「速い、遅い」と一喜一憂する必要はさらさらありません。目指すは1500m地点に広がるステージですから。

なお、私なんぞ

10 input a,b
20 let c=a+b
30 print c

のたった3行を理解するのに一ヶ月を要したものです。mzー80の設計書を解析したり、情報科学全24巻を読んだり。その後はフォートラン演習の例題とプログラミング言語cの例題をやりきてってなんとかプログラムらしきものを書けるようになりました。ともかく、この最初の山登りが課題です。

量は質をもたらす!

を信じて頑張るのみですよ。

投稿日時 - 2016-04-29 13:08:31

お礼

ご回答ありがとうございます。
少し心が楽になったような気がします。

私はまだ学習量の蓄積が足りないのかもしれませんね。

この最初の山登り頑張ります。

投稿日時 - 2016-05-01 04:37:35

元プログラマーだったので、気持ちは分かります。
自分の場合、情報処理の専門学校を卒業してはいますが、仕事で客先でプログラミングを組んだ経験はなく、教育もない状態で会社が客先に出す経歴書では経験したことがない開発業務が記載されていて、それをつじつまが合うように年齢も実際の年齢よりも、2歳程上に記載されていました。
いわゆる、会社による経験詐称が行なわれていました。
それがバレないように客先の面接前に事前練習をさせられました。
経験者ではなく、実際に業務でプログラムを組んだことがないですが、客先でバレないようにするのが大変でした。

実際に業務でプログラミングするようになっても、ある処理のロジックが上手く動かず、精神的に追い詰められたことがありました。寝てても上手く動作しないロジックのデバッグをしている夢ばかりでした。

自分はプログラマには向いていないと思って引き留めはありましたが、辞めました。プログラム開発の会社だったのでほかの仕事はなかったため辞めました。
プログラミングに全く関わらないと言うことではないですが、今はITでも別の業務についています。

その会社にプログラミング以外の仕事があれば、違う教育をしてもらうのもいいかもしれません。
プログラミング言語はCだけではなく、java、vb、cobolがあり、DBを使用するとなるとsqlも覚えないといけません。
開発業務でどんなプログラミング言語を使うかは分からないので都度覚えていく必要があります。

英語の学習でもいろいろな方法がありますがその方法が自分にあっているのが見つからない場合もあります。
プログラムの学習方法も似たようなもので、本を読んだり、ネットで調べてプログラミングを組んでも自分が理解出来るかは自分次第なので、誰にでも合う良い方法というのはありません。
当時プログラミングが苦手で今第一線でプログラマーとして働いている人間も、恐らくあなたと同じような苦労をしていると思います。

投稿日時 - 2016-04-29 11:26:10

お礼

ご回答ありがとうございます。

おそらくプログラミング以外の業務は、うちの会社にはないと思います。
勉強方法も模索していくしかないようですね。頑張ります。

投稿日時 - 2016-05-01 04:32:30

ANo.3

プログラミングの最初の壁は、「コンピュータは、逐一正確な手順を、正確な順番で指示しないと、間違ってようが言われたとおりにしか動かない」というコンピュータに、細かく指示をどういう順番でやらせるか、という考え方に切り替えて付き合わないといけない点です。

人間なら自分で考えてできるでしょ!、と任せられるところも、全部マニュアル化するように手順書として与えないとダメなのです。その手順書をどうやって書くか、言語は得意なもので書けばいいのですが、手順そのものを立てるのがプログラマの仕事なのだ、と子どもに説明するつもりで、やってみてください。

そうすると、他の文系の方で食らいつけている人たちからのアドバイスも理解しやすくなると思いますよ。

投稿日時 - 2016-04-29 10:41:51

ANo.2

昔、私がコンピュータの仕事をやりはじめたころを思い出しますね。

質問者さんは、C言語の知識以前に、「プログラムロジックはどう組み立てていけば良いか?」とか「ハードとソフトの関係」なども理解できてないものと思います。

1つ2つくらいの疑問であれば、その疑問を放置しても、なんとか先に進むことができますけど、3つ4つと理解できないことが積み重なってくると、もうどうしようもなくなり、「わけわか」状態になってしまいますもんね。

でも、こういう状態について、「これさえ学べばOK!」なんて特効薬はありませんね。

対策としては、平日はもちろんですが、このゴールデンウイークといったまとまった休みも、朝から深夜まで、受験勉強並にコンピュータの勉強をやり続けるしかないと思います。
そして、コンピュータで学ぶべきことは、膨大になっていますし、1つの問題(疑問)を解決しようと調べ始めると、2つの疑問が追加されて3つの疑問に増えてしまう。
そして、3つの疑問を調べていると、さらに6つの分からないことが追加になってしまうかもしれません。
そういう状態になったとしても、地道に勉強を続けて、疑問を解決してゆくしか方法はありません。


ただ、言えるのはネットで調べるとか、本を読むだけってのは絶対ダメです。
参考書や専門書を調べて1時間で「これは分かった!」という気になるかもしれません。
でも、実際に手を動かして、その疑問に思ったことに関するプログラムを、自宅のPCで作ってみると、「うまくいかない!」となるものです。
これは、単なる自分のタイプミスもあるし、書籍やネットの記述が間違っているのが原因だったりします。
さらには、自分も書籍も正しくとも、バージョン違いで動かないってこともあったりします。
そういう問題を1つについて2,3日かけて地道に解決していく過程で、実力がすこしずつ身についてゆくのです。

また、そのプログラムを作る過程において、新たな疑問がいくつも生まれてきますけど、それについて、ネットや書籍を読んで勉強していたら、もしかするとその1つの疑問の解決に1ヶ月以上かかるかもしれません。

なぜなら、人間の脳みその処理速度や処理量には限界があるから、いくら一度に沢山の本を読んでも、一定の時間に理解できる量には限りがあるし、その1つの疑問は、情報系の学校で半年とか1年がかりで学ぶ分野かもしれないからです。

いずれにしても、こういう孤独で長い読書とプログラミング作業が嫌いなら、業界は同じでも、プログラミングとは関係ない分野に活路を見いだすのがいいかもしれません。

投稿日時 - 2016-04-29 10:08:07

ANo.1

まだ入社して1ヶ月なので、焦る必要も無ければ悲観する必要もありません。
文系卒/理系卒は年数が経つと全く関係無くなりますし、配属先によっては
かえって文系卒の方が有利な場面が多々あります。

プログラミングと言ってもコンピュータに分かる言語で文章を書いている
にすぎない為、最初の飲み込み文系卒の人の方が早いかもしれません。

C言語は35年程前にOS:UNIXと共に学びましたが、当時と比べ様々な
参考書や言語解説書が大量に発行されています。
35年前は、石田晴久訳「プログラミング言語C」しかありませんでした。

当時、C言語で最初につまずいたのがポインターでしたが、それも後から
考えると大したことではありませんでした。
同僚で理解が深い人からアドバイスを受けたりするのが早いと思いますが、
自分で理解しない事には身につかないので、努力を継続するしかないと
思います。

みんな、最初から簡単にC言語が書ければプログラマーなど必要ありません、
他の仕事も同じですので地道に勉強を継続して下さい。

数年すると分かりますが、プログラムを書いている時間は意外と少ないこと
に気が付きます。
自然とエンドユーザーとの打ち合わせや設計に時間が取られ、数年後には
貴方自身全くプログラムを書かなくなると思います。

投稿日時 - 2016-04-29 10:06:38

お礼

ご回答ありがとうございます。

周りの文系の人たちは出来ているのでやはり文理は関係なく、私の頭だけ悪いんだろうな、と思ってます。

まさにポインターでつまづいているところです。ポインターがわからず、何度も同期に教えてもらいましたが、その問題はわかっても次の問題になると応用が効かなくなります。おそらくわかった気になっているのだと思いますが…。

地道に勉強するしかやはり方法はないですよね!頑張ります!

投稿日時 - 2016-05-01 04:24:48

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-