Рубрика «Читальный зал» - 194

«Я понял, что готов умереть, как только закончу книгу.»

image

Я все еще работаю над «Искусством программирования», но я нашел время для работы над двумя крупными проектами. Над одним я работал в конце 80-х, а над другим в начале 90-х. Это были монографии.

Первый проект назывался «Аксиомы и оболочки», я изучал интересные проблемы в геометрии — выпуклой геометрии — и я продолжал работать над этим, пока я был в Сингапуре, выпуская в печать «3:16». Это была небольшая книга, около 100 страниц.

Затем я начал изучать случайные графы — удивительный феномен, когда происходит нечто вроде Большого Взрыва: начинаете с точек, которые ничем не соединены, затем выбираете 2 случайные точки и соединяете их, и так далее; как только вы перейдете количество соединений, около половины точек, неожиданно почти все точки всегда оказываются соединенными. Это называется «гигантской компонентой».
Читать полностью »

Свобода 0: всякий имеет право запускать программу как угодно и в любых целях.
Свобода 1: всякий имеет право изучать, как работает программа и адаптировать её под свои нужды.
Свобода 2: всякий имеет право без ограничений распространять копии программы.
Свобода 3: всякий имеет право улучшать программу и делать эти улучшения общедоступными.

2096 год… Мир на пороге 22-го века. Свободное программное обеспечение стало практически повсеместным. Усилиями активистов проекта GNU удалось пролоббировать закон о программном обеспечении в большинстве государств. Этот закон запрещает разрабатывать с целью распространения и распространять программное обеспечение под так называемыми «несвободными» лицензиями. Для определения того, является ли данная лицензия свободной или не свободной, был создан специальный комитет (Комитет свободного ПО) с отделениями в разных странах и главным офисом в США. Именно в США в далёком 1983 году Ричард Столлман открыто заявил о необходимости разрабатывать свободное ПО, об открытии проекта GNU. Историю проекта GNU теперь проходят во всех университетах на всех специальностях, хоть как-то связанных с программированием.
Читать полностью »

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

Генератор случайных чисел без программирования и даже компьютера: чем удивить юного программиста? - 1

При нажатии на кнопку, на индикаторе высвечивается случайное число. В чем же тут случайность, откуда она берется? Сразу раскрою секрет. Цифры генерируются по порядку: 0, потом 1, 2, и так далее. Хитрость вот в чем: очень высокая частота импульсов. Они выдаются так быстро, что цифры сливаются в одну на индикаторе. И совершенно невозможно угадать цифру!

Далее вы прочтете о том, как устроен такой генератор, и как собрать его самостоятельно.
Читать полностью »

Во первых строках моего текстоизлияния хочу сказать следующее: Понаписано об этом уже много, напишу и я свое виденье. Стандартные интерфейсы по передаче информации это замечательно, но для моих нужд они не достаточно обеспечивают всеудовлетваряющую (ну или почти) передачу данных. Сделаю попытку внести некоторые дополнения, дабы привести это к тому состоянию которое меня устраивает.
Имеется 2 или более устройств на достаточно большом (1-100 метров) расстоянии, между которыми надо передавать данные. Рассмотрев некоторые интерфейсы (rs232/422/485, I2C, Ethernet) пришел к выводу — что они либо не гарантируют однозначную передачу данных, много проводов тоже мне не понравилось, не дают ответ что информация принята. За основу решил взять интерфейс RS485 — из его плюсов он может «далеко идти», 2 провода, можно одновременно подключить кучу приборов, прост, (UART) есть почти на любом контроллере.
В моем случае для меня подходит классическая схема 1 ведущий остальные ведомые. Алгоритм обмена сообщениями такой: передача данных происходит циклами обмена, один цикл обмена состоит из сообщения которое передается от ведущего к ведомому, в ответ ведущий принимает сообщение от ведомого, все остальные молчат. На этой же основе реализовать запрос на получение данных от ведомого устройства.

image
Один цикл обмена.
Читать полностью »

Михаил Грачев: «Информация — это сила в автогонках» - 1

Если вы увлекаетесь автогонками, то наверное слышали о TCR International Series. И если вы знаете о TCR International Series, то наверняка слышали и о шведской команде WestCoast Racing. А если вы знаете о WestCoast Racing, то вам знакомо имя гонщика Михаила Грачева. И если вы слышали о Михаиле Грачеве, то понимаете, что это один из лучших гонщиков серии — в этом сезоне он уже одержал четыре победы.
Читать полностью »

Я вырос в типовом 9-этажном многоквартирном доме, построенном в советские годы. И весь наш микрорайон состоял либо из таких домов, либо из «хрущевок». Большинство людей моего поколения (80-90-го года рождения) так или иначе тоже выросло в таких серых и однотипных «коробках».

Не скажу, что в то время меня это как-то волновало. Все изменилось, когда я впервые выехал за границу.

Дизайн российских городов, где он? - 1
Читать полностью »

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

В поисках предела. 6 мифов эффективности, которые я развеял, работая по 14 часов в день на протяжении месяца - 1

Мне всегда нравилась идея — работай меньше, делай больше. Но в моей жизни было время, когда я действовал по-другому. Несколько видов деятельности так сильно интересовали меня, что я никак не мог определиться на чем сосредоточиться. Логичнее было бы использовать правило 20% и отсечь все остальное, но я этого делать не стал и кое-что понял.
Читать полностью »

image Как работает жизнь? Как природа знает, сколько зебр и львов должно жить в саванне или сколько рыб должно плавать в океане? Откуда наш организм знает, сколько эритроцитов должно быть в крови? Шон Кэрролл — американский биолог, ведущий специалист в области эво-дево — рассказывает нам невероятно интересную историю открытий. Сокровенные тайны природы — законы, которые управляют количеством клеток в наших телах, животных и растений в дикой природе. Самое удивительное в этих правилах то, что они похожи и подчиняются одной логике — логике жизни. Кэрролл рассказывает о том, как знания законов функционирования человеческого тела стимулировали появление лекарств и подводит нас к мысли, что настало время использовать законы «джунглей», чтобы исцелить нашу больную планету.Смелый и вдохновляющий труд одного из самых знаменитых биологов и одаренных популяризаторов науки рассказывает про законы жизни во всех формах, проявлениях и масштабах. Прочитайте эту книгу, и ваш взгляд на мир изменится.
Читать полностью »

imageНовейшая форма денег — сверхсовременные криптовалюты на базе блокчейн — очень похожи на самые первые и древние формы денег.

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

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


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