84
@e99h2121

「正直9年経ったいまでもfor文ググってる」

「正直9年経ったいまでもfor文ググってる」

という議論記事があった。正直なところ私もググる方の人だ。私の感想:

  • ポンとテキストエディタだけ渡された時に書けるか自信ないぞ...IDEがあればまあ大丈夫かなあ。
    • JavaScriptだけじゃない。言語色々扱うしという言い訳。正規表現とか毎度調べる。
    • だから世の中にチートシートというものがあるのだ。お気に入りチートシート多数。
    • 実戦でどうしているか?結局周りのソースを見て馴染む書き方にしていますよ多分。
    • 暗記するかしないかは受験勉強みたいなもので、コーディング面接に受かるなら必要。暗記そのものには意味はないとは思う。
      • 競技プログラミングが使えないとかいう論もあったな。
      • ググり力も大事。
  • でも「最低限」もできないのはやはり恥ずかしい気持ちはある。
    • なんかこれ英語できるできないと似てるな。英語なんてGoogle翻訳、DeepL翻訳あればいいけど、実際自力である程度喋れたほうが、格段に会話が進むし、彼ら(英語話者のチームメイト)への解決力が上がる。
      • やっぱり日々勉強だ...頑張ろう...

記事末尾に続く。

議論

で、どんな議論になっていたのか覗いた内容です。以下DeepL翻訳利用の整形なので、詳細は元記事へ

ご意見サマリ

  • 正直に言うと、私は基本的な構文を忘れることがある。括弧の中のセミコロン、コンマにすべきだと思ったり、よくわからなくなる。
let str = '';

for (let i = 0; i < 9; i++) {
  str = str + i;
}
  • いつも、MDNからシンタックスを取得してきた方が、最初から書き直すよりも良いと思えるくらい、失敗してしまう。

  • 恥ずかしいことのように感じられそうですが、恥ずかしいとは思いません。私も同じことをしていますが、基本的な構文をコピー&ペーストしてはいけない理由はないと思います。

  • 私はプロのプログラマーとして30年以上の経験がありますが、いまだに面接のために「詰め込み」をしなければならないのはそのためだとおもう。通常はグーグルで検索するような内容も、すべて短期的にアタマに詰め込む必要がある。

  • Javaには4種類のループ方法があり、TSやJSにもありますが、コレクションの反復処理は含まれていません。普通のやり方ではないことをするときは、いつでもググっています。みんなそうする。そうでないふりをする必要があるのは、就職の面接のときだけですよ。

  • 最近はIDEに任せています。「for」と入力すると、forループを入力するためのさまざまな方法が自動的に表示されるので、ブラウザに戻ってくる手間が省けます。記憶を頼りに入力できるかどうかは保証できませんが...

  • 私は、SQL、VBA、js、python、c#を書いています。シンタックスの違いを覚えることは、インターネットで30秒もあればコピーペーストで答えが得られるのだから、精神的な負担に見合わないと思います。私を悩ませているのは、Microsoftのスタックにワイルドカードの一貫性がないことです。

  • 私は何度も何度もjavascriptを学び直しています。ダッシュボード用に購入したテーマを統合したときのこと。ある時、ダッシュボード用に購入したテーマを簡単に統合する作業を任されたのですが、CSSクラスを1つ修正するだけで、その後3日間CSS作業に追われることになりました。フロントエンドの開発者に敬意を表します。

  • 15年間、ほぼ毎日Rubyのコードを書いてきましたが、いまだに週に一度はRubyのCSVクラスをググっています。複雑なクラスでもないのに!?

  • おなじです。JSとRubyでは形が違うのでググらないといけないのですが、似ているようでちょうど違うので2つの言語の間でごちゃごちゃになってしまいます🤦

  • 私はRuby、Python、JSを少しずつ書いていますが、この言語の混乱が私を悩ませます。ゲーム用にC#を書くときは、構文が違うので自信はある。

  • 私はループごとのC#とVBの構文をモニターのポストイットに貼っています。

  • 私は自分がステレオタイプなプログラマー・ギークに当てはまらないことを恥ずかしく思っています。私はクラスの中で、卒業後にプログラミングを仕事にすることを選んだ数少ない女性の一人です。ほとんどの周りの子は、自分に合わないと感じ、劣等感を抱き、他の関連する仕事(例:プロダクトオーナー)を選んでいます。

    • この仕事に性別は関係ありませんでしたが、最も恥ずかしいのは、私がコーディングにすべての自分の時間を費やしていないという事実です。プログラミングとは関係のない他の趣味もありますし。
  • 自分はこの言語やフレームワーク、ツールを創造的かつ効率的に使いこなせていないと感じます。効率的なコードを書けていないのではないかと。私の友人には、人のコードが悪いと文句を言うのが好きな人がいて(私は彼から多くを学びました)、そのせいで私の自信はこれまで以上に低下しました。

  • 何とかしようと努力していますが、現場やらに自分と同じような人がいないと疲れることもありますね。

  • コーディングは私の趣味ではありませんし、仕事でやっているだけで超成功しています。1日に12時間もコードを見ている人たちは、どう考えても5年後には燃え尽きてしまうでしょう。

  • 誰もがやっていることだと思います。私の弱点です。たまに、何週間もフレームワークだけでPHPを書いていて、Vanilla(ライブラリ無し)のPHPに切り替えると、簡単なことでもググらないといけなくなることがあります。

