Comments 205
На мой взгляд (я тоже являюсь снежинкой) чтобы Снежинка сконцентрировалась нужно:
Убрать все что может отвлечь от работы
Открыть справочник (со списком методов, обработчиков событий и.т.д)
Лично мне в этом помогает книга. Я просто открываю страницу с темой которая мне нужна и уже все что я прочёл как-то пытаюсь объединить. Обычно трачу на это 30 минут - 1 час
Как в конструкторе ты должен разложить детали перед собой и понять что ты можешь собрать, как ты это сделаешь и всего ли хватает.
А если ты достаешь по одной детали за раз из коробки (справочника) ты не знаешь что можно создать, как создать и все ли у тебя есть для этого.
Вообще в работе стал замечать, что есть два способа использовать гугл (внешнее онлайн хранилище). В одном случае ты ищешь решения возникших проблем (сценарий снежинки), в другом случае ты хранишь индекс данных (как поисковик) у себя в голове (не нужно помнить все, но нужно знать что есть, как решать, где лежит, как взаимодействует).
Формально все говорят (и программисты и снежинки) зачем запоминать, если все есть в гугле. Но по факту разные сценарии использования.
Поэтому очень важно документацию читать, чтобы проиндексировать ее в голове
А если ты достаешь по одной детали за раз из коробки (справочника) ты не знаешь что можно создать, как создать и все ли у тебя есть для этого.
после долгих упражнений — у тебя в голове все-таки начнет запоминаться картина, какие именно детали есть в коробке. После этого произойдет качественный скачок. И "снежинка" сможет воображать целые системы, уже не видя перед глазами детали из коробки
Я ему отвечу — клиповое мышление вымышленный бред, это не работает. Любой человек способен на чём то концентрироваться и даже очень сильно(порой чересчур сильно, что приводит к навязчивым мыслям и прочему подобному). Естественно, если круглосуточно смотреть тик токи, то человек не будет умным — но он всё ещё будет способен концентрироваться, поместите его в опасную ситуацию и он будет сконцентрирован сколько угодно долго в разумных пределах.
+ подавляющее число подростков играет в игры, например я играю в доту(хоть и не подросток), чтобы нормально играть нужно очень хорошо концентрироваться на хотя бы 40-60 минут, которые обычно идёт игра, я уверен, что автор очень редко в своей работе испытывает степень концентрации ту же, что самый среднестатистический игрок в доту 2, который даже не особо старается.
Вывод — чтобы концентрироваться нужно просто иметь задачу. Всё. И может это каждый.
А также подавляющее количество людей во все времена были тупыми и не умели мыслить, то, что у них теперь есть гугл, который позволяет решать довольно сложные задачи хоть как нибудь по инструкции — прогресс, раньше они бы просто сидели и вместо тик тока пялили в стену, играли в ногомяч(в лучшем случае) и подобное.
И последнее — совсем необязательно постоянно держать весь объект во всех его деталях в оперативной памяти мозга, которая судя по исследованиям у людей крайне мала. Мозг структурирует данные, запоминает образы созданных абстракций и оперирует ими, вспоминая по необходимости детали абстракций, которые запомнил. Никто и никогда не держит в голове всю громадную модель, держат лишь её маленький образ и возможности взаимодействия с этим образом
Вывод — чтобы концентрироваться нужно просто иметь задачу. Всё.
этого не достаточно. Нужен достаточный стресс, чтобы начать концентрироваться на задаче. Но не слишком большой. И невозможность "отлынить" от задачи.
Никто и никогда не держит в голове всю громадную модель, держат лишь её маленький образ и возможности взаимодействия с этим образом
держат. Инженеры держат. Причем даже несколько представлений модели на разных уровнях детализации одновременно.
Я веду к тому что уже зрелые поколения могут сколь угодно долго рассказывать что все что нужно рыцарю это умение скакать на коне, держать копье в направлении врага и мечом владеть, а книжки эти ваши это все от лукавого, я вот по другому учился и ничего, живой, вон земли сколько за жизнь заслужил, а вы зелень и делаете все неправильно. А поскольку я теперь решаю кого в рать то брать, то буду со всех спрашивать владение мечом в первую очередь.
Что? Какие арбалеты? За день обучился крючок дергать и вот так с одного болта доспех? Простой смерд, за день и меня рыцаря из куста вот так запросто? Да вы шутите, я когда учился такого не было и сейчас не может быть. Как это вы распускаете дружину и собираете регулярную армию? А я? Я же сам могу этих ваших регулярных ребят один человек 5 разом забороть. И что, что я оцениваешь в 50гектар земли, 200 смердов на полях чтобы купить мне коня, доспехи и кормить всю эту подсобную историю… Что? Как это эти 200 смердов и станут регулярной армией вместо меня одного из соображений рентабельности? Они же снежинки, в них чести никакой, а я потомственный воин, не побегу от боя, дворянин, красавец и вообще… Ну и не надо, пойду частником, открою курсы по фехтованию, буду молодых дворян учить, назову их Фехто-Молодость.
Мою мысль я думаю все и так уловили. Не стоит становится человеком «а вот раньше».
Мы же так учились.
записывать мысли.
Но… я не программист)
Написание позволяет запоминать даже то что писалось 5+ лет назад.
КМК не стоит по себе делать выводы о всём человевстве.
у меня часто бывает, что смотришь в старые записи и не понимаешь про что это вообще было
Но сначала следует научится писать clean комментарии. Потому что это грозит недопониманием в дальнейшем. В лучшем случае люди не поймут что вы хотели сказать, в худшем просто будут отказываться общаться с человеком который не в состоянии выражать свои мысли хоть как то связно и на одном языке.
Исходный пост был больше о том, где брать сами мысли, а не о способе их оформления стандартным для профессии образом.
А разница между оформлением мыслей и их генерированием не так уж и велика для человека. Старый добрый метод уточки меня всегда выручает. Долго не можешь придумать хорошее решение (или выбрать из нескольких)? Найди человека, который вообще не шарит, и объясни ему максимально простым языком проблему. Вместо человека подойдет резиновая уточка для ванной. В 90% случаев к концу объяснения ты уже понимаешь, что делать дальше!
Звучит как набор слов для карго-культа
Вопрос не в том, чтобы сделать по лекалам и гайдлайнам, а в том, чтобы задача в принципе была решена. Хоть как-то.
И уже от рабочего "хоть какого-то" решения можно идти к правильному и красивому.
Этот сферический "непрограммист" от автора вполне может знать все эти принципы и писать отличный код — но если он каждые 10 минут отвлекается на мессенджер то крупную задачу он все равно не решит.
Знание паттернов и соблюдение SRP (точнее солида целиком) ничем тут не поможет
Кому легче сконцентрироваться на танце - тому, кто освоил все па на уровне мышечной памяти, или новичку? Кому легче импровизировать - джазмену, знающему аккорды и квадраты, или новичку? Джазмен играет по лекалам или действительно импровизирует, решая задачу донесения музыкальной мысли до слушателя?
Все эти "Па" — зачастую взаимоисключающие параграфы. Например YAGNI vs KISS — стоит ли выносить 3 повторяющихся куска кода если это производит функцию с 4 генерик аргумента и пятью лямбда аргументами? Да — нарушаем kiss, нет — нарушаем yagni.
Или может паттерны не панацея (и даже не сколько-нибудь значимый фактор)?
Я не говорю что это самоцель и панацея, я хочу сказать, что следование им экономит ментальную энергию при мышлении и поэтому позволяет проще сконцентрироваться на решении самой задачи и на её сути, потому что не нужно тратить силы на проработку тех деталей, часто вторичных по отношению к решаемой задаче, ведь эти детали уже проработаны в этих па. Но брать нужно именно те па, которые решают задачу, а не втупую, и не как самоцель - разве это не очевидно? Не приписывайте сторонникам этих принципов производственный идиотизм.
И ещё один важный момент — это диалог, он тоже иногда помогает найти решение. Возможно, когда человек вступает в диалог, у него автоматически повышает концентрация, может потому, что социальное взаимодействие активизирует мозг. Наверное, Платон, или Сократ (не помню), это предполагал, т.к. утверждал, что истина рождается в диалоге, что диалог — это инструмент познания и решения задач.
Звучит как набор слов для карго-культа
на самом деле и в карго-культе есть здравое зерно. если ты не понимаешь почему некий специалист сделал так-то, но ты видишь, что этот специалист успешен (и при этом ты не можешь обосновать, что стоит делать иначе) — весьма разумно именно так и поступить.
Как Снежинке стать программистом?Как Снежинке стать чемпионом мира по боксу/шахматам?
Тоже хорошая мечта, но для её достижения у Снежинки нет ни возможностей и ни навыков.
Так зачем Снежинка хочет стать программистом?
Мне кажется, что изначально речь идет именно о профессиональной деятельности, а не о любительском уровне владения предметом, т.е. хотя бы на уровне середнячков.
Снежинка, видимо, просто начинающий прогер (родился со смартфоном в руке — получается ну очень молодой), не было времени набраться опыта. Все эти намеки на его ограниченные умственные способности просто впечатления автора, который привык решать задачи в другое время, с другими процессами и инструментами, и, соответственно, по-другому. Это не значат, что Снежинка не научится так же решать проблемы в будущем, ему просто нужно время.
Ну, правда, может и не научится. Такие примеры есть, и из разных поколений. Определяющий фактор как мне кажется — наличие энтузиазма. Если равнодушен к программированию то лучше не тратить время.
Снежинка, видимо, просто начинающий прогер
Непонятно, почему вы такой вывод сделали. Начинающий вполне может грызть задачу часами безо всяких гуглов. Да, скорее всего из-за недостатка опыта он сильно устанет и создаст не совсем то, что хотел. Но начинать не так как Снежинка — вполне возможно.
Лучше на Одноклассниках спросить. Там люди бывалые, они расскажут, как Снежинкам надо жить, а то, понимаешь, совсем со своим клиповым мышлением от рук отбились. Вот раньше то люди были, не то, что щас!
Так вот, я слышал, что близ египетского Навкратиса родился один из древних богов тех мест, которому посвящена птица, называемая ибисом. А самому божеству имя было Тевт. Он первый изобрел число, счет, землемерие, звездочетство, вдобавок игру в шашки и в кости, а также и письмена. Царем над всем Египтом был тогда Тамус в великом городе верхней области, который греки называют египетскими Фивами, а его самого богом Аммоном. Придя к царю, Тевт показал свои искусства и сказал, что их надо передать остальным египтянам. Царь спросил, какую пользу приносит каждое из них. Тевт стал объяснять, а царь, смотря по тому, говорил ли Тевт, по его мнению, хорошо или нет, кое-что порицал, а кое что хвалил.
Когда же дошел черед до письмен, Тевт сказал: «Эта наука, царь, сделает египтян более мудрыми и памятливыми, так как найдено средство для памяти и мудрости». Царь же сказал: «Искуснейший Тевт, один бывает способен порождать предметы искусства, а другой — судить, какая в них доля вреда или выгоды для тех, кто намеревается ими пользоваться. Вот и сейчас ты, отец письмен, из-за благорасположения к ним сказал как раз обратное их значению.
В душах научившихся им они вызовут забывчивость, так как здесь не упражняется память: доверяясь письму, припоминать станут внешне — по посторонним знакам, а не внутренне — сами от себя. Стало быть, ты нашел средство не для памяти, а для припоминания. Ты даешь ученикам видимость мудрости, но не истину. Они у тебя будут многое знать понаслышке, без изучения, и будут казаться многознающими, оставаясь в большинстве невеждами и трудными для общения; они сделаются мнимомудрыми вместо мудрых».
V век до нашей эры
Развивать внимание и память. Если эти проблемы не вызваны физиологическими повреждениями мозга (микроинсульт, например) или постоянным стрессовыми условиями, то и внимание, и память можно очень неплохо развивать.
Очень способствуют игры типа Memory, NeuroNation/Lumosity или "поиск предметов", словесные игры - всё, что помогает выстраиванию логических связей и операциям с символами.
См.
Harrison, Tyler L., et al. «Working memory training may increase working memory capacity but not fluid intelligence.» Psychological science 24.12 (2013): 2409-2419.
Soveri, Anna, et al. «Working memory training revisited: A multi-level meta-analysis of n-back training studies.» Psychonomic bulletin & review 24.4 (2017): 1077-1096.
Thompson, Todd W., et al. «Failure of working memory training to enhance cognition or intelligence.» PloS one 8.5 (2013): e63614.
В этих работах речь о другом. Там о том, что среднего образованного взрослого в нормальном состоянии (healthy adults, да) этим сложно прокачать.
А вот если есть по какой-то причине недоразвитость, или надо восстанавливаться после травматических состояний — помогает. И память улучшает, и концентрацию внимания.
Я исхожу из этого, что свойства не подходит по критерии какого-то либо заболевания. Потому что в противном случае ему надо идти к грамотному врачу для назначения лечения. То есть это медицинская проблема и место ей на медицинском форуме, а не тут.
Если же мы всё-таки исходим из того, что это вариант нормы, которому в силу определенных особенностей сложно учить программирование, то в этом случае он подпадает под «healthy adult». Так как healthy adult это не значит, что нет выявленного клинического расстройства, только и всего. При этом условный IQ может быть 85 или 120 и это все будет норма с точки зрения исследования.
Вот оно, поколение егэ
Интересный пост, но не согласен. Как писавший егэ 2 года назад могу сказать, что: 1. Егэ не отражает положения вещей. Его можно заучить. 2. Проблема егэ даже не в содержании, а в процедуре. Был свидетелем того, как у ребёнка забрали шприц с инсулином из-за отсутствия справки. Да и ФСБ на входе в школу - это конечно сильно. 3. Прилетает не только детям. Сдать егэ просто уча школьную программу невозможно(очень трудно). Учителя это понимают и зубрять с детьми егэ. И им прилетает за это.
расскажите, пожалуйста, что нужно зубрить, чтобы получить максимальный балл по математике?
Математику.
только всё-таки учить, а не зубрить. сколько математику ни зубри — на 100 баллов профильный егэ не напишешь.
P. S. словарь ожегова даёт (согласующееся с моим ощущением) определение слова «зубрить»:
Заучивать бессмысленно, без отчётливого понимания.
Потом я был в Инженерном институте на вступительном экзамене. Экзамен был устный, и мне разрешили послушать. Один абитуриент был просто великолепен. Он отлично отвечал на все вопросы. Его спросили, что такое диамагнетизм. Он ответил совершенно правильно. Потом его спросили: «Что происходит с лучом света, когда он проходит под определенным углом через слой материала определенной толщины и с определенным показателем преломления?»
— Он выходит, сместившись параллельно самому себе, сэр.
— А на сколько он сместится?
— Я не знаю, сэр, но я могу посчитать.
Он посчитал. Все было прекрасно. Но у меня к этому времени уже были подозрения.
После экзамена я подошел к блестящему молодому человеку и объяснил, что я из Соединенных Штатов и хочу задать несколько вопросов, которые никак не повлияют на результат экзамена. Для начала я спросил, может ли он привести какой-нибудь пример диамагнетика.
— Нет.
Тогда я сказал: «Представьте себе, что эта книга стеклянная, и я смотрю сквозь нее на что-нибудь на столе. Что случится с изображением, если наклонить стекло?»
— Изображение повернется, сэр, на угол, в 2 раза превышающий угол наклона.
— А вы не путаете с зеркалом?
— Нет, сэр.
Он только что сказал на экзамене, что луч света сместится параллельно самому себе, и, следовательно, изображение сдвинется в сторону, но не будет поворачиваться ни на какой угол. Он даже вычислил, насколько изображение сдвинется, но он не понимал, что кусок стекла — это и есть материал с показателем преломления и что его вычисления имели самое непосредственное отношение к моему вопросу.
1. я не думаю, что это имеет отношение к экзамену по математике, природа этих наук разная, физика изучает реальный мир с помощью абстракций, математика же занимается исключительно абстракциями; проблема о которой тут говорится (изучение науки в отрыве от реальной жизни), малоактуальна при изучении математики;
2. речь в этом куске не про то, что идея экзаменационных заданий порочна, наоборот, фейман именно с помощью альтернативных заданий и показал пробелы в обучении студента.
Сдавал ЕГЭ ещё когда это не было мейнстримом, 94 балла за математику. В жизни ничего не зубрил, я не способен заучивать готовые ответы. Математика мне была… понятна.
1. Хочешь сдать хорошо ЕГЭ по математике? изучать математику бесполезно. Просто решай задачи по ЕГЭ.
2. Хочешь разбираться в математике? Читай книги и решай задачи по математике. ЕГЭ тут также бесполезен и абсолютно не показателен.
Любой человек, который на настоящую крепкую пятерку знает математику в 11 классе, напишет ЕГЭ на 80+ баллов без всякой подготовки. По крайней мере, так было в 2012, когда ЕГЭ писал я. Все, кто в математике шарил, так и написали первый пробник, а затем - после полугода подготовки - лишь немного улучшили свои баллы на реальном ЕГЭ.
Я лишь сказал о том, что для получения максимальеого балла математика бесполезна. И то что, для понимания математики — знание и решание ЕГЭ также бесполезно и не показательно. Лучше прорешать на худой конец сборник Сканави хотя бы… там хоть реально задачи по математике. Недаром сейчас подавляющее большинство в РФ голосуют против ЕГЭ по математике, а те кто, хоть как то связан с ЕГЭ, кто его проверяет и к нему готовят детей, те и вовсе поголовно считают его идиотизмом, который имеет отношение к математике может только для того, кто реально ноль в этой самой математике и потому просот не понимает всего абсурда этого экзамена и его задач
а те кто, хоть как то связан с ЕГЭ, кто его проверяет и к нему готовят детей, те и вовсе поголовно считают его идиотизмом, который имеет отношение к математике может только для того, кто реально ноль в этой самой математике и потому просот не понимает всего абсурда этого экзамена и его задач
я готовил сына, знакомые проверяют. ни я, ни эти знакомые, не считают егэ идиотизмом.
Я лишь сказал о том, что для получения максимальеого балла математика бесполезна.
и что же нужно? химия? физика? актёрское мастерство? растяжка?
Лучше прорешать на худой конец сборник Сканави хотя бы… там хоть реально задачи по математике
представьте себе, в школьные годы был очень хорошо знаком с этим сборником задач. противопоставление егэ этому сборнику мне кажется странным.
задания ЕГЭ — это прекрасный тест на умение решать задания ЕГЭ. Не более того.
отчасти да. в той же степени, что и вступительный в МГУ, например. вообще, это свойство всех экзаменов.
Зная математику идеально, но не решав ни разу ЕГЭ — никогда не сдать эти тесты на высокий балл.
значит таки неидеально знаете, обычные там задачи, не требующие какой-то подготовки иной, чем к вступительным в приличный ВУЗ или к районным-городским олимпиадам.
Справедливо и обратное — сдавая ЕГЭ на 100 баллов, можно практически вообще не разбираться в математике)
никак не могу согласиться. вы вообще решали эти задачи?
ЕГЭ — шлак, существующий для упрощения работы системы и развития коррупции, а не тест на знания.
у меня прямо противоположное мнение: ЕГЭ по математике — очень даже неплохой экзамен. при этом он существенно снизил коррупцию (был немного знаком с вступительными комиссиями в ВУЗах).
разумеется, он неидеален, но варианта лучше я не знаю.
вы вообще решали эти задачи?
Причем решаю их каждый год периодически) Моя жена состоит во вступительной комиссии небезызвестного ВУЗа, кроме того она математик и продвигает эту науку (составляет и решает эволюционные и спектральные задачи по гидродинамике, пишет статьи). Я — программист, но к этой теме тоже достаточно близок. И вот я как-то лет 5 назад впервые увидел эти задачи и ради любопытства решил несколько. Поразившись тому насколько они нелепые, поинтересовался у жены, ведь она готовит детей к этой чепухе. Так вот и супруга моя и все ее коллеги поголовно сказали, что это не экзамен по математике от слова совсем: это задачи написанные идиотами для идиотов, которые к математике относятся по касательной. И я не могу с этим не согласиться. Чушь чистой воды, и где там математика, ни мне, ни одному математику, боюсь, не понятно… ЕГЭ — это как олимпиадные задачи на минималках — их решает хорошо тот, кто решает соответствующие задачи, но они не из мира математики совершенно, Вы уж простите)
разумеется, он неидеален, но варианта лучше я не знаю
мы сдавали устно и письменно, отличный был экзамен и покаательный именно по знаниям математики, в отличие от ЕГЭ. Нет ниодного теста лучше, чем устная сдача математики непосредственно математику
обычные там задачи, не требующие какой-то подготовки иной, чем к вступительным в приличный ВУЗ или к районным-городским олимпиадам.
Кстати, насколько я помню олимпиады, там обычно были совершенно другие задачи, вообще не похожие на то, что решалось на уроках в школе. Вот ЕГЭ к школьной программе гораздо ближе.
достаточно поставить ему общую задачу и назначить майлстоуны и Снежинка выкатит рабочее решение. Синьор найдет к чему придраться, но на то он и синьор, любит переусложнять.
Таки есть только один способ учиться - тренировка. Изучение технологий, новых языков, применение навыков в разных предметных областях. Ах да...
Нет такого явления, как клиповое мышление.
З.ы.
"Снежинка работает кодером – пишет код. Что именно написать, ему говорят в техническом задании, составленном достаточно подробно, с указанием имён таблиц, контекста исполнения, способов вызова, типов возвращаемых значений и т.д."
Звучит как неинтересная задача.
Сам ты снежинка
Давайте для начала не будем смешивать причину и следствие, вы неправильно понимаете проблему, поэтому не можете найти решение которое бы сработало.
Использовать Google как резервный мозг правильно и хорошо, но это не должно быть единственным паттерном поиска решения. Google это замена программиста сидящего рядом, просто теперь их миллионы и сложнее найти подходящего. Если вы найдете написанный ранее код/библиотеку и сможете ее правильно и быстро адаптировать под себя вы молодец, потому что не тратите время бизнеса на изобретание еще одного велосипеда (работа программиста не в том чтобы писать красивый код). Проблема в том что нужно выстроить собственный граф знаний в голове, чтобы Google выступал эффективным дополнением (чтобы правильно задать вопрос, нужно знать половину решения).
Итог: не боритесь с Google, боритесь с пробелами в образовании. Чтобы строить сложные вещи нужно понимание базовых принципов и умение разобраться/разбирать как эти сложные вещи устроены.
Клиповое мышление — это последствие цифровой интоксикации, мозг старается адаптироваться к быстро изменяющемуся контексту. В итоге мы быстро усваиваем и быстро забываем информацию. С другой стороны для мозга важен эффект новизны, поэтому "15 минут хватит всем" (на самом деле согласно исследованиям 18 минут, поэтому лекции на TED ограничены по времени). Что происходит за пределами этого интервала? Дальше вы просто теряете в качестве. Проблема фокусировки не в самой фокусировке, если вы можете сосредоточиться и решить проблему за 5 минут, а не за 15 или не за 23 минуты, то вы более эффективны. Проблема в постоянных прерываниях и чем чаще вы прерываетесь со сменой контекста, тем больше дискомфорта мозг ощущает когда прерывания нет. При таком объеме событий также возникает FOMO синдром, когда мы боимся упустить что-то важное и НЕ получение новой информации воспринимается как потеря возможности. Нужно объяснить мозгу что +1 самая свежая новость дает меньше конкурентного преимущества, чем обучение сложным вещам.
Итог: не боритесь с клиповым мышлением, возьмите его под контроль. Уберите все нотификации и отвлекающие факторы, поймите что поможет вам быстрее загрузить контекст в мозг (например построение mind maps или структурированные конспекты). Используйте технику pomodoro правильно, не берите абстрактную цифру, посчитайте сколько времени конкретный человек может быть сосредоточен (в разном эмоциональном состоянии в разное время). Переключайтесь между сессиями не на другую задачу, а на другой вид активности (лучше на физическую), чтобы не происходила полная потеря контекста. Если у мозга не будет альтернативной задачи/контекста/видосика, то единственным вариантом избавиться от беспокойства будет возврат к предыдущей задаче.
А теперь посмотрите на что похожи эти советы, что нужно делать чтобы правильно тренировать свой мозг?
Как называется самостоятельное потребление структурированной информации о сложных вещах длительное время без переключения контекста…?
Подсказка: иɹинʞ ǝɯn̯ɐɯиҺ
Когда я помогаю снежинкам скататься в ком, чтобы потом стать снеговиком, я предлагаю решать новую задачу (которая чуть сложнее чем текущий уровень) с написания программы на русском языке. Получается примерно на уровне книжки про профессора Фортрана. Если очередная строчка задания в "программе" очевидно не переводится на компьютерный язык, то на русском раскрывается в "функцию". Перед началом написания текста программы хорошо бы написать changelog к разрабатываемому продукту и документацию к результату. После такой текстовой подготовки само кодирование занимает примерно время набора текста кода, если технология известна или время загугливания и копипасты вызовов методов существующих библиотек, если параллельно идет обучение технологиям.
Это удочка для того, кого наставник (наставником может быть и сам обучаемый) хочет накормить. Как только обучаемый осваивает данную технологию, происходит качественный скачок. Без данного шага прямой путь в ковш снегоуборщика и на грязную обочину.
Снежинки тоже нужны и их надо больше чем тех кто умеет думать и принимать решения.
— Я написал гениальный код, да не работает он как надо… Где же ошибка?
Старик, взглянув на распечатку, не произнёс ни слова.
— Так в чём же моя проблема, Учитель?
— Я полагаю, твоя проблема в хромосомах…
А если серьёзно — хороший наставник, умеющий научить учиться и несколько правильных книжек, терпеливо прочитанных в правильном порядке, обычно решают вопрос.
Ну или как в институте шпаргалки помогают тем, кто и так знает материал.
Т.е. «Гугл мешает» — это когда вместо того, чтобы получать базовые знания, дающие цельную картину, человек нахватывает разрознённые куски, а «Научитесь гуглить» — это когда ты в принципе знаешь как делать, но надо освежить в памяти частности.
Комментарий novoselov выше исчерпывающе описывает ситуацию.
Как Снежинке стать программистом?
Я бы дал ему задачу для Питона:
«Берем произвольную страницу французско-английского онлайн-словаря, например, www.larousse.fr/dictionnaires/francais-anglais/passer/661830. Ее можно предварительно скачать на компьютер. Требуется извлечь все данные (слова, транскрипцию, грамматические категории, фразы, идентификаторы звуковых файлов, ссылки на таблицы спряжений французского языка (для английского не надо), наименования тем и топиков словарных статей, в виде текстового файла, например, типа json. Годится и обычный текстовый файл, с отступами для уровней, именами для элементов данных (выбираются произвольно, но разным типам данных должны соответствовать разные имена, а одинаковым – одинаковые) и разделителями для разных записей (содержащих определенную группу данных) одного уровня.»
и достаточно времени для решения. Если справится, то будет программистом, если нет, останется техническим кодером, как сейчас. Использовать он может что угодно и сколько угодно, в том числе помощь других, главное, чтобы понимал смысл результата.
честно говоря, по прочтению поста у меня сложилось впечатление, что он не про «как решить проблему», а про «какие негодные снежинки (я не такой)»
Не, я действительно хочу им помочь.
Не надо. Это их зона комфорта.
Дайте им образовать сугроб, сугробы тоже нужны. Просто не допускайте их образовывать конструкции, который призваны быть сделаны из металла, а не из снега.
Хороший разработчик вырастает в такового сам. Сам зацепится за информацию, если ему не мешать. Это один из критериев хорошего разработчика — уметь самостоятельно решать задачи. Подтягивать убогих чтобы они толерантно работали наравне со всеми — это к теме Почему в мире так много отстойного ПО
Но это вовсе не обязательно так. Это в каком-то смысле ортогональные вещи. Тут где-то выше очень правильно заметили, что для того, что бы быстро и в тему «нагуглить» — нужно очень неплохо представлять себе о чем речь…
Вы уверены, что «Максимум – 15, но в среднем 5-7», в сравнении с вашими «23 минуты» — это не просто эффективность молодых мозгов? ;) Т.е. тут проблема не в том, что «не может удерживать внимание», а просто больше не нужно! А то, что решает не так и столь красиво, как вы — так просто недостаток опыта… Все придет. С возрастом… И красота решений и «23 минуты»… К сожалению. (
Вы себе даже наверное не представляете, насколько быстро и эффективно обучаются младенцы! ;) Или наоборот — представляете вполне, но в данном контексте имели что-то другое ввиду… В любом случае аналогия так себе.
Я конечно понимаю, о чем вы. Действительно в некоторых вещах просто не возможно разобраться с наскока и требуется некоторая усидчивость. Но нужно быть точно уверенным, что имеется именно проблема концентрации внимания, а не «он же все давно понял и заскучал».
Не, я действительно хочу им помочь.
Талантам надо помогать, бездарности пробьются сами. (Лев Озеров)
Как Снежинке стать программистом?
Элементарно! Дайте ему задание написать с нуля ERP-систему. Причём именно в таком формате: Напиши ERP-систему!
Без всяких ТЗ и прочих требований. Тут и проектирование, и анализ, и кучу разных навыков придётся приобретать. Хотя нет, одно требование должно быть — API для работы с системой извне. Ну это для усиления сложности, если он через полгода придёт и скажет, что с API у него не получает, то это требование можно будет отменить.
А ваш комент навёл меня на мысль: А Снежинка вообще когда-нибудь писал что-то, ставя себе задачу и сроки сам? В свободном, так сказать, полёте? Ну так, чтобы до 4х утра увлечённо дебажить, исправить и со счастливым лицом отправиться спать?
PS. Да, и про UI/UX дизайн не забыть. :)
Решение очень простое: нужно как можно быстрее покинуть коллектив, которым руководит слабо образованный, склонный к хамству индивид, считающий себя самым умным))) А лучше вообще в такой коллектив не попадать))
Судя по предыдущим постам автора, эта фрустрация с ним давно. Ну да, бывают джуны такие — не неумеющие ничего, кроме учебных задач, а умеющие натяпляпать много чего в обнимку с гуглом и SO. Это не делает их хуже, и лучше тоже не делает. Им всё равно нужно долго учиться и понемножку нарабатывать опыт, точно так же как и любым другим джунам. Гугл — не проблема, а умение погружаться в задачи надолго — приходит, если вырабатывать его ежедневно.
Единственная проблема, явно видная в посте — больное чсв автора.
Как я выше уже процитировал — стоны про снежинок тянутся ещё от древней греции, а там может и дальше, просто письменных источников не осталось.
стоны про снежинок тянутся ещё от древней греции
Это означает, что снежинки с "клиповым мышлением" реальный феномен или выдуманный?
Просто нытье про "раньше трава была зеленее" и "нынешная молодежь ужасна, мы в их время были куда лучше" на новый лад
1) сразу в голове это сложно, а как же блок схемы? Самое то чтоб научиться мыслить объектами
2) решать по одной 2 классической задачи в день на листе бумаги
Через месяц такой деятельности и мозг будет работать и знания осядет
Если "снежинка" адекватный, надо ему выдать задачу для мидла и ментора, который мог бы мониторить его прогресс и насколько часто он работает в SODD/GDD-режиме, пусть привыкает, что задачи не всегда жестко поставлены. Провалится — вали в сугроб.
Ох ничего себе постановочка вопроса. Я надеюсь ситуация все же не столь запущена. Потому как при описанных реалях странно что Снежинка остается хотя бы кодером, а не смещен кем-то кто долее разумно распределяет ресурсы основного и резервного мозга.
Но, раз уж взялся, то надо продолжать. По мне единственный способ помочь в такой ситуации это (как бы банально оно не звучало) - вытащить Снежинку из зоны комфорта. Найти задачи, которые не имеют (и не могут иметь - что крайне важно) готовых решений в резервном мозге. На вскидку где-то в области биологии - выращивание прихотливых растений, аквариумистика или что-то похожее. Но сначала пусть научится жонглировать. Хотя бы тремя мячиками. Если есть реальная мотивация - оно сработает. Я абсолютно убежден, что пытаться учить программированию в таком случае надо на не программистских задачах. Ибо последние в том или ином виде будут иметь ответ в резервном мозге.
Гугл облегчает две задачи — думание и запоминание.
Так что для избавления от зависимости работать придётся по двум направлениям.
В качестве доп мотивации можно ставить условие: решаем задачу в пятницу и, пока не решили — ни капли алкоголя/кефира/кваса или что там ещё Снежинка любит заливать в себя по пятницам.
Сайтов, где можно взять задачу и проверить решение, полно, например, тот же codeforces.
1. Чего бы это не стоило, концентрируюсь на задаче и просто делаю её. Если совсем нет сил концентрироваться, то выполняю физические упражнения.
2. Учу английский язык. Сюда входят занятия с преподавателем, чтение статей/книг на английском, просмотр фильмов и/или сериалов на английском.
3. Чтение книг и последующий их пересказ простыми словами. Чтение сказок детям и практика пересказа книги близко к оригиналу.
4. Здоровый сон и отказ от смартфона в утренние и вечерние часы, особенно перед сном.
Практикую это менее 3 месяцев, но уже виден результат. Ранее не мог сконцентрироваться на задаче даже на 10 минут и запомнить элементарные вещи, сейчас стало проще, но до идеала ещё далеко.
Сначала правильно сформулируем задачу.
Программирование (как человеческая деятельность) состоит из трех составляющих:
Ремесло
Искусство
Наука
У идеального программиста все три составляющие работают одинаково хорошо. Но таких сферических программистов в природе... не существует. У каждого есть перекосы в ту или другую сторону.
У условного человека из статьи (с погонялом "Снежинка") работает только первая составляющая. Ремесло. Остальные (Наука и Искусство) по каким-то причинам у него оказались атрофированы. И указанный условный человек по этому поводу переживает, хочет получить оставшиеся две составляющие в рабочем, а не атрофиррванном состоянии.
Надо сказать, что описанный в статье случай весьма распространен. Когда человек хорошо справляется с поставленной перед ним задачей, при условии что она поставлена очень четко, конкретно и подробно.
В этом случае решение будет найдено. Пускай и с помощью гугла.
Просто к Снежинке надо прикрепить человека, который
Выслушает что хочет заказчик.
Поймет, что заказчику на самом деле требуется.
Разобьет задачу на подзадачи, и поставит их перед Снежинкой в понятной для нее (она же девушка, угадал?) форме.
И будет всем счастье. Сила "Снежинок" в их аккуратности и дотошности. С ними можно быть уверенным, что она не забудет, например, проверить все входные данные на допустимость значений, не упустит необработанное исключение, а потому ей цены нет.
Если бы у сотрудника был чрезмерный перекос в сторону "Науки" или "Искусства", было бы хуже. Кому нужен художник, который умеет писать идеально красивый и чистый код, если этот код потом работает со скоростью вареной черепахи?
А много пользы от такого умника, который любит по полгода вылизывать алгоритм, добиваясь вычислительной сложности О(n) вместо О(n * log(n)), и в результате все таки добьется уменьшения времени отклика с 0.049 секунд до 0.045. Но при этом его программа будет грохаться из-за нехватки памяти.
А много найдется желаюших работать в команде со "знатоком языка", который умеет лихо пользоваться хитростями и тонкостями компилятора, но.... в его коде сам черт голову сломает, (а через полгода точно так же сломает голову и сам автор этого кода). "Комментарии? Нафиг! Тут и так все понятно)
Я не хочу сказать, что не нужны такие штуки, как чистый код, и оптимизация вычислительной сложности алгоритмов Но всё хорошо в меру. Есть еще и здравый смысл.
И зачастую от "Снежинки" в реальных условиях толку сильно больше! Конечно, при условии, что ей будут ставить задачи соответствующего ей уровня. (Ну не надо требовать знания передаточных функций и преобразования Гильберта от выпускника школы, если у него от одного вида значка интеграла начинается морская болезнь. Пускай лучше что-нибудь для бухгалтерии поделает - там за пределы школьной арифметики редко выходят)
Правда, многие люди такого типа оказываются вполне довольными сложившимся положением. И ничего менять в жизни не хотят.
(Если меня тут и так неплохо кормят, нафиг упираться)
А тут иной случай. Человек сам осознает свое несовершенство (то есть первый шаг на пути к совершенству сделан). Что делать дальше?
Сводим задачу к аналогичной, ранее решенной задаче.
Что посоветовать человеку, у которого сильные руки, но оказались слабыми, например мышцы ног? Ответ простой - тренироваться. Сходить в фитнес центр, поработать там с инструктором. Заняться бегом и купить велосипед.
Точно так же и "Снежинке" можно посоветовать воспользоваться принципом, который сформулирован еще В.И. Лениным:
Учиться, учиться, и еще раз учиться!
То есть, читать учебники, изучать теорию. Применять ее на практике.
Браться за решение таких задач, про которые говорят, что "мы вообше пока не знаем, как её решать. Но хотелось бы решить, то есть можно попробовать".
Радикальный вариант - поступить в толковый ВУЗ по специальности "прикладная математика"
Если, в отличие от многих школьников, (поступающих в институт по велению родителей или для отмазки от армии), она будет понимать свои цели и задачи в жизни, у нее все должно получиться.
Снежинка скорее автор, а описанное обычная тупость. Которая существовала на протяжении всей истории человечества. Что поделать — IT стало невероятно доходным и популярным направлением с постоянной нехваткой кадров, сейчас в отрасль приходят все возможные слои общества и даже такие которые в прошлом могли претендовать только на должность землекопа.
Для тренировки - взять одну из игр Zachtronics , самостоятельно, без подсказок решить все задачи. По теме лучше подойдут Shenzhen I/O, Exapunks. Язык с простым синтаксисом, а головоломки как раз требуют комплексного подхода к решению в условиях жесткого ограничения по ресурсам. Можно упороться за оптимизацию, пытаясь достигнуть и перепрыгнуть рекордные решения.
Я отсюда взял - https://ru.m.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BA%D0%BE%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D0%BD%D0%B5%D0%B6%D0%B8%D0%BD%D0%BE%D0%BA
А когда ты написал на Хаскелле, долго тестил, все вычистил.
А тимлид такой: да ты вообще упал??? Ты в 1с франче или в Сорбонне какой?
Лайфхак: прежде, чем скопипастить URL из адресной строки браузера дописать прямо там пробел. Тогда браузер, отдавая текст в буфер обмена, не будет оказывать медвежью услугу по экранированию кириллицы.
— Способност долго концентрироваться над задачей — это следствие того что приходится долго думать над одним и тем же, а не причина. Лучше не тренировать создание образов, а научиться понимать, почему код/архитектура плоха, и дальше уже думать над улучшением. Сколько надо, столько и думать. У программистов это могут быть часы размышлений.
— Чтобы понять что код плох, нужно делать проекты целиком. Чем мастшабнее проект, тем быстрее придет понимание какие вещи плохи.
— В описанном сценарии работы не хватает ответственности за проект. Поэтому копипасты катят, а общее видение не развивается. Поэтому лучше всего взять какой-нибудь pet проект и начать его делать самому с 0. Длительностью хотя бы пара человекомесяцев чистой работы (то есть это может быть «год» после работы. И доделать. Даже если проект не получится — то опыт целостного видения появиться, или желание «все переделать как надо», потому что снежинка погибнет под гнетом техдолга.
Можно здорово углы срезать, если просто позаниматься медитацией и научиться сидеть те самые 15 минут без таймера.
— техническая
— технологическая
— семантическая
— область задач
Техническая область — это всякого рода «связь с железом», длины слов, размеры секторов и т.п. Технологическая — это то, что собственно и называют программированием — типы данных, функции, процедуры и объекты, в общем все «лежащее выше компилятора». Семантическая область — это тот прискорбный факт, что язык программирования это, скажем не только Си, но и SQL. А область задач — это собственно предназначение программ — визуальный это редактор или текстовый и т.п.
При этом тогда сложность обучения программированию, по сути, обучения его «технологическим особенностям» состоит лишь в том, что его не умеют объяснять. Нужно просто придумать легкую литературную форму, в которой построить картину «диалога с машиной», воспринимающей не что-то вообще, но — те же переменные, формы ее активности в виде функций, процедур и объектов, просто построив такой рассказ в характерно сюжетной форме. Такой рассказ и будет понятен всякому… далекому от математической логики.
А саму эту реплику можно воспринимать как шутку.
Столько возрастных стереотипов, как будто на лавочке с бабушками сидишь.
>уметь конструировать в голове
Нужно только для рокзвёзд, которые уходя с проекта оставляют блестящий чёрный ящик, который великолепно работает до первого изменения условий.
Не вижу никаких проблем для человека выложить концепт в блокнот, нарисовать схему, картинку, визуализировать/аудиализировать, да хоть на счётах накидать свои рассуждения.
А особо утончённые люди могут накидывать свои рассуждения в голову другого человека, например аналитика.
Есть миллион методик, которыми пользуются реальные люди, и я не знаю в какой есть ограничение хранить всё в голове.
>сконцентрироваться на 20 и более минут
Это цифра вообще откуда взята? Или именно из того что в голове нужно держать всё 20 минут, чтобы вражеские шпионы не проникли в гениальную идею?
5 минут подумал — нарисовал.
Устал- отдохнул, погуглил, выпил смузи, сходил в барбер шоп.
3 минуты — вернулся в контекст, 2 минуты подумал.
>После долгих споров, дискуссий и мозгового штурма Снежинке дали простую формулу – «23 минуты».
А нагуглить в википедии научные методы и методы проектирования, подсказать как декомпозировать конкретную задачу Снежинке почему-то никто решился.
А если нет? Ну вот совсем? Снежинка — это собирательный образ как раз такого человека, который совсем даже не понимает, что значит рассуждать.
Какой удобный "образ", прям сборище недостатков — и ведь при этом уже смог стать кодером. И даже задачи делает. Успешно. Но "рассуждений нет, вот совсем".
Так то можно тогда и собирательный образ коллектива, в котором тот "образ" работает, собрать: Опенспейс. Постоянные рядом звонки-обсуждения-шутейки коллег, причём не только его проекта и не только о работе, да ещё и на корявом английском. Постоянные переписки в чатах. Обязательная беготня за мониторами. Ещё и в спину пихают пробегая, потому что опенспейс с экономией на пространстве ряды поставил поплотнее. Роадмапа внятного нет, есть "пилим это" и через неделю "концепция поменялась, пилим то".
"Окей, бумер"(тм), вперёд, рассуждай в таких условиях и не смей становиться "снежинкой".
А ещё в этой картине(и с авторским слогом) за спиной "снежинку" будут презирать и считать недостойным такого продвинутого коллектива. Может даже и не за спиной.
Удобно же пинать "снежинку", заранее построив образ максимально комфортным для оного пинания.
Upd. to oam2oam
а что это и что с ним делать?]
Выяснить его мотивацию.
Выяснить, видит ли он вообще перспективы(а то может они где-то в верхах застряли и просто не доходят до него).
Выяснить, помогают ли ему условия вокруг сосредоточенно размышлять или же описанный(совершенно, кстати, невыдуманный опенспейс) творится.
Это для начала.
Upd2. Напомню, что "размышлять не может, вот совсем" в исходном авторском тексте не было. Это уже Вами привнесённый постулат что дело обстоит так и только так.
… только внешние воздействия (желательно палкой, что ли)…
Поэтому предлагаю просто оставить животное спокойно жить…
Ого, уже не просто дописывание "размышлять не может", но и дегуманизация? Вот, собственно, и второй ответ — не думать о человеке как о животном, которое "только палкой". Ведь кодинг же изначально описанный человек/персонаж/образ — смог.
Так какая у него мотивация?
Если он может всё нагуглить, тогда в чём вообще проблема?
Если не может, но хочет найти другой способ, то можно сократить его гугление, дав примеры методов, которые как раз позволяют сделать что-то большее.
Они не сложнее гугления, если ими овладеть. Просто практика нужна.
Уж точно нет смысла давать требования с потолка, которым вообще мало кто соответствует, и даже соответствие им не даёт гарантии выполнения обязанностей программиста.
Нужно начать делать свой домашний проект, в той области которая интересна.
Пусть проект будет маленький, пусть будет кривой/косой но в процессе так или иначе нужно будет комбинировать код из интернета. Это будет личный опыт проектирования.
Так это как раз и получится описываемый персонаж. Дофига быстродоступных знаний в голове, но никакой взаимосвязи между ними, никакой ассоциации с реальностью и органами восприятия. С учетом того, что информация будет уже в голове, тренировки собственных механизмов доступа для ее использования вообще не будет.
И да, долгое заучивание материала как раз и отсеивает тех, кто пытается заучивать. Очевидные детали, которые объемны для заучивания, нужно осознать и научиться выводить самостоятельно.
Самый понятный пример — таблица умножения. Учится до 10*10 причем с осознанием ее диагональной симметричности. А дальше осваивается навык умножения в столбик. Ваш же чипированный (или обсуждаемый персонаж) будет развиваться в сторону запоминания таблиц умножения все большего размера, причем без учета симметрии (перестановки множителей). Снежинка когда-нибудь раз не найдет в сети ответ на результат умножения все большей разрядности и сдастся.
У нас на работе (айти, программисты мы) наблюдаю примеры, когда на возникшую проблему одни люди начинают ее решать, а другие начинают писать код. И вот что, устранение проблемы далеко не всегда является модификацией исходников.
Тренироваться. Начать с простых задачек, и усложнять по мере обучения.
Читать книги, в том числе и художественные. Я лично люблю НФ и фентези, и скажу за них. Каждая книга - построение в голове системы (персонажи, декорации, действия). Здесь поневоле придется включать голову и сосредотачиваться больше пяти минут, иначе книгу не поймёшь.
Что именно написать, ему говорят в техническом задании, составленном достаточно подробно, с указанием имён таблиц, контекста исполнения, способов вызова, типов возвращаемых значений и т.д.
Когда и зачем ему с таким ТЗ думать, за него уже подумали, нужно только код написать. Думать начинаешь только тогда когда есть вопрос и нет ответа. Четкое тз это когда понятно что делать и зачем, а как делать это уже должен сам программист решать.
А у вас ТЗ это: «Посчитайте площадь прямоугольника, функция принимает два аргумента А и Б, нужно умножить А на Б и вернуть результат.»
Гениально!
Как на автора смотрели программисты(математики) из 60-х(Слышал от одного репетитора по математике что где то, начиная с 60-х ему, что бы подготовить студента на мехмат, уже нужен был год, а не пол года как ранее, связывал он это с массовым появлением телевидения в СССР)?
Научите Снежинку декомпозировать, что бы он успевал за 15 минут сделать часть задачи. И конечно градус пафоса снизить было бы не плохо. Люди разные, и судьбы у них разные. Мозг такой же инструмент как например и зрение, надеюсь ни кто не станет упрекать слепого программиста, что он не быстро программирует как зрячий?
Многое можно нагуглить, но не все. То, что нагуглить нельзя — заставляет думать, но это не так часто случается и начинающему кодеру таких задач не дают — их делают более опытные разрабы. Постепенно, когда сам становишься более опытным, тебе начинают давать такие задачи и ты их решаешь, сначала со скрипом мозгов и помощью коллег, потом самостоятельно, все быстрее и качественнее.
Так что Снежинке можно вот что посоветовать — не паниковать, не нервничать, работать и постоянно учиться, со опытом все придет.
Рассмотрите такой вариант, что вы описали человека с синдромом дефицита внимания. В этом случае обычные методики обучения не помогают, но существуют другие.
В остальном, в статье описывается извечный вопрос, как бы так сделать, что бы можно было ничего не учить, ничего не делать, и при этом много-много получать, и все сразу.
Быстро человек не учится, например при изучении английского невозможно в день выучивать более 20 слов на протяжении года, и ничего не забыть. Пытаться в день учить 30-40 слов это значит за месяц сдуешься и не захочешь продолжать.
Нужно потихоньку, понемножку, с наличием мотивации и терпения. Карточки то же будут полезными.
Задача сформулирована математически:
- Есть процесс думания, позволяющий получить некоторый интеллектуальный продукт. Этот процесс требует 23 минут. В случае отвлечения продукт рассыпается.
- Есть объект, который может осуществлять процесс думания непрерывно в течение 5-7 минут, максимум — 15 минут (СДВГ?).
- Спрашивается, каким образом объект может создать продукт?
Как мне кажется, задача в такой формулировке не имеет непосредственного решения, удовлетворяющего имеющимся ограничениям. Поэтому надо подойти творчески и немного расширить эти ограничения.
- Желательно разбить процесс думания на части меньшей длительности. И при этом избежать рассыпания интеллектуального продукта.
- Желательно увеличить длительность концентрации объекта.
Был такой фильм — 50 первых поцелуев. Там предлагалось решение для проблемы сброса суточной памяти — в начале каждого нового периода концентрации проигрывать промежуточные результаты предыдущего периода концентрации.
Для программиста можно предложить что-то аналогичное — систему конспектирования промежуточных результатов — TDD, скелеты классов, названия функций без реализации, формулирование текущих задач, текущего понимания способа решения (например, текстом описывать план действий будущей функции). Можно рисовать диаграммы, отражающие текущую модель интеллектуального продукта. Главное требование к такой системе конспектирования — универсальность, т.к. программистам приходится строить разные конструкты в голове. Возможно, текстовая форма — удобнее всего.
Второй путь — развитие способностей объекта и удлинение периодов концентрации внимания. Например, попробовать медитацию, попробовать читать художественную литературу многократно (чтобы исключить новизну), попробовать монотонную физическую активность — бег/ходьба/плавание...
Третий путь — осознать, что все люди разные, принять такую особенность, и переключиться на такой вид деятельности в IT, для которого такая особенность является преимуществом или не является критическим недостатком. Поддержка коммьюнити, тим-лидерство, тестирование,..
Желательно разбить процесс думания на части меньшей длительности
Нельзя. Много статей написано про т.н. "состояние потока" у программистов (напр https://habr.com/ru/post/103572/ но ЕМНИП это и у Брукса было или у другого классика). Вход в поток как считается занимает как раз 15 минут, т.е. эти 15 минут КПД мышления крохотный по сравнению с тем, что наступает потом (если наступает).
Это прекрасно, если у человека такая возможность есть. Вопрос поста заключается в том, как я понимаю, что делать, если у человека есть особенность деятельности мозга. Состояние потока, по-видимому, недостижимо. Приходится предлагать какие-то "костыли"/протезы, позволяющие получать продукт имеющимися ментальными средствами.
Работник получится очень так себе, но хоть какой-то клок с этой овцы будет.
Я бы посоветовал попробовать постепенно научиться работать без гугля.
Т.е., я понимаю, что интернет — наше фсе, и заменяет нам библиотеку. Но я бы предложил пользоваться им именно как библиотекой. А в библиотеку надо было физически ходить, оставив снаружи все прочие занятия, и поход в библиотеку занимал несколько больше времени, чем "включить бровсер и посмотреть в гугль".
Предлагается следующий алгоритм. Мы начинаем кодить, понимаем, что у нас есть много вопросов, и выписываем их на бумажке. Кодируем дальше, оставляя непонятные места "на потом". И проводим за этим занятием не 5 минут, а, хотя бы, час, постепенно увеличивая это время. Интернетом не пользуемся. Потом откладываем кодирование, "идем в библиотеку", т.е. лезем в гугл, ищем ответы на все непонятные вопросы, выписываем их на бумажку, но в код не лезем (если только нужные кусочки не выписаны заранее на бумажку). "Возвращаемся из библиотеки", т.е., выключаем интернет, возвращаемся к кодированию. Где-то в промежутке отдыхаем, обедаем и гуляем, подбирая режим так, чтобы было комфортно и не голодно.
Полагаю, несколько недель таких упражнений сильно продвинут мозги в правильную сторону.
Я программирую уже 30 лет. И первые сколько-то из них программировал, когда никакого гугля еще в проекте не было, а документация была либо в виде бумажных книжек, либо в виде добытой где-то коллекции файлов.
В промежутке между "кодирую" и "собираю информацию" где-то должно еще быть "думаю головой". Чтобы думать головой, ни компьютер, ни интернет не нужны, нужна голова и иногда бумажка с ручкой/карандашом.
На RSDN я известен, как Pzz. На мой код, который я могу показать, можно посмотреть по ссылкам: https://github.com/alexpevzner/sane-airscan и https://github.com/OpenPrinting/ipp-usb
Вот в этом и проблема - хочет. Хотения мало. Должно быть желание, терпение и понимание, что придется потратить много времени. Почему в каждом деле так мало мастеров? Потому что не многие готовы потратить годы. Это как каждый хоть раз хотел начать жить по новому с понедельника и обычно все хотением и заканчивается.
Использование гугла и хранение большей части знаний там — это прекрасная фича, если уметь ею правильно пользоваться. Ну так и надо научить ею правильно пользоваться.
Может быть начать с того, чтобы предложить Снежинке самому сформулировать себе ТЗ? Маленькое. Без разжевываний. Можно описание без реализации. А потом предложить еще одно. А потом их связать.
Когда начнут получаться "виртуальные" связки, чтоб хотя бы часть возможных косяков создателем предусматривалась, перейти к программированию по своим (Снежинкиным) ТЗ.
это про меня. я по специальности вроде бы админ, а не программист. тем не менее я постоянно что-то пишу на питоне, баше и сиквеле и даже перле и vbs, но у меня из рук выходит только страшный примитивный и опасный код. меня как научили 35 лет назад в школе бейсику и фортрану, я так и пишу на всем что знаю,как на бейсике, а знаю я обычно так, что в гугле приходится гуглить непрерывно, хотя делаю это уже много много лет, но в мозгах нагугленное не застревает. когда то я знал начатки си и паскаля благодаря турбо си и турбо паскалю, делал поделки на вижуал бейсике и даже писал nlm для новелла, но все что выходит из моих рук это убогие и примитивные (для меня все как бейсик) поделки недоучки. за почти 30 лет трудовой карьеры они стали немного лучше, но и мир изменился намного больше
А зачем из кодера, делать разработчика, если он сам того не хочет? Кодеры тоже нужны, чтоб разработчика освободить от рутины которую можно нагуглить.
Если хочет - полностью поменяет модель мышления и ценностей, после чего, возможно, станет разработчиком.
Я вижу еще одну зацепку в постановке диагноза.
Обнаружил, что у таких людей ценен код, который производит изменения. Когда я только начинал программировать, у меня был только такой код. То есть это строчки что-то вычисляющие, выводящие на экран, считывающие из ввода, делающие вызов для конвертации.
Менее значимые для них части программ занимающиеся изменением внутренних состояний.
Еще менее значимы организации структур взаимодействующих объектов.
Но ваш снежинка пытается создавать программы максимально трудолюбивые, то есть каждой строчкой делающие что-то суетливое. Гугл отлично в этом помогает.
Написали много, извините, если повторю кого-нибудь.
1) листок бумаги, ручка/карандаш. ЗНАНИЯ чтобы нарисовать блок-схему, архитектуру (графически), функциональную схему, что-то подобное. Можно на матерном русском, если так будет удобнее и понятнее.
2) та самая индексная таблица в мозге чтобы знать а что же может язык/фреймворк (тот же дотнет)/библиотека, а что придётся писать. Справочники где-то здесь, но для полноты картины его нужно будет пролистать ВЕСЬ и запомнить, то есть построить те же индексы.
3) а вот дальше как раз можно начинать писать код, заглядывая в справочники для правильного использования функции (класса и т.п.).
То есть — нужно найти учебник по языку, прочитать (понять), дать себе задачу написать простое (часы, часы со стрелками, будильник, свой Блокнот, ещё что-нибудь).
По сути это всё. Если нет мотивации, поднять себе её может только сам Снежинка, мотивация со стороны действует плохо и недолго. Не хочет программировать — а что тогда он там делает? Пусть ищет другую работу. Не находит? Ну… Что я могу сказать.
Нет мотивации? Тогда на медобследование и если всё норм, пусть ищет занятие по душе и желательно с хоть какой-то зарплатой.
Для Снежинки — если реально хотеть чем-то заняться, ты этим займёшься. Если не хочешь осваивать область деятельности, то значит тебе это не нравится, как бы ты себя не убеждал. Можно, конечно, работать через "не хочу" (и таких людей под 100%), но у этого поколения проблемы. Из-за воспитания или чего ещё, но часто вижу таких на улице.
ЗЫ Сам хотел стать программистом, но не вышел умом, и я "кодер по хоббийному", работаю в других областях.
А почему никто не порекомендовал дать прочитать книгу о проектировании?
Сейчас нет таких книг?
Мне когда-то понравилась полу-рекламная книга Гради Буча и… «Объектно-ориентированный анализ и проектирование с примерами приложений»
Там рекламировался графический язык, который использовался в Rational Rose, но кроме того половина книги — несколько примеров проектирования программ, начиная с постановки задачи.
Но сама проблема описанная похоже имеет место быть. Случилось так, что я некоторое время пытался предметно ее изучать и решать. Для удобства изложения я оставлю термин «снежинка» в кавычках для обозначения описанного в статья явления, оговорившись, что речь не идет о каком-то стремлении унизить — никто не виноват, что он рос в среде, создающей определенные проблемы.
Что известно объективно относительно влияния среды:
Есть научные данные, что соцсети провоцируют симптомы синдрома дефицита внимания (см. хотя бы jamanetwork.com/journals/jama/article-abstract/2687861), а также депрессии. Есть результаты, что доступность данных через интернет негативно влияет на способность вспомнить прочитанное ( onlinelibrary.wiley.com/doi/abs/10.1111/ejn.13039 ) ну и еще много подобных отдельных вещей, которые видимо складываясь вместе дают описанные в статье проблемы. Про клиповое мышление и 15 минут это упрощение сильное.
Что я субъективно увидел, пытаясь научить условных «снежинок» программированию:
1. Есть проблемы с просмотром «в глубину», не связанные со временем непосредственно — сложно проанализировать неочевидные последствия какого-либо действия
2. Проблемы при работе с абстрактными концепциями, но не просто проблемы, а непонимание и активное неприятие того, что абстрактные концепции вообще нужны
3. Неприятие любых инструментов, использование которых кажется неудобным или непонятным сразу
4. Снижение способности переносить дискомфорт при решении задач которые сразу не решаются (что наверное ближе к оригинальному значению термина)
Есть еще несколько моментов, но это в комментарий уже не помещается.
Простыми способами (типа просто решить, быть внимательным) это не решается. Нельзя просто дать книгу по проектированию (т.к. нет понимания что есть абстракция и то что это нужно вообще и понимания того, что нужно чтобы понять смысл абстракции). Нельзя дать просто упражнения на внимание. Плохо помогает давать какие-то костыли типа шаблонов.
Начав с перебора таких простых моментов, как-то постепенно это выросло в учебную программу, в которой мы пытались бороться со всем этим комплексно, с теорией и упражнениями по каждому выявляемому проблемному пункту и вроде бы какие-то результаты это начало давать.
Но количественно результаты оценить сложно, так к сожалению в маленькой компании ресурсов на такие опыты не очень много, и авторитета не хватает (обучающиеся подозрительно относятся к тому, что их учат «как-то не так», как они привыкли). В итоге за неимением ресурсов пока приостановили это занятие, размышляем нужное ли это дело вообще.
На практике, как я думаю, этим не заморачиваются, а либо нанимают людей с другим складом ума (они встречаются реже, но встречаются), либо разделяя обязанности (тут нужно два-три человека на задачу, которую ранее выполнял один, но зато это работает).
Помогите Снежинке стать программистом