Рубрика «ненормальное программирование» - 87

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

Моделирование мира и динамические системы
(Первые цифры площадей стран, записанных в десятичной записи)

Читать полностью »

В ответ на это решение, хотелось бы указать своё, несколько более простое к восприятию.
Читать полностью »

image Тема игры «Жизнь», не раз поднималась на хабре. Описывались различные модификации игры, я хочу представить еще одну. Модификация игры довольно тривиальна, но дает больше возможности в наблюдении, чем оригинал.

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

Интерпретатор Lisp на python в одну строчку? Слишком скучно.

Японский программист, инженер Google Shinichiro Hamaji написал его на sed. Sed — потоковый текстовый редактор, представляющий из себя простой язык программирования. В нем нет переменных, есть только примитив GOTO и выполняющие ветвление функциональные возможности; тем не менее он обладает полнотой по Тьюрингу.

Реализация занимает всего 600 строчек.

Выглядит это примерно так:
Читать полностью »

Читая главу «Двоичные деревья» из книги Джона Монгана Programming Interviews Exposed я задумался о том, как чаще всего рекурсию объясняют начинающим программистам: через сортировку, обход двоичного дерева, построение последовательности Фибоначчи и т.д. Неужели нельзя найти пример поинтереснее? Из закоулков сознания вырвался Лисп, который по своей природе неотделим от понятия рекурсии. Более того, небольшой интерпретатор Лиспа — отличный пример для исследования рекурсии.

Каким же будет минимальный интерпретатор Лиспа, написанный на Питоне? К моему удивлению, решение уложилось в семь строк! Свою роль в этом сыграла как выразительность Питона, так и красота и незамысловатость Лиспа.
Читать полностью »

13 лет назад английский подросток Адам Батчер (Adam Butcher) пришёл домой с премьеры «Властелина колец» и твёрдо решил, что должен сделать игру, в которой реализует всё то, чего не хватает во всех остальных глупых играх. Там должны быть приключения и головоломки, настоящий сюжет и борьба со злом.

Парню было 14 лет, он как раз освоил популярную программу Multimedia Fusion — и в тот же день взялся за дело, нарисовал главного персонажа Тобиаса и объект № 1 — меч.

Разработчик потратил 13 лет, чтобы закончить игру
Читать полностью »

Сегодня мы рассмотрим одну из главных фич языка D, ради которой он и создавался — это продвинутое программирование на этапе компиляции. Некоторые могут припомнить как на C++ высчитывается факториал или, что посложнее, реализацию игры «Жизнь» и испугаться. Не стоит, шаблоны в D на порядок проще и мощнее аналога из C++, но все равно они требуют особого подхода в размышлениях, поэтому для акклиматизации сложность материала будет нарастать постепенно.

Читать полностью »

Мифы о программистах: равнодушие к стриптизёршам, пельмени и управляемый хаос

Не секрет, что любая профессия обрастает неким количеством мифов, которые кажутся убедительными для тех, кто далёк от темы. В IT одной из самых мифологизированных стала профессия программиста. Мы собрали все известные нам мифы о программистах и проверили их на правдивость. Для этого провели опрос среди технических специалистов нашей компании (78% из которых программисты) о том, какого стиля жизни они придерживаются.
Читать полностью »

Как программисты ищут отличия

Часто за собой замечаю, что при виде какой-нибудь программы, игры или сайта у меня возникают странные мысли. И мысли эти меня пугают. А думаю я всякий раз о том, как эту программу/сайт/игру можно подхачить, взломать, обойти защиту, автоматизировать, расширить функциональность. Наверное, профессиональная деформация дает о себе знать. Или это подсознательное желание использовать накопленные знания, не находящие применения на работе. Как правило, эти желания остаются на уровне мыслей, но бывают исключения. Об одном таком случае я и расскажу вам сегодня…

Читать полностью »

Сотрудник Microsoft Алекс Горишек (биолог по образованию) выложил на Vimeo любопытное видео, в котором он демонстрирует работу основных логических вентилей компьютера (NOT, AND, OR, XOR, NAND и т.д.) с помощью системы тросиков и противовесов. В качестве стенда для своей демонстрации он использовал шахматную доску. Слева расположены входы вентилей, справа — выход. Получилось весьма наглядно, такой стенд не помешал бы в школе на уроках информатики:

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js