Pull to refresh
-5
@cosmolevread⁠-⁠only

User

Send message

Redpanda в сравнении с Apache Kafka: Сопоставление эксплуатационных затрат

Reading time12 min
Views11K

В этой статье мы исследуем общие затраты на функционирование кластеров Apache Kafka и Redpanda для потоковой передачи данных и пропускной способности в реальных условиях с использованием модели развертывания с собственным хостингом. Мы начнем с определения модели затрат, протестируем физические характеристики обеих систем с использованием репрезентативных конфигураций, включая аспекты безопасности и аварийное восстановление (Disaster Recovery, DR), и затем оценим их инфраструктурные, административные и общие затраты.

Читать далее

Сгенерировать web интерфейс из БД или объектной модели не стало проще даже 10 лет спустя

Level of difficultyEasy
Reading time4 min
Views9K

Помню, как более 10 лет назад, я бился с тем, как быстро создать интерфейс для ввода данных в базу данных и отбражения их через браузер. На то время, еще был популярен Google Web Toolkit и было несколько открытых библиотек виджетов к нему, по функционалу догоняющие и иногда превосходящие десктопные.

Однако, реальность оказалась несколько иной. На бэкэнде, базах данных и в big data ситуация гораздо лучше с возможностями бесплатных и открытых проектов, когда не надо покупать лицензии или платить за дополнительные компоненты, можно без СМС и платных подписок запустить хоть Ingenuity на Марс.

Читать далее

Дебаты по Tailwind CSS: ещё один классный инструмент, отвергнутый веб-пуристами

Level of difficultyEasy
Reading time4 min
Views5.8K

Tailwind CSS — как фреймворк для разработчиков довольно прост в понимании. По сути, он позволяет вам встраивать код CSS в ваш HTML код. Чтобы, как говорится в слогане Tailwind: «быстро создавать современные веб‑сайты, не покидая HTML». Таким образом, это избавляет разработчиков от необходимости контекстно переключаться с HTML на таблицу стилей CSS.

Собственная документация Tailwind указывает на распространенное возражение против такого подхода: «разве это не просто встроенные стили?» Те из вас, кто жил в 1990-х годах, наверняка помнят, что когда‑то, еще до того, как произошла революция CSS, им приходилось добавлять разметку стилей в свои HTML‑файлы. Но, по словам Tailwind, его подход «утилитарного класса» предлагает больше функциональности, чем встроенные стили, включая возможность создавать адаптивный дизайн (дизайн, адаптированный для мобильных устройств).

Таким образом, простота использования — особенно по сравнению с кодированием и последующим обслуживанием CSS‑файла — и возможность создавать свой стиль внутри HTML являются основными причинами, по которым многие разработчики любят Tailwind.

В своем посте Мэтт Рикард добавил в качестве ключевых преимуществ фреймворка следующие пункты:

Далее...

Статистика по финансовым рынкам или будни дата-аналитика

Level of difficultyMedium
Reading time8 min
Views4.1K

Есть крутой статистический портал, аггрегатор данных по большинству финансовых бирж - WORLD FEDERATION OF EXCHANGES (WFE). На этом сайте представлен широкий спектр разнообразных данных, множество интересных показателей - раздолье для дата-аналитика. Какие биржи самые крупные? Какие имеют самую высокую динамику развития? Где больше всего активности? На эти и многие другие вопросы можно ответить, зная python и приложив немного усилий и фантазии.

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

Читать далее

Что происходит с рождаемостью в России и мире. И как это может отразиться на каждом из нас

Level of difficultyEasy
Reading time11 min
Views152K

У меня есть хобби. Больше 15-ти лет я изучаю большие группы людей. Племена, этносы, народы, нации, как они между собой взаимодействуют. Почему одни существуют долго, как китайцы, а другие достаточно быстро уходят в историю. Но больше всего меня занимала демография, а точнее события связанные с переходом к современному типу воспроизводства. Человечество впервые за свою историю столкнулось с такой массовой естественной депопуляцией.

С первого взгляда кажется, что эта тема очень узкая и уж точно не имеет отношения к IT. Но уменьшение населения, а что ещё более важно, изменение его возрастной и национальной структуры затрагивает все стороны жизни. Экономику - как пример длительная рецессия в Японии или поднятие пенсионного возраста в разных странах, общество - беспорядки на национальной почве как во Франции, право - обсуждение запретов абортов в России. Представьте, ваша девушка (или вы сами, если вы девушка) беременна, в стране аборты запрещены, а улететь можно только сдав кровь на ХГЧ, и если тест положительный за границу не пускают. Сейчас выглядит как бред, но в 2019 году наша реальность тоже показалась бы бредом.

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

Читать далее

Превращаем старый нетбук в звонящий по симке планшет/телефон

Level of difficultyEasy
Reading time6 min
Views11K

Реанимируем старый нетбук и превращаем его в звонилку! Используем только старые завалявшиеся детали и устройства.

Читать далее

Волны от кораблей

Reading time13 min
Views20K

Волны от кораблей. Что они говорят и о чём молчат.

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

Так носовая волна возникает от раздвигания масс воды вторгающимися в них корпусом корабля.

Читать далее

Синхронизация в Java, часть 1: состояния гонки, блокировки и условия

Reading time14 min
Views12K

Представляем вашему вниманию первую статью из серии о синхронизации потоков в Java, в которой мы рассмотрим основы: состояния гонки, объекты блокировки, объекты условий, а также методы await, signal и signalAll.

Читать далее

Сколько платят айтишникам в Европе?

Level of difficultyEasy
Reading time2 min
Views23K

Больше года назад я переехал в Барселону (Испания) и иногда поглядываю что там на рынке айти в целом по Европе)

Давайте начнем с карьерной лестницы

📝По моему мнению, лестница программиста в Европе выглядит так, сначала опыт в годах, потом название роли, внутри более читаемая табличка

0 лет |  Intern -> Trainee, 1 год | Junior -> SDE I, 2 года | Middle -> SDE II, 3 года | Upper Middle -> SDE III, 5+ лет |  Senior -> Senior SDE, 10+ лет | Staff, Sr. Staff, Principal, Sr. Principal, Distinguished Engineer, Head Of Engineering | VP | CTO 

Читать далее

Из пет-проекта в источник дохода: как я создал чат-бот для поиска вакансий

Level of difficultyEasy
Reading time6 min
Views6.6K

Привет! Меня зовут Георгий Каляпин. Когда я начинал работать разработчиком, мне приходили разные маленькие заказы, а потом я стал искать их сам в чатах с фрилансерами. Проблема была в том, что чаты приходилось мониторить постоянно и в них встречалось много нецелевых вакансий.

Поэтому я решил создать чат-бот RemoteHunt — помощника в поиске фриланса. Он 24/7 просматривает тематические каналы и чаты, после чего сегментирует вакансии на категории и отправляет пользователю. Изначально бот задумывался как пет-проект, но в процессе разработки перерос в нечто большее.

В этой статье я расскажу о принципе работы чат-бота и трудностях, с которыми встретился. Не всё получилось идеально с первого раза, поэтому какие-то моменты буду исправлять или улучшать. С похожими задачами я встречался в рамках курса «Мидл Python-разработчик» в Практикуме, но я не хотел копировать готовые решения.

Вот что у меня получилось

Apple не хочет, чтобы люди создавали приложения для собственного удовольствия

Reading time2 min
Views37K
Apple всё равно взимает с разработчиков платеж в 99 $, даже если они не хотят размещать свой приложение на Appstore.

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

В этом году я начал изучать BLE при помощи микроконтроллера Nordic NRF52. Мне захотелось создать приложение-компаньона для iPhone, которое выводило бы мне показания сенсора. Всё это затевалось исключительно для личного употребления и самообразования; я не предполагал, что приложением будет пользоваться кто-то, кроме меня.

К моему разочарованию, спустя неделю после загрузки приложения на айфон оно перестало открываться!
Читать дальше →

Как аугментация помогает нейронным сетям решать уравнения в частных производных

Level of difficultyHard
Reading time6 min
Views5.4K

Меня зовут Александр Рудиков, я младший научный сотрудник Сколтеха. Я работаю в группе под руководством Ивана Оселедца, которая занимается решением дифференциальных уравнения с помощью нейронных сетей. Не так давно мы придумали, как сделать этот процесс точнее и доложили свои результаты на конференции ICML 2023, по итогам которой была опубликована статья в сборнике трудов. В этом тексте я хотел бы поделиться нашими наработками и подробнее рассказать, что именно мы сделали.

Читать далее

Исчерпывающее руководство по одномерным массивам в Java

Level of difficultyEasy
Reading time20 min
Views22K

Для хранения данных, используемых при работе программы, применяются переменные того или иного типа. Например, если требуется сохранить имя игрока, то создается переменная String name, если целочисленное значение, то int number и т. д. Когда таких значений немного или их количество заранее известно, то для них приемлемо использовать отдельные переменные.

Но что делать, когда в программе задействовано не одно, а 10 чисел, или их количество становится известно только на этапе запуска приложения, когда пользователь вводит его с клавиатуры? Или в какой-то игре может участвовать разное количество игроков, устанавливаемое при ее старте. В таких ситуациях отдельными переменными уже не обойтись, т. к. их точное количество будет невозможно определить. Да и, если все же попытаться это сделать, код станет громоздким и не универсальным, а работа с ним будет крайне ограниченной из-за невозможности использования цикла для автоматизированной обработки данных.

Вот тут-то и приходит на выручку такая структура данных как массив, которая позволяет хранить в себе значения одного типа, что значительно упрощает их обработку.

Читать далее

Новый взгляд на Maven-plugin для IDEA — GMaven (Easy Maven)

Level of difficultyMedium
Reading time8 min
Views6.8K

