Эта статья в основном для аналитиков, которые впервые сталкиваются с необходимостью описания запросов в Swagger, но может быть полезна всем, кто хочет разобраться или ищет подсказку.
Все потоки
Новости
Инструкция по установке Postgres для OLTP приложений и 1С. Часть 1 Базовая конфигурация
В Postgres достаточно подробная документация, и видимо поэтому , при инсталляции Postgres для 1С большинство параметров приходится выставлять самим. Параметров в Postgres много, а составить эффективную комбинацию не так просто. Все упрощается если рассмотреть профиль нагрузки, например, 1С это прежде всего профиль OLTP нагрузки – так устроены его метаданные (объекты). Если сосредоточится на оптимизации профиля OLTP, понимание Postgres сразу упростится.
Какова вероятность найти слово fuck в случайной последовательности из 20 букв?
Однажды на работе возник вопрос — насколько вероятно, что в случайно сгенерированном идентификаторе (отдаваемом пользователю, к примеру) вдруг обнаружится плохое слово. Приблизительная оценка была дана достаточно быстро, а вот точное решение — уже не так тривиально.
Я решил всерьёз выяснить, чему равна эта вероятность в зависимости от длины случайной строки? Можно ли получить явную математическую формулу для ответа? Что, если взять другое слово? Что, если взять другой алфавит?
Обо всём по порядку.
Foreman+Puppet — О чем нам не говорят, потому что думают, что все это и так знают
Всем привет.
Я попытался описать в статье всё то, что я хотел бы знать о связке Foreman+Puppet на момент когда только начинал их изучение - информации в интернете можно найти действительно много, но мало её найти, нужно ещё и понять как всё это взаимосвязано - если вы, так же как и я когда-то, только начинаете изучение Foreman+Puppet и у вас в голове нет понимания о чём в найденной информации говорится, то предлагаю посмотреть эту статью - возможно я смогу помочь вам разобраться в некоторых моментах.
Мой первый принтер к ZX Spectrum
После дембеля в ноябре 1986 году я, вместо того чтобы посвятить всё свое свободное время алкоголю и женщинам, по инициативе отца и не без его помощи собрал ZX Spectrum. Вариант, "Львов", так я сам оттуда, а отец даже принимал косвенное участие в его проектировании. Как раз в те годы, когда я сапогами стучал в Советской Армии. Если более точно, то ремонтировал и обслуживал телеграфные аппараты на командном пункте ПВО страны. Это присказка.
Прошел год. На дворе январь 1988 года после успешно сданной сессии. Общежитие в Зеленограде. Народ играет на моем ZX Spectrum. А кто не играет, обсуждает, что неплохо бы его применять не только для игрушек, но и еще для чего-то полезного. Например, для курсовых и дипломных проектов. Так как про TR-DOS мы в эти годы даже не слышали, а подключение дисковода к ZX Spectrum казалось фантастикой, то обсуждались способы, как бы перенести файлы с кассеты на хотя бы на ДВК-2, чтобы оттуда их распечатать. Купить принтер тогда тоже казалось фантастикой.
В процессе этих фантастических дискуссий я вспоминаю о том, как ремонтировал телеграфные аппараты в армии и мечтательно заявляю:
-- Ну хотя бы рулонный телеграфный аппарат где-то надыбать! Хотя бы древний и убогий T-63, который я наизусть знаю и точно смогу починить.
И вдруг я слышу ответ от соседа по комнате:
-- Так у меня на практике, на городской АТС, целая груда списанных рулонных телеграфных аппаратов валяется.
Ура! Есть цель, есть средства, нужен план. Хотя зачем студентам план? "Чего тут думать! Трясти надо!" (с) - если кто не знает этот анекдот, могу потом найти его.
Этап полировки. Самодельные циклы с параметром в многозвенном «манипуляторе» для работы с данными (генерация карты)
Здравствуйте. Есть желание поделиться опытом организации циклов. Не ожидайте что это прямо такая лекция от специалиста, это просто то, чем я мог-бы поделиться интересным на данном этапе в рамках проекта. Из прошлой публикации по ссылкам можено перейти на код, не блещущий глянцем, но зато матовый оттенок ассемблера там имел место быть по следующим причинам:
для доведения до глянца алгоритма генератора нужно было иметь точное представление формул, а их у меня не было, и формулы расчётов буквально отлаживались в отладчике - искались ошибки, после обнаружения таковых автоматического тестировщика, и формулы для отладки движка генератора карт ещё при этом и растасовывались по коду, для сокращения числа их применения, ну или их частей - такое тоже было. Почему я не использовал case тоже можно объяснить достаточно просто : в конечно счёте применение ассемблера имело место - ознакомится с требуемым его функционалом как можно больше, наработать навык и потом применить. Конечно это не бог весть какое достижение, но тем не менее "рабочая камера" движка генератора карт преобразилась с такого вида
Фильтруем логи санитайзеров и valgrind на примере приложения с Qt
Периодически встречающаяся проблемами кода на С и C++ являются утечки памяти и неопределенное поведение. Даже если вы используете умные указатели, то от ошибок в библиотеках сторонних разработчиков вы не застрахованы. Для поиска ошибок в коде существуют специальные инструменты: санитайзеры и valgrind. Однако, не вся информация об ошибках имеет для нас ценность, рассмотрим методы её фильтрации.
Пароль не нужен. Разбиение файла на зашифрованные фрагменты по схеме Шамира
После того как Google отказалась от паролей и перешла на Passkey по умолчанию создаётся впечатление, что концепция текстовых паролей (парольных фраз) сама по себе устарела. И действительно, в некоторых случаях можно добиться достаточного уровня безопасности без паролей вообще.
Например, простенькая утилита horcrux (крестраж*) разбивает файл на несколько зашифрованных частей (например, пять), причём для дешифровки и восстановления исходного текста не нужен пароль, а нужно найти и соединить несколько из этих частей (например, три). Предполагается, что сами отдельные части хранятся у разных людей в разных местах и/или надёжно спрятаны, например, в разных местах дома, сейфах, банковских ячейках и т. д.
*Крестраж — волшебный артефакт, созданный с помощью тёмной магии, из вселенной Гарри Поттера.
Мастерство многопоточности: Превращаем Java в шедевр параллельного программирования
Всем привет! В этой статье я бы хотел поверхностно пройтись по многопоточности в Java, объяснить, где она используется и зачем нужна.Приятного прочтения!
Многопоточность – одна из ключевых особенностей языка программирования Java, которая позволяет выполнять несколько задач одновременно. В мире современных вычислительных систем это становится все более важным аспектом разработки программного обеспечения. Многопоточные приложения предоставляют возможность эффективного использования мощности процессора и повышения отзывчивости программ.
Java обладает встроенной поддержкой многопоточности, предоставляя разработчикам удобные инструменты для создания и управления потоками выполнения. Это позволяет реализовать параллельное выполнение различных частей программы, что приводит к улучшению производительности и оптимизации ресурсов компьютера. В данной статье мы рассмотрим основные концепции многопоточности в Java, ее преимущества, а также передовые методики работы с потоками выполнения.
Обзор научных исследований в CS
В обзоре представлены наиболее интересные научные исследования, опубликованные на сайте Arxiv в период 47-ой недели года, с 20.11.2023 по 26.11.203 в разделах Computers and Society, Human-Computer Interaction, Multimedia, Programming Languages, Social and Information Networks, Software Engineering.
Ленивый линукс: история Slackware
Slackware Linux - один из самых старых, и ныне живущих дистрибутивов Linux.
Это настоящий король, который хоть и отрекся от престола, но угли его славы еще тлеют под нами.
Вернемся назад, и узнаем, как это было!
Передаем данные с одноплатника Repka Pi (или Raspberry Pi) в интернет по GSM связи через модуль SIM868 и GPRS протокол
Всегда ли вы берете с собой смартфон? Наверное да, ведь это удобно, когда под руками есть все каналы связи.
Но что, если вы собираете автономно работающее устройство с микрокомпьютером, такое как как радиоуправляемый вездеход, робот присутствия, устройство управления шлагбаумом, систему IoT, турникет или что-то подобное?
Было бы неплохо оснастить это устройство чем-то, похожим по функциональности на смартфон. Тогда вы смогли бы определять его координаты GNSS, обмениваться данными через GPRS, Bluetooth или SMS, а также просто позвонить на свое устройство по телефону и поговорить с ним (или с тем, кто стоит рядом).
Еще не так давно все это было реализовать довольно затруднительно, но сейчас доступны недорогие модули на базе SIM868, в которых есть все необходимое.
В этой статье мы расскажем о том, как настроить обмен данными по каналам GPRS мобильных провайдеров между микрокомпьютерами Raspberry Pi или Repka Pi с сервером, размещенном в интернете. Для обмена будем использовать модуль GSM/GPRS/GNSS Bluetooth HAT.
Как техническому писателю организовать свою работу?
Всем привет, меня зовут Мишинёва Екатерина, я – ведущий технический писатель с опытом работы в сфере IT более 10 лет.
Сегодня я решила написать, как мне кажется, достаточно полезный пост, который будет интересен не только начинающим техническим писателям, но и опытные коллеги смогут для себя почерпнуть что-то новое – способы организации своего рабочего процесса техническому писателю.
Ближайшие события
Взлёт TSMC
Семь-восемь лет назад TSMC производила процессоры, которые отставали от аналогичных процессоров Intel на несколько поколений. Пятнадцать лет назад выпускала дешёвые чипы на заказ, которые не ставили рекордов производительности. А тридцать лет назад едва появилась на свет. Теперь она в списке самых влиятельных компаний. Так как же TSMC покорила мир?
Сегодня компания считается ведущим производителем чипов, опережающих по крайней мере на одно, а может и на два поколения процессоры Intel. На её долю приходится примерно половина чипов на заказ, более 90% из которых производятся по передовым технологиям. На её кристаллах работают не только ПК и телефоны, но и автомобили, военная техника, медицинская аппаратура и всё, без чего трудно обойтись сегодня.
Головной офис TSMC находится в Тайване. Остров де-факто функционирует как отдельное государство, однако до сих не получил признания мировой общественности.
Итак, современная жизнь сильно зависит от продукции одной-единственной компании, базирующей в стране, которой как бы не существует. Остров, где расположена страна, отделён от Китая тонкой полоской воды и может стать самым опасным местом на Земле. Но как мы до этого дошли и что ждёт нас в будущем?
Фанатам старой компьютерной техники наверняка хороша знакома продукция TSMC. Скорее всего, она ассоциируется у них с недорогим, не очень производительным даже по тем меркам оборудованием. Однако ж умалять значение фирмы нельзя – благодаря ей создавались очень нужные компоненты ПК, например, графические процессоры. Ни Nvidia, ни ATI (до того, как её выкупила AMD) не производили собственных чипов. Конечно, они проектировали их, но за выпуск платили сторонним компаниям. Нередко это была TSMC.
Когда программы были маленькими, а деревья пиксельными. Простота и минимализм TreePad
У многих из нас есть любимые программы, которые годами путешествуют с компьютера на компьютер, от одной версии операционной системы к другой. И продолжают служить нам верой и правдой — привычные и надёжные, как старые друзья.
Для меня таким старым надёжным другом стала программа TreePad Lite. Она со мной уже без малого 30 лет. Мне близок минимализм TreePad: простота интерфейса, отсутствие необходимости установки, нетребовательность к ресурсам, открытый формат файлов, отсутствие каких-либо зависимостей от сторонних библиотек или интернета.
«Эффект лицензионного домино»: тренд на коммерциализацию open source решений набирает обороты — кейс HashiCorp
Продолжаю тему изменений в лицензионной политике Elastic — компании-разработчика стека ELK, которая отказалась сотрудничать с российскими организациями, а до этого поменяла условия распространения поисковой системы Elasticsearch, а также интегрируемого средства анализа данных Kibana.
Три месяца назад HashiCorp взяли похожий курс на защиту от конкурентов и коммерциализацию ранее полностью открытых продуктов, в том числе Terraform для управления ИТ-инфраструктурой в формате Infrastructure-as-Code и Vault для управления сертификатами, токенами доступа и другими «секретами». Однако, если сравнивать с Elastic, руководство HashiCorp выбрало иной подход и тип лицензии.
Разбираемся, что к чему, как реагирует сообщество, и на что обратить внимание компаниям с точки зрения стратегического развития своих ИТ-продуктов.
Сравнение Open Source BI-платформ
Привет, Habr!
Меня зовут Остапенко Настя, я лидирую направление BI в компании Axenix. Год назад мы выпустили статью с большим обзором Российского рынка BI. На этот раз мы проведем сравнение трех популярных Open-Source BI-платформ: Apache Superset, Metabase и относительно нового участника - Yandex Datalens, который совсем недавно стал доступен в качестве Open-Source продукта.
Незаконченная история о море Дирака
Одним из моих излюбленных направлений, которые я исследую в хаброблоге, по праву является история идей. Мне нравится, когда в отчётливо лженаучных, мифологических и просто тенденциозных представлениях случайно оказывается рациональное зерно, дающее почву для зарождения и развития настоящей науки. Во многом поэтому я обращался к таким темам, как алхимия, неоплатонизм, а также с удовольствием рассказал, как Дмитрий Иванович Менделеев в поисках химических элементов с дробным атомным весом чуть не открыл нейтрон на кончике пера. В сегодняшнем посте речь пойдёт об интереснейшей умозрительной модели вакуума, получившей название «море Дирака».
Fooocus v2: Революция в работе с изображениями — расширение, изменение и персонализация. Все про Input Image в нейросети
Друзья, всем привет, в прошлой статье Fooocus v2 — бесплатный Midjourney у вас на компьютере, вы познакомились с рисующей нейросетью которая вполне способна заменить Midjourney, узнали как её установить, как пользоваться, за что отвечают все настройки и как работают режимы, как писать запросы, чтобы нейросеть вас понимала.
Из этой части вы узнаете как с помощью нейросети Fooocus можно дорисовать любое изображение выйдя за его границы, изменить любую деталь на изображении, узнаете как добавить на свою генерацию текст, наложить свое лицо или как создать изображение по вашему референсу. Сегодня я расскажу про раздел Input Image.
Внутри много картинок и гифок.
Scala 3 Metaprogramming: реализация списка с известным на этапе компиляции размером
А что, если бы операции List[A].head
и List[A].tail
в Scala были бы безопасными на этапе компиляции?
В один ноябрьский вечер я задался этим вопросом, и, обладая нулевыми знаниями по метапрограммированию, принялся реализовывать список SList[A, N]
с известным на этапе компиляции размером. Даже for-comprehension в итоге получилось реализовать!
Как это получилось сделать и какими средствами языка? Если рассказывать подробно - долгая история.