Pull to refresh
0
0
Send message

Отправка и обработка HTTP запросов в PostgreSQL

Level of difficultyMedium
Reading time7 min
Views22K

Эта статья о том как отправлять и обрабатывать HTTP-запросы непосредственно из/в PostgreSQL. Автор расскажет о том, что такое асинхронное уведомление в PostgreSQL, и наглядно продемонстрирует, как с его помощью можно взаимодействовать с внешними системами из самой СУБД.

Читать далее
Total votes 11: ↑9 and ↓2+12
Comments57

Стандарты в области волоконно-оптических систем (DWDM-технологии)

Reading time127 min
Views7.3K

Я технический писатель и я недавно сменил место работы.

И так получилось сменил не просто место работы, но и отрасль. Атомная энергетика, сменилась радиоэлектронной промышленностью, а именно волоконно-оптическими средствами связи. Поворот просто на 180 градусов. Ну будем разбираться. Для начала хочу изучить действующую нормативную базу.

Сегодня во всём мире скоростные волоконно-оптические сети связи являются основой транспортных сетей передачи данных. А основной технологией обеспечивающей транспортировку высокоскоростного трафика, является технология спектрального мультиплексирования - Wavelength Division Multiplexing (WDM), и её многоканальные решения CWDM (Сoarse Wavelength Division Multiplexing – грубое спектральное уплотнение) и DWDM (Dense Wavelength Division Multiplexing – плотное спектральное уплотнение).

А основной организацией занимающейся вопросами стандартизации данной технологии является Международный союз электросвязи (МСЭ) - специализированное учреждение Организации Объединенных Наций в области информационно-коммуникационных технологий.

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

Читать далее
Total votes 4: ↑3 and ↓1+6
Comments7

Sovietwave и Sovietpunk: как романтика несбывшегося переплавила ностальгию по СССР в новый жанр? Часть 1

Level of difficultyEasy
Reading time7 min
Views30K

Выход «Atomic Heart» не просто стал громким событием в истории российского геймдева — он наиболее отчётливо отразил любопытную культурную тенденцию последней дюжины лет. С начала 2010-х футуристические образы и сюжеты в подчёркнуто советском стиле стали всё чаще встречаться в Рунете в самых разных формах. Особенно ярко это стало проявляться ближе к концу десятилетия с массовым распространением музыки в стиле ретровейва — российским ответвлением которого стал стилизованный под мелодии и ритмы советской эстрады Sovietwave. Ну а сейчас советский ретрофутуризм уже можно назвать мейнстримом, даже не особенно прибегая к совам и глобусам. Он выражает ностальгию по положительным чертам и характерным деталям советской эпохи, но с начала 90-х годов эта ностальгия успела сильно измениться. Что же с ней случилось?
Читать дальше →
Total votes 128: ↑119 and ↓9+150
Comments223

Точечная маршрутизация по доменам на роутере с OpenWrt

Level of difficultyMedium
Reading time13 min
Views135K

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

Я предоставляю уже готовый конфиг с самыми востребованными доменами, который можно дополнять.

Настроить роутер можно с помощью скрипта. Если вдруг не заведётся сразу, то другим скриптом можно найти, что не работает. Настройка с помощью Ansible никуда не делась, только модифицировалась и стала лучше.

Помимо инструкций по настройке туннелей Wireguard и OpenVPN, написал инструкцию по использованию технологий, которые помогут в обходе блокировок по протоколу: Shadowsocks, VLESS и прочими.

Читать далее
Total votes 27: ↑27 and ↓0+27
Comments28

Kornia — библиотека компьютерного зрения

Level of difficultyMedium
Reading time15 min
Views12K

Kornia это open source библиотека для решения задач компьютерного зрения. Она использует PyTorch в качестве основного бэкенда и состоит из набора дифференцируемых процедур и модулей. Создатели библиотеки вдохновлялись OpenCV, и поэтому Kornia является его аналогом, но при этом в некоторых моментах превосходит. Главным преимуществом Kornia по сравнению с тем же OpenCV, scikit-image или с Albumentations является возможность обрабатывать изображения батчами, а не по одному изображению и возможность обрабатывать данные на GPU.

Читать далее
Total votes 26: ↑26 and ↓0+26
Comments10

Генерация зависимостей внутри программы

Level of difficultyEasy
Reading time7 min
Views4.4K

В программировании программы часто строятся иерархично. Один программный компонент вызывает функции из другого программного компонента. Как бы представить эту взаимосвязь в законченной программе?

Эту задачу можно решить прибегнув к языку Graphviz и утилитам cpp, dot, make, chrome.

Читать далее
Total votes 14: ↑10 and ↓4+11
Comments48

Вальяжной походкой по HTTP-заголовкам

Level of difficultyEasy
Reading time8 min
Views12K

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

Разбора конфигов Web‑сервера не будет, будут только заголовки, их директивы и пояснения с примерами.

Давайте разбираться
Total votes 11: ↑8 and ↓3+8
Comments3

Феномен постоянной Капрекара. Таинственное «число великой радости» 6174

Reading time5 min
Views46K

Чем же так занимательно число 6174? Казалось бы, это обычное натуральное чётное четырёхзначное число. Не лучше и не хуже, чем, скажем, соседние 6173 и 6175. Оно даже не является простым. Тем не менее, это число имеет своё собственное название — постоянная Капрекара. А ещё оно относится к так называемым «числам великой радости».

Давайте разбираться, что же в этом числе такого особенного. Займёмся несложными вычислениями...

Что же такого особенного в числе 6174?
Total votes 84: ↑79 and ↓5+98
Comments37

Web Workers в JavaScript: Параллельные вычисления и улучшение производительности

Level of difficultyMedium
Reading time8 min
Views15K

В современном мире пользователи становятся все более требовательными к производительности веб‑сайтов и хороший пользовательский опыт выходит на первый план. Даже малейшее зависание или отсутствие плавности могут привести к потере пользователей.

Есть случаи, когда эту проблему можно решить с помощью Web Workers, про них я и расскажу вам далее!

Бустануть производительность
Total votes 15: ↑14 and ↓1+18
Comments6

Реклама в интернете в 2023 году для предпринимателей и начинающих маркетологов

Level of difficultyEasy
Reading time15 min
Views5.6K

Я уже писал аналогичную статью в феврале 2020 года на другой платформе, решил, что пора обновить рекомендации.

Кто я такой, чтобы давать советы Habr?

Я Цымбалюк Андрей, руководитель направления цифровой маркетинг в промышленной компании.

У меня опыт в более 40 направлениях бизнеса и опыт управления маркетинговым бюджетом 150 млн рублей в год. Также, у меня небольшое маркетинговое агентство, в котором продвигаю 3 медицинских клиники на текущий момент.

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

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

Читать далее
Total votes 4: ↑2 and ↓2+4
Comments1

Форматирование текста на C++ старым и новым способом

Level of difficultyMedium
Reading time8 min
Views16K

Форматирование текста на C++ можно реализовать несколькими способами:

  • потоками ввода-вывода. В частности, через std::stringstream с помощью потоковых операций (таких как operator <<);
  • функциями printf, в частности sprintf;
  • с помощью библиотеки форматирования C++20, в частности std::format / std::format_to;
  • с помощью сторонней библиотеки, в частности {fmt} (основа новой стандартной библиотеки форматирования).

Первые два варианта представляют старые способы. Библиотека форматирования, очевидно, является новым. Но какой из них лучше в плане производительности? Это я и решил выяснить.
Читать дальше →
Total votes 42: ↑39 and ↓3+52
Comments17

Как алюминий стал одним из главных металлов наших дней

Level of difficultyEasy
Reading time10 min
Views14K

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

Читать далее
Total votes 35: ↑33 and ↓2+42
Comments6

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

Level of difficultyEasy
Reading time11 min
Views24K

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

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

Читать далее
Total votes 29: ↑26 and ↓3+30
Comments190

Многопоточность на низком уровне

Reading time14 min
Views39K

Очень часто при обсуждении многопоточности на платформе .NET говорят о таких вещах, как детали реализации механизма async/await, Task Asynchronous Pattern, deadlock, а также разбирают System.Threading. Все эти вещи можно назвать высокоуровневыми (относительно темы хабрапоста). Но что же происходит на уровне железа и ядра системы (в нашем случае — Windows Kernel)?


