Pull to refresh
4
0

Пользователь

Send message

Стивен Вольфрам: кажется, мы близки к пониманию фундаментальной теории физики, и она прекрасна

Reading time70 min
Views390K
В продолжение моего поста про вычислимую Вселенную я хочу представить вам свой перевод статьи Стивена Вольфрама, созданной в рамках его проекта The Wolfram Physics Project.


Неожиданное открытие


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

ThinkFun или как появилась компания, которая выпускает «настолки» и головоломки для будущих программистов

Reading time4 min
Views3.6K

4 февраля где то между 16-00 и 16-15 1985 года в подвале дома супругов Билла Ричи и Андреа Бартелло в Вирджинии родилась идея создать компанию, которая должна была «воплотить идеи самых безумных математиков, инженеров и изобретателей в простые игрушки, которые оценят мальчики и девочки во всем мире».

Читать далее

Антипаттерн “константа размера массива”

Reading time3 min
Views11K
Перевод статьи подготовлен в преддверии старта курса «C++ Developer. Professional».




Хочу обратить ваше внимание на антипаттерн, который я часто встречаю в коде студентов на Code Review StackExchange и даже в довольно большом количестве учебных материалов (!) других людей. У них имеется массив, скажем, из 5 элементов; а затем, поскольку магические числа — это плохо, они вводят именованную константу для обозначения количества элементов «5».

void example()
{
    constexpr int myArraySize = 5;
    int myArray[myArraySize] = {2, 7, 1, 8, 2};
    ...


Но решение это так себе! В приведенном выше коде число пять повторяется: сначала в значении myArraySize = 5, а затем еще раз, когда вы фактически присваиваете элементы myArray. Приведенный выше код столь же ужасен с точки зрения обслуживания, как:

constexpr int messageLength = 45;
const char message[messageLength] =
    "Invalid input. Please enter a valid number.\n";


— который, конечно, никто из нас никогда не напишет.
Читать дальше →

Опционы: пут-колл парити, броуновское движение. Ликбез для гика, ч. 7

Reading time11 min
Views15K
Это вторая часть рассказа про опционы, где мы разберемся с пут-колл парити, условием безарбитражности рынка, познакомимся с идеями хеджирования и репликации и поговорим про то, что такое броуновское движение и как оно связано с моделированием поведения курса финансового актива во времени.

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


Читать дальше →

Код Рида-Соломона

Reading time17 min
Views36K

Важной задачей кодологии при обработке информационных потоков кодированных сообщений в каналах систем связи и компьютерных является разделение потоков и селектирование их по заданным признакам. Выделенный поток расчленяется на отдельные сообщения и для каждого из них выполняется углубленный анализ с целью установления кода и его характеристик с последующим декодированием и доступом к семантике сообщения.

Так, например, для определенного Рида-Соломона кода (РС-кода) необходимо установить:

  • длину n кодового слова (блока);
  • количество k информационных и N-k проверочных символов;
  • неприводимый многочлен р(х), задающий конечное поле GF(2r);
  • примитивный элемент α конечного поля;
  • порождающий многочлен g(x);
  • параметр j кода;
  • используемое перемежение;
  • последовательность передачи кодовых слов или символов в канал и еще некоторые другие.

Здесь в работе рассматривается несколько другая частная задача — моделирование собственно РС-кода, являющаяся центральной основной частью названной выше задачи анализа кода.
Читать дальше →

Shodan — темный близнец Google

Reading time7 min
Views73K

Источник
S in IoT stands for Security
Про Shodan уже не раз писали, в том числе и здесь. Я хочу предложить еще раз пробежаться по возможностям этого замечательного инструмента и принципам его работы. Сразу хочу оговориться, ситуация с этим поисковиком вполне классическая для исследователей в области информационной безопасности — инструмент может использоваться как с благими намерениями, так и сильно за чертой закона.

Disclamer:
Использование самого поисковика не является чем-то наказуемым. Успешный вход в незакрытую панель управления узла нефтяного терминала где-то в Сингапуре и эксперименты с открыванием заслонок — уже наказуемы. Могут прийти и постучаться недружелюбные люди. Поэтому будьте благоразумны и уважайте чужое пространство. Мы против применения Shodan для чего-то кроме исследовательских целей или анализа собственных систем.

Предлагаю еще раз пройтись по возможностям этого поисковика, особенностям его синтаксиса и попробовать найти что-то интересное. И давайте не будет печатать «Войну и Мир» на чужих сетевых принтерах.

Как мы воспринимаем цвет. Занимательные факты. Просто об очень сложном

Reading time11 min
Views60K
image

Фото сетчатки в разрезе с электронного микроскопа.

Дорогие читатели, в этой статье о цвете я не буду приводить аналогии с цифровым фотоаппаратом и фотошопом для «лучшего» понимания физиологии зрения, как не делал этого и в прошлой статье «О разрешении нашего зрения». Такой приём, при кажущемся удобстве, только усложнит картину мира и запутает вас. Буду вести рассказ последовательно и в меру сложно.

Некоторые спорные размышления над работой Г. Фреге «Смысл и денотат»

Reading time35 min
Views8.2K
Термины «значение» (meaning) и «выражать» не были введены в качестве основных терминов семиотики в связи с тем, что они настолько многозначны и используются настолько по-разному, что лучше было бы вообще не использовать их в качестве основных терминов при обсуждении семиотических проблем. Но при желании их, разумеется, можно ввести, опираясь на более фундаментальные семиотические термины. Так, можно было бы сказать, что значение знака – это его значение-сигнификация и интерпретанта одновременно, но ни одно из них в отдельности.

Моррис Ч.У. «Значение и означивание»

В этом небольшом эссе я хочу поделиться с читателем своими размышлениями, возникшими при прочтении работы Г. Фреге «Смысл и денотат» [1].


Слабонервных прошу не читать статью (да к тому же написанную 9 лет назад)!

Читать дальше →

Topleaked для анализа утечек памяти

Reading time8 min
Views3.1K


Что делает большинство программистов, когда узнают, что в их программе течёт память? Ничего, пусть пользователь покупает больше оперативы. Посмею предположить, что берут надёжный проверенный временем инструмент, такой как valgrind или libasan, запускают и смотрят отчёт. Там обычно написано, что объекты созданные на такой-то строчке программы такого-то файла не были освобождены. А почему? Вот этого нигде не написано.


Данный пост посвящён инструменту поиска утечек topleaked, идее статистического анализа, лежащего в его основе, и методам применения этого анализа.

Читать дальше →

После 220 лет поисков ученые наконец-то нашли глобальные волны Лапласа

Reading time5 min
Views12K
Еще в XVIII веке великий французский физик предсказал существование “симфонии” из атмосферных волн, охватывающей всю планету. И вот, 220 лет спустя, ученые наконец-то сумели ее услышать.

image

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

Но это не испугало французского ученого Пьер-Симона маркиза де Лапласа, который в 18 веке сумел предсказать одну простую, но важную особенность поведения атмосферы Земли. Пусть Лаплас ни разу за свою жизнь не видел глобальной карты погоды, он разработал теорию, которая предсказывала, что по нашей планете постоянно несутся волны с перепадами давления.

“До конца 20го века моделирование атмосферы проводилось карандашом на бумаге и было довольно грубым, но Лапласу это удалось, — рассказывает Дэвид Рэндалл (David Randall), ученый-специалист в области наук об атмосфере из Университета штата Колорадо. — Это невероятно.”

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

И вот этот квест подошел к концу. В новом наборе метеорологических данных современные ученые обнаружили то, что не заметили миллионы барометров: “симфонию” из волн, которые окутывают всю Землю лоскутным одеялом из зон со слабым и сильным давлением.

Вот такое вот прекрасное подтверждение старой теории. Но давайте обо все по порядку.

Струны планеты


image

Лаплас в мундире канцлера Сената. Фрагмент портрет кисти Жана-Батиста Герена, 1838

Всё началось с того, что Лаплас заинтересовался влиянием притяжения Луны на атмосферу Земли. Он решил проанализировать, какие типы волн рождаются в результате этого взаимодействия.
Читать дальше →

Ты еще не используешь tmux на полную! (Наверное)

Reading time4 min
Views39K
Привет, Хабр! Представляю вашему вниманию перевод статьи "(たぶん)君はまだtmuxの真の力を引き出せていない".

Содержание


  • Что такое tmux
  • Запуск и начало новой сессии
  • Открытие нового окна
  • Переходы между окнами
  • Разделение окон и создание панелей
  • Передвижение между панелями
  • Передвижение между сессиями
  • [Практическое использование] Переадресация отображаемого содержания в tmux
  • [Практическое использование] Отображение названия ветки Git в информационном поле
  • [Практическое использование] Отображение пути текущей операции
  • [Практическое использование] Вызов сниппета
  • Ссылка на настройки .tmux.conf
  • Совместимость версий tmux
Читать дальше →

Алан Тьюринг, отец современного компьютера

Reading time127 min
Views60K

Вступление


Каждый, кто умеет пользоваться компьютером, знает, что для выполнения какой-либо операции на нем необходимо открыть соответствующую программу, которая хранится в его памяти. Однако жизнь не всегда была такой простой, как сейчас. Первые большие электронные цифровые компьютеры, британский «Колосс» (1944 год) и американский ENIAC (1945 год), не умели хранить программы в памяти. Чтобы настроить эти компьютеры на новую задачу, необходимо было перекоммутировать их, то есть вручную переподключить кабели и переустановить переключатели. Основной принцип работы современного компьютера, подразумевающий управление машиной с помощью программы, которая хранится в ее памяти и представляет собой закодированные инструкции, был сформулирован Аланом Тьюрингом.
Читать дальше →

Обнажённая электроника — бесплатные фото без СМС и регистрации

Reading time3 min
Views5.9K


Привет, Интернет. В процессе работы над проектом Nude Electronics Art я сделал достаточно качественные фотографии электронных плат и решил поделиться ими со всеми. Вы можете скачать их бесплатно на сайте Pixabay, в том числе для коммерческих целей. Коллекция будет потихоньку пополняться, в том числе и видеороликами.

В статье я немного расскажу про свой проект Nude Electronics, но для начала рекомендую
посмотреть видео с работами. Под катом много фотографий.
Читать дальше →

Российские учёные создают устройство, которое позволит видеть кожей

Reading time2 min
Views2.6K


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

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

STL, allocator, его разделяемая память и её особенности

Reading time11 min
Views13K

Разделяемая память — самый быстрый способ обмена данными между процессами. Но в отличие от потоковых механизмов (трубы, сокеты всех мастей, файловые очереди ...), здесь у программиста полная свобода действий, в результате пишут кто во что горазд.

Так и автор однажды задался мыслью, а что если … если произойдёт вырождение адресов сегментов разделяемой памяти в разных процессах. Вообще-то именно это происходит, когда процесс с разделяемой памятью делает fork, а как насчет разных процессов? Кроме того, не во всех системах есть fork.

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

Отличный, кстати, пример. Не то, чтобы автор сильно любил STL, но это возможность продемонстрировать компактный и всем понятный тест на работоспособность предлагаемой методики. Методики, позволяющей (как видится) существенно упростить и ускорить межпроцессное взаимодействие. Вот работает ли она и чем придётся заплатить, будем разбираться далее.
Читать дальше →

Попытка определить язык манускрипта Войнича, Random Forest Classifier

Reading time9 min
Views20K
Пытаемся определить язык таинственной рукописи — манускрипта Войнича — простыми методами обработки естественных языков на Python.


Читать дальше →

Как мы турнир провели

Reading time20 min
Views1.9K
Потому что совместный труд, для моей пользы
— он объединяет.

Матроскин

Бросая в воду камешки, смотри на круги, ими образуемые; иначе такое бросание будет пустою забавою.

Козьма Прутков «Мысли и афоризмы».


Недавно, в прошлую пятницу, мы решили слегка разнообразить свои будни, проведя программистский турнир. Повестка определилась не сразу. Были мысли про аналитическую обработку данных, машинное обучение, но в конце концов, остановились на настольных играх. Нам хотелось ввести в мероприятие элемент соревнования, а что, как не игры, позволяет легко это сделать?
Читать дальше →

Корректирующие коды. Начало новой теории кодирования

Reading time16 min
Views35K

Проблемы информационной безопасности требуют изучения и решения ряда теоретических и практических задач при информационном взаимодействии абонентов систем. В нашей доктрине информационной безопасности формулируется триединая задача обеспечения целостности, конфиденциальности и доступности информации. Представляемые здесь статьи посвящаются рассмотрению конкретных вопросов ее решения в рамках разных государственных систем и подсистем. Ранее автором были рассмотрены в 5 статьях вопросы обеспечения конфиденциальности сообщений средствами государственных стандартов. Общая концепция системы кодирования также приводилась мной ранее.
Читать дальше →

Как работает доказательство Гёделя

Reading time8 min
Views76K

Его теоремы о неполноте разгромили поиск математической теории всего. Почти сто лет спустя мы всё ещё пытаемся осмыслить последствия этого.




В 1931 году австрийский логик Курт Гёдель провернул, вероятно, один из самых потрясающих интеллектуальных трюков в истории.

Математики той эпохи искали неколебимые основы математики: набор базовых фактов, аксиом, которые были бы непротиворечивыми и полными, играя роль строительных блоков всех математических истин.

Однако шокирующие теоремы Гёделя о неполноте, опубликованные им всего лишь в 25-летнем возрасте, разбили эту мечту. Он доказал, что любой набор аксиом, который вы можете предложить на роль основы математики, неизбежно будет неполным. Всегда найдутся истинные утверждения, касающиеся чисел, которые невозможно будет доказать при помощи этих аксиом. Он также показал, что ни один набор аксиом нельзя использовать для доказательства их собственной непротиворечивости.
Читать дальше →

В одной лодке с «ублюдком»: 11 продвинутых советов по использованию Git

Reading time11 min
Views52K

*"ублюдок" — вольный перевод слова "git" — "an unpleasant or contemptible person", "неприятный или презренный человек".



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


Давайте посмотрим, что можно использовать, чтобы улучшить себе жизнь. Статья предполагает, что читатель умеет пользоваться основными возможностями git и понимает что делает, когда, скажем, вводит в консоль git rebase --merge --autostash.

Читать дальше →

Information

Rating
7,242-nd
Registered
Activity