その他

煽り意見も付いていた。ガイドライン違反 マークになっていたが。

  • 9年でも調べないといけないの?意味がわかりません。率直な感想です。
  • アルゴリズムについてはどう思いますか?いつでも調べられるから覚える必要はないと?

等など

まとめ(私の感想)

  • プログラマならどこでも、共感できる話題なのだなと思いつつ
  • 現場で使える力は本当はググり力、質問力だよと思いつつ
  • でもそこに何年たってもググっている私は、もうちょっと、ええかげん覚えろよという自戒の念を刺激される話題だった。

ググり力・質問力を扱う参考記事

チートシート

以上ただの感想文仕立てですが、もし参考になればさいわいです。

84
ユーザー登録して、Qiitaをもっと便利に使ってみませんか。
  1. あなたにマッチした記事をお届けします
    ユーザーやタグをフォローすることで、あなたが興味を持つ技術分野の情報をまとめてキャッチアップできます
  2. 便利な情報をあとで効率的に読み返せます
    気に入った記事を「ストック」することで、あとからすぐに検索できます
e99h2121
2003年新卒入社した「人事給与システムのリーディングカンパニー」で保守開発をしています。Qiitaではポエマー、Zennで息抜き。2016aug生まれ娘、2018oct生まれ息子に精神を鍛えられている日々
works-hi
「はたらく」を楽しく!に向けて大手企業の人事業務から変えていく HR業界のリーディングカンパニー

コメント

括弧の中のセミコロン、コンマにすべきだと思ったり、よくわからなくなる。

カンマはカンマで別の役割があるのです。

for (let i = 0, j = 0; i < 10; i++, j += 2) {
  console.log(i, j, i * j);
}
6
(編集済み)

趣味でJavaScriptを触るんですが、まあいちいちググりますよね。
でも悪いことばかりじゃなくて、いちいちググってきた副産物として
for-ofや、filter、map、reduceを知ることができた。
forやforEachをすらすら書けていたら、存在に気づくこともなかったかもしれない。
そう思うと、今日もググらずにはいられない。

6

ループレベルの文法でもググることが多いですね。
記事にも書いてることですが複数言語やってると、

  • カンマやセミコロンの有無
  • eachforEach の様に微妙に名前が違う

など、言語によって微妙に違うので覚えられないんですよね。

あと、ググって出たものは基本動作確認済みのコードを載せてるはずなので、それをコピペすればtypoの心配は無いだろうという安心感もあります。

3

経験25年です

each や forEach の様に微妙に名前が違う

見た瞬間!どっちだっけに?なり、思わずコメントしました(^^;;

javascriptのように動かした方が早いときは、うろ覚えでもタイプしちゃいます。
javaはIDEを使うのでググることは少ないですが、IDEはPCの負荷が重いので、慣れた言語では使いません。
それでググってたりしますがw

1

個人的には、実現する方法があることを知っているというのが技術力であると思っています。
何も見ずにコードを書けることは確かに速度に繋がりますが、習得する優先度は低いと思います。

4

ArrayのforEachに渡す関数は (e,i) => {} なのに
jQueryのeachに渡すのは (i,e) => {} だったりして、混乱しまくって結局毎回ググったりします。。

1

自分の同僚の間では検索能力はJob Descriptionの一部と言うことで落ち着いています。記憶してない事でも解決方法を導けることの方が重要かと思います。

1

思い出したり試したりする時間をかけるならググった方が早い、というのはありますね。

1

最近PythonとかVueとかGoとか色々やり始めて、確かに混乱してる…
10年以上やってたPerlも、今いじることになったら多分ググると思う

コードを読むのは文意さえ読み取れれば問題ないけど(問題ないこともないけど…)、
書くのはニュアンスじゃ駄目ですもんね当然ながらw

0

なかなか難しいところで、標準ライブラリの関数などはしょっちゅう字引き感覚で検索するのですが流石にfor文は覚えるかなーという感じです。

0
あなたもコメントしてみませんか :)
ユーザー登録
すでにアカウントを持っている方はログイン
記事投稿イベント開催中
Microsoft Igniteに参加してイベントに関する記事を投稿しよう!
~
ユーザーは見つかりませんでした