
Данная статья по большей части является кратким изложением исследования NASA MTAS (Mars Transportation Assessment Study, март 2023). Текст содержит интересные факты о трудностях полета к Красной планете.
JavaScript-разработчик
Данная статья по большей части является кратким изложением исследования NASA MTAS (Mars Transportation Assessment Study, март 2023). Текст содержит интересные факты о трудностях полета к Красной планете.
«Упрощённые системы кодирования», которые затем стали называть привычным нам термином «языки программирования», появились очень давно. Одним из первых языков, которые действительно упростили работу операторов вычислительных машин, стал язык, разработанный Аликом Гленни в 1952 году. О нём сегодня и поговорим.
Что должен рисовать художник? Чувство. Вечность. Шизофрению. Художественное искусство на заре цивилизации прожевало и выплюнуло попытки отражать реальность. Однако, когда художник садится создавать анимационную картину, то становится заложником геометрии. Искра, буря, безумие - должны состоять из кубов, точек и орезков. Дождь, пыль и блики - узлы математических блоков. Выйти за пределы геометрии можно совместив двухмерную и трехмерную графику в одном кадре. Сейчас это золотой стандарт анимации. А вот в оригами выйти за рамки геометрии невозможно. Парадоксальный сюжет необходимо воплотить своими руками в углах и биссектрисах универсального рабочего тела - квадрата. Думаю, что именно поэтому художники в технике оригами - представители конструктивного мышления - математики, физики, преподаватели технических вузов.
Привет, Хабр! Сегодня поговорим о колонизации Марса, точнее, о подготовке к развитию самодостаточной колонии на Красной планете. Один из основных вопросов, которые нужно для этого решить, — создание экосистемы, причём замкнутой, которая позволяла бы более-менее комфортно существовать всем — как самим колонистам, так и «кирпичикам» этой экосистемы.
Чисто в теории здесь нет ничего невозможного. Впервые человек создал замкнутую экосистему, хотя и очень маленькую, в 1829 году. Это был врач из Лондона, который закинул несколько семян травы и спор папоротника в бутылку, предварительно засыпав в неё увлажнённую почву. Бутылку врач запечатал, но с жизнью всё было хорошо — растения взошли и продолжительное время нормально существовали, используя в качестве источника энергии солнечный свет. Теперь пришло время создать примерно такую же бутылку, только большего размера и с большим количеством участников. Но нужно всё это не на Земле, а на других планетах — например, Марсе, который тот же Маск собирается колонизировать в ближайшие пару десятилетий. Как это сделать?
Мы так привыкли к типам, что редко задаёмся вопросом, что же они такое на самом деле? А главное - почему возникла необходимость в их использовании? Этот поверхностный обзор сделан для того, чтобы продемонстрировать, как типы и другие связанные абстракции являются следствием из обобщения условий различных задач.
Добрый день, решил написать статью про изготовление простого демонстрационного комплекта для изучения СВЧ радиоволн из максимально доступных компонентов, при этом не ставя под угрозу здоровье любопытствующих. Когда я учился в школе, ходил заниматься в радиотехнический кружок, и на уроках физики все ждал - когда можно будет потрогать руками школьный СВЧ передатчик и приемник, который был представлен в учебнике физики.
Привет, Хабр! Здесь уже публиковалась новость о том, что Microsoft в ближайшее время собирается удалить WordPad из своей операционной системы. Этот текстовый редактор очень ограничен в функциональности по сравнению с практически любой версией Word из пакета Microsoft Office, проигрывает он и подавляющему большинству других современных и не очень редакторов текстовых документов. Почему же многие пользователи ОС Windows расстраиваются из-за решения Microsoft, согласно которому WordPad вскоре уберут?
Некоторые оптимальные алгоритмы, оказывается, можно вывести из неоптимальных, пользуясь эквивалентными преобразованиями алгоритма. Бёрд и Меертенс разработали формализм, который устанавливает свойства функций высшего порядка map
, fold
, scan
, позволяющие преобразовывать алгоритмы в эквивалентные. (См. также на Вики). Ниже представлен вольный перевод статьи Бёрда.
Рассмотрим задачу поиска максимальной суммы сегмента массива. Эту задачу можно переформулировать в виде математически точного ответа:
Для всех сегментов, которые можно получить из массива, необходимо посчитать сумму чисел, а затем среди всех таких сумм найти максимальную.
Привет всем.
В данной статье мы немного проанализируем код Windows XP, a также соберем калькулятор c использованием GCC x64 в среде Windows 10. Будут показаны ошибки, с которыми я столкнулся в процессе сборки и подробно расписаны способы их решения. В конце будет продемонстрирован рабочий билд приложения calc.exe.
Всем приятного прочтения!
С тем как работает фотоаппарат мы знакомимся еще со школьной программы. Однако привычное нам из школьного курса сведение объектива к "тонкой линзе" на самом деле не отвечает на массу практических вопросов. Например как удается создавать объективы с ортографической проекцией применяемые в системах технического зрения?
Да-да, такие тоже бывают не только в компьютерной графике, но и в фотографии: попробуйте-ка это объяснить оперируя исключительно в терминах "тонкой линзы". Размер изображения предмета в таких системах (почти) не зависит от того на каком расстоянии от объектива они находятся и это весьма удобно для измерения размеров предмета. В этой статье мы поговорим о том как этого удается добиться, как работает автофокус и пленоптические камеры и о многих других интересных вещах
DreamBerd - идеальный язык программирования. Вот его фичи!
Когда вы закончите знакомиться со всеми фичами, ознакомьтесь с примерами.
Восклицательные знаки!
Будьте смелее! Заканчивайте каждое утверждение восклицательным знаком!
print("Hello world")!
Если вы чувствуете себя особенно смелым, вы можете использовать еще больше!!!
print("Hello world")!!!
Если вы не уверены, ничего страшного. Вместо этого вы можете поставить вопросительный знак в конце строки. Он выводит для вас отладочную информацию об этой строке в консоль.
print("Hello world")?
Возможно, вам интересно, что Dreambird использует для оператора "не", который в большинстве других языков является восклицательным знаком. Это просто - вместо оператора 'не' используется точка с запятой.
if (;false) {
print("Hello world")!
}
Когда-то я хотел сделать контест по парсингу для Codeforces. Придумал задания двух типов:
1. Дается неформальное описание языка, по которому нужно создать грамматику (например, "язык с правильными скобочными последовательностями")
2. Даны примеры строк в языке, по которым нужно восстановить грамматику
У обоих типов заданий есть свои проблемы, так что контест я не сделал.
В итоге я сделал игру программу, в которой можно решать задания второго типа, при этом проверять строки на принадлежность угадываемому языку.
Отдельный муравей никаким особым интеллектом не блещет, обычный биоробот. Но, муравейник оказывается способным на виды деятельности, которые мы считали только нашей прерогативой, определяемой сознательной деятельностью. За 100 миллионов лет до того, как появились Сапиенсы, муравьи освоили животноводство (наверное, правильнее сказать, тлееводство) и сельское хозяйство, придумали войны за ресурсы и рабовладение, кастовую систему и наркоманию. Мы подозреваем, что должно существовать нечто, управляющее миллионами муравьев и организовывающее их совместную деятельность, и это нечто мы называем коллективным разумом.
То, что коллективный разум существует можно легко убедиться, посмотрев в зеркало. Наш мозг, являющийся коллективом нейронов, обладает намного продвинутым разумом чем сами клетки. И есть подозрение, что тот же муравейник может обладать чем-то подобным. Но как сформулировать данное понятие не понятно.
Проблема, как всегда, в размытых определениях. У нас нет четкого представления о том, что такое разум, а что уж говорить о понятии коллективный разум. Можно заменить понятие разума понятием интеллекта, которое теоретически можно измерять. Но как применить тест IQ к муравейнику (тем более что спорно даже насколько он адекватно описывает интеллект Сапиенсов)? Как всегда, поможет нам кибернетика.
Определим интеллект как способность выстраивать логические цепочки, те самые if () then (). Чем больше строчек кода нужно, чтобы описать способность организма взаимодействовать с окружающей реальностью, тем выше у него интеллект. Например, возьмем бактерию. Если ее рецепторов касается пища, ее нужно съесть. Код соответственно будет:
В августе 2023 года автор побывал в Крымской астрофизической обсерватории и взял интервью у Сергея Назарова. Он занимается модернизацией «Синтеза» — первого и последнего советского телескопа, использующего технологию сегментированной оптики.
До 2018 года этот телескоп стоял на консервации. Сергей получил карт-бланш на его реконструкцию. Вот уже пять лет работы ведутся на чистом энтузиазме и финансировании из личных средств.
template <class ForwardIt, class T, class Compare>
constexpr ForwardIt sb_lower_bound(
ForwardIt first, ForwardIt last, const T& value, Compare comp) {
auto length = last - first;
while (length > 0) {
auto rem = length % 2;
length /= 2;
if (comp(first[length], value)) {
first += length + rem;
}
}
return first;
}
std::lower_bound
, но вдвое быстрее и короче. «Без ветвления», потому что if
компилируется в команду условной передачи, а не в ветвление/условный переход. Ближе к концу статьи мы изучим опции компилятора и даже более быстрые версии полностью без ветвления. Для понимания этой статьи не нужны особые знания в C++. Достаточно понимать, что итераторы (first
и last
) по сути являются указателями на элементы массива, хотя могут указывать на один элемент дальше, чем последний элемент массива. Можете не обращать внимания на template
, class
, constexpr
и &
. Вот если бы существовал быстрый и чистый язык, работающий на уровне железа...1 2Термин PWA появился еще в 2015 году, но из-за браузерных разногласий долгое время был лишь красивой идеей. В 2023 году возникла надежда, что на iOS появятся альтернативные браузерные движки, а это может привести к тому, что для создания почти полноценных аналогов нативных приложений будет достаточно знаний фронтенда.
Весной на HolyJS Никита Дубко показал, что умеют современные PWA: как изменился их внешний вид, насколько они интегрированы в операционные системы и в каких случаях они решают пользовательские задачи не хуже нативных приложений.
Делимся расшифровкой доклада и видеозаписью. Повествование будет от лица Никиты.
В этом посте попробуем обсудить, почему в третьем десятилетии XXI века летающие автомобили не стали не то что мейнстримом, но даже таким элитарным транспортом, как круизные яхты. Этот сюжет я давно откладывал и в какой-то момент даже стёр до основания, а вместо него у меня в блоге появилась статья об орнитоптерах. Безусловно, личный транспорт, который можно называть «летающим автомобилем», уже существует в виде многочисленных прототипов. Эти транспортные средства относят к более широкому классу летательных аппаратов, который именуется в англоязычной литературе «VTOL» (Vertical Take-Off and Landing), а на русский язык переводится как «СВВП» (самолёт вертикального взлёта и посадки). Наиболее амбициозный проект последнего времени, призванный вывести летающие автомобили на рынок и, возможно, запустить в серийное производство, относится к 2017-2018 году. Тогда компания «Uber» запустила проект UberAIR, который должен был стать аналогом аэротакси — инновационным воздушным транспортом для мегаполисов. На Хабре об этом писал, в частности, уважаемый @marks. Тем не менее, проект был бесславно свёрнут по сумме причин. Не в последнюю очередь потому, насколько опасен этот транспорт и гипотетические ДТП в эшелонах городских воздушных трасс. Тем не менее, давайте рассмотрим, какие есть предпосылки к дальнейшей разработке летательных автомобилей, а также какие риски и недостатки пока не позволяют развивать такой транспорт.
В наше время весьма активно развиваются возобновляемые источники энергии, включая солнечные элементы, ветроэнергетику, геотермальную энергетику, энергию приливов волн и т. п. Но всё это — способы получить энергию. А вот с накоплением всё немного сложнее.
Так, те же литиевые аккумуляторы дорогие, достаточно «грязные», включая как производство, так и утилизацию. Да и жизненный цикл их не такой уж и большой. А ещё запасы лития на Земле вовсе не бесконечны. Так что учёные ищут новые способы хранения энергии, и, кажется, это им удаётся. Одна из относительно новых технологий — гравитационные аккумуляторы.