私が前にやったことを忘れて、これをどのように修正しますか


19

それが私だけなのか、これが私たちの分野で一般的かどうかはわかりません。

過去1年間は私にとって少し過酷でした。私はいくつかのタスクを実行するためにいくつかの異なるテクノロジーを学んでおり、時々私が学んでいるその新しいテクノロジーに完全に集中しなければなりませんでした。

しかし、プロジェクト全体ですべてを一緒に使用することに戻ったときに気づいたのは、他の新しいテクノロジーの学習に集中する前に、すでに行っていた方法を忘れていたことです。jqueryでdivを選択するための構文などの単純なことすら忘れてしまい、すぐに覗くために古いファイルに戻らなければならないことがあります。

以前に別のプロジェクトで行ったことを認識したものをコーディングすることもできましたが、それがどのプロジェクトのためのものだったか覚えていないため、いくつかのプロジェクトを調べてコードを調べて、どこでそれを行ったかを覚えておく必要があります。

以前に行ったことを忘れないようにするため、または過去に書いたコードに簡単にアクセスするために、どのような方法を考案しましたか?


9
あなたは一人ではありません。ほとんどの場合、それは私たちにとって最高の出来事です。人間の脳は、日常の作業で必要のないものを忘れがちなので、完全に理解できます。
テレンスポンセ

2
それはあなただけです!!!! :O冗談です。私にいつも起こります。
ニックスプリッツァー

>これは他の人にも起こりますか?私にはよく起こります。唯一の解決策は若くすることです。:
スティーブンC

回答:


7

作業ログを保持しています。これは単なるテキストファイルです。毎日、作業中の事柄についてメモを取ります。自分がしたこと、直面した問題、解決した方法、話し相手、話し合い、決定した内容、関連するファイル/クラス/ウェブページ、等

そのため、問題が発生し、それについてdeja-vuの感覚があれば、作業ログを検索するだけで、ほとんどの場合、探しているものをすばやく見つけることができます。

作業ログを使用すると、時間の過ごし方を追跡したり、毎週/毎月のレポートを書いたり、パフォーマンスのレビューに備えたりすることも簡単になります。


6

それは私に起こります。たとえば、私は仕事で実際にそれらを使用していないため、Ruby / Javascriptを常に再学習しています。最終的にはいくつかのことを思い出すようになりますが、多くのタグが付いた膨大な数のブラウザーブックマークも取得しています。一般的に使用されるコードスニペットについては、それらのコレクションがありますが、まだ必要です。1.持っていることを忘れないでください。2.関係があると思われるものを見つけてください。か否か。残念ながら、より良いシステムを思いつくことはありません。


5

いや、それはあなただけではありません。これは、あなたがこれ以上長い間使用しない理論上のほとんどすべてのもので一般的であると信じています。あなたがもう覚えていない学校や大学で学んだすべてのものについて考えてください。最終試験の2週間後にはもう忘れてしまいます...

私が知っているこれを改善する唯一の方法は、それを使用することです。しばしば。それは、テレビのコマーシャルのようなもので、すべてのラインとシーンを覚えています。どうして?あなたは毎日それらを見るからです-あなたの脳があなたがそれを覚えるためにあなたの脳がそのシナプス(またはそれがすることは何でも)を再配置することを引き起こす一定のリマインダー。覚えておきたいすべての知識(アルゴリズム、メソッド、式、構文など)に対して同じことができるとしたらどうでしょうか(プログラムブレーク中にテレビ局に抗議し、この種の有用なものを表示させる時が来たと思います)しかし、幸いなことに、一度学んだことはほとんどすべて、短時間で再学習できます。

将来のある時点で振り返りたいコードを書いていることがわかった場合は、別のファイルにコピーして、有用なコードスニペットのライブラリを保持してください。そうすれば、プロジェクト全体を検索する必要はありません。また、簡単にアクセスできるように、言語と種類の後にこれらのスニペットを配置してください(コードはどうするのですか?なぜ保存したのですか?)。


4

私はあなたが年をとるにつれて悪化するように見えることを保証することができます:-)しかし、それはあなたが開発に長くいるほど、より多くの知識が忘れられるからです。

一方、あなたはより多くの「直感」を獲得します。パターン、特定の問題の解決方法、および異なる言語と環境の古いプロジェクトで学んだ他のことを認識し、現在の条件が異なっていてもそれらを使用できます。つまり、たった1年前に書いたコードを常に振り返り、「今日は別の方法で書くだろう」、さらには「今日、これをもっとうまく解決する方法を知っている」とさえ考えています。

そのため、特定のAPIのメソッド名やクラス名など多くのものを忘れても、スキルは通常、より高いレベルで向上します。


3

これはいつも私に起こります。私は自分のやる気に非常に多くのことが起こっているので、最も単純なことの多くを忘れてしまいます。名前、誕生日、いらいらする会議はすべて、砂の中を流れる水のようにすり抜けます。しかし、コンピューター、プログラミング、数学、またはそのようなものに関係することはすべてそのままです。言語、技術、さらにはプロジェクトを記憶する最良の方法は、チートシートを書くことです。

私は一般的に、私が作業しているすべてのことについてのクイックリファレンスを持っているので、何が起こっているのかをすぐに思い出させることができます。また、すべてのメモを保管するノートブックとチートシートの参照ページ番号もあります。


3

それは以前私に多くの例で起こりました。そのため、コードにドキュメントを記述します。

そして時々、あなたはあなたを助けるためにインターネット上の参照だけが必要です。助けを求めても大丈夫です。


1
「だからこそ、コードでドキュメントを書くことになりました。」文法は別として、プロダクションコードで言語構文を文書化することは、それを混乱させるだけで、保守性が低下します。特定の言語の基本的な構文+いくつかの便利なリンクを別の.txtに書き留めてください。
vemv

2

私が読んで、支援することなどの構文、キーワード、技術、 -私は、多くの場合、しばらくの間、それらを使用していない後の事を忘れて、このドミニクO'Brein(8回ワールド・メモリーチャンピオン)で本を。その本には、物事を思い出すのに役立ついくつかのテクニックとヒントがあります。これらをプログラミングに適用するのは必ずしも簡単ではありませんが、ある程度の創造性があれば、物事を結び付けて思い出しやすくすることができます。それは完璧ではありませんが、時間がたてば役立つかもしれません。

また、この記事を読んでください。開発作業のリコールを改善する方法についていくつかのアイデアを与えてくれた興味深い読み物です。

私にとって最も便利なツールはマインドマップです。私はそれらをallsortsに使用します:

  • テストケースの文書化。
  • 私が取り組んでいるプロジェクトのアーキテクチャを視覚的に説明します。
  • 関心のある技術に関するメモとWebサイトへのリンク。

マインドマップは、さまざまなシナリオに使用できます。新しいことを学ぶとき、確かに私に違いをもたらしました。

乾杯。ジャス。


2

コード(短いスニペットからクラス全体まで)については、あなたが書いたもので、将来再利用する必要があると思われるものについては、これらすべてを書いて説明する公開プログラミングブログを維持してください。これには多くの利点があります。

  • 最も明白なのは、将来チェックするコードリポジトリがあることです。
  • 本当に役立つブログ記事を書きたいと思うでしょう。そうすれば、それらを読むかもしれない他の人が実際にそれらを理解できるでしょう。ほとんどの場合、これはコードをその場でリファクタリングすることを強制しますが、これは良いことです。
  • 時折、ブログの読者はバグを指摘したり、コードの有用な改善を提案することがありますが、これは非常に良いことです。

通常のブログを書いたり、Refactor My CodeThe Code Projectなどのプログラミング指向のサイトを使用したりできます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.