Как стать автором
Обновить
1
@iingvaarread⁠-⁠only

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

Отправить сообщение

Владивосток: далёкий, праворульный, но всё равно «нашенский»

Время на прочтение23 мин
Количество просмотров11K

Потрясающий город. Живой и зелёный. Сопки, острова и море вокруг просто ласкают взгляд, уставший от плоскости средней полосы. Гордо взмывают ввысь вантовые мосты. Чувствуется дыхание Азии. Совсем не таким я представлял наш рубежный город на Тихом океане и конец Транссиба. Но рельеф города, придающий ему столь неповторимый вид, и место расположения накладывают очень большие ограничения на градостроительную деятельность, развитие транспорта и систему водоснабжения. Во многом именно с ним связано превращение Владивостока в автомобильную столицу, бытовые неурядицы 1990-х гг. и значимость проведения саммита АТЭС в 2012 г. Но обо всём по порядку.
Читать дальше →
Всего голосов 72: ↑60 и ↓12+48
Комментарии49

МК-61: история, эмуляция, устройство

Время на прочтение21 мин
Количество просмотров39K

Расцвет эпохи программируемых калькуляторов в нашей стране пришёлся на середину 80-х годов. Потом на смену относительно сытым и благополучным временам пришла эпоха бандитского капитализма, когда стране стало не до выпуска своей высокотехнологичной продукции бытового назначения, вот уже сменились поколения, но ностальгия по тем временам, когда мы бессонными ночами пытались сократить код программы хотя бы на пару байтов, чтобы уместить задуманную функцию, выискивали всё новые и новые недокументированные возможности, придумывая способы, как их можно использовать на практике, сочиняли целые циклы рассказов в качестве фона для наших игровых программ, не даёт забыть свой МК-61 со 105 байтами программной памяти. Поэтому хочу написать заметку о том, что собой представляли и как работали эти самые программируемые калькуляторы. Даже если эта тема сегодня периодически и поднимается, то не настолько часто, чтобы приесться уважаемому читателю, так что надеюсь поведать что-то новое.

Читать дальше →
Всего голосов 74: ↑71 и ↓3+68
Комментарии158

Изобретение линзы Френеля: революция в маяках и спасение жизней до появления GPS

Время на прочтение10 мин
Количество просмотров14K

Сейчас, если вы потерялись в незнакомом городе или в лесу, вы быстро выйдете из ситуации при помощи GPS/Глонасс трекинга в том же смартфоне или другом гаджете. Конечно, если с покрытием или зарядкой всё нормально. Причём на суше у вас ещё попадаются ориентиры, которые упрощают жизнь.

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

Представьте: глухая ночь, море штормит, и корабль пытается найти путь в гавань. Ни радаров, ни трекинга нет, а единственный ориентир — это свет маяка. Чем он сильнее, тем больше шансов у моряков не погибнуть, налетев на рифы, и безопасно добраться до пункта назначения. Именно поэтому изобретение линзы Френеля спасло сотни, если не тысячи жизней моряков задолго до GPS. Да и сейчас они используются в маяках по всему миру: только в США их 75 штук! Давайте посмотрим на историю этого удивительного открытия.

Читать далее
Всего голосов 77: ↑76 и ↓1+75
Комментарии35

Изобретение неодимового магнита: как Масато Сагава и Джон Кроат изменили современный мир

Время на прочтение14 мин
Количество просмотров34K

Неодимовые магниты сейчас с отрывом самый распространённый тип постоянных магнитов, занимая порядка 95% всего мирового рынка. Правда, они не просто неодимовые — это сплав редкоземельного металла неодима, бора и железа (полная формула Nd2Fe14B).

Появление этой технологии в 80-х годах буквально перевернуло промышленность: начиная от приводов CD-проигрывателей или HDD накопителей, заканчивая серводвигателями, шаговыми двигателями и МРТ аппаратами. В ближайшие несколько лет ожидается, что объём продаж неодимовых магнитов перевалит за 20 млрд долларов в год, во многом за счёт массового перехода на электромобили.

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

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

Читать далее
Всего голосов 125: ↑125 и ↓0+125
Комментарии115

Игра «Жизнь» в одном твите

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров8.3K

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

В одно прекрасное воскресенье, потягивая пиво и размышляя о жизни, я вдруг подумал: а можно ли вместить JavaScript-реализацию игры «Жизнь» в один твит? И не смог устоять перед желанием попробовать свои силы. 

Читать далее
Всего голосов 20: ↑19 и ↓1+18
Комментарии11

Вселенной на самом деле может быть не 13,8, а 26,7 миллиарда лет

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров33K


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

Читать дальше →
Всего голосов 77: ↑71 и ↓6+65
Комментарии188

Вам нужно увеличить RAM и перейти на SSD…

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров26K
…если вы всё ещё не сделали это.


Задумывались ли вы, хватает ли вашему компьютеру, локальному или удалённому серверу оперативной памяти? Задумывались, но не знаете, как это определить? А накопители какого типа вы предпочитаете? Надеемся, данная статья поможет вам в этом разобраться.
Читать дальше →
Всего голосов 71: ↑43 и ↓28+15
Комментарии230

Ищем простые числа до триллиона за тридцать минут

Время на прочтение21 мин
Количество просмотров22K
image

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

Сегодня я хотел бы поделиться с вами различными вариантами реализации поиска простых чисел на языке C#, начиная с классических алгоритмов — решета Эратосфена, Сундарама и Аткина, и кончая различными оптимизациями (сегментация, факторизация). Особый упор я делал на простоту: самый быстрый из алгоритмов, который мне удалось получить, содержит 120 строк кода и ищет простые числа до триллиона меньше, чем за 30 минут, а до миллиарда — меньше, чем за секунду (это далеко от производительности лучших из существующих библиотек по поиску простых чисел, но эти библиотеки обычно содержат свыше 4000 строк кода).
В заключение мы применим самую быструю реализацию для поиска максимального расстояния между двумя соседними простыми числами до триллиона. Прежде чем заходить под кат, я предлагаю вам попытаться угадать ответ. Для сравнения, для простых чисел до 100 максимальное растояние равно 8 (между соседними простыми числами 89 и 97), а до тысячи — 20 (между 887 и 907).

Весь исходный код можно найти на гитхабе.
Читать дальше →
Всего голосов 37: ↑37 и ↓0+37
Комментарии14

Визуализация реальных масштабов проклятия размерности

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров6.2K

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

Если N — величина небольшая — взаимоотношения между точками будут именно такими, какими их можно представить на интуитивном уровне. Но иногда N достигает огромных значений. Это может произойти, например, когда множество признаков создают посредством прямого кодирования или чего‑то подобного. Для очень больших значений N наблюдения ведут себя так, как если бы они были бы представлены разреженными данными, или так, как если бы расстояния между ними были бы несколько больше, чем можно было бы ожидать.

Это — реальное явление. По мере роста N, при условии, что всё остальное не меняется, объём части N‑мерного пространства, содержащий наблюдения, тоже, в некотором смысле, увеличивается (или, как минимум, увеличивается количество степеней свободы). Увеличиваются и евклидовы расстояния между наблюдениями. Группа точек становится всё более разреженной структурой. Это — геометрическая база для такого понятия, как «проклятие размерности». Подобные изменения в данных влияют на поведение моделей и на приёмы работы, применяемые к наборам данных.

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

Читать далее
Всего голосов 32: ↑32 и ↓0+32
Комментарии5

Simba: Симуляция десятков тысяч частиц в потенциале Леннарда-Джонса на чистом Python с GPU-ускорением

Время на прочтение9 мин
Количество просмотров18K

Добрый день, уважаемые хабровчане.

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

Самостоятельно потыркать проект можно вот тут: https://github.com/r-aristov/simba-ps

В этой статье я кратко опишу суть проекта, пройдусь по прилагающимся к нему примерам и расскажу почему вообще начал работу над ним.

В глубины симуляции
Всего голосов 137: ↑137 и ↓0+137
Комментарии78

Технический долг захватил глобальную экономику

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров44K
Технический долг стал проблемой для всей экономики

Термином «технический долг» обычно называют сокращённые или субоптимальные подходы в процессе разработки ПО. Проявляется он в виде неудачно спроектированного кода, устаревших компонентов и отсутствия документации. В то время, как правильно написанные код и документация служат бессрочно, компоненты и используемые подходы – нет. Программное обеспечение и его составляющие со временем могут становиться техническим долгом. Расцвет индустрии ПО пришёлся на далёкие 80-е годы, поэтому то, что мы сегодня начинаем сталкиваться с полностью устаревшими концепциями, процессами и системами, является относительно новым явлением.
Читать дальше →
Всего голосов 97: ↑84 и ↓13+71
Комментарии327

Купи доску и мотор

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров17K

Уже больше года назад я прочитал статью https://habr.com/ru/companies/first/articles/662570/. Судя по комментариям она вызвала много разных эмоций, но лично меня эта статья вдохновила на создание для себя такой штуки. От себя лично я благодарю автора за эту статью.

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

Читать далее
Всего голосов 80: ↑78 и ↓2+76
Комментарии87

Гидрофойлы: лететь по белому свету — лететь куда-то вдаль…

Время на прочтение7 мин
Количество просмотров12K


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

Читать дальше →
Всего голосов 23: ↑18 и ↓5+13
Комментарии48

Анонимная сеть в 200 строк кода на Go

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров17K

Реализации анонимных сетей всегда стремятся быть как можно проще, доступнее для понимания, как на теоретическом, так и на программном уровнях. Такие условия становятся необходимыми вследствие одного из основных принципов построения безопасных программ — чем проще объяснить, тем легче доказать. Но к сожалению теория часто может расходиться с практикой, и то, что легко объяснить в теории, может быть проблематично объяснять на коде.

