プログラミング言語を学び始めたのですが、分からないままただ時間だけが過ぎることが多くあります。他の人に分からないところを聞くと、単純な事だったりします。
人に聞いてばかりで自分で考えないのもダメだと思うのですが、なかなか解決に近づかないのもつらいです。
皆さんは、どこまで自分で考えたら、人に聞きますか。
どうしたら英語ができるようになりますか的な答えに困る質問ですが、皆さんの中での目安みたいなものがあれば教えて下さい。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答17件
0
どこまで自分で考えたら、人に聞きますか。
「どこまで」の境界線は、量ではなく質で引きます。
すなわち、何分、何時間考えたら、というのではなく、
問題が自分の内側にあるのか、外側にあるのかで引きます。
その問題固有の仕様や環境、プラットフォームなど外部に起因するもの、
とくにハードに依存するものは、自分だけでいくら考えてもダメなので、
人に聞きます(実際はネットで検索することが多いですが)。
逆に実装に依存しない抽象的な設計やソフトの企画的な分野では、
あるテーマで何ヶ月も何年も考え続けたりします。
何年といっても1日あたりは数分だったりするのだけれど。
まとめると、自分でできる範囲は自分で考えます。
できなければ、検索するとかで外部に委譲します。
そして、その責務の範囲を認識することが重要です。
投稿2015/07/20 17:53
総合スコア5592
0
新人だった頃、かなり質問魔でした。ある時上司から「君は質問することが仕事だと思ってどんどん質問しなさい。答えを考えることが先輩たちの仕事になる」と言われたことがあります。
疑問を持つこと、質問すること、は大事なことです。受ける側にとってもよい刺激になることもあります。少なくとも辛くなる前に質問しましょうね。
質問するときに気をつけてほしいことを。
①質問する相手とタイミングを選ぶ
忙しい人なら「質問があるのでお手透きのときにお願いします」と言っておくとか
②解っていることと解らないことを整理しておく
「解っているつもりで間違っていた」ということもあるので、正しく理解できているか確認してもらうためにも
投稿2015/07/24 15:53
総合スコア229
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
人に聞くまでの時間は自分で聞きたいなと思った時でいいと思います。
どちらかというと聞いた後こそ大事だと思っています。
つまり、聞くと単純なことと思っていることは説明自体は理解できているわけですよね。
でも理解することとできるようになることはまったくの別物です。
試しに分かったと思ったことを別の人(あるいは聞いた人にでもいいかも)にまったく同じことを自分の言葉で説明してみてください。
もしここで自分の言葉で説明ができないようであれば、それはまだ「相手の言葉を理解した」だけに過ぎません。
自分の言葉で話せるようになって初めて自分のものになるんです。
なので復習をするといいと思います。
特に個人的におすすめしているのはブログに書くことですね。
復習になりますし、備忘録にもなります。
最近であればQiitaに記事をアップすると、間違っている部分を指摘してくれたりとより確かな知識が身についたりもします。
なので「自分の言葉で説明できる」ことを目標にやってみてはいかがでしょうか。
投稿2015/07/22 05:02
総合スコア2283
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
(質問とはちょっとズレた話になります。すみません…)
個人的にプログラミング学習は、思考の仕方が文系か理数系かによって若干違ってくるように思います。
文系寄りだったら、書くこと話すことと同じように反復して、主に感覚的な捉え方の経験を積む。
理数系寄りだったら、問題を解くことと同じように反復して、主に論理的な捉え方の経験を積む。
※文系の論理。理数系の感覚。というのもあるとは思いますが…。
プログラミング学習の場合、最初になにかの言語でそこそこ書けるようになれば、ロジックを記述する基本的な考え方は身につきますが、なんにせよ学び始めの時期は反復学習が必要です。
その点では、C++よりもPythonなどのインタプリタ言語のほうがとっつき易いと思います。
特にC++は記述様式が難解ですし、コンパイルエラーを理解できるようになるにもそこそこ経験が必要です。たぶん、いろいろなところでにっちもさっちも行かなくて、時間を取られることが多々起こるのではないかと思います。
…そのぶんC++を最初に理解できれば、他の言語の理解はハードルが一気に下がるようにも思いますけど…
もし学習効率が気になるようでしたら、Pythonなどのインタプリタ言語をお勧めします。
投稿2015/07/20 22:09
編集2015/07/20 22:13退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
もちろん内容によるのですが、私は基本的にすぐに人にきくことをおすすめしています。
人に聞けば1分で解決することに対して30分浪費するのは無意味ではないでしょうか。
エラーが出た時に検索してすぐ答えが見つかれば直して、解決できなければすぐに聞くのが良いと思います。
その際に「どうすればその解決方法にたどり着きますか?」と聞くのがよいでしょう。
きかれる方の立場からすると、頼ってもらえるのは嬉しいことです。
また例えば「PHPの勉強をしようとして〜して〜して〜したんだけどわかりません」という質問をされるよりも
「PHPを勉強しようと思ったんですが、どう始めれば良いですか?」と質問されたほうがフォローもしやすいです。
初心者の質問に対して「もっと手前でスマートな解決方法があるのに、どうしてそうした!?」と感じることは多くあります。そういう時はお互いに時間がもったいないです。
投稿2015/07/21 05:09
総合スコア1342
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
LLmanさんの意見と少し重なるのですが
『わからない=理解ができない』なのか『わからない=起こっている事象(エラーなど)の原因が分からない』のかで違ってくると思います。
前者なら、わからないままでも進めていくことが多いです。
(もちろん言葉などはすぐに調べますが)
もう一段先のことを学習した時に分からなかったことが分かるようになることが多いからです。
後者ならまずはネットで調べます。
単語を区切る、言い方を変える、などやっていると大体それらしきものが出てきます。
それでも無理だったり、知っている人からしたら簡単なのはわかるけど、今回は時間がないので自分で調べている余裕がない!という時は人に聞きますね。
時間がなくて人に尋ねた場合は、時間ができたときに改めてそれについて調べるようにしています。
投稿2015/07/21 02:36
総合スコア441
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
詰まった時点で聞きます。
どこまでどのように考えて、そこからどのようにしたいのか説明して聞く。
プログラムて聞くと難しく聞こえますが、やってることは日本語で説明して、あとは翻訳するだけです。
投稿2015/07/21 00:45
総合スコア1021
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
設計書を作ってからプログラミングするといいですよ
実業務では設計書を作成し全ての環境を整えてからコーディング(プログラミング)作業に入ります。
余談ですが、実際には事前工程の未完了部分も多々ありますが...
初めての場合や経験が浅い場合に準備なしに作業を行っても成功しないと思います。
webサイトで調べるのもいいですが経験が低いと調べ方が分かり辛く理解に苦しむ場合もあるのかと
参考書など(HOW to的な本がいいです。)を利用してプログラミングの経験値を上げると良いかもしれません。
例えば
家を建てる時(日曜大工的な事でもいいです)、
プラモデルを組み立てる時、
料理を作る時などetc...
初心者が設計書や手順書等が無いと上手く完成しないと思いますよ
やりたい事をメモ書きレベルでもいいので書き起こし、
その、やりたい事をプログラム言語の記述に1つづつ置き換えて行きます。
その際、分らない事も書き起こしておくといいでしょう。
後で、調べてその部分を埋めていけば完成します。
経験値の高い人の場合は、頭の中で既に出来上がっていて、実際はタイピングしてるだけなので
ビギナーには考えながらコーディングするのは難しいと思います。
>皆さんは、どこまで自分で考えたら、人に聞きますか。
実業務では、レビューという作業工程があります。
プログラミング作業を実施する前に行い(プログラム)コードレビューと言います。
コードレビューを終えて指摘事項があれば修正し、レビューが完了するとプログラミング作業となります。
設計書を作り、プログラムコードを記述してレビューしてもらうと効率良く作業が進むと思います。
分らない事も記載して置いて、どう解決すれば良いのか伺うのがポイントです。
理解してる事と、理解出来ていない事を全て出し尽くしてからから質問するのがコツです。
上手く伝われば良いのですが、解決の1歩となればなりよりです。
投稿2015/08/06 18:08
総合スコア31
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
『問題点の切り分け』ができている時に他者に聞きます。
私が、逆に質問を受ける時に、どこまで分かっていて、どこで詰まっているのかを説明を求めます。
困っている人の既知な所からの説明ではまわりくどくなるので、
「何が分かっていて」何がわかっていないのかを整理しないと説明ができないからです。
『暗黙の了解』的な事柄が分かっていない時に時間をかけて説明をしても、それはお互いの資源の無駄遣いになるので、『問題点の切り分け』がポイントのなるかと思います。
今質問する側にいる人もいずれ、逆に質問される側になりますのでこれができるスキルや思考法が必要かと思われます。
投稿2015/08/01 18:07
総合スコア15
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
どこまで自分で考えたら、人に聞きますか。
そのプログラミングの問題によります。
その問題が経験即や知識による物で、ネットで調べてもすぐに分からないような場合は、同じようなトラブルシューティングをしていそうな人がいれば聞きます。
また他の人の視点を入れる事で、解決する問題もあります。そのような時も聞きます。
抽象的な問題や、ロジック、アルゴリズムが絡むような問題は自分で考えます。
経験が浅い内は分からなければすぐに人に聞くというスタンスでいいと思います。
経験を積む内に自分の中で人に聞くべき問題かどうかという線引きができてくると思います。
投稿2015/08/01 15:36
総合スコア1464
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
私が学生だった頃、プログラミングの参考書で分からない部分や概念は後回しにして、後日理解しようとしていました。日を改めると以前分からなかった部分が嘘のように理解できることがよくあったんです。例えば、overrideの概念が理解できなかった日は、いくらプログラムを書いてもoverrideの概念は理解できないのです。
私は短期集中でプログラミングを学習できる方なんていないと思いますよ。(例外はある)
ただ、チュートリアルをこなすだけでは趣味グラマーの域を超えないと思いますので、今後仕事などで使っていくのでしたら、自発的にバリバリ作りたいものを作っていくと言語の仕様や本質を理解できると思います。
偉そうにすみません。がんばってくださいね。
投稿2015/07/27 08:41
退会済みユーザー
総合スコア0
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
質問の内容にもよりますが、
「何が分からずとまっている」
「これが分かれば先に進む(or 進みそう)」
という点が分かったら聞くと良いと思います。
そこまで考えたのであれば、答えるほうも何を答えればいいか分かると思います。
NGは、考えないで質問すること、です。
投稿2015/07/27 04:34
総合スコア10
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
fgfnabwymさんが社会人で職業としてプログラムを書いているのか、学生で勉強しているのかによって
人に質問するタイミングは変わると思います。
仕事でプログラムを書いているならば、軽くネットで調べて、わからなければ直ぐに誰に聞いてしまうほうが良いかと思います。
簡単な内容であれば、長々と時間を掛けるのは業務上無駄なことです。
難しい内容であれば、周りの方と議論できるため、プロジェクトチームとしての技術向上や隠れていた問題の発見につながることも期待できます。
学生でプログラミングを学んでいるのであれば、一晩悩んで次の日も解決できなければ誰かに頼るというぐらいでいいと思います。
私の個人的な意見としては、時間に余裕があるなら悩めるだけ悩んで自分の力にしたほうが良いと思います。
始めたばかりのころは、知識がブツ切れなので、単純な問題であっても自分の知識と結びつかないことは良くあると思います。
経験をつめば自然に解決できるようになると思いますので、根気強く頑張ってください。
投稿2015/07/25 13:18
総合スコア11
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ご質問の方の疑問に対する解決方法は他の方が仰の通りですので、すこし斜めの回答をします。
解決に近づかずに辛いようであれば、そもそもプログラミング習得と問題解決のベクトルがあっているのかも見直してみてはどうでしょう。
「プログラミング習得」ができると「人力の作業をPCやWebであるていど済ますことができる」ようになるが、課題本質の解決に対する「手段」でしか成り得ないと思っています。(プログラマーはコード、ドキュメントが納品物となり、その対価で報酬を得られますので一部職種による例外はあります)
そもそもプログラミング習得で解決しようとしている問題は、本当にプログラミングという手段でないと解決できないのでしょうか?
- 売り上げ管理であればノートとペンがあればPCに頼らなくても(エクセルは便利だけど)達成できます(どちらかというと記録を続けることが大事)。
- サーバーを立てて情報発信したいということであればプログラミングなしで使えるブログサービスはたくさんあります。
プログラミング習得には根気と時間を要しますし、新しい技術によりすぐに廃れてしまいますので、習得したノウハウは短周期での再学習が必要です。
代替手段があるのならば、解決に近づかずに悶々とする時間を、別のことに費やすほうが賢いやり方ではないかとも思います。
投稿2015/07/21 10:20
総合スコア124
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。