Как стать автором
Обновить
2
Карма
0
Рейтинг

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

  • Подписчики
  • Подписки
  • Публикации
  • Комментарии

Мифы об асинхронном PHP: он не по-настоящему асинхронный

PHP
Перевод

В последнее время было достаточно много обсуждений производительности в PHP. И даже несмотря на то, что у нас есть PHP8, JIT и куча других улучшений, многие по-прежнему продолжают жаловаться на то, что PHP "недостаточно производительный". Что PHP - это язык, подходящий только для модели запрос-ответ. Что PHP слишком медленный и его не нужно использовать для высоконагруженных систем. С одной стороны от части всё это правда. Если мы строим какую-то систему, для которой вопрос производительности критичен, то использовать классический блокирующий PHP явно не стОит. Большая часть функций и библиотек PHP созданы для работы в традиционном блокирующем окружении, что уже подразумевает собой не самую высокую производительность. Однако PHP может работать быстро, более того, он может работать очень быстро. Как? Обычно у нас может быть две причины, из-за чего будет проседать производительность: мы либо совершаем какие-то сложные вычисления, либо у нас есть блокирующй ввод-вывод. Первое к сожалению (или к счастью) мы не можем решить в PHP. Но блокирующий ввод-вывод для PHP совсем не проблема. В PHP-сообществе есть люди, которые пишут асинхронный код уже на протяжении несколько лет. Конечно одновременно с этим бОльшая часть сообщества по-прежнему считает асинхронный PHP - дикостью. Я часто слышал: "Ты наверно совсем отчаянный, если собираешься писать что-то асинхронное на PHP". По правде говоря, у нас у всех есть это предубеждение, что PHP не подходит для подобного рода задач. И в большинстве случаев это предубеждение основано на неверных представлениях о самой "асинхронности". Неверные предубеждения в свою очередь ведут к неправильным ожиданиям, что в свою очередь приводит к разочарованию и обвинениям в том, что PHP "не по-настоящему асинхронный".

Читать далее
Всего голосов 40: ↑39 и ↓1+38
Просмотры9K
Комментарии 19

ДИТ Москвы, коронобесие, большие данные: преступление и наказание

Спам и антиспамЗаконодательство в IT
За неделю Роскомнадзор дважды составил административные протоколы на Департамент информационных технологий Москвы: за незаконную обработку ПД и наглое вранье надзорному органу.


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

Гипотеза состояла в том, что вся эта система – сплошная профанация и нужна лишь для распила бюджета и построения «цифрового профиля» москвичей, а любой гражданин, располагая толикой изворотливости и информацией из открытых источников, может ее легко обойти. Проверка носила бескорыстный характер, так что я был целиком в белом жабо white hat.
Читать дальше →
Всего голосов 352: ↑345 и ↓7+338
Просмотры48K
Комментарии 120

Прерывается голос, слышу эхо… Проблема качества связи ip-телефонии. Как можно решить самостоятельно?

Системное администрированиеIT-инфраструктураAsteriskУчебный процесс в IT

В 90% случаев, при обращении к провайдеру ip-телефонии о проблемах качества связи, техподдержка сообщает, что у них все хорошо и нужно разбираться с нашей стороны. В итоге, мы остаемся один на один с проблемой. А сотрудники продолжают жаловаться и руководство теряет терпение!

Что делать в такой ситуации?

Менять провайдера? Искать специалиста телефонии? Или есть более консервативные варианты решения?

Читать далее
Всего голосов 16: ↑15 и ↓1+14
Просмотры13K
Комментарии 18

Токсичная Эффективность

Карьера в IT-индустрииНаучно-популярноеМозгЗдоровье

Давно хотела порассуждать на тему нездорового культа «Токсичной эффективности», который часто становится причиной выгорания. Не единственной, но связь не заметить невозможно. 

Токсичная эффективность — нездоровое, извращённое понимание эффективности. Формализованное, бюрократизированное и антигуманное.

Рассуждаю на тему, откуда оно взялось, и что с этим делать.

Интересно было вбросить повод для дискуссии и, в идеале, получить обратную связь:

- кто сталкивался?

- как боролся?

- как вам видится будущее корпоративных культур и трудовых экосистем?

Читать далее
Всего голосов 41: ↑33 и ↓8+25
Просмотры21K
Комментарии 63

Маркетинговые исследования для немаркетологов и стартаперов. Гайд от А до Я

Блог компании ITSOFTИсследования и прогнозы в ITИнтернет-маркетингРазвитие стартапаСтатистика в IT

Информация, полезная интернет-маркетологам, контент-маркетологам, стартаперам и просто деловым людям, запускающим бизнес проекты.

Читать далее
Всего голосов 4: ↑2 и ↓20
Просмотры4.6K
Комментарии 3

Новая схватка двух якодзун или Scylla vs Aerospike (+ HBase для массовки)

