Найкращий спосіб швидко приховати когнітивний стан, коли ви просто не можете уникнути перебоїв


21

Я навіть не знаю, чи має це питання сенс ... але дозвольте тобі його пограбувати ...

уявіть ... Ви повністю заглиблені в якусь програмну думку / ідею / концепцію, ваш мозок знаходиться в найактивнішому стані, придумуючи вирішення проблеми, або, як висловлюється Джоел Спольський, - ви заглиблюєтесь у свою "зону" "- І, раптом хтось чи якась подія порушує ваше захоплення - те, чого ви просто не можете уникнути, те, що вам доведеться відвідувати. ... уява завершена .. назад до реальності

Щось, що може порушити вашу концентрацію, може бути ...

  • вас викликають на термінову зустріч
  • ваш код порушив щоденну збірку, і ваш колега телефонує вам
  • Ви просто пригадали щось, що вам довелося зробити, але забули це зробити
  • у вашого товариша по команді є кілька захоплюючих новин і наполягає на тому, щоб ви слухали
  • ваша подруга (або хлопець) щойно приїхала

Тепер припустимо, що у вас є лише 5-10 хвилин, перш ніж ви повинні залишити те, що ви були глибоко, і розважитися на перерві.

Моє запитання - як вам, швидко "зберегти" той стан душі, в якому ви були, коли настала диверсія. Ви пишете це в «якійсь формі» на папері чи комп’ютері, чи просто «пам’ятаєте» це якось. Як ви врятуєте ці точні думки протягом 5-10 хвилин, щоб згодом, коли ви повернетесь, ви змогли наздогнати праворуч із тієї точки, яку ви залишили.

Часто так трапляється зі мною, що я просто не можу згадати ті точні думки, про які я думав перед ударом, - і я відчуваю, що втратив гарну ідею чи рішення проблеми. я намагаюся думати заднім числом, намагаючись сильно дістатись до того самого когнітивного стану, який мене збудив з приводу ідеї - але я засмучений, не маючи змоги "дістатися".

Чи трапляється з вами щось подібне. як ви "одужуєте" від цього?

Моє головне питання - це не код - це ті "абстрактні ідеї", які ще не перетворені в код, які мені потрібно якось "зберегти".

- оновлення -

Після цих багатьох років, я можу впевнено сказати, немає жодного можливого способу зробити це. Жодна кількість накреслення вашого когнітивного стану на аркуші паперу не дозволить відновити його саме таким, яким він був. Наші мізки набагато складніші, ніж вартий почерку вантажно-фрагмента, коли мова йде про інформацію, яку він активно тримає в будь-який момент часу.

Найкращий спосіб - уникнути відволікання, як би не було важливо, якщо тільки це не життєва ситуація та смерть. Нічого не важливіше, ніж перебувати в зоні і добудувати її.

Якщо ваше робоче місце досить наївне, щоб не цінувати чиєсь «перебування в зоні», то час шукати нове робоче місце. YMMV, хоча. А з особистими стосунками, світ користі може сприяти соціальним навичкам і дрібці артикуляції.


Я рекомендую використовувати інструмент для мислення, наприклад, FreeMind. Або Emacs Org-режимі. Обидва зручні для швидкого редагування завдань та ідей TODO по мірі їх надходження. (і поверніть їх до системи управління джерелом, щоб отримати доступ до них з будь-якого місця)
haylem

Відповіді:


19

Перш ніж вийти з комп’ютера, я напишу, що я робив, на пошті або на аркуші паперу. Я зазвичай роблю це все одно як частину виправлення помилок або аналізу. Це дуже корисно, коли помилка (повторно) відкривається пізніше , ви все ще можете побачити свої думки про місяць тому і дізнатися, що вам потрібно зробити набагато швидше.

Також: встановіть у своєму коді деякі закладки . Повернувшись, ви можете подивитися, що ви робили, переглядаючи встановлені вами закладки.


2
+1. З мого досвіду, акт запису того, що ви робили, з’ясовує сам по собі і допомагає, навіть якщо я не можу посилатися на те, що писав пізніше .
jimwise

+1 Я згоден, найкраще рішення
записати

2
+1: Існують усі види когнітивних досліджень, які підтверджують це. Це як робити письмові записки під час прослуховування лекції в коледжі. Чим більше частин вашого мозку ви можете зайняти в даний момент, тим більше шансів у вас висіти на деталях.
Боб Мерфі

Зошит для мене, і хоч я це роблю, коли йду разом, то перекреслюю їх, коли закінчу. Також я залишу частковий код із навмисними помилками компіляції з повідомленням про те, що потрібно зробити.
Ньютопіан

8

Я витягую локальну програму блокнота і записую свій план майбутніх.

Я знайшов це, щоб найбільше допомогти. У 100% часу я не можу пригадати, що я планував зробити, коли повернусь, ідеї легко зустріти, але чи пам’ятаєте ви дійсні кроки, які ви збиралися зробити?

Я використовую щось на зразок;

+ Fix i.d bug
    - look at first name , problem?
    - ...

+ Deploy changes to test database

+ Come up with production deployment plan

Я зберігаю його на робочому столі і зберігаю файл відкритим.

Я виявив, що це для мене має ці переваги;

  • Це займає 5 хвилин
  • Повернутися в «зону» легко
  • Це викликає спогади легше

це те, що я теж роблю - просто думав, що хтось може мати кращу ідею :)
treecoder

Я не знаю, чи є спосіб "зберегти" ідеальний "образ" своїх ідей тоді. Але я вкладу ключові слова, щоб допомогти повернути ціле ціле, і подумати над цією ідеєю та коротко пов’язати її з тими словами, коли я їх запишу. Інша ідея, коли це не вдається - це діаграми, і я це багато робив, програмуючи 3d-двигун як хобі. Таким чином я міг уявити свої ідеї чи остаточну мету, зберегти їх на папері і повернутися і навіть зробити краще, ніж коли я пішов.
Росс

5

Окрім чудової пропозиції записати речі, це вміння, яке можна розвинути за допомогою ...

Практика.

Раніше я був найгіршим у світі в багатозадачності. Люди звикли боятися перебивати мене, бо мені це було так неприємно. Тоді я зрозумів, що це насправді не схоже на процесор з декількома паралельними ядрами, це було як переривання з перемикачами завдань. Тому я почав тренуватися, щоб розслабитися і сприйняти це як необхідну частину життя.

Десятиліття тому я використовую подібну до Помодоро систему, де просто роблю перерву, коли таймер вимикається. Повернутися «в зону» у невимушеному оточенні після декількох хвилин перерви надзвичайно просто - з нетерпінням чекаю! А для триваліших перерв ці письмові замітки є неоціненними. Я зараз можу відновити майже весь цей ментальний "стан процесора", якщо не пройде більше дня.

Крім того, оскільки я зараз більше звик справлятися з перебоями, я вже не такий скупчення, коли люди це роблять. Я також набагато краще промовив просто сказати: "Почекай, поки я роблю записку". Дивно, наскільки приємніше мої соціальні взаємодії!

Мозок схожий на розумовий м’яз, і він стає кращим у таких речах, як багатозадачність, якщо давати йому прогресивно складніші тренування.


4

Це відбувається постійно! Коли я в середині написання коду, я можу сказати 90% людей почекати кілька секунд - вони знають, що це в їхніх інтересах не турбувати мене. Протягом цих двох секунд я навмисно розминаю деякі клавіші в рядку коду, над яким я працював, і відмічаю рядок вище за допомогою XXX (це добре підкреслює in vim).

Зчитування коду робиться, щоб програма не компілювалася, і я змушений подивитися на цей рядок. Для більшості мов, на яких я пишу, цього достатньо, щоб я міг подивитися, де я зупинився, і швидко перемістити свою пам'ять у її продуктивний стан.

Я також дізнався, що в даний час перебування в «зоні» - це розкіш (від боротьби з постійними перебоями). Хоча це напевно не ідеально з точки зору продуктивності, воно змушує вас максимально використовувати все, що у вас є.


3

Я дізнався, що коли я працюю з git, у мене виникають менше проблем із тим, щоб залишити роботу позаду (і що ще важливіше - продовжувати роботу над нею). Це не через саму git, а на практику, яку я застосував під час вивчення робочих процесів git. Я говорю про тематичні галузі .

