Pull to refresh
2
0

Парадокс Гранди. Как современные школьники повторяют ошибку Лейбница и Эйлера

Reading time 4 min
Views 87K

Было у отца два сына. И оставил он им наследство — камень драгоценный. А чтобы никого не обидеть, поставил он перед сыновьями условие: нельзя тот камень ни пилить, ни продавать. Можно только по очереди владеть им. И повелось так — каждый год камень переходил от одного брата к другому. Потом камнем по очереди владели их потомки, потом потомки их потомков… И длилось так вечно.

Этой притчей итальянский математик, монах и философ Гвидо Гранди пытался объяснить решение задачи, которую сам же и сформулировал. В 18 веке её считали парадоксом и предлагали разные варианты решения. Долгое время она не давала покоя математикам.

Задача Гранди формулируется очень просто: какой результат мы получим, если будем до бесконечности складывать 1 и -1?

Читать далее
Total votes 95: ↑85 and ↓10 +75
Comments 268

Ката программиста — путь к недостижимому идеалу. Или как я упал с велосипеда этим летом

Reading time 8 min
Views 13K

Ежедневные тренировки — это основа многих профессий. Музыканты, спортсмены, танцоры, врачи — все они оттачивают своё мастерство с помощью многократных повторений одних и тех же важных для них действий.

Изнуряющие тренировки отнимают много времени и сил. Зато потом, когда понадобится применить своё искусство,  тело сделает всё само — «на автомате». А ценные ресурсы мозга будут освобождены для решения более важных задач — стратегического планирования, принятия ключевых решений, поиска новых возможностей. И, конечно, для творчества.

А что же программисты?...

Читать далее
Total votes 36: ↑34 and ↓2 +32
Comments 26

Современный программист — ремесленник или мастер?

Reading time 4 min
Views 8.4K

Вы работаете программистом и практически каждый день пишете код. Скажите, как часто вы чувствуете удовлетворение от выполненной работы и гордость за результаты своего труда? Случалось ли вам выпускать работающий, но некачественный и «некрасивый» код только для того, чтобы уложиться в сроки? Есть ли у вас мотивация писать оптимальный код, зная, что через пару месяцев он станет неактуальным и бесполезным?

Попробуем разобраться, как же так получилось, что программирование из красивого искусства и творчества превратилось в повседневный рутинный конвейер.

Читать далее
Total votes 28: ↑24 and ↓4 +20
Comments 53

Философия диафильмов: путь к идеальной презентации

Reading time 9 min
Views 7.1K

Помните это маленькое чудо под названием диафильмы? В детских диафильмах каждый кадр был миниатюрным произведением искусства.

Я побывал в роли слушателя на многочисленных выступлениях с презентациями. Немалое количество презентаций я подготовил и провёл самостоятельно. И всё это время меня не оставляло сомнение: что-то мы делаем не так! Что-то очень простое и понятное, что лежит на поверхности, что нам давно известно, но мы успели основательно позабыть.

Как это часто бывает, мимолётное воспоминание в нужный момент поставило всё на свои места. Картина прояснилась, пазл сложился и в голове вспыхнула простая и ясная мысль: «Презентации — это диафильмы». Вооружившись этим утверждением, я сформулировал несколько несложных правил, которые, как мне кажется, помогут сделать презентации лучше. Спешу поделиться этими правилами с вами.

Читать далее
Total votes 51: ↑48 and ↓3 +45
Comments 33

Как муравьи решают проблемы коммивояжёров

Reading time 9 min
Views 15K

В математике и программировании порой используются необычные названия явлений, объектов и алгоритмов. Но почти всегда такие названия позволяют быстро понять суть описываемых сущностей. Возьмём, к примеру, широко известную задачу о коммивояжёре — найти кратчайший путь между заданными точками. И действительно, сразу представляется себе коммивояжёр, которому нужно обойти все дома в небольшом городке, но при этом затратить минимум усилий и времени. Для решения этой задачи используются разные алгоритмы, один из них называется «муравьиным». Для того, чтобы разобраться с этим алгоритмом, нам для начала нужно присмотреться к поведению муравьёв в их необычном организованном мире.

