Pull to refresh
Дмитрий Нестер @Psionicread⁠-⁠only

User

Send message

Космическая гонка СССР и США

Reading time3 min
Views81K
Это перевод статьи John Glenn inspired the Soviets to push harder, которая позволяет посмотреть на космическую гонку глазами американцев.



Джон Гленн — первый американский астронавт, который 20 февраля 1962 года совершил орбитальный полет на космическом корабле «Friendship 7» (официальное название — «Mercury-Atlas 6»). Это было необходимо Америке, как ответ на полет Юрия Гагарина. Гленн моментально стал национальным героем, а космическая гонка между СССР и США, после полугодового затишья, получила новый толчок развития.
Читать дальше →

Я дойду

Reading time3 min
Views69K
— Да, милая, я тебя тоже люблю.
Пальцы автоматически нажимают хоткей отправки сообщения. Я тру уставшие глаза, в которые неизвестный злой волшебник насыпал песка. Уже почти сутки без сна, надо выделить себе 4 часа. Это — мой цикл. Пять, шесть, семь часов — для меня самоубийство, я встану уставшим, недовольным, а значит, неэффективным. Следующая цифра — восемь, но это слишком много. Так что только 4 часа сна.
Прогресс-бар, дергаясь, словно в конвульсиях, дополз до правой границы, уперся в нее и исчез.
Я привычно лезу в лог отправки сообщений. Отклонений, вроде, нет. Четыре слоя шифрования, для скольких… для где-то тридцати символов. Надо будет до конца недели закончить скрипт-анализатор, а то вручную просматривать… бред.
Читать дальше →

Старые ОС: IBM VM/370

Reading time19 min
Views41K
Здравствуйте, уважаемые хабарчане!
Я интересуюсь «древними» компьютерами и операционными системами. Несмотря на их древность, многие из них гораздо более продуманнее современных систем и лучше подходят в качестве примеров. Windows и Linux есть чему поучиться у многих устаревших ОС.
По-моему самые интересные из старых систем — мейнфреймы и поздние миникомпьютеры (супермини). В отличие от ранних миникомпьютеров, которые часто лепились на коленке конечного пользователя под его нужды, системы мейнфреймов и супермини с самого начала были предназначены для людей не имеющих ни полного представления о работе компьютера ни времени на разработку отдельной архитектуры для каждой задачи. При этом, в отличие от современных систем (4 гигабайта оперативки на набор этого поста), мейнфреймы и в особенности супермини были очень ограниченны в ресурсах и не как правило не разрастались.
В этом посте я опишу процесс установки операционной системы VM/370. VM/370 — операционная система IBM для компьютеров IBM System/370. Это многопользовательская ОС работающая по принципу гипервизора control program (CP): каждому пользователю предоставляется своя виртуальная машина, в которой он может запустить желаемую ОС, в частности сам гипервизор CP (немногие современные гипервизоры способны на такой трюк) и CMS — однопользовательскую ОС, бабушку MS-DOS. Прямой потомок VM — zVM до сих пор используется на мейнфреймах IBM System z. Подробнее о VM можно прочитать в Википедии.
Для тех кто хочет не красноглазить, а просто посмотреть конечный результат: есть готовые образы системы с подробными инструкциями (правда на английском). Остаток статьи можно не читать.
Мы не ищем легких путей!

Структура белка: введение для айтишников

Reading time17 min
Views158K
Приятно видеть, что хабравчане регулярно интересуется другими предметными областями – например, биологией (более конкретно – структурой и функцией биологических макромолекул). Однако некоторые посты (например, этот), вызывают у специалиста просто физическую боль из-за обилия совершенно диких фактологических ошибок. В этом посте мне хочется рассказать о структуре и функции белка. О том, что мы знаем и о том, чего не знаем, а так же об имеющихся в этой области вычислительных задачах, требующих решения и интересных IT-специалистам. Постараюсь рассказывать сжато и тезисно, чтобы информации было больше, а воды – меньше. Всех, интересующихся структурой белков, прошу под кат, там очень много букв.
Читать дальше →

Реакторы на быстрых нейтронах — вот надежда человечества!

