All streams
Search
Write a publication
Pull to refresh
144
0
Mikhail @host_m

Хостинг серверов

Send message

Улучшаем генератор случайных чисел QBasic

Reading time10 min
Views3.9K


Pixelmusement создаёт видео об играх для MS-DOS и программном обеспечении. Каждое видео завершается коротким случайно выбранным списком тех, кто поддержал канал финансово. В видео ADG Filler #57 Крис рассказал, как происходит процесс выбора. Оказалось. что он абсолютно вписывается в основную тему канала: генерация производится программой на QBasic. В его программе используется встроенный генератор псевдослучайных чисел QBasic (pseudo random number generator, PRNG). Даже учитывая ограничения платформы, этот PRNG гораздо хуже, чем он мог бы быть. Давайте обсудим его слабые стороны и разберёмся, как сделать выбор более справедливым.
Читать дальше →

Funkwhale: наконец-то нормальный децентрализованный музыкальный сервис

Reading time4 min
Views15K


Grooveshark уже пять лет как закрыт. За это время появились десятки проектов поменьше с той же идеей — но на базе децентрализованных сетей. Проблема Grooveshark была в его централизации, которая позволила правообладателям завалить компанию исками, в итоге потопившими её. С тех пор любая музыкальная платформа с пользовательским контентом обязательно включает в слоганы «децентрализацию», «peer-to-peer», «криптографию» и конечно, блокчейн. У всех общие проблемы: несмотря на использование федеративных сетей и модных протоколов, всё управление стартапом сосредоточено в одном офисе. Пока платформа слишком мала чтобы её заметили, она слабо развивается. Стоит ей дорасти до более-менее крупной пользовательской базы, и через несколько месяцев она тонет под напором DMCA и судебных исков.
Читать дальше →

Окей, Гугл, опубликуй свои секретные ключи DKIM

Reading time10 min
Views19K


Интернет даже в лучшие свои годы был опасным местом. Иногда архитекторы Интернета находили способы снижения угроз, иногда терпели неудачу. Однако постоянно повторяется ситуация, когда крупная Интернет-компания находит решение, которое на самом деле ухудшает ситуацию почти для всех. Сегодня я хочу поговорить об одном из таких случаев, а также о том, как большая компания наподобие Google могла бы найти способ исправить ситуацию.

В этом посте раскрывается вопрос Domain Keys Identified Mail (DKIM), безвредного крошечного антиспам-протокола, который каким-то образом превратился в монстра. Моя просьба проста, вкратце её можно сформулировать так:

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

Это краткая версия. Ниже представлена более подробная.
Читать дальше →

Как портировать модуль с Node на Deno

Reading time4 min
Views3.2K


Я верю, что когда-нибудь Deno мог бы стать следующим стандартом после Node, как TS постепенно заменяет JS. Экосистема ноды уже достаточно разрослась, чтобы стало сложно вносить глобальные изменения в ядро, выход 15 версии тому пример. Помните, какое там ключевое изменение? Теперь unhandledRejection вместо warn будет выдавать throw, вау! На эту тему сломано много копий, но большинство обсуждений приходит к выводу что Node оказался в стагнации. И тут Райан Даль, создатель ноды, врывается на рынок со своим свежим и гибким решением: строгий подход к безопасности, новая кодовая база на TS, новые фичи… Но есть один нюанс.
Читать дальше →

Самые разгоняемые процессоры, которые запомнились надолго

Reading time13 min
Views64K

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

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

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

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

Как оптимизировали экономику СССР и что из этого вышло

Reading time11 min
Views68K

Я работаю специалистом по обработке и анализу данных (data scientist), поэтому большая часть моей работы включает в себя подбор оптимизируемых метрик и размышления о том, как выполнять процессы с максимальной эффективностью. Недавно я обнаружил совершенно удивительную книгу об экономических проблемах в СССР и о коллективе экономистов и компьютерных учёных, стремившихся решить их на основе данных. Книга называется Red Plenty. На самом деле она написана в жанре романа, что странно, однако представляет собой точную экономическую историю СССР. Автор активно заимствует информацию из книги 1973 года под названием Planning Problems in the USSR, которую я тоже приобрёл. При чтении этих книг я не мог не обратить внимания на параллели с планированием в любой современной организации. Факт, который покажется сегодня знакомым каждому data scientist: во второй книге есть цитата исследователя, жалующегося на то, что 90% своего времени он потратил на очистку данных, и только 10% — на само моделирование!

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

Война за цифровую свободу идёт внутри наших принтеров

Reading time8 min
Views37K
image

С момента своего основания в 1930-х компания Hewlett-Packard стала синонимом инноваций: многие инженеры отдавали должное её надёжным генераторам, мини-компьютерам, серверам и PC. Однако на рубеже веков компания сменила своё название на HP и сосредоточилась на использовании сомнительных способов избавления несчастных владельцев принтеров от денег. Производители принтеров уже долгое время отличались этой порочной практикой, однако HP поистине стала новатором, настоящим Дартом Вейдером этой отрасли, всегда готовым силой заставить пользователя пойти на «сделку», а потом изменить её правила, ещё сильнее увеличив свою выгоду.

Недавно компания побила свой собственный рекорд, превратив свою программу «Бесплатные чернила на всю жизнь» в «Плати мне по 0,99 доллара ежемесячно до конца своей жизни, или принтер перестанет работать».

Визуализация sqlite в node.js

Reading time3 min
Views15K


Довольно часто на этапе прототипирования (и всегда — в пет-проектах) я не запариваюсь с бэкэндом и поднимаю апи на express с sqlite3. Это легко и довольно удобно для несложной логики, а для сложной есть бэкэндеры с их отдельным миром. Единственный геморрой, который долгое время меня преследовал на этапе написания апи — невозможность быстро заглянуть в базу и отследить изменения. Можно дебажить по памяти, конечно, но это как-то странно, когда можно просто вытащить содержимое по запросу и отобразить его на какой-нибудь страничке. Вот только каждый раз заново парсить json и распихивать его в таблицы по лучшим практикам очередного фреймворка мне не хотелось, поэтому я после недолгих поисков нашёл sqljs и набросал на нём простейший визуализатор.
Читать дальше →

Об ужасной документации Apple

Reading time7 min
Views18K


В последние год-два я пришёл к осознанию того, что основной преградой к выполнению моей работы является документация. Или, если конкретнее, откровенный дефицит документации, предоставляемой Apple для своих платформ.

Apple предоставляет разработчикам набор инструментов — API, позволяющий нам создавать приложения для iOS, iPadOS, macOS и tvOS. Во многих случаях разобраться в том, как пользоваться этими API, достаточно просто. Как отвёртку можно использовать очень немногими способами, так и во многих случаях есть только один очевидный способ применения API.
Читать дальше →

Как работал компьютеризированный поиск за сорок лет до Google

Reading time9 min
Views5.2K
Чарли Борн был специалистом по компьютеризированному поиску ещё за сорок лет до появления Google. Музей компьютерной истории недавно завершил каталогизацию его уникальной коллекции материалов, документирующих историю систем онлайн-поиска и информации, начиная с 1950-х годов.

Многие считают, что системы поиска и просмотра информации онлайн начали развиваться вместе с вебом в 1990-х, мгновенно перенеся нас от перебирания вручную пыльных карточных каталогов к выдаваемым за миллисекунду ответам современных поисковых движков. Те, кто давно знаком с компьютерами, могут припомнить пару более ранних компьютеризированных сервисов, например LexisNexis для журналистов и юристов или дорогостоящий Dialog.


LexisNexis

Пишем «Змейку» для клавиатуры с подсветкой

Reading time13 min
Views19K


Введение


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

Разумеется, жизнь большинства клавиатур не вечна. (Хотя я сильно подозреваю, что моя домашняя IBM Model M практически бессмертна.) Однажды я заметил, что клавиша Shift моей рабочей клавиатуры начала отказывать. Из-за этого мои электронные письма начали выглядеть более ленивыми, а в коде воцарился хаос, поэтому мне понадобилась новая клавиатура. Старая клавиатура была вполне неплохой, но в целом довольно стандартным устройством с резиновыми прокладками переключателей, поэтому у меня появилась неплохая возможность взять что-нибудь получше, например, механическую клавиатуру.

Я вышел в Интернет и поискал хорошую клавиатуру. Я хотел что-нибудь с механическими переключателями Cherry Brown, потому что, скорее всего, никого бы не обрадовал громкими Cherry Blue. Довольно полезным было бы отсутствие лишних десяти клавиш (цифровой клавиатуры справа), потому что я всё равно ими не пользуюсь и это уменьшило бы расстояние, на которое нужно перемещаться моей руке к трекболу.

Самой дешёвой клавиатурой, удовлетворяющей всем этим требованиям, оказалось устройство с довольно длинным названием: Coolermaster Quickfire Rapid-I.

5 причин использовать Linux в 2020 году

Reading time4 min
Views45K


Самые лучшие технологии — это движущаяся мишень. Когда технология стагнирует, общество обычно обгоняет и перерастает её. Linux, широко используемая операционная система с открытыми исходниками — это фундаментальная технология, являющаяся основой для одной из самых прогрессивных современных идей компьютерных систем. Поэтому, хотя на протяжении трёх десятков лет развития она остаётся поразительно неизменной, эта ОС обеспечивает адаптируемость. В результате этого Linux находится в уникальном положении — с одной стороны, это надёжная инвестиция в развитие своих навыков, потому что она не меняется, с другой — это кажущаяся бесконечной движущая сила для изучения новых навыков.

2020 год, как на него не взгляни, был странным, но для Linux он оказался продолжением обычного цикла разработки. В этой статье мы вспомним этот год и вкратце расскажем о том, что нужно знать о Linux в 2020 году.
Читать дальше →

Графики в Vuejs

Reading time4 min
Views29K


Я доволен экосистемой Vue. Как и положено, ты не городишь велосипеды, а пользуешься готовыми плагинами, которые за тебя написали умные дядьки. Когда твоя задача слишком мелкая и локальная, чтобы под неё написали плагин — ты идёшь и ищешь готовые компоненты, и только если не находишь ничего подходящего, чешешь репу и садишься писать своё решение. Таков порядок вещей, и я изрядно удивился, когда за вечер тестов не смог нормально отобразить ни одного подходящего мне графика. Пришлось немного подумать и переписать все примеры с Chart.js, чтобы разобраться с графиками раз и навсегда. Результаты ниже.
Читать дальше →

Как «Сумерки» навсегда испортили поиск картинок Google

Reading time6 min
Views21K


Поучаствуйте со мной в эксперименте. При помощи поиска изображений Google мы будем искать разные времена суток. Откроем новое окно Google Chrome в режиме инкогнито, чтобы результаты не были искажены нашей историей поиска. В конце концов, это ведь научный эксперимент, и нам нужны наиболее точные результаты.

Для начала попробуем найти «sunrise» («рассвет»).
Читать дальше →

«Чистой» энергии не существует

Reading time6 min
Views171K


Опубликованный в научном журнале Energies новый анализ, проведённый командой ирландских и американских исследователей, в том числе исследователей CERES, поднимает неожиданные и тревожные вопросы о реализуемости перехода на возобновляемые источники энергии, а также об их влиянии на окружающую среду. Опасения изменения климата привели к огромным инвестициям в программы новой «зелёной энергии», направленные на снижение выбросов парниковых газов и другого влияния на окружающую среду со стороны отрасли ископаемых видов топлива. На протяжении 2011-2018 годов мир потратил 3,66 триллиона долларов на проекты, связанные с изменением климата. 55% от этой суммы было потрачено на энергию солнца и ветра, и всего 5% — на адаптацию к воздействию экстремальных погодных явлений.
Читать дальше →