Вследствие этого, можно сказать just-for-fun, у меня появился вопрос: можно ли реализовать анонимную сеть настолько малую, чтобы её программный код смог понять даже начинающий программист за короткое время?

Читать далее
Всего голосов 21: ↑20 и ↓1+19
Комментарии11

Каково расстояние между «Будапештом» и «Бухарестом» или об отождествлении слов с помощью расстояния Левенштейна

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.1K

Каждый из нас из школы помнит определение Евклидова расстояния между двумя точками на плоскости. С помощью расстояния Евклида можно вычислить расстояние между двумя точками на карте, например, между вашим местоположением и станцией метро. Но для пешехода в Нью-Йорке расстояние между двумя точками в городе будет отличаться от расстояния Евклида между двумя точками из-за невозможности передвигаться иначе, как по проезжим улицам, пересекающимся под прямыми углами. Такое расстояние так и называется: "расстояние городских кварталов" или манхэттенское расстояние. При любом способе расстояние характеризует меру близости точек. В сегодняшней статье мы расскажем о способах вычисления расстояния между двумя словами.

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Комментарии13

Разделяй и властвуй. Повышение эффективности алгоритмов. Часть 1

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров10K

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

Но, что если нам надо перемножить два числа любой длины? Не LONG, не байт, не число от 1 до 10, а любые два числа, которое, имеют в общем случае длину n бит, а результат умножения может иметь длину 2n бит.

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

Давайте применим его к нашей задаче.

В двоичной системе все выглядит проще, чем то, чему нас учили в школе для десятичных чисел. Берем два числа x и y в двоичном представлении. Чтобы получить произведение, нам надо сложить несколько раз числа x сдвинутые влево на позиции всех ненулевых битов y.

Читать далее
Всего голосов 26: ↑25 и ↓1+24
Комментарии17

Unihiker: одноплатник с экраном за $75. Что это за девайс и какие у него возможности

Время на прочтение3 мин
Количество просмотров17K
image

Одноплатные ПК крайне редко поставляются с экранами. Обычно дисплей приходится докупать. Но теперь появился необычный девайс, который представляет собой нечто вроде карманного компьютера уже из коробки. Самый его дорогой компонент — дисплей, поэтому разработчики стремились удешевить систему, чтобы удержать стоимость на отметке в $79. Соответственно, каких-то рекордов производительности от него ждать не приходится. Но все же это неплохой девайс, который может пригодиться многим из нас. Давайте посмотрим, что он из себя представляет.
Читать дальше →
Всего голосов 53: ↑51 и ↓2+49
Комментарии20

Что делать, если человечество не сможет создать искуственный интеллект никогда?

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров9.4K

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

Сводится ли к конечному автомату человеческий интеллект? К сожалению, у человеческого интеллекта есть атрибут, природа которого современной науке неизвестна и который никогда не наблюдался у конечных автоматов, например у арифмометра. Этот атрибут - ощущение собственного "я", self-awareness. Конечно вы можете сделать в программе переменную "я_чувствую_собственное_я" и присвоить ей true, а потом утверждать, что вы симулируете собственное "я", но это жульничество, а не технология.

Я вовсе не пытаюсь нагонять мистику или агитировать за бога. Self-awareness наверняка такой же физический феномен, как какая-нибудь термоядерная реакция. Но скажем древние греки не знали природы термоядерной реакции. Наверное, они вели диалоги типа "если ты не веришь, что Солнце - просто большой костер из дров, то значит ты веришь в сказки про Зевса и других богов?"

Что же делать?
Всего голосов 33: ↑22 и ↓11+11
Комментарии126

Что сейчас происходит с климатом: 3 больших WTF

Время на прочтение6 мин
Количество просмотров42K

По состоянию на 10 июня 2023 года мировые данные показали удивительное совпадение ряда драматических климатических явлений: сочетание многолетнего нагревания океана, вызванного энергетическим дисбалансом Земли, нагревание Антарктиды из-за увеличения площади непокрытого льдом океана, сдвигов ветров и нагревания поверхности из-за Эль-Ниньо, отсутствия пыли в Сахаре и ограничения на содержание серы в судовом топливе 2020 года в совокупности вызвали беспрецедентный нагрев поверхности океана.

Читать далее
Всего голосов 116: ↑98 и ↓18+80
Комментарии1042

Как выглядит край Вселенной?

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров55K

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

Но в одном мы уверены точно: у Вселенной есть край. Только не в пространстве, а во времени. Поскольку горячий Большой взрыв произошёл в известное, конечное время в прошлом — 13,8 миллиарда лет назад, с неопределённостью менее 1% — существует «край» того, как далеко мы можем видеть. Даже при скорости света, предельной космической скорости, существует фундаментальный предел того, как далеко назад мы можем заглянуть. Чем дальше мы смотрим, тем дальше назад во времени мы заглядываем. И вот что мы видим, приближаясь к краю Вселенной.
Читать дальше →
Всего голосов 102: ↑99 и ↓3+96
Комментарии141
1
23 ...

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность