Математический анализ знает множество замечательных функций со своими удивительными свойствами и применениями. Сегодня я бы хотел рассказать читателю об одной из таких - W-функции Ламберта.
Новости
Заполнители типа в Swift: что это такое и когда их следует использовать
Заполнители типа (type placeholders) — это новая языковая фича, представленная в Swift 5.6 (Xcode 13.3).
Сама концепция очень проста - вместо указания конкретного типа мы можем поставить _ (заполнитель типа), который предписывает компилятору самому определить заполняемый тип.
В следующем примере я использую заполнитель типа для name
, который впоследствии разрешается в String
.
Робот-самурай ч.2. Хокку-бот для постинга в ВК
Рассматриваем, как публиковать автоматические "хокку" в Телеграм канал и группу ВК.
Простая аутентификация на PHP
Многие новички до сих пор попадают в тупик при написании простейшей аутентификации в PHP. На Тостере с завидной регулярностью попадаются вопросы о том, как сравнить сохраненный пароль с паролем полученным из формы логина. Здесь будет краткая статья-туториал на эту тему.
Disclaimer: статья рассчитана на совершенных новичков. Умудрённые опытом разработчики ничего нового здесь не найдут, но могут указать на возможные недочёты =).
Насколько хорошо защищены ваши пароли? Проверка проекта Bitwarden
Bitwarden – менеджер паролей с открытым исходным кодом. Это программное обеспечение помогает генерировать уникальные пароли и управлять ими. Получится ли у анализатора PVS-Studio отыскать ошибки в таком проекте?
«Писать код — не главное». Авторы курсов из HTML Academy делятся секретами профессии
Академия началась 10 лет назад с интерактивных тренажёров по вёрстке, которые сделал Саша Першин. Через год появились полноценные интенсивные курсы для верстальщиков, а чуть позже добавились курсы по JavaScript, React и PHP.
Всё это добро нужно было кому-то вести — сначала всё делали Саша и Лёша Симоненко, а потом их сменили другие авторы. Некоторых вы и без меня хорошо знаете — например, Вадима Макеева, который несколько лет вёл в Академии курсы по HTML и CSS. А всего за 10 лет у курсов Академии было 14 авторов. При этом автор — не наставник и не преподаватель в привычном смысле. Он не занимается отдельно с каждым студентом и не проверяет домашние задания и итоговые проекты.
Чтобы узнать, чем на самом деле занимаются авторы, я подловил их в тёмном коридоре и задал кучу неудобных вопросов. Поговорили о работе авторов, секретах профессии, бесящих студентах, революциях в вебе, HTML 6, замене JavaScript и ответственности за судьбы людей.
«А поговорить?» или делаем звонок для подтверждения заказа в интернет магазине с помощью МТТ VoiceBox
Экономическая ситуация нынче нестабильная, лишних денег у людей нет. И вот значится обратились ко мне товарищи со словами: "Ты же когда-то там сайты делал, помоги разобраться". После такой просьбы пришлось мне сдувать пыль вековую с постаревших связей нейронных, да бубен шаманский доставать.
Но не переживайте, эта статья не о том, как я спустя 12 лет снова сел ковырять сайты на PHP. Всё это банально и писать об этом на Хабр я бы не стал.
А вот, что мне действительно было интересно, так это поковыряться в настройках голосового бота. Никогда раньше с таким не сталкивался и настолько меня это увлекло, что по горячим следам начал писать статью.
Вы готовы загибать пальцы?
Итак, сегодня мы с вами:
- Настроим сценарий голосового бота для подтверждения интернет заказа.
- Одним глазом взглянем на API для управления ботом и отправим пару запросов через Postman.
- Добавим пару кастомных действий в WooCommerce, чтобы робот вместо оператора разными голосами подтверждал заказ.
ТОП-3 ИБ-событий недели по версии Jet CSIRT
Сегодня в подборке новостей Jet CSIRT — устранение уязвимостей в продуктах Azure и HP, а также новый вредонос NetDooka. ТОП-3 собрала Анна Мельникова, специалист центра мониторинга и реагирования на инциденты ИБ Jet CSIRT компании «Инфосистемы Джет».
Подробнее читайте под катом.
QA без рутины: как мы автоматизировали регрессионное тестирование
Всем привет, меня зовут Александр Мастюгин, я работаю тестировщиком в студии Nord. В сфере IT бытует предубеждение, что работа тестировщиком — нудное и однообразное занятие. Но я с этим не согласен: на мой взгляд, это творческая, техническая и исследовательская деятельность. Чтобы выполнять эту работу хорошо, нужно погрузиться в задачу, понять все ее тонкости, сложности, разобраться, какие у нее есть подводные камни.
Но для справедливости нужно сказать, что скучный момент все же есть — это регрессия. Чтобы минимизировать ее роль в рабочем процессе и, соответственно, избавиться от рутины, мы в студии Nord решили автоматизировать регрессионное тестирование. В этом тексте я расскажу, что у нас получилось.
7 способов улучшить производительность Node.js в масштабе
Производительность — один из самых важных аспектов разработки веб-приложений. Быстрое приложение будет радовать пользователей, разработчиков и другие заинтересованные лица, в то время как медленное приложение наверняка разочарует все три стороны.
В этой статье мы рассмотрим некоторые методы, которые следует использовать для масштабирования серверов Node.js. Впоследствии ваши серверы смогут справиться с высокой рабочей нагрузкой без ухудшения пользовательского опыта.
Следуя всем проверенным и протестированным советам по производительности в этой статье, вы сможете улучшить скорость и производительность вашего продукта, обеспечив ему преимущество, необходимое для успеха на рынке.
Дополнительные временные ряды в ETNA
Меня зовут Артем, я разработчик библиотеки ETNA. Мои коллеги уже познакомили вас с ETNA и рассказали, как загружать данные и строить прогнозы. А я расскажу, что такое регрессоры, какие они бывают, чем могут помочь при прогнозировании временных рядов и как с ними работать в нашей библиотеке.
Сравнение API Management платформ: результаты теста
В прошлый раз мы выложили в открытый доступ систему критериев, по которым решили оценивать API Management платформы. Сегодня поделимся результатом сравнения 10 решений, по которым нам удалось собрать подробную информацию и даже немного потестить.
Платформ на рынке значительно больше, как минимум 40, в наше сравнение попали следующие: WSO2 API Manager, Axway Amplify, Red Hat OpenShift API Management, Microsoft Azure API Management, Gravitee, Mulesoft Anypoint Platform, Tyk, Google Apigee API Management, IBM API Connect и Tibco Cloud API Management.
Оценка каждого критерия делалась людьми, поэтому может быть несколько субъективной. Если вы с чем-то не согласны, мы уважаем ваше мнение и прикладываем редактируемую табличку с расчетами: меняйте веса и значения, как считаете правильным. Мы лишь делимся результатом своих поисков.
1x PCIe чтобы управлять всем
Высокоскоростные интерфейсы PCIe стали неотъемлемой частью современных процессоров. Производители чипов конкурируют в количестве интегрированных линий PCIe, что влияет на возможности ввода/вывода вычислительных платформ, требования к которым постоянно растут.
Несмотря на развитие технологий, производители серверных решений не спешат использовать интерфейс PCIe для выполнения функций управления платформой. Вероятно это связано с вызовами и издержками, которые неизбежно возникают при переходе на новые архитектурные решения.
Между тем, использование PCIe в качестве интерфейса управления платформой потенциально несет ряд преимуществ, например положительно влияет на общую готовность и надежность системы, снижает издержки дизайна при масштабировании платформы, повышает скорость и снижает задержки при обмене информации внутри системы управления платформой.
В этой статье будут рассмотрены вызовы, издержки, преимущества, а также возможные варианты применения, связанные с использованием PCIe в качестве интерфейса управления платформой, а также сделан вывод, что преимущества использования PCIe в качестве интерфейса управления платформой способны преодолеть стоимость издержек и предоставить конкурентные преимущества конечным решениям.
Как работает массив в Swift
В прошлой статье мы поговорили про оценку относительной производительности структуры данных или алгоритма(Big O), теперь я предлагаю взглянуть на самый популярный тип данных - Массив и оценить производительность основных методов взаимодействия с ним, а также ответить на самые популярные вопросы на собеседовании про эту часть Swift.
Массив — это набор элементов одного типа, которые можно устанавливать и извлекать через непрерывный ряд целых чисел, так называемые индексы.
Как ускорить работу на macos в Docker окружении с помощью Mutagen
Если вы работали на macos в docker окружении, то наверняка сталкивались с проблемой в производительности, например, при работе над php проектом, операции с файловой системой (обновление пакетов composer, ребилд контейнеров symfony, etc.) занимают просто неадекватное количество времени. Об особенностях работы docker'а на macos написано уже множество статей, а также workaround'ов как заставить его работать быстрее. В этой небольшой статье покажу как в решении этой проблемы Mutagen помог мне с php проектом и быть может поможет вам.
OSINT по спутниковым изображениям
Мы живем в такое время, когда снимок со спутника можно получить в один клик. В оптическом, в инфракрасном и в радиодиапазоне. А еще историю изменений в определенной координате за несколько лет.
Зеленый Кот нашел разбившуюся советскую исследовательскую станцию «Марс-3» по снимкам со спутника, тысячи экологов следят за лесами Амазонки и состоянием береговой линии, школьники делают учебные проекты по слежке за популяцией моржей, репортеры проводят расследования, освобождают рабов, мониторят лагеря беженцев.
Предлагаю вам подборку бесплатных ресурсов и проектов со спутниковыми данными, программами обработки этих данных и полезные статьи.
Рекомендации по созданию RSS-фидов
В этой статье представлены технические советы по ведению блога. Они никак не связаны с хорошим контентом, а рассказывают о том, как делиться этим контентом. Рекомендации выстроены в примерном порядке важности и имеют обоснования своей важности.
Форматы
Люди обычно называют фиды «RSS-фидами», но часто они не имеют в виду конкретно RSS. RSS — это не единственный и даже не самый лучший формат. Использование стандартизованного формата очень важно для того, чтобы ваш фид понимало максимальное количество ридеров и поисковых движков.
Вам нужно использовать RSS 2 или Atom. Эти форматы имеют очень широкую поддержку. Среди других популярных форматов более старые стандарты RSS и JSON Feed или Microformats h-feed. Я буду избегать использовать их или менее популярные форматы, потому что их поддержка не так широка.
Машина Тьюринга в Doom
DOOM (игра 1993 года для DOS) полон по Тьюрингу. Это значит, что можно запустить DOOM в DOOM. В статье приводятся подробности реализации.
Предисловие
Прежде чем углубляться в разработку, нужно дать немного контекста. Если вы имеете опыт программирования, то можете пропустить краткое описание понятия полноты по Тьюрингу.
Что такое полнота по Тьюрингу?
Итак, какую-то видеоигру можно назвать универсальной, полной по Тьюрингу или программируемой. Что это означает? По сути, это значит, что в этой игре можно реализовать компьютер. Но тут есть свои тонкости: если для этого игроку придётся делать слишком много, то это будет уже не так интересно.
Выселяем Carthage из git, или Как мы связали Carthage + Rome + S3 в нашем проекте
Сегодня для управления внешними зависимостями мы используем Carthage, это один из популярных в iOS-среде инструментов. Он умеет собирать зависимости из кэша, но не управлять его организацией и хранением. Для этого нужно задействовать сторонние инструменты, и мы расскажем, как решали задачу по работе с удалёнными зависимостями. Наш опыт может быть полезен всем, кто захочет пройти этот тернистый путь интеграции remote cache через связку Rome + Carthage + S3.
19 мая Ozon Tech × Сoffee&Code приглашают на Mobile Meetup: перформанс и Backend-Driven UI
Привет! Меня зовут Саша Свиридов, я руковожу отделом мобильной разработки в Ozon. В моей команде чуть больше 80 человек — это Android- и iOS-разработчики и QA-инженеры. Мы делаем основное приложение Ozon для покупателей. Моя команда состоит из семи кроссфункцинальных групп разработки, каждая из которых отвечает за определенный скоуп задач. Спектр наших задач очень широк: мы разрабатываем чаты на сокетах, работаем с картографией, с потоковым видео, пушами, с аналитикой, со сложным UI. Пожалуй, у нас нет только GameDev:)
Всего в Ozon больше 150 мобильных инженеров, которые развивают приложения для покупателей, продавцов, Ozon Fresh, FinTech, курьеров и сотрудников пунктов выдачи заказов. Словом, нам есть что рассказать.
Чем поделимся на митапе:
— Какие метрики собираются и как мы боремся за перформанс приложения.
— Как мы делали плавный скролл для нагруженного UI, и при этом не переверстали все приложение. Рассмотрим необычные подходы, которые мы опробовали на практике, и расскажем, что из этого получилось.
— Как работает новая модель многопоточности. На примерах разберём, что нового появилось в Swift и как это подружить со своим кодом.
— Круглый стол, на котором мы обсудим темы, предложенные вами при регистрации на мероприятие.
Подробнее про наш стек и программу — под катом.