Привет, меня зовут Григорий Мясоедов, ранее я имел опыт работы в JetBrains в команде build tools, а конкретно занимался Maven-plugin.  В этой статье я хочу поговорить о том как устроен плагин под капотом, его сильных и слабых местах, и о том что я в итоге со всем этим сделал.

Одна из самых частых проблем, которыми я занимался в JetBrains, звучала так - “через командную строку Maven проект собирает, но в IDEA он не импортируется (импортируется с ошибками)”. Как будет показано ниже большинство этих проблем связаны с архитектурой JB Maven плагина.

Читать далее

Из кладовщика в разработчики

Level of difficultyEasy
Reading time8 min
Views7.5K

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

Читать далее

SQL-инъекция через остановку перенаправления на страницу входа

Reading time2 min
Views4K

Обзор отчета , в котором сервер компании Razer пострадал от обхода авторизации в странице администратора и SQL-инъекции. Это позволило получить доступ к игровым ключам из раздач, почтовым перепискам, данным пользователей и т.д.

Читать далее

Вам придётся выбросить все зубы и поставить новые

Level of difficultyEasy
Reading time16 min
Views19K
Наверное, одна из вещей, которых подсознательно боится любой человек перед походом к стоматологу, — это объём вмешательства. Приходишь с жалобой на небольшое щёлканье сустава, а стоматолог печально сообщает, что вам будет нужно поменять левые зубы с правыми и вообще тут нужен новый рот. Давайте выкинем все старые и некрасивые и заменим на новые протезы.

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

Мы всячески выступаем за минимально возможное вмешательство. Свои зубы всегда лучше имплантатов — богатая сенсорика и важный компонент жевательных рефлексов. К сожалению, иногда приходится вмешиваться более радикально, когда других вариантов не остаётся.

Сегодня буду рассказывать про сложные случаи, когда такое радикальное вмешательство действительно необходимо. И нет, тут не подходит причина «я не хочу больше возиться со стоматологией, с искусственными будет проще». Ключевая причина тут — снижение прикуса из-за потери зубов и стираемости. Если ничего не делать — рассыпятся суставы, начнутся хронические головные боли и начнут страдать мышцы.

image
Рентген до/после тотального протезирования
Читать дальше →

Революционные IDE, повлиявшие на разработку ПО

Level of difficultyEasy
Reading time12 min
Views33K
В старину при написании кода вы видели лишь чёрный текст на белом фоне. Для того чтобы писать код, требовалось много внимания и аккуратности. Опечатки не подсвечивались автоматически, а синтаксические ошибки обнаруживались только в процессе компиляции. По сравнению с современным программированием это был совершенно иной процесс.

Asymetrix ToolBook, когда-то популярный благодаря мультимедийным возможностям, но уже давно позабытый

В этой статье мы рассмотрим десяток сред разработки, оказавших самое большое влияние за последние тридцать лет программирования. IDE ранжированы по порядку, от десятого места до первого.
Читать дальше →

Как взломать антиплагиат? — Безопасность и уязвимости NLP -классификаторов. Часть 1

Level of difficultyMedium
Reading time14 min
Views5.5K

Всем привет! Меня зовут Артём Семенов, я занимаюсь пентестами в компании RTM Group.

Известная поговорка гласит: «Словом можно ранить, а словарём – убить». Это особенно актуально для темы, которую мы сегодня рассмотрим, ведь для атак мы будем использовать либо слово, либо огромный текст. В начале 2023 года ChatGpt произвёл фурор. Эта языковая модель может генерировать машинные тексты и писать стихи, которые максимально приближены к «авторскому» (человеческому) стилю. Казалось бы, при помощи систем антиплагиата проблему подделок можно было бы решить, но уже известно, что и их реально взломать – автор диплома, написанного с помощью ChatGPT, в своём твиттере описывает, как это сделать.

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

Дисклеймер

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

 

Как мы готовились к проведению исследования?

В качестве систем для тестирования нашего текста мы взяли самые распространённые системы классификации естественного языка:

Читать далее

Поймать перо jar-птицы: новый сезон Java на Хабре

Reading time18 min
Views28K

Спят усталые игрушки, книжки спят… А вот Хабр не дремлет. Уже целый год прошёл с прошлого сезона Java. Стал ли за это время язык менее актуальным? Его всё ещё путают с JavaScript? Помогла ли Java 20 поставить новый рекорд длины Hello World? Чтобы ответить на эти и другие вопросы, мы запускаем новый сезон Java.

Программирование — это про целесообразность. Для многих простых задач достаточно подружиться со слонёнком. Однако когда хочешь сотворить настоящее, крупномасштабное чудо вроде национальной платёжной системы, без jar-птицы никак не обойтись — можете поверить опыту НСПК, партнёра этого сезона.

С 31 июля по 19 сентября мы будем говорить о чудесах больших и поменьше, о кровавых ритуалах энтерпрайза и защитных пентаклях тестовых окружений. Лучший кудесник, избранный народным голосованием, получит в награду Apple MacBook Air 13, а его имя навсегда останется на страницах нашей сказки.

Читать далее

Information

Rating
Does not participate
Registered
Activity