Читать далее
Total votes 41: ↑41 and ↓0 +41
Comments 4

Эпические баги прошлого

Reading time 9 min
Views 40K

Баги в программах — это любимая тема программистского фольклора. Они сопровождают разработчиков всю жизнь. Ошибки бывают разные: совсем глупые описки, которые отлавливаются при первой же компиляции; более серьёзные, которые можно найти при прогоне на тестовых примерах; системные, которые связаны со сложными аспектами взаимодействия разных систем. Самые неприятные — это плавающие ошибки, которые появляются неожиданно и так же неожиданно исчезают. Этакие привидения программной среды.

Но иногда возникают такие ошибки, которым удалось укорениться в базовых системах: в процессорах, ядре ОС. Их обнаруживают не сразу и они имеют куда более критические последствия.

Читать далее
Total votes 79: ↑77 and ↓2 +75
Comments 89

Обзор книги Аллена Б. Дауни «Think Python. Основы Python»

Reading time 5 min
Views 12K

Написать хороший учебник по Python сложно. Пожалуй, сложнее, чем по любому другому языку программирования. Как ни странно, из-за того, что Python — универсальный, распространённый и очень простой язык. Но Аллену Дауни, профессору компьютерных наук, это, похоже, удалось.

В книге найдётся интересное упражнение для изучения любого аспекта языка Python. Если вы изучаете обязательный в таких случаях модуль turtle, то будете рисовать с помощью черепашки не просто какие-то скучные прямоугольники, а буквы алфавита и спираль Архимеда. А ещё — почему бы нам не нарисовать один из самых знаменитых фракталов — кривую Коха? Если вы знакомитесь с понятием функции, то вместо скучных вычислений попробуйте найти решение уравнения Великой теоремы Ферма.

Читать далее
Total votes 9: ↑8 and ↓1 +7
Comments 2

Компьютерная ностальгия 90-х: Нафаня, Поиск и Альфа

Reading time 8 min
Views 7.2K

Процесс покупки компьютера сейчас прост, незатейлив и банален. Мы выбираем нужную нам модель, заказываем её в каком-нибудь интернет-магазине и через некоторое время получаем товар. Никакого романтизма. То ли дело — приобретение компьютера раньше, в школьные годы. Вот это было настоящее событие! Покруче, чем покупка велосипеда или гитары. Даже круче, чем когда тебе на день рождения родители наконец дарят кота или собаку. Заветная мечта, которая сбылась.

Нафаня, Поиск и Альфа — такие вот чудны́е имена были у моих самых первых компьютеров.

Читать далее
Total votes 39: ↑38 and ↓1 +37
Comments 45

Цифровая ностальгия: BBS, DOS Navigator, DOOM и Civilization

Reading time 7 min
Views 13K

Есть гипотеза, что интерфейсные предпочтения пользователя закладываются в самом начале его компьютерного пути. В моем случае — это консольные приложения и строгий аскетизм DOS.

Но я не буду отрицать возможности и преимущества современных технологий. Мы с удовольствием ими пользуемся. Сейчас многие далеко не молодые люди изучают новые языки программирования, разбираются с фреймворками и приложениями, системами, стандартами и устройствами. Я из того поколения, которое начинало знакомство с компьютерами с простейших текстовых интерфейсов... Говорят, что ностальгия — это когда сравниваешь наихудшее из настоящего с наилучшим из прошлого. Только найти наилучшее в настоящем становится всё сложнее.

Читать далее
Total votes 54: ↑53 and ↓1 +52
Comments 98

Советская «Логика» на листе бумаги

Reading time 7 min
Views 38K

Перед самым Новым годом мне повезло — я нашёл коробку со своими детскими сокровищами. В ней были собраны традиционные настольные игры, которые имел почти каждый советский школьник: старые «Эрудит», «Реверси», лото, классические шашки, домино и вездесущий кубик Рубика. А ещё в коробке оказалась основательно подзабытая мной игра «Логика».

Память — странная штука. Если бы я не обнаружил эту игру в коробке, я бы, возможно, никогда и не вспомнил о её существовании. Однако, несмотря на то, что я не играл в эту игру уже очень много лет, мне удалось без труда восстановить в памяти её простые правила. Но обо всём по порядку.

Читать далее
Total votes 47: ↑46 and ↓1 +45
Comments 12

Муравей Лэнгтона — загадочный клеточный автомат

Reading time 4 min
Views 16K

В мире существует около 14 000 видов муравьёв, каждый из которых имеет собственное название. Но, даже если вы зададитесь такой целью, вы не найдёте ни в одном биологическом справочнике муравья Лэнгтона. Дело в том, что этот муравей — математическая абстракция, модель для описания поведения динамической системы.

Невесёлая жизнь у муравья Лэнгтона, но, как мы увидим, он не готов мириться с такой возмутительной ситуацией и всеми силами старается сбежать.

Читать далее
Total votes 60: ↑59 and ↓1 +58
Comments 23

Коварный план: почему всё вокруг ломается

Reading time 7 min
Views 60K

Однажды у моего смартфона перестал заряжаться аккумулятор. Казалось бы, ничто не предвещало проблемы, ведь ещё накануне его заряда хватало примерно на два дня работы. Но внезапно посреди рабочего дня телефон стал бешено разряжаться. Я удивился и сразу подключил его к зарядному устройству. Через некоторое время, проверив его, я удивился ещё больше — уровень заряда не только не увеличился, но стал даже ниже, чем был раньше. Телефон разряжался быстрее, чем заряжался...

Читать далее
Total votes 154: ↑117 and ↓37 +80
Comments 923

Как метод утёнка и коридорное тестирование помогают решать сложные нестандартные задачи

Reading time 4 min
Views 8.1K

Представьте, что вам никак не даётся решение какой-нибудь сложной рабочей задачи. Вы чувствуете, что решение есть, оно где-то рядом, но у вас не получается его «нащупать». Например, вы никак не можете найти очевидный баг. Такое бывает и с обычными повседневными задачами — вроде всё просто, все данные и условия перед глазами, а ответ никак не приходит в голову.

Иногда полезно на некоторое время перестать быть серьёзным профессионалом и попробовать думать проще. Стереотипы и инертность мышления часто мешают нам взглянуть на проблему под другим углом. Но нам на помощь всегда готовы прийти резиновый утёнок или коридорный собеседник.

Читать далее
Total votes 5: ↑3 and ↓2 +1
Comments 4

Незакрытая дверь приводит к возрастанию энтропии Вселенной

Reading time 4 min
Views 24K

На двери кабинета физики в институте, где я начинал свою трудовую деятельность, висела табличка: «Закрывайте, пожалуйста, дверь. Незакрытая дверь приводит к возрастанию энтропии Вселенной». Народу табличка нравилась, никто не хотел причинять вред Вселенной. Призыв действовал — дверь обычно аккуратно закрывали.

Если хаос слишком велик, то у кого угодно просто опустятся руки. Представьте, что вы удаляете из кучи одну песчинку, а в то же время сверху падают десятки новых песчинок. Согласитесь ли вы продолжать этот бесполезный труд?

Читать далее
Total votes 21: ↑16 and ↓5 +11
Comments 15

Моё число круче, чем у Шелдона Купера

Reading time 7 min
Views 5.5K

Шелдон Купер считал, что лучшее число — это 73. Он весьма убедительно это доказывал, но ведь можно найти числа и поинтереснее. Например, 89. А ещё можно покопаться в бесконечных знаках чисел π и e, например, поискать там дату своего рождения. Дата-палиндром 22.02.2022 — подходящий день для того, чтобы поупражняться в поиске таких закономерностей. Главное — не забывать о бритве Оккама и не делать далеко идущих выводов в стиле нумерологии, астрологии или новой хронологии.

Читать далее
Total votes 16: ↑15 and ↓1 +14
Comments 13

Иллюзия упущенных возможностей. Вот если бы я тогда…

Reading time 6 min
Views 32K
Opinion