На конференции DotNext 2016 Moscow Гаэл Фретёр, основатель и главный инженер компании PostSharp, рассказал о том, как в .NET реализована многопоточность на уровне железа и взаимодействия с ядром операционной системы. Несмотря на то, что прошло уже пять лет, мы считаем, что никогда не поздно поделиться хардкорным докладом. Гаэл представил нам хорошую базу по работе процессора и атомнарным примитивам.



Вот репозиторий с примерами из доклада. А под катом — перевод доклада и видео. Далее повествование будет от лица спикера.

Total votes 31: ↑30 and ↓1+40
Comments16

Почему рукописную подпись считают надёжным способом аутентификации (и так ли это на самом деле)

Reading time7 min
Views15K
image

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

Автограф должен подтверждать подлинность документа. Например, в банках сотрудники по-прежнему сравнивают подписи в документах и в паспорте.

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

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

Разумеется, когда встаёт вопрос крупной сделки, нужны дополнительные верифицирующие факторы.

И, кажется, подписи уже отживают своё.
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments47

Спуфинг, боты и брутфорс. Как с помощью QA улучшить систему логирования и обеспечить безопасность на крупном сервисе

Level of difficultyMedium
Reading time13 min
Views2.4K

Привет, Хабр! Для любого сервиса главное — это клиент. Когда он уходит, становится очень больно. Вдвойне больнее, если сервисом пользуются боты вместо реальных людей. Но понять это бывает не так просто, особенно если боты — нейросети.

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

Забегая вперед — это были и разлогины пользователей, и запросы на восстановление доступа, брутфорс паролей, а главное — ботовая активность. А все вместе это влияло на общую доступность сервиса, и, соответственно, экономическую эффективность проекта. Поэтому было важно обнаружить и устранить корень проблемы, а не только последствия. Как это удалось и какие результаты мы получили? 

Материал будет полезен QA-специалистам, аналитикам, лидам и project-менеджерам.

? Читать далее
Total votes 1: ↑1 and ↓0+1
Comments1

Ретро кодинг: Привет из прошлого века

Reading time25 min
Views15K

На дворе 2023 год. Информационные технологии шагнули далеко. Даже 10 лет назад кажется для нас устаревшей эпохой.

Искуственный интеллект заполняет интернет контентом, графика в играх кажется уже реальной, а айти теперь — самая популярная область. Скорость интернет соединения растет как на дрожжах. Множество IDE, функционал которых невероятно огромен, множество языков программирования.

Но давайте вернемся назад — на 20, 30 и даже больше лет назад. У современных программистов есть мощнейшее программное обеспечение, десятки языков программирования. А всего лет 20–30 назад программисты писали код на каких нибудь калькуляторах при помощи чистого ассемблера!

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

Читать далее
Total votes 40: ↑29 and ↓11+30
Comments58

Баг памяти Windows, которому не менее восьми лет

Level of difficultyMedium
Reading time8 min
Views12K

Память — достаточно дефицитный ресурс для многих компьютеров потребительского уровня, поэтому логично создать функцию, ограничивающую объём используемой процессом памяти; и Microsoft действительно реализовала такую функцию. Однако:

Компания её не задокументировала (!)

Её реализация на самом деле не экономит память

Реализация может иметь чрезмерно высокие затраты ресурсов CPU

Эта функция ограничивает рабочий набор процесса (количество памяти, отображённое в адресное пространство процесса) 32 мегабайтами. Прежде чем читать дальше, попробуйте предположить, какое максимальное замедление может вызывать эта функция. То есть если процесс многократно затрагивает больше, чем 32 МБ памяти (допустим 64 МБ памяти), то насколько больше будут занимать эти операции с памятью по сравнению с ситуацией без ограничений рабочего набора? Остановитесь на минуту и запишите своё предположение. Ответ будет ниже в посте.

Читать далее
Total votes 25: ↑24 and ↓1+34
Comments16

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

Level of difficultyEasy
Reading time6 min
Views2.2K

18.10.2023, Мэтт Уильямс, Universe Today

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

Читать далее
Total votes 6: ↑5 and ↓1+5
Comments0

Машина свободы: как чилийские социалисты придумали компьютер для управления экономикой

Reading time9 min
Views18K

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

Читать далее
Total votes 48: ↑44 and ↓4+52
Comments88
1
23 ...

Information

Rating
Does not participate
Registered
Activity