Метод Janki - система обучения на основе интервального повторения. Часть 2

Первая часть поста про Метод Janki
Метод Janki: Нечто большее, чем просто тренировка памяти
Вся эта затея с Anki была изначально продиктована одной моей целью: не забывать что выучил, и с этой задачей программа справилась прекрасно. Однако, неожиданно для себя, я обнаружил некоторые другие преимущества, которые приносят ежедневные тренировки.
Преимущество 1: Скорость написания кода увеличивается
Когда знаешь тысячи всевозможных команд, не нужно тратить драгоценное время, роясь в справочных материалах. Столкнувшись с той или иной задачей, вы тут же вспоминаете, как в прошлый раз с ней справились, в вашей голове возникает целый ряд вариантов архитектуры. Вы будете бегло и с полным пониманием вещей просматривать чужой код. Вы будете владеть им так же свободно, как и родным языком. Вы будете говорить на языке кода.
Большую часть времени при написании программ я трачу на дебаггинг – исправление своих или чужих ошибок в коде. Хорошие знания платформы могут значительно ускорить процесс. В значительной мере отладка подразумевает сбор информации. Какова задача системы? Какие данные находились в системе в момент сбоя? Что могло пойти не так? Зачастую ошибочка в одной-единственной строке может вызвать баг, который может привести к падению целого сайта. Однако не так просто среди тысяч строк программного кода найти ту самую.
Рассмотрим следующий пример. Допустим, ваша программа использует 100 функций, из них 70 – встроенные, т.е. стандартные для используемого языка. Остальные 30 – пользовательские. Если вы четко знаете данные ввода и вывода встроенных функций, дебаггинг значительно упрощается, ведь вам остается выяснить, как работают те 30 пользовательских функций. Учитывая то, что пользовательские функции во многом определяются функциями стандартными, это задание также не должно забрать слишком много времени. Прочные знания в области синтаксиса, ввода-вывода, и использования стандартных функций позволят вам сузить круг поиска и, в конце концов, определить ошибку.
Метод Janki выводит процедуру мозгового штурма на новый уровень. Наличие глубоких познаний означает, что вы можете набросать на бумаге огромное количество вариантов, и в итоге найти неожиданное, нестандартное решение задачи.
Вы, возможно, хотите возразить, – мол, таких улучшений скорости можно добиться и с опытом. Это верно, но мы с вами идем совершенно другим путем. Janki позволяет приобрести те же знания, но быстрее, и хранить их вы сможете дольше. Если вы сделали что-то, но затем, спустя пару месяцев не можете повторить вновь — запомнить, как и что делать вам поможет Anki.
Преимущество 2: Разбивка
Компетентность в какой-либо технической области складывается из уровня интеллекта и объема знаний. Недостаток одного компонента может компенсироваться избытком другого. Сообразительный, но неопытный человек может добиться тех же успехов, что и его заурядный, но более искушенный коллега.
Это можно продемонстрировать следующим примером. Давайте умножим 130 на 30 двумя способами.
Способ 1: Вам известно, что умножение – это многократное сложение, то есть наш пример можно представить в виде 130 + 130 + 130… и т.д. Таким образом, используя правило сложения, вы рано или поздно получите ответ – 3900. Давайте назовем уровнем интеллекта способность быстро выполнять отдельные вычисления.
Способ 2: Возможно, из школьной таблицы вы помните, что 13х3 будет 39. Вы также можете помнить, что при умножении круглых чисел, нули просто складываются и дописываются в конце результата. Таким образом, наш пример упрощается до следующего вида 13х3+два нуля в конце. В итоге получаем те же 3900. Уровень интеллекта, или скорость сложения, в данном случае неактуальна, поскольку знание позволяет вам значительно упростить задачу.
В первом способе решение задачи требовало больших усилий, поскольку мы не использовали знаний, которые позволили бы облегчить вычисления. Во втором же случае, вы использовали фрагмент знаний более высокого уровня, и тем самым донельзя упростили задачу, которая изначально казалась не из простых. Применение хранимых в памяти «кусков» знания по отношению к текущей задаче, называется разбивкой.
Если вы помните ответ на вопрос, вам не нужно тратить ресурс на его поиски, вместо этого вы можете направить свои мысли на более абстрактные понятия. В этом и заключается ценность разбивки.
Метод Janki приветствует применение техники деления на фрагменты. У меня и в мыслях не было, что метод может дать мне такое преимущество, более того, этот навык оказался самым полезным из тех, что я приобрел следуя правилам Janki. После шести месяцев ежедневных тренировок вы будете работать с различными задачами программирования, используя приемы, подобные тому, что мы применили для упрощения задачки на умножение. Увеличьте разбивку путем добавления в колоды все более абстрактных правил и понятий, пытайтесь применять эти идеи при решении очередной задачи.
Преимущество 3: Удобный архив, заключающий в себе все ваши знания в области программирования.
Случалось с вами такое: ваш компьютер выдает ошибку, вы помните, что когда-то уже с ней встречались, но, как на зло, не помните, как ее решить? До того, как я создал этот метод, со мной такое происходило очень часто.
Впервые столкнувшись с проблемой, я по полдня искал ей решение. Спустя полгода проблема возникала вновь, ну, может в слегка измененном виде. Так вот, хотя я и помнил, что нечто подобное мне встречалось, решение к тому времени благополучно вылетало из головы.
Мне это дико не нравилось. Не люблю решать одну и ту же проблему дважды. Метод Janki поможет избежать этой ситуации.
В Anki есть функция поиска карточек. Можно также задействовать фильтр даты и тега. К примеру, вам нужно найти карточки, содержащие слово “ssh”, созданные полгода назад, и содержащие тег «внедрение».

Каждый раз, устранив какой-то баг, создайте в колоде несколько новых карт, содержащих знания о том, как не допустить повторение ошибки в будущем. Еще лучше – подняться на один уровень вверх и добавить карточки посвященные целому классу багов. Теперь, если вам доведется столкнуться с каким-либо багом во второй раз, нужно просто отыскать его в архиве.
Преимущество 4: Не нужно изобретать колесо
Современные языки программирования имеют множество встроенных алгоритмов, или же эти алгоритмы хранятся в корневой библиотеке. Это в первую очередь касается таких продвинутых языков, как Ruby и Python. Нужно упорядочить массив? Array#sort, и задача решена.
Если бы вы не знали, что алгоритм сортировки был встроен в язык, вам пришлось бы заменить его своим собственным. Поступая таким образом, вы рискуете совершить ошибку плюс код ваш будет не таким опрятным, как хотелось бы. Более того, человек, который будет читать ваш код, будет сбит с толку, ведь не подумает же он, что единственная причина, по которой вы проигнорировали встроенный алгоритм, и заменили его своим – элементарное незнание.
Заполняйте свои колоды встроенными алгоритмами выбранных вами языков, и научитесь правильно применять те или иные элементы языка, ваш код будут понимать другие люди, ошибки по незнанию будут случаться реже.
Дополнение
Стоит ли скачивать чужие колоды?
На сайте Anki есть база, содержащая колоды пользователей, которыми те решили поделиться. Хотя в этой базе не так много колод, посвященных программированию, кое-что можно найти, объединить и использовать в качестве фундамента для вашей собственной базы знаний.
Однако будьте осторожны. В вашей колоде могут оказаться карточки, содержащие бесполезную или не до конца понятную вам информацию, и разучивая ее в таком виде, вы рискуете построить неважный фундамент для вашего будущего знания.
В идеале, нужно создавать колоду самому с нуля. Она должна отталкиваться от вашего программистского опыта; информации, которую вы почерпнули из кода других людей, справочников, обучающих видео; ошибок допущенных ранее; завершенных проектов. Если строить ее по такому принципу, карточки будут содержать только понятные, проверенные на практике контекстуальные знания, которые изложены и структурированы понятным для вас способом.
Если вы все же решили использовать чужие колоды, убедитесь, что понимаете все, что учите. Всегда испытывайте код, с которым встречаетесь впервые; возможно, придется конкретно повысить самодисциплину. Вы должны доверять автору колоды – вам не нужна неправильная или устаревшая информация, а печальная реальность такова, что большинство свободно доступных колод иначе, как отвратительными, не назовешь.
Моя колода содержит около 6000 карточек и посвящена в основном Ruby on Rails, включая карточки по таким темам, как Ruby и Rails 3.1, HTTP-потокол, командная строка Unix, Git, CSS, JavaScript, VIM, Rspec, Capybara, TDD, Coffeescript, jQuery, coffeescript, sass, внедрение, шаблоны дизайна, часто встречающиеся выражения, SQL, рефакторинг, и алгоритмы. Все помечено тегами, аккуратно оформлено и соответствует сегодняшнему положению дел. Эти знания – все, что мне потребовалось для того, чтобы разработать, скоординировать, и внедрить целый ряд веб-приложений. Вы можете скачать мои карточки по веб-разработке здесь.
Какие знания стоит добавлять в колоды, а какие – нет?
На первых порах применения метода Janki, я пихал в колоды все подряд. В частности, я занес в базу большое количество карточек, посвященных альтернативным библиотекам. Учитывая то, насколько редко я пользуюсь этими знаниями, я попросту зря потратил время и усилия. Технологии развиваются очень быстро, и библиотеки, которые сегодня используются повсеместно, завтра уже будут неактуальными. В итоге я удалил многие из этих карточек, которые к тому моменту уже бесполезно занимали драгоценное место в моей долгосрочной памяти.
Не всегда просто отличить то знание, которое стоит долго хранить в памяти от того, которое необходимо лишь на недолгое время. Я придумал схему, которая помогает мне определиться:
Карточку стоит добавлять в колоду, только если она соответствует хотя бы одному из нижеперечисленных требований:
а) Факт содержит основополагающие знания компьютерной науки (рефракторинг, часто встречающиеся выражения, объектно-ориентированное программирование, управление памятью и прочее).
б) Факт касается одной из крупнейших технологий, которые актуальны уже на протяжении долгого времени, и с большой долей вероятности в ближайшее время никуда не денутся (Linux, Ruby, Javascript, VIM, git, HTML, CSS, SQL)
в) Факт (пусть даже относится к библиотеке, которая возможно изменится в ближайшее время) используется мной каждый день, и предполагается, что и впредь будет входить в мой инструментарий. Еще лучше, если технология востребована, ведь высокий спрос приятно отражается на вашем кармане (Rails, jQuery ).
Какие основные комбинации клавиш мне нужно знать?
Вам предстоит ежедневно повторять карточки, поэтому немного тайм-менеджмента не помешает. В этом помогут комбинации клавиш.
Нажмите Enter чтобы программа выдала ответ на вопрос карточки, оценивайте свой ответ клавишами 0, 1, 2, или 3.
Command + Backspace – удалить карточку. Используйте эту комбинацию, если карточка содержит сложную для понимания / неправильную / устаревшую информацию.
Command + E – редактировать. Tab перемещает курсор между полями вопроса в поле ответа.
Janki-вызов
Хотите научиться программировать и создавать мощные приложения? Тогда предлагаю пройти Janki challenge. Скачайте программу Anki (ссылка ниже), выберите проект, и заявите друзьям, что берете на себя обязанность научиться программированию.
Зачем нужно публично брать на себя обязанность? Дело в том, что таким образом вы создаете вокруг себя давление, которое заставит вас держать слово. Оно также поможет вам преодолеть первые, самые сложные этапы, на которых большинство сыпется.
Я уверен, что если вы будете четко придерживаться приведенных выше инструкций, вы научитесь программировать намного быстрее, чем если бы вы использовали в обучении любой другой способ, ну кроме, естественно индивидуального обучения у специалиста.
Дальнейшее чтение
- 5500 созданных мной карточек по веб-разработке
- Бесплатно скачать Anki
- 20 Rules for Formulating Knowledge in Learning
- Want to Remember Everything You’ ll Ever Learn? Surrender to This Algorithm
- Genius and Creativity
По материалам блога Джека Кинселлы
71 комментарий
Я начал заниматься после выхода предыдущей статьи. Сейчас в день на просмотр карточек трачу примерно 1 час.
Я загрузил Анки, потихоньку туда что-то добавляю, если вспоминаю. Обучение занимает пару минут в день пока. Но я сейчас никаких новых областей не осваиваю в плане обучения.
Карточки с вопросами из билетов на сдачу прав — скачал готовые — занимают еще около получаса.
Canon Printer Setup delivers amazing printing quality and is known for their adaptability and competence. cann0n.startiij.com Canon printers are one of the best in as per current users demand. kann0n.startiij.com helps to set up canon printer. It’s the online support platform to download and install canon printer drivers, firmware, and software. kan0n.startiij.com To get started with ij.start canon setup, you can select wireless, wired, or USB connection method. kanon.startiij.com Canon printer app is available for cableless ij start canon setup for smartphones. i0ij.canstartij.com For a hassle free setup process on Canon printer to Windows (or mac), follow the below-mentioned instructions. 0iij.canstartij.com Canon ij printer is a complete solution for multiple tasks and users can easily set up a canon ij printer from iij.canstartij.com and get a better experience. iij0.canstartij.com In order to print using a Canon printer you need to download, install and run the Canon IJ Setup from the official portal — IJ.Start.Canon. Follow the procedure to setup ij start canon and make your printing experience more better.
IJ start canon is a complete package that contains many software applications for printing, ij0ij.canstartij.com scanning, auto-driver installation and much more. With IJ.Start.Canon, you can easily download and install the canon printer software and drivers on your device. ij0.canijstart.com It a one-stop shop for all your printer needs. ij11.canijstart.com IJ start canon is the tool established by canon to simplify the printing and scanning processes for its users. 1ij.canijstart.com It is a shortcut application that stays on the 0ij.canijstart.com home screen and gives the control to user to manage printer functions. 8ij.canijstart.com ij start canon tool allows the user to scan and choose the destination folder for the scanned document.
Sign in to your TurboTax account at tturbo.taxca-download.com using the same login you used when you made your purchase. 0turbo.tax-license.com If you're not already on the Downloads tab, select it. 0tturbo.tax-license.com Select the corresponding blue button for the product you wish to download. 0tturb0.tax-license.com If you don’t see your product, use account recovery to find out if you have other usernames associated with your email.Save the 0turrb0.tax-license.com somewhere on your computer where you can find it.If you need help finding your turbotax.ca/download check our instructions for Windows or Mac. 0tuurbo.tax-license.com Finally, install your software by double-clicking the downloaded file.If you need help installing, we can help with Windows or Mac.
Webroot SecureAnywhereMobile Free keeps you secure when perusing, shopping, and depending on your Android gadget. webb.safetroot.com This application utilizes the Device Administrator authorization. webb1.safetroot.com Get instant help for downloading webroot antivirus to protect your device appoint where you can find all your problems solved. webb1root.safetroot.com Download Webroot Geek Squad Antiviurs If you own a device or system and you are connecting it to internet or another device then you must have antivirus software. we1root.safetroot.com Virus or any risky threat like Malware, Trojan, Spyware, Rootkit or online hacking or attack can steal your data and damage your system. we1r0ot.safetroot.com Antivirus programming, for example, Webroot SecureAnywhere Antivirus baffles malware in two or three different ways. webb1.rootesafe.com It filters information and squares infections that it recognizes. web1.rootesafe.com What's more, it evacuates malware that is as of now held up in a PC. web1s.rootesafe.com Webroot AntiVirus keeps watch on obscure projects until its cerebrum in the cloud goes to a judgment. webbs.rootesafe.com The small nearby program clears out the assailant and turns around its activities. wwebs.rootesafe.com It's an exceptionally unordinary framework, however testing demonstrates that it carries out the responsibility, and does it well.
business funding colorado springs
finance companies in bakersfield
is pt trim fat burn legit
[url=https://dosugnu.xyz/]
Проститутки на дом Новый Уренгой.[/url]
Вип индивидуалки Новый Уренгой.
is advanced appetite legit
Так же, вы сможете смотреть трансляции оффлайн турниров, различные стримы и подборки видео о покере, все это и не только на [url=https://www.poker4life.ru/]Poker4Life.ru[/url]
Как получить бонус GGpoker
[url=https://www.poker4life.ru]Новости Покерстарс[/url]
is oros cbd gummies legit
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/21
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/ttth
создать веб-сайт подкупающий в свой черед удобный для посетителя; правильно подобрать поисковые запросы; оптимизировать страницы веб-сайта; заказать популизаторство сайта, которое позволит ссылкам перманентно веб-сайт оказаться в первой десятке результатов поиска таких популярных систем, до чего Google или Yandex.
Как бы то ни было с легкостью, в награду выше позиция в поисковой выдаче, тем превыше шансов продать товар или услугу. Дополнительные технологии продвижения позволяют сделать позиции сайта в результатах поиска прежде всего стабильными, а в свою очередь увеличить плотность упоминания о бренде, товаре, услугах.
Создание и раскрутка сайтов — наша призвание!
Interpult специализируется повсечастно комплексном Интернет-маркетинге, а практически повсечастно комплексном продвижении в Интернете бизнеса наших клиентов. Являясь профессионалами, мы готовы выполнить практически любую задачу по продвижению товаров, услуг, компаний, брендов, проектов, сайтов, Интернет-магазинов в Интернете. Мы являемся проводниками комплексного подхода в Интернет-продвижении и сколько показала практика, это единственно верный подход, который позволяет достигнуть максимальной эффективности.
Наши комплексные решения индивидуальны в свой черед направлены в любой момент достижение максимального результата.
Наша миссия: способствовать продвижению товаров вдобавок услуг наших клиентов в угоду счет использования эффективных Интернет-технологий, а как и внедрения инновационных подходов для создания возможностей укрепления равным образом повышения своих рыночных позиций.
Interpult Studio
baoly.ru/43 Только создали сайт? Позаботьтесь о продвижении
[url=http://26detsad.ru/?page_id=21&mingleforumaction=viewtopic&t=120#postid-127]Оказание услуги по продвижению сайтов в прокачанных блогах качественно Янтарь[/url] 64704_e
@rr
создать веб-сайт симпатичный как и удобный для посетителя; правильно подобрать поисковые запросы; оптимизировать страницы веб-сайта; заказать самораспространение сайта, которое позволит ссылкам на веб-сайт оказаться в первой десятке результатов поиска таких популярных систем, до чего Google или Yandex.
Ведь играючи, в возмещение выше позиция в поисковой выдаче, тем вне шансов продать товар или услугу. Дополнительные технологии продвижения позволяют сделать позиции сайта в результатах поиска похлеще стабильными, а равно как увеличить плотность упоминания о бренде, товаре, услугах.
Создание также раскрутка сайтов — наша занятие!
InterpultStudio специализируется в любой момент комплексном Интернет-маркетинге, а собственно говоря перманентно комплексном продвижении в Интернете бизнеса наших клиентов. Являясь профессионалами, мы готовы выполнить практически любую задачу по продвижению товаров, услуг, компаний, брендов, проектов, сайтов, Интернет-магазинов в Интернете. Мы являемся проводниками комплексного подхода в Интернет-продвижении вдобавок в какой степени показала практика, это единственно верный подход, который позволяет достигнуть максимальной эффективности.
Наши комплексные решения индивидуальны в свой черед направлены перманентно достижение максимального результата.
Наша миссия: способствовать продвижению товаров в свой черед услуг наших клиентов вследствие счет использования эффективных Интернет-технологий, а равным образом внедрения инновационных подходов для создания возможностей укрепления равным образом повышения своих рыночных позиций.
InterpultStudio
baoly.ru/sdcv Только создали сайт? Позаботьтесь о продвижении
[url=https://forum.delta.by/viewtopic.php?f=5&t=2246]Сделаю услугу по регистрации и размещении профилей на сайтах и блогах недорого Виноградов[/url] f3290d6
@rr
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/eregh
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/ww4sa
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
t.me/seo_promo
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/sdcv
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/etey
Вы получаете на сайт статьи и тексты с ссылками, которые точно передадут вес с донора на ваш сайт.
Таким образом легко можно поднимать НЧ, а также подтаскивать вверх СЧ и ВЧ запросы. Кроме этого возможен рост ИКСа.
Статейное продвижение абсолютно безопасно и идеально подойдет, как для молодых сайтов, так и для остальных, и придадут траст вашему сайту.
baoly.ru/20
토토사이트 비크릿
@crb=
@crb=
@crb=
@crb=
@crb=
@crb=
зеркала hydra2web[/url]
зеркала на гидру работающие в торе
как найти зеркало гидры[/url]
рабочее зеркало гидра анион
@crb=
@crb=
@crb=
@crb=