Все мы временами жалеем о том, что не сделали чего-то в прошлом. Например, не уделили должного внимания изучению иностранного языка: «Эх, вот если бы я тогда не страдал всякой ерундой, а как следует взялся бы за английский, я бы сейчас...». Или не поучаствовали в чём-то, что сейчас принесло бы нам ощутимые дивиденды и бонусы: «Говорил ведь мне тогда Сеня: надо майнить биткойны». Или просто выбрали не ту дорогу: «Надо было поступать в университет А, зачем я сгоряча подал документы в институт Б!»

Проходит время, мы анализируем наши поступки и сокрушаемся по поводу неправильно принятых решений. Нам кажется, что всё могло быть совсем по-другому, если бы в определённой временно́й точке в прошлом мы приняли бы другое решение.

Всё выглядит вполне логичным: вот точка выбора, перекрёсток судьбы. Вот две дороги: направо пойдёшь — будут тебе успех, почёт и богатство. Налево пойдёшь — и окажешься... в общем, там, где ты сейчас оказался. Однако тут есть небольшой подвох: мы никак не можем проверить, что дорожка направо действительно привела бы нас в светлое альтернативное будущее. Давайте попробуем разобраться, что же не так с этой самой дорожкой.

Читать далее
Total votes 47: ↑42 and ↓5 +37
Comments 99

Прекрасный минимализм текстовых файлов

Reading time 5 min
Views 29K
Opinion

Одним из моих любимых развлечений в детстве была родительская печатная машинка. Когда она была свободна, я часами сидел и печатал: книги, брошюры, газеты. Каждое издание выходило тиражом в три экземпляра — под копирку. Иллюстрации и переплёт были выполнены вручную. У меня до сих пор сохранились некоторые забавные образцы моей тогдашней издательской деятельности...

Читать далее
Total votes 168: ↑159 and ↓9 +150
Comments 239

Легко давать советы другим, но не себе. Как не попасть в ловушку парадокса Соломона

Reading time 5 min
Views 13K

Как же мы иногда любим раздавать ценные советы, когда нас об этом просят и особенно — когда не просят! При этом сами почему-то с завидным постоянством принимаем неверные решения и попадаем в глупейшие ситуации.

Почему, например, даже образованные разумные люди нередко поддаются на классические схемы очередных мошенников, верят заманчивым рекламным обещаниям, участвуют в сомнительных конкурсах или, скажем, выкатывают непротестированную сборку прямо в прод?

Раз уж мы так любим раздавать ценные советы другим, почему бы этим не воспользоваться? Попробуем представить, что проблема, которую нам нужно решить, не наша собственная, а чья-то ещё.

Читать далее
Total votes 49: ↑42 and ↓7 +35
Comments 24

Остановись, мгновенье. Медленное программирование — тренд для уставших разработчиков

Reading time 5 min
Views 39K

Как же хочется иногда остановить дикую гонку разработки и получить удовольствие от вдумчивого, размеренного написания кода. Как же не хватает времени на обдумывание алгоритмов и исследование перспективных архитектурных вариантов системы. Как же тянет отыскать стоп-кран и остановить взбесившийся конвейер по штамповке недолговечных решений.

Если вы устали от бесконечных дедлайнов, совещаний и спринтов, то, возможно, вам придётся по душе концепция медленного программирования. По своей сути она полностью противоположна мейнстриму — постоянному ускорению разработки. Попробуем рассмотреть все плюсы и минусы этой концепции.

Читать далее
Total votes 147: ↑146 and ↓1 +145
Comments 77

Камень, ножницы, бумага. Как придумать свой вариант: методика, алгоритм, стратегии

Reading time 6 min
Views 3.5K

Спорщики всех возрастов на всех континентах энергично трясут кулаками, повторяя на разных языках слова этой незамысловатой считалки.

Игра «Камень, ножницы, бумага» не так уж проста, как может показаться на первый взгляд. Тут есть над чем подумать. А заодно и поразвлечься, придумывая свои варианты.

Читать далее
Total votes 15: ↑13 and ↓2 +11
Comments 4
1

Information

Rating
Does not participate
Registered
Activity