Якщо ви робите все значущі "цілі" у своїй розробці у спеціалізованій тематичній галузі, повертатися до своєї роботи набагато простіше. Ось чому.

  • тематична галузь надає контекст. Ви дали йому описову назву, тож ви знаєте, на що дивитесь.
  • історія має менший і лінійний обсяг. Коли ви працюєте над меншими наборами змін (гілками), у вас, ймовірно, буде менше комісій для проходження, і вони будуть лінійними (між ними немає ніяких пов'язаних комітетів)
  • якщо ви видалите гілки тем, коли закінчите тему, простіше зрозуміти, над якими темами ви працювали, і що ще важливіше, які ще потребують вашої уваги

Якщо ви маєте дисципліну, такий спосіб роботи набагато простіше залишити свою роботу та забрати її згодом.

Коли я працюю над чимось, я завжди підходжу до дещо пов’язаної роботи з моєю поточною темою. Знову ж таки, дисципліна окупається. Або закінчіть свою поточну роботу. Якщо ви не можете (у мене часто виникає ця "проблема" - "мені потрібно це виправити" тощо), просто створіть нову гілку теми для виправлення (або рефакторингу, вдосконалення, будь-якого іншого). Навіть якщо ви поточна робоча область не готова до вчинення, просто виконайте git stashневелику роботу за власною темою, а popзі сховища повертайтесь до фактичної роботи.


3

За збереження стану завдань та перехід на інший я абсолютно люблю збереження контексту Mylyn . Що робить Mylyn - це зберігати та пізніше відновити точний стан вашої IDE (відкрита перспектива, відкриті файли, розташування в них тощо).

Для речей, які я робив, я розміщую коментарі TODO. Затемнення автоматично відображає їх як список завдань.


2

Я розвиваюся у ВМ. І коли я перебиваю (кінець дня, обід, зустрічі тощо) і не хочу втрачати свій порядок думок, я просто пишу коментар у коді, щось на зразок:

//Figure out how to implement "Date range too far out" check correctly

Іноді ці коментарі надходять на кілька рядків, якщо вони складні. Але я просто записую коментар у код, в IDE, потім залишаю IDE відкритим і використовую команду «Призупинити та вийти» у вікні управління. Потім, коли я знову відтягую її назад, перед моїм одразу стоїть мій коментар, який допомагає мені швидко повернутися до того, про що я думав раніше.


1

Я взяв до використання програмне забезпечення для відображення розуму (в даний час FreeMind). Я використовую його для всього, але стосується цього, він включає список справ для кожного проекту, над яким я працюю. Коли я розглядаю рішення певної проблеми у списку, я починаю вводити його всередині своєї карти розуму. Ось де я зберігаю своє рішення, навіть працюючи над ним, замість того, щоб намагатися затримати все це в голові.

Що дозволить мені зосередити свою увагу на деталях реалізації коду, не втрачаючи загальної картини. Це також означає, що перерви мінімально впливають на мою роботу, тому що я все-таки зберігаю ті кроки, які я планую виконувати, будь-де записані десь.

Конкретне програмне забезпечення або метод відстеження, який ви використовуєте, не мають значення. Ця ідея була б настільки ж корисною в Блокноті або з аркушем паперу. Відповідна концепція полягає в тому, що ви записуєте свої ідеї так, як у вас є, тому вони завжди доступні.


1

Якщо ви перебуваєте у високому режимі, я вважаю, що ведення щогодинного журналу (щогодини записуйте по кілька куль) дуже корисно. Я використовую комбінацію TiddlyWiki та паперу (Tiddly для документування / пошуку, паперу для швидкого роздуму).

Я почав це робити, коли працював з дому з немовлям, і це збільшило мою продуктивність в цілому. Це допомагає вирішити негайну проблему, як знову розкрити мої думки, і приємно побічно впливає на підвищення самосвідомості (я минулого тижня витратив годину на зміну 10-рядкового методу біт-ударів, щоб зробити його більш зрозумілим. Можливо, це не найкраще використання мого часу).


+1 спасибі за TiddlyWiki - я раніше користувався цим, але ніколи не думав, що міг би скористатися ним, щоб швидко "серіалізувати" свої думки :)
treecoder

@greengit - я отримую багато пробігу від цього. Я зберігаю свій журнал, журнал рішень та відставання у ньому. Я використовую це для оцінки ефективності. Я багато працюю над науково-дослідною роботою, де над проектами опрацьовують протягом декількох тижнів щороку (до демонстрації, природно), а потім знову відкладають. Я б загубився, якби у мене не було способу створити резервну копію мозку. Мені подобається TiddlyWiki, тому що він все ще є особистим, і мені не доводиться писати на той рівень формальності, який я хотів би для вікі компанії або doc, що будь-хто повинен мати можливість зрозуміти.
Стів Джексон

тому ви рекомендуєте настільну версію (за замовчуванням) або ccTiddly - це сервер, що підтримує втілення tiddlyWiki
treecoder

@greengit - я використовую версію для настільних ПК та завдання cron, щоб створити її резервну копію до мережі. Я не використовував версію ccTiddly, але, схоже, більшість її функціональних можливостей охоплені вікі проектами, які у нас є для співпраці над проектами. ccTiddly, схоже, потрапляє на один із елементів мого списку бажань - можливість приєднувати файли до тидлердів, - але я вставляю посилання за потребою.
Стів Джексон

0
  • продумайте голосно в журналі журналу розробника, коли ви йдете
  • мозгове скидання в журнал, коли вас переривають
  • переконайтеся, що ви записуєте наступне, що збиралися зробити

перше - це страхування від перебоїв, зворотного відстеження та повторення себе пізніше, тоді як останнє важливо для вибору місця, де ви зупинилися


0