Высокая производительностьBig DataХранение данныхHadoop
В прошлый раз обсуждение битвы тяжеловесов Cassandra VS HBase вызвало весьма бурную дискуссию, в ходе которой была много раз упомянута Scylla — которая позиционируется как более быстрый аналог Cassandra (далее CS). Также меня заинтересовал весьма любопытный Aerospike (далее AS), который в своих тестах предсказуемо побеждает CS с разгромным счетом.

image

По удивительному совпадению Scylla (далее SC) также легко бьет CS, о чем гордо сообщает прямо на своей заглавной странице:
Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Просмотры2.1K
Комментарии 30

Всего лишь царапина: рыжие волосы и болевой порог

Блог компании ua-hosting.companyНаучно-популярноеБиотехнологииМозгЗдоровье


Физическую боль сложно назвать чем-то приятным, однако это ощущение имеет крайне важное значение в работоспособности нашего организма. Боль является своеобразной сигнализацией, оповещающей о наличии некоего раздражителя, от которого необходимо избавиться. Причиной боли могут быть как физические повреждения тканей или органов (переломы, ушибы, порезы, удар мизинцем об комод и т.д.), так и патологические процессы в организме (инфекции, онкология, врожденные дефекты и т.д.). В любом случае боль помогает как можно раньше и точнее локализовать проблему, требующую внимания. При этом разные люди могут ощущать боль от одинакового источника по-разному, что обусловлено разным болевым порогом. Для одних людей снятие пластыря — настоящая агония. А другие спокойно могут уснуть во время лечения зубного канала без анестезии. Боль крайне индивидуальна, но даже тут есть скрытая логика. Ученые из MGH (Массачусетская больница общего профиля, США) установили причину, почему люди с рыжими волосами обладают более высоким болевым порогом. Как цвет волос влияет на восприятие боли, как это связано с кожей, и как можно на практике применить полученные сведения? Ответы на эти вопросы мы найдем в докладе ученых. Поехали.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Просмотры5.5K
Комментарии 14

Делаем новую версию API. Быстро и легко

Блог компании НТЦ ПРОТЕЙИнтерфейсыAPI

Коммуникация правит миром. Взаимодействие необходимо и между людьми, и между программным обеспечением. Хотите адекватного ответа на ваш запрос к приложению?  API вам в помощь! Необходимость в реализации API возникает практически во всех проектах, и со временем мы задумываемся, можно ли улучшить текущий API? Последовательность конкретных шагов и реальные примеры – наш рецепт создания рабочего API-проекта.

Читать далее
Всего голосов 13: ↑7 и ↓6+1
Просмотры3.4K
Комментарии 2

Откуда берутся хорошие идеи. Конспект книги Стивена Джонсона

Блог компании MadrobotsПрофессиональная литератураЧитальный зал

Для своего телеграм-канала я время от времени пишу конспекты интересных мне деловых книг. Одна из них — «Откуда берутся хорошие идеи» Стивена Джонсона. Тираж книги на русском закончился еще в 2014 году, купить можно только на английском языке.

Стивен Джонсон (Steven Johnson) — известный американский ученый и писатель, автор двенадцати книг о взаимодействии науки, техники и человеческого опыта, в том числе, бестселлера «Нет худа без добра: как современная массовая культура делает нас умнее».

Последние десять лет Джонсон изучает историю инноваций. Результаты его исследований и легли в основу бестселлера «Откуда берутся хорошие идеи». Стивен создал несколько сайтов, в том числе, «Магазин исчезнувшей еды», Plastic.com.

Так откуда же берутся хорошие идеи?
Всего голосов 29: ↑27 и ↓2+25
Просмотры6.8K
Комментарии 3

Мозг, смысл и конец света

МатематикаМашинное обучениеИстория ITИскусственный интеллектМозг

Напомню предысторию. Меня зовут Алексей Редозубов и я занимаюсь созданием сильного искусственного интеллекта. Мой подход крутится вокруг контекстно-смысловой модели работы мозга. Об этом был цикл статей на хабре и много видео на Youtube. Сейчас я хочу рассказать об основах контекстно-смысловой модели и о недавних исследованиях, которые позволили взглянуть на эту модель с новой, неожиданной стороны. Исследованиях невероятных настолько, что уверен — многие сочтут их безумием.

Есть два интересных и важных термина — “искусственный интеллект” (ИИ) и “сильный искусственный интеллект” (СИИ). В английской традиции Artificial intelligence (AI) и Artificial general intelligence (AGI). Первый подразумевает любую деятельность компьютера, имитирующую человеческий интеллект, второй — только такую, которая претендует на что-то универсально общее, похожее на то, как мыслит человек.

Точного определения СИИ нет. Лучшее, что есть — это знаменитый Тест Тьюринга

«Человек взаимодействует с одним компьютером и одним человеком. На основании ответов на вопросы он должен определить, с кем он разговаривает: с человеком или компьютерной программой. Задача компьютерной программы — ввести человека в заблуждение, заставив сделать неверный выбор».

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

   

Окунуться в безумие
Всего голосов 43: ↑32 и ↓11+21
Просмотры18K
Комментарии 691

Полезности для разработчика на Django

Разработка веб-сайтовPythonDjango
Tutorial

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

Мы рассмотрим: "Тестирование handler 404" в окружении разработчика, "Формсеты и динамическое добавление форм", а также "Экспорт данных в PDF с поддержкой кириллицы (русских символов / букв)".

Читать далее
Всего голосов 7: ↑6 и ↓1+5
Просмотры4.6K
Комментарии 4

Dart на сервере

APIDart
Tutorial

Недавно столкнулся с необходимостью написать REST API сервер на Dart. Оставим за рамками этой статьи почему и зачем это было надо, но первое с чем я столкнулся - выбор библиотек. Так уж сложилось, что я привык писать на NodeJS используя KoaJS в качестве веб сервера. Простая и удобная библиотека с кучей расширений для любой необходимости. А вот Dart в этом плане несколько подкачал. На момент поисков из "живых" пакетов на pub.dev был только shelf. Что-то отдаленно похожее, но по факту жутко неудобное. Неделю промучившись с оным, понял, надо писать свое, с блэкджеком... что-нибудь в стиле того же KoaJS.

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Просмотры3.2K
Комментарии 15

Гайд по мобильной рекламе для тех, кто задумался о монетизации

Блог компании FunCorpТестирование мобильных приложенийМонетизация мобильных приложенийМедийная рекламаКонтекстная реклама

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

Читать далее
Всего голосов 41: ↑40 и ↓1+39
Просмотры6.2K
Комментарии 5

Анонс. Уехать нельзя остаться: ключевые вопросы о карьере за рубежом

Блог компании RUVDS.comКарьера в IT-индустрииЧитальный зал

Завтра, в 20:00 в наших соцсетях выступит Алина Вербенчук, основательница Verbetcetera.

Алина училась в НГУ, СПбГУ, а также в Hong Kong University of Science and Technology. Работала и жила в 7 странах. Занимается запусками новых продуктов для создателей контента в лондонском офисе YouTube, а также помогает с карьерными вопросами в tech разработчикам, менеджерам продукта, дизайнерам и другим специалистам.
Читать дальше →
Всего голосов 43: ↑26 и ↓17+9
Просмотры4.3K
Комментарии 19

Какие вопросы ожидать на позицию автоматизатора и причем тут сортировка?

Тестирование IT-системТестирование веб-сервисовТестирование мобильных приложений

Здравствуйте, коллеги.

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

Само собой, если вы проходите собеседование на позицию junior, от вас не будут требовать опыта и знаний по всем вопросам. Будет круто, если вы разбираетесь хотя бы в ~30% всего этого. От позиции middle я бы ожидал примерно ~50%-60% знаний перечисленных мною тем. Ну и далее по восходящей.

Поехали!
Всего голосов 19: ↑18 и ↓1+17
Просмотры9.3K
Комментарии 17

50 оттенков жёлтого. Часть 2

Блог компании RUVDS.comСтарое железоЛайфхаки для гиков
Продолжим подкреплять теорию практикой. В первой части статьи я рассказал о своих ранних экспериментах по отбеливанию пластмассы — успешных и не очень. Несмотря на большой объём материала, там, по сути, был рассмотрен лишь один вариант — с использованием жидкой перекиси водорода и солнечного света. И хотя результаты получились обнадёживающие, у описанного метода есть масса ограничений.



Читать дальше →
Всего голосов 109: ↑109 и ↓0+109
Просмотры13K
Комментарии 25

Кватернионы. Решение одной навигационной задачи

Глобальные системы позиционированияАлгоритмыMatlab
Из песочницы

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

Читать далее
Всего голосов 28: ↑28 и ↓0+28
Просмотры6.5K
Комментарии 5

Поиск изображений

Поисковые технологииPythonОбработка изображенийМашинное обучение

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

Читать далее
Всего голосов 21: ↑21 и ↓0+21
Просмотры5.7K
Комментарии 3

JavaScript: Стек вызовов и магия его размера

JavaScript
Из песочницы

Большинство разработчиков, которые использовали рекурсию для решения своих задач, видели такую ошибку:

RangeError: Maximum call stack size exceeded.

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

Большинство фронтэнд-разработчиков откроют для себя в этой статье что-то новенькое!

Читать далее
Всего голосов 20: ↑17 и ↓3+14
Просмотры9.5K
Комментарии 39

Вы можете создавать эти элементы, не используя JavaScript

Блог компании SkillFactoryРазработка веб-сайтовCSSПрограммированиеHTML
Перевод

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

Читать далее
Всего голосов 24: ↑19 и ↓5+14
Просмотры14K
Комментарии 22
1

Информация

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