Reading time7 min
Views212K
В предыдущих статьях — мы выяснили, что ни солнечная энергетика не сможет удовлетворить потребности человечества (из-за быстрого выхода из строя аккумуляторов и их стоимости), ни термоядерная (т.к. даже после достижения на экспериментальных реакторах положительного выхода энергии — остается фантастическое количество проблем на пути коммерческого использования). Что же остается?

Уже не первую сотню лет, не смотря на весь прогресс человечества, основной объем электроэнергии получается от банального сжигания угля (который до сих пор является источником энергии для 40.7% генерирующих мощностей в мире), газа (21.2%), нефтепродуктов (5.5%) и гидроэнергетики (еще 16.2%, в сумме все это — 83.5% по данным на 2008 год).

Остается — ядерная энергетика, с обычными реакторами на тепловых нейтронах (требующих редкий и дорогой U-235) и с реакторами на быстрых нейтронах (которые могут перерабатывать природный U-238 и торий в «замкнутом топливном цикле»).

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

Зачем исследовать космос? Письмо 1970 года монахине в Африку

Reading time10 min
Views60K
Эрнс Шталингер написал это письмо 6 мая 1970 года сестре Мэри Джаканд, монахине, которая работала среди голодающих детей города Кабве в африканской стране Замбии, в ответ на вопрос о значении освоения космоса. В то время доктор Шталингер был заместителем директора по науке в Центре Космических Полетов Маршалла, в Хэнтсвилле, штата Алабама. Тронутый искренностью и обеспокоенностью Мэри, он направил ей все свои искренние убеждения о ценности исследований космоса. Красноречивое заявление доктора актуально до сих пор, даже спустя четыре десятилетия. Родившись в Германии в 1913 году, доктор Шталингер получил Ph.D. по физике в университете Tuebingen 1936 году. Он был членом немецкой ракетной группы, в Peenemunde и приехал в Соединенные Штаты в 1946 работать на американскую армию в Форт Блисс, штат Техас. Он переехал в Хэнтсвилль в 1950 и продолжил работать для армейского Redstone Arsenal до тех пор пока не был создан центр космических полетов в 1960. Доктор Шталингер был неоднократно награжден и широко известен за свои исследования силовых установок. Он получил награду от министра обороны (Exceptional Civilian Service Award) за участие в запуске Эксплорера-1, первого американского космического спутника.

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

Вспомним 386SX и его возможности

Reading time9 min
Views32K
Несмотря на кажущуюся древность, данный компьютер можно использовать, например для обучения ассемблеру x86 и C, в качестве печатной машинки и для запуска старых досовских игр. На нём прекрасно работает операционная система Windows 3.1 в которой можно вполне работать со старым word и exel. В ней также запускается ранняя версия Delphi. Одной из приятных особенностей является возможность запуска MapleV, в которой можно производить символьные вычисления. Можно также установить Windows 95, но она работает достаточно медленно.
Этот компьютер можно также использовать в качестве Web сервера для отображения статических страниц и ftp сервера. Жалко только то что максимальный объём поддерживаемого жесткого диска (информация доступная утилитам для работы с жёстким диском, например fdisk) — всего 504Мб. Но их можно перехитрить, отформатировав диск на другом компьютере на максимально возможный для fat16 — 2Гб. Также можно создать ещё 3 primary раздела на 2Гб. Итого: 8Гб, максимально доступных в биосе. Ниже приведена более подробная информация. Кроме того, к нему можно подключить CDROM, который отлично читается как из Dosа, так и из Windows. Для этого в биосе надо указать, отсутствие диска slave IDE (диска D).
Рассмотрим данный аппарат более подробно:
Читать дальше →

Микрокомпьютер Module MB 77.07 — русский ответ Raspberry Pi

Reading time10 min
Views112K


Читая новости о запрете на поставку электронной компонентной базы из США для отдельных производителей в РФ, мы решили рассказать об одноплатном микрокомпьютере Module МВ 77.07, который был разработан в российском научно-техническом центре «Модуль» на базе одного из наиболее производительных российских процессоров архитектуры ARM. Также мы рассмотрим установку Linux-дистрибутива Debian на этот микрокомпьютер.
Читать дальше →