Я постійно зберігаю коментар у блокноті біля себе. Я спробував це зробити на файлі блокнота, але чомусь це не так ефективно, як записати його. Якщо ви досить добре організовані щодо того, що ви відзначаєте своєю роботою, у вас фактично є основний набір ваших абстрактних думок, до яких слід повернутися.


0

Те, що я знайшов, дуже допомогло (навіть для "Добре, зараз я йду додому і повертаюся на роботу завтра") постійно записував кілька головних думок у своїй свідомості, а потім робив речі зі списку.

Але воно, безумовно, покладається на (i) активну обробку цього списку - як мінімум, очищення його, а не закінчення сотень напівфабрикатів "списків todo", до яких ви хочете повернутися, і (ii) практикуючи достатньо, у вас є досвід щоб знати, що потрібно писати, а що - ні, у яких завданнях є кнопка "Додати панель інструментів" та деталі дизайну, який можна відтворити з розуму наступного разу, і які завдання ви вже зробили половину планування усвідомлюючи це, і вам потрібно це записати.

Також, очевидно, намагайтеся уникати зайвих відволікань; це завжди добре, щоб мати можливість продовжувати відволікатися, і їх завжди буде, але не рекомендуйте занадто багато.


0

Я фактично спричинив кілька помилок внаслідок того, що вони були поспішно і різко перервані на обідню перерву в колишній компанії. Я в кінцевому підсумку попросив ще кілька хвилин або просто залишив без мене лише для того, щоб вони тиснули на мене приєднатися, і тому я залишив код напівписаним, думка наповненою, лише щоб повернутися до коду через годину і втратити слідкувати за помилками.

Я в кінцевому підсумку почав компенсувати це, беручи до відома і виписуючи списки тдо, коли я йду, і просто підтримую "дрібніший ментальний стек", так би мовити. TDD також допомагає, оскільки тести виражають те, що ви намагаєтесь зробити з дизайном, а також гарантуєте, що ви це робите.

Я також розробив мову, яка знаходиться десь між тим, що інтуїтивно мені здається, як кодування та людська мова. Він складається із звуків на кшталт " Nyargh! Bloobly-bloop! ", І я видаю ці звуки іноді, якщо люди намагаються розмовляти зі мною, поки я зайнята. Хоча вони не розуміють цих звуків, воно повідомляє, що я перебуваю в стані, не в змозі належним чином спілкуватися з людьми, в цей момент вони відходять і дозволяють мені відновити мислення та написання коду.

Тим не менш, моя дружина звикла до думки, що вона може поговорити зі мною, і я можу кивати і так далі, і не подумки обробив жодного слова, яке вона сказала. Це наче я бачу, як її рот рухається, і чую звуки, що виходять, але насправді це не належним чином перекладається в інструкції з машини. Вона наче навчилася помічати мої відповіді, коли це відбувається, поки я поглинений думкою.

Я також іноді на півдорозі обробляю те, що вона сказала, і просто натискаю на паралельну чергу, як, наприклад, якщо вона задає мені запитання, і в цей момент я не можу його повністю обробити, поки я не вискочив усе з своєї ментальної черги (що використовує дуже неефективно замикаючі механізми для безпеки різьби). Тож вона звикла задавати мені запитання лише кивком, без відповіді чи безглуздою відповіддю на кшталт "так" чи "кривошип" на "що ти хочеш зробити сьогодні ввечері?" тільки я обробляю це через десять хвилин і відповідаю на питання так, ніби я щойно почув це секунду тому.

Також я не знаю про вас, хлопці, але я дуже розчуляюся, коли втрачаю свої думки програмування. Я нарешті шукав свої шкарпетки один раз на віки, забуваючи, куди їх поклав. Якось я поклав їх у холодильник. Я думаю, що я намагався схопити напій чи щось із шкарпетками в руці і якось поклав шкарпетки в холодильник і забув схопити напій. В інший час я поїхав на смітник після стоянки свого автомобіля з ключами від машини в руці і намагався викинути обгортку, яку я мав, у сміття. Натомість я кинув ключі від машини на смітник, і навіть не зрозумів цього, поки не спробував розблокувати машину пластиковою обгорткою, і тоді мені довелося пірнути у сміття за своїми ключами. У будь-якому разі, моя дружина звикла до таких речей, коли мої речі з’являються в чужих місцях.

[...] ваша подруга (або хлопець) щойно приїхала

Просто для цієї частини, як сторону, знайомства та романтика складно з програмуванням. У мене було багато минулих стосунків, де побачення проходили чудово, поки ми не почали жити разом, і вони побачили, що ця сторона мене весь час замислювалася, сидячи цілий день за комп’ютером і крокуючи в думці, реагуючи на " bloobly-bloop! ", І втратив інтерес. Важко знайти когось із терпінням для цього. Мені справді пощастило з дружиною, яка мириться з цим.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.