Quasar — швейцарский нож для Vue

Reading time4 min
Views34K


Некоторое время назад (года два с половиной) чувак по имени Razvan Stoenescu собрал команду Vue-разрабов и начал пилить с ними свой фреймворк. Свечку не держал, но я твёрдо уверен что в первоначальном документе было что-то типа «Хотим свой фреймворк, чтобы в нём было вообще всё. Включая блэкджек и куртизанок». Довольно странно, что во многих материалах за прошедший год упоминается Quasar, но статья про него вышла всего одна и была приурочена к релизу 1.0, да ещё и оказалась переводом. Недавно я наконец распробовал этот чудесный фреймворк и с удовольствием поделюсь своими впечатлениями о нём.

Страшилки на Хэллоуин от веб-разработчиков

Reading time7 min
Views8.6K


В преддверии Хэллоуина фуллстек-разработчик Уэс Бос в своём Твиттере попросил других программистов поделиться своими ужасными историями о вебдеве. Вот некоторые из них...

@DimitroffPeter:

Моя первая работа и первый вклад в продакшен. Мне нужно починить клиент-серверную утилиту. Её функция проста: у нас есть самодельное устройство из роутера и PC. У роутера есть CLI и он должен показывать информацию о состоянии PC. Вещи наподобие systemctl, top, free. Команда передаётся в виде текста, выполняется, и результат принимается в виде текста. Однако сделано это было наиболее ужасающим способом из всех возможных…
Читать дальше →

Короткая история компьютеров Sinclair

Reading time8 min
Views18K


Многие считают 1980-е золотой эпохой домашних компьютеров. Недорогие 8-битные системы сделали доступными широким массам аркадные игры, в то же время позволяя выполнять основные офисные задачи. Такие компании, как Acorn, Commodore и Dragon быстро стали синонимами домашних компьютеров.

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

Первые битвы за успех


В 1961 году британский изобретатель и предприниматель Клайв Синклер основал свою первую компанию Sinclair Radionics Ltd., занимавшуюся продажей различных электрических и электронных продуктов для дома. Она хорошо держалась на плаву в течение более 10 лет благодаря стабильной экономике и очень успешному продукту — цифровому калькулятору Sinclair Executive.

К сожалению, катастрофические эксперименты с разработкой переносных телевизоров и цифровых часов опустошили банковский баланс, из-за чего компании пришлось закрыться. Однако Синклер не позволил провалу встать на пути его стремления к инновациям, и к концу 1970-х снова вернулся в строй с компанией Science of Cambridge Ltd.

Что я понял о праве на ремонт, восстанавливая 30-летнюю NES

Reading time6 min
Views81K


В конце 1980-х кто-то купил в настоящем, не электронном, магазине Nintendo Entertainment System (NES), принёс её домой и, предположительно, играл на ней неизвестное количество лет. За последовавшие десятилетия консоль с серийным номером N12180601 сильно пострадала, в конечном итоге оказавшись на eBay в состоянии, которое можно описать только как «мусор». Продавец, находящийся в Англтоне, штат Техас, попросил скромную сумму в 11,99 доллара за повреждённую и неработающую систему, у которой к тому же отсутствовало множество деталей.

Я купил её.

Как сделать nginx безопасным

Reading time3 min
Views22K


TL;DR: абсолютно устойчивых систем не существует, поэтому ответ — никак. Но можно значительно упростить себе жизнь с помощью Docker-контейнера bunkerized-nginx. О том, чем он отличается от стандартного образа nginx и что интересного умеет, поговорим под катом.
Читать дальше →

Information

Rating
Does not participate
Location
Meppel, Drenthe, Нидерланды
Registered
Activity