Apple не следит, а помогает пользователям, с помощью скрытых сервисов на мобильных устройствах

Reading time3 min
Views69K


Недавно Джонатан Здзиарски (Jonathan Zdziarski), на конференции Hackers On Planet Earth в Нью-Йорке, опубликовал доклад, в котором рассказал о нескольких скрытых, не документированных фоновых процессах, запущенных на всех iOS-устройствах. Эксперт предположил, что эти функции нужны Apple для того, чтобы организовывать слежку за пользователям при поступлении запросов от властей.
Джонатан Здзиарски, также известный как NerveGas, принимал активное участие в разработке джейлбрейков для первых моделей iPhone. Он автор нескольких книг по разработке приложений для iOS. Т.е. человек явно «в теме».

Удивительно, что Apple не проигнорировали этот доклад, а описали задачи каждого процесса. Для чего, по их мнению, служат эти сервисы.
Скандалы, интриги, расследования...

DDOS любого сайта с помощью Google Spreadsheet

Reading time3 min
Views254K
Google использует своего «паука» FeedFetcher для кэширования любого контента в Google Spreadsheet, вставленного через формулу =image(«link»).

Например, если в одну из клеток таблицы вставить формулу
=image("http://example.com/image.jpg")
Google отправит паука FeedFetcher скачать эту картинку и закэшировать для дальнейшего отображения в таблице.

Однако если добавлять случайный параметр к URL картинки, FeedFetcher будет скачивать её каждый раз заново. Скажем, для примера, на сайте жертвы есть PDF-файл размером в 10 МБ. Вставка подобного списка в таблицу приведет к тому, что паук Google скачает один и тот же файл 1000 раз!
=image("http://targetname/file.pdf?r=1")
=image("http://targetname/file.pdf?r=2")
=image("http://targetname/file.pdf?r=3")
=image("http://targetname/file.pdf?r=4")
...
=image("http://targetname/file.pdf?r=1000")

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

Атакующему даже необязательно иметь быстрый канал. Поскольку в формуле используется ссылка на PDF-файл (т.е. не на картинку, которую можно было бы отобразить в таблице), в ответ от сервера Google атакующий получает только N/A. Это позволяет довольно просто многократно усилить атаку [Аналог DNS и NTP Amplification – прим. переводчика], что представляет серьезную угрозу.



С использованием одного ноутбука с несколькими открытыми вкладками, просто копируя-вставляя списки ссылок на файлы по 10 МБ, паук Google может скачивать этот файл со скоростью более 700 Мбит/c. В моем случае, это продолжалось в течение 30-45 минут, до тех пор, пока я не вырубил сервер. Если я все правильно подсчитал, за 45 минут ушло примерно 240GB трафика.
Читать дальше →

Пространственно-временная обработка изображений на GPU

Reading time9 min
Views29K
Не так уж и давно стало популярным использовать видеокарты для вычислений. В один прекрасный день, несколько лет назад и я взглянул на новую, тогда, технологию CUDA. В руках была хорошая карточка по тем временам GTX8800, да и задачки для распараллеливания тоже были.
Кто работал с GPU, знает про объединение запросов, конфликт банков и как с этим бороться, а если не работал, то можно найти несколько полезных статей по основам программирования на CUDA[1]. Карта GTX8800, в некотором смысле, была хороша тем, что была одной из первых и поддерживала только первые версии CUDA, поэтому на ней было четко заметно, когда есть конфликты банков или запросы в глобальную память не объединяются, потому что время в этом случае увеличивалось в разы. Все это помогало лучше понять все правила работы с картой и писать нормальный код.
В новые модели добавляют все больше и больше функциональности, что облегчает и ускорят разработку. Появились атомарные операции, кеш, динамический параллелизм и т.д.
В посте я расскажу про пространственно-временную фильтрацию изображений и реализацию для compute capability = 1.0, и как можно ускорить получившийся результат за счет новых возможностей.
Временная фильтрация может пригодиться при наблюдении за спутниками или в прочих ситуациях фильтрации, когда требуется точное подавление фона.

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

Вы и ваша работа *

Reading time40 min
Views823K
Длинный материал. Время чтения – около 40 минут.

image

Доктор Ричард Хэмминг, профессор морской школы Монтерея в штате Калифорния и отставной учёный Bell Labs, прочёл 7 марта 1986 года очень интересную и стимулирующую лекцию «Вы и ваши исследования» переполненной аудитории примерно из 200 сотрудников и гостей Bellcore на семинаре в серии коллоквиумов в Bell Communications Research. Эта лекция описывает наблюдения Хэмминга в части вопроса «Почему так мало учёных делают значительный вклад в науку и так многие оказываются в долгосрочной перспективе забыты?». В течение своей более чем сорокалетней карьеры, тридцать лет которой прошли в Bell Laboratories, он сделал ряд прямых наблюдений, задавал учёным очень острые вопросы о том, что, как, откуда, почему они делали и что они делали, изучал жизни великих учёных и великие достижения, и вёл интроспекцию и изучал теории креативности. Эта лекция о том, что он узнал о свойствах отдельных учёных, их способностях, чертах, привычках работы, мироощущении и философии.
Читать дальше →

Паттерны ООП в примерах для iOS

Reading time48 min
Views150K

От переводчика


Искали тут двух русскоязычных разработчиков — на iOS и на C++ под Windows. Видел десятки выполненных тестов. Разница в знании ООП между представителями двух платформ — огромная. На C++ обычно красивый расширяемый код, как само собой разумеющееся. На Objective C картина удручающая. Почти все iOS-кандидаты не знали ООП дальше своего носа NSString'ов и AppDelegate'ов.

Понятно, что плюсы учат по Страуструпу и «банде четырёх», а Objective C — больше по туториалам и Stack Overflow. Фастфуд-обучение не оставляет места на фундаментальные вопросы… Но такой разницы я не ожидал.

Поэтому я перевёл пост, в котором даны начальные сведения о шаблонах проектирования с примерами на iOS… «начальные»? Ага, значит, будет продолжение? Нет, не будет. Дальнейшие сведения вы получите из опыта, из попыток организовать процесс написания кода с помощью паттернов. Сначала не будет получаться, вероятно, фасад здания будет торчать из дымовой трубы, но потом придёт понимание, где какие приёмы реально помогают.

Качественная разработка ПО — творческий процесс, уникальный для каждой конкретной головы. Поэтому не существует общей инструкции: if (A and (B or C)) then use Pattern_N;
Как это нет инструкции? Что же делать?

Перевод и озвучка фильма дома — The Mars Underground

Reading time5 min
Views75K
Это мой первый пост на Хабре, поэтому в хаб «Космонавтика» он пока не попал.
Я занимаюсь, вернее, пытаюсь заниматься переводом и озвучкой видеороликов уже полгода. Ещё весной я обнаружил, что в сети полно хороших видео, из серии таких, которые «обязательно должен посмотреть каждый», но большая часть из них на английском языке. А вот знакомых, хорошо знающих иностранные языки, у меня не так много. Поэтому начинал я с переводов именно для них. Затем заметил, что это становится интересно и другим людям, и завертелось. Поэтому когда ко мне обратился Zelenyikot с предложением озвучить фильм Роберта Зубрина о Марсе, я с радостью согласился. И, вооружившись статьей "Попытка перевода и озвучки видео в домашних условиях", словариком и гуглом, сразу приступил к работе.

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

iTunes In-App Purchases со стороны сервера

Reading time13 min
Views36K
Платежи через iTunes фактические лидеры по монетизации контента, предоставляемого мобильными приложениями. В одном из известных мне приложений доход от них в 3 раза превышает доход от Google Play пользователей при том, что посещаемость последних в 1.5 раза выше. Таким образом, с одного пользователя iTunes можно получить вплоть до 5 раз больше денег, чем с одного пользователя Google Play. Данный аргумент достаточен для интеграции платежей iTunes в мобильные приложения.

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

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

Преимущества C++ как первого языка для обучения программированию

Reading time7 min
Views221K
Всем доброго времени суток!

Это статья о том, почему же все-таки стоит выбрать C++ в качестве первого языка программирования для обучения студентов, и немного о проблемах преподавания в ВУЗах. Часть суждения, касающегося процесса обучения, основывается на личном опыте преподавания (три года, во время учёбы в аспирантуре), а также на общении с преподавателями и студентами.
Рассматриваются преимущества языка программирования C++ именно для обучения и с точки зрения лучшего понимания основных концепций. Остальные кандидаты на роль первого языка (Pascal/Python/C#/Java) не рассматриваются, дабы не разжигать холивар. Еще раз отмечу: не для промышленной разработки и не с точки зрения такого субъективного критерия, как удобство.
Написано под впечатлением откровенно рекламного поста «Delphi XE5 как основа для обучения программированию» (на момент написания, доступна только версия «от гугла»).

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

Папа Карло и инкрементальные компиляторы

Reading time5 min
Views18K


Коллеги,

а помните была такая статья-перевод на Хабре Чек-лист разработчика языка программирования Колина Макмиллена о проблемах новых языков программирования? Статья просто изумительная! Если не читали — обязательно посмотрите.

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

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

Чек-лист разработчика языка программирования

Reading time4 min
Views23K
Итак, Вы собираетесь создать новый [] функциональный, [] императивный, [] объектно-ориентированный, [] процедурный, [] стековый, [] мультипарадигменный, [] быстрый, [] статически-типизированный, [] динамически-типизированный, [] чистый, [] богатый, [] не-искусственный, [] наглядный, [] простой для новичков, [] простой даже для не-программистов, [] абсолютно непостижимый язык программирования.

Не получится. И вот почему.
Читать дальше →

Как воплотить в жизнь мечту детства и запрограммировать что-нибудь для Dendy

Reading time4 min
Views104K
Для меня Dendy всегда была чем-то большим, чем просто приставкой. Я не только играл в неё, но и значительное время провёл внутри неё с паяльником в руках для некоторых простых модификаций. По дороге куда-нибудь я часто размышлял о том, как же создаются эти игры и как это работает внутри. Наверняка, многие из вас когда-то задавались подобными вопросами, такова уж натура будущих IT-шников.

Прошли годы. С некоторой периодичностью погружался в эму-тему, изучая всё новое на тематических сайтах, но я не решался окунуться в изучение ассемблера 6502 и архитектуры NES. Внутренний конфликт рационального и иррационального. Я долго убеждал себя, что мне не нужно тратить на это время, но… сорвался. Глядя на то, какие интересные вещи делают энтузиасты эму-сцены, я взялся за свою давнюю идею со светлой мыслью: «Я тоже смогу!». Две недели пролетели незаметно, я еле смог остановить себя. И да, теперь я знаком с ассемблером без команд умножения, о чём раньше только слышал в песне о программистской молодости.



Очень вероятно, что сейчас вы вспомнили свой первый картридж для Dendy и меню с романтическим сюжетом и приятной музыкой. На таких картриджах никогда не было «серьёзных» игр, и не глядя на громкие надписи типа 9999-in-1, их обычно было что-то около пяти. Но это меню… Разве это не шедевр китайской мысли? :) Мне с детства нравилась эта мелодия (Unchained Melody), а фоновые изображения сейчас навевают кучу ностальгических воспоминаний. Поэтому я взял IDA и дизассемблировал меню 300-in-1, вырезал всё лишнее, исправил ошибки, добавил фейдинг да немного приятных мелочей — и получилась демка Unchained Nostalgia (для запуска нужен эмулятор, например, Nestopia), есть запись на YouTube.

Хотите также окунуться в олдскульное программирование? Делюсь самым полезным и интересным, что я нашёл по теме.
Читать дальше →

Ломаем iOS-приложение. Часть 1

Reading time13 min
Views74K
Вы хорошо поработали, и вот ваше приложение в App Store!

  • Храните учётные записи юзеров?
  • Используете встроенные покупки?
  • Не хотите показывать своё ноу-хау?

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

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity