Pull to refresh
-3
0.1
Артём @3263927

Инженер-программист

Send message

Древности: Roland MT-32, альтернативный звук для DOS-игр

Reading time13 min
Views23K
Не во всех играх под DOS есть настройки звука. Например, в Lemmings все просто работает. Или нет. Но там, где настройки все же имеются, они выглядят примерно так:


Когда я играл в «Принца Персии» в девяностые, моим единственным выбором была верхняя строчка, по причине отсутствия в компьютере нормальных звуковых устройств. В своем новом-старом 386-м компьютере я по умолчанию использую Sound Blaster, и вполне доволен результатом. Про другие опции в те времена я мало что знал, хотя в настройках разных игр они всплывали часто. Sound Blaster был достаточным апгрейдом: если он есть, то со звуком в твоем компьютере все в порядке.


А был ли вариант покруче? Здесь легко запутаться в определении этого самого «круче». В каких единицах должен выражаться прогресс? Сегодня я расскажу об уникальном во многих смыслах звуковом устройстве для IBM PC эпохи DOS — синтезаторе Roland MT-32. В конце восьмидесятых это был самый дорогой вариант реализации компьютерного звука. Тридцать с лишним лет спустя это недешевый коллекционный девайс, который превращает и так неплохой звук в некоторых DOS-играх в монументальный саундтрек.
Total votes 48: ↑47 and ↓1+69
Comments66

Управление домом при помощи KNX: освещение

Reading time6 min
Views56K
Привет! Попробую рассказать, как можно построить систему управления домом при помощи системы KNX. Основные вопросы, которые я хочу осветить — подход к воплощению «умного дома» на KNX, ориентиры по стоимости, подводные камни. Если материал «зайдет», продолжу. Я не стремлюсь впихнуть невпихуемое: за пределами статьи останутся диммеры, управление RGB и подобное — пока что мы просто включаем и выключаем свет :)

TL;DR: это не так дорого, как может показаться на первый взгляд и достаточно надежно.
Приступим.
Total votes 16: ↑15 and ↓1+14
Comments43

Потоки выполнения и PHP

Reading time19 min
Views49K


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


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


PHP очень далёк от других технологий. Например, в Java очень активно используются потоки выполнения, ещё они могут встречаться в пользовательских программах. В PHP такого нет. И тому есть причины.

Читать дальше →
Total votes 48: ↑45 and ↓3+42
Comments6

gReebok detected. Сам себе дерматовенеролог

Reading time16 min
Views76K
Около года назад я опубликовал свою статью Как спастись от «зайцев». Инструкция по борьбе с ультрафиолетом в которой достаточно подробно рассказал про ультрафиолет, его воздействие на ткани человека и способы лучевой защиты. Однажды на досуге я задумался над тем, в какой форме чаще всего приходится сталкиваться с «рукотворным» (т.е. не из спектра Солнца) ультрафиолетом. Вышло, что наиболее популярный УФ — это мягкий УФ и флуоресценция, которую он способен вызывать. Наиболее популярный вариант у моих дружков — это просвечивать друг друга и потом спрашивать у меня, что значит тот или иной цвет пятна на коже, и не грибок ли это. Чтобы раз и навсегда этот вопрос закрыть представляю очередной туториал. На этот раз, по диагностике кожных заболеваний ультрафиолетом лампы Вуда. Так что если интересно, как с помощью «дискотечного ультрафиолета» можно определить наличие чесотки/грибка на ногах/лишая (в том числе у любимого котика), а также про то, как лампа с aliexpress за 5$ может помочь диагностировать рак кожи и бороться с борщевиком — читаем под катом. Только наукоёмкое самоделие, с пожеланием крепкого здоровья в Наступающем 2020 году!
Закинь в закладки, %username% :)


Проверить себя и того парня лампой Вуда!
Total votes 69: ↑66 and ↓3+92
Comments43

Великий порноэксперимент: история Интернета для взрослых

Reading time14 min
Views84K
Сайты для взрослых, или простым языком, порносайты, занимают ключевое место во Всемирной паутине и её развитии. Если вспомнить недавний сериал «Холивар. История рунета. Часть 1. Начало: хиппи из Калифорнии, Носик и лихие 90-е» и термин «две девушки в час», «то есть это тогда, когда было fido, были модемы 1200 бит, и вот ты сидел и у тебя в час две картинки девушек эротического содержания проходило», становится очевидным, что трафик для взрослых сыграл свою немаловажную роль. Ведь зачем ещё развивать сети, если не для стриминга порно?

Знаете ли вы какой процент мирового трафика составляет порнография и какой сумме он эквивалентен в долларах США в год? Какие ухищрения придумывают порносайты и какого типа бывают проекты для привлечения своей аудитории? Несёт ли порно вред или пользу?

Отдельные разделы нашего рассказа мы посвятим «Великому порноэксперименту» и приведём научные факты и данные, которые говорят, как о пользе, так и о вреде порно. Бесконечная новизна! Эффект Ку́лиджа и последствия воздействия на не окрепшую психику или наоборот помощь в формировании устойчивой и более окрепшей психики? С помощью интернет-порно парень может увидеть больше горячих девушек за 10 минут, чем его предки могли за несколько жизней. Проблема в том, что у парня мозг охотника-собирателя.
Total votes 82: ↑70 and ↓12+88
Comments219

Асинхронный рассинхрон: антипаттерны в работе с async/await в .NET

Reading time9 min
Views49K

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



Читать дальше →
Total votes 49: ↑48 and ↓1+47
Comments64

ConfigureAwait: часто задаваемые вопросы

Reading time20 min
Views133K
Привет, Хабр! Представляю вашему вниманию перевод статьи «ConfigureAwait FAQ» автора Стивен Тауб.

image

Async/await добавили в .NET более семи лет назад. Это решение оказало существенное влияние не только на экосистему .NET — оно также находит отражение во многих других языках и фреймворках. На данный момент реализовано множество усовершенствований в .NET с точки зрения дополнительных языковых конструкций, использующих асинхронность, реализованы API-интерфейсы с поддержкой асинхронности, произошли фундаментальные улучшения в инфраструктуре, благодаря которым async/await работает как часы (в особенности, улучшены возможности производительности и диагностики в .NET Core).

ConfigureAwait — один из аспектов async/await, который продолжает вызывать вопросы. Надеюсь, у меня получится ответить на многие из них. Я постараюсь сделать эту статью читаемой от начала до конца, и вместе с тем выполнить ее в стиле ответов на часто задаваемые вопросы (FAQ), чтобы на нее можно было ссылаться в последующем.
Читать дальше →
Total votes 23: ↑23 and ↓0+23
Comments18

Domain Driven Design: Value Objects и Entity Framework Core на практике

Reading time12 min
Views30K
На Хабре и не только написано приличное количество статей про Domain Driven Design — как в общем про архитектуру, так и с примерами на .Net. Но при этом зачастую слабо упоминается такая важнейшая часть этой архитектуры, как Value Objects.

В этой статье я постараюсь раскрыть нюансы реализации Value Objects в .Net Core с использованием Entity Framework Core.

Под катом много кода.
Читать дальше →
Total votes 15: ↑14 and ↓1+13
Comments33

Все об SVG анимации

Reading time41 min
Views163K
В данной статье я хочу осветить тонкости работы с SVG-графикой, SVG анимацию (в том числе и path), проблемы и способы их решения, а также разнообразные подводные камни, коих в SVG огромное множество. Эту статью я позиционирую как подробное руководство.



Здесь не будет никаких плагинов, библиотек и прочего, речь пойдет только о чистом SVG.
Единственный инструмент, который я буду использовать, это Adobe Illustrator.
Получить сакральные знания
Total votes 39: ↑39 and ↓0+39
Comments21

Worker Service в .NET Core 3: что такое и зачем нужно

Reading time2 min
Views24K
В .NET Core 3 появился новый шаблон проекта под названием Worker Service. Этот шаблон разработан, чтобы дать вам отправную точку для создания кроссплатформенных сервисов. В качестве альтернативного варианта использования: он дает очень хорошую среду для создания консольных приложений, которая идеально подходит для контейнеров и микросервисов.



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

Читать дальше →
Total votes 13: ↑11 and ↓2+13
Comments9

Суррогаты

Reading time12 min
Views56K
Бизнес не любит:

1. 1С-Франчайзи, программистов 1С вообще, и почти все, что те делают;
2. веб-программистов и компании, создающие и продвигающие сайты, и все продукты их работы;
3. системы менеджмента качества и людей, которые занимаются их внедрением;
4. бухгалтеров и бух.учет;
5. экономистов со всеми их гигантскими экселевскими портянками;
6. внутренние проекты развития, на которые без слез уже смотреть невозможно;
7. Scrum и все эти доски, на которых неделями висят одни и те же стикеры;
8. ТОС, после внедрения которого дефицитов и неликвидов становится еще больше;
9. Контроллинг, который дает цифры позже, чем бух.учет;
10. KPI, адекватность которого приходится доказывать самому себе каждый раз, когда приносят эти цифры;
11. Системы мотивации, которые, как ни крути, «оклад+премия», хоть и названы модными словами, типа «грейд».

Продолжать можно до бесконечности. Никогда не задумывались, почему бизнес всего этого не любит? Или вообще не замечали, что бизнес этого не любит?

При этом, как ни странно, бизнес любит:

1. повышение прибыльности бизнеса за счет автоматизации;
2. увеличение количества лидов и рост оборота за счет правильного продвижения;
3. повышение качества процессов производства и бизнес-процессов;
Читать дальше →
Total votes 91: ↑80 and ↓11+69
Comments122

Российское и международное законодательство в области защиты персональных данных

Reading time20 min
Views48K
В предыдущей публикации мы рассмотрели основные понятия и парадигму информационной безопасности, а сейчас перейдем к анализу российского и международного законодательства, регулирующего различные аспекты защиты данных, поскольку без знания законодательных норм, регулирующих соответствующие области деятельности компании, корректно выстроить систему управления риск- и бизнес-ориентированной информационной безопасностью невозможно. Штрафные санкции, а также репутационный ущерб от несоответствия законодательным нормам могут внести существенную коррективу в планы функционирования и развития организации: мы знаем, что, например, невыполнение норм защиты информации в национальной платежной системе может обернуться отзывом лицензии у финансовой организации, а несоответствие требованиям по месту первичного сбора и обработки персональных данных может привести к блокировке доступа к веб-сайту компании. Невыполнение же норм безопасности критической информационной инфраструктуры вообще может обернуться лишением свободы на срок до 10 лет. Разумеется, применимых законов и норм – огромное количество, поэтому в этой и двух последующих статьях сосредоточимся на защите персональных данных, защите объектов критической информационной инфраструктуры и информационной безопасности финансовых организаций.

Итак, в сегодняшней серии – персональные данные, поехали!

image
Читать дальше →
Total votes 5: ↑4 and ↓1+3
Comments15
12 ...
8

Information

Rating
2